Добавить содержимое как группу

Можно использовать группу для включения одного и того же содержимого в различные части отчета. DOM API клонирует представителей группы, прежде чем добавлять их к другому объекту.

Этот пример показывает код ключа, который нужно включить. После описания шагов, связанных с использованием группы, этот пример включает код для полного отчета, в котором используется группа.

  1. Определите объекты DOM, которые необходимо неоднократно включать в отчет.

    disclaimerHead = Heading(2,'Results May Vary');
    disclaimerIntro = Paragraph('The following results assume:');
    disclaimerList = UnorderedList(...
        {'Temperature between 30 and 70 degrees F',...
        'Wind less than 20 MPH','Dry road conditions'});
  2. Задайте Group объект, который включает объекты DOM для группы. Для примера:

    disclaimer = Group();
    append(disclaimer,disclaimerHead);
    append(disclaimer,disclaimerIntro);
    append(disclaimer,disclaimerList);
  3. Добавьте Group объект в том месте отчета, где необходимо повторить содержимое. Для примера, если объект документа doc:

    append(doc,disclaimer);

Этот код создает отчет на основе этого подхода.

import mlreportgen.dom.*;
doc = Document('groupReport','html');
disclaimerHead = Heading(2,'Results May Vary');
disclaimerIntro = Paragraph('The following results assume:');
disclaimerList = UnorderedList(...
    {'Temperature between 30 and 70 degrees F',...
    'Wind less than 20 MPH','Dry road conditions'});
disclaimer = Group();
append(disclaimer,disclaimerHead);
append(disclaimer,disclaimerIntro);
append(disclaimer,disclaimerList);
append(doc,disclaimer);
p1 = Paragraph('First set of results...');
p1.Bold = true;
p2 = Paragraph('more report content...');
p2.Bold = true;
append(doc,p1);
append(doc,p2);
append(doc,disclaimer);
close(doc);
rptview('groupReport','html');

См. также

Функции

Классы

Похожие темы