グループでのコンテンツの追加
グループを使用して、同じコンテンツをレポートのさまざまな部分に含めることができます。DOM API はグループのメンバーのクローンを作成してから、それを別のオブジェクトに追加します。
この例では、主要なコードの部分を示します。この例は、グループの使用に関する手順を記述した後に、グループを使用する完全なレポートにコードを含めます。
レポートに繰り返し含める 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'});
グループの DOM オブジェクトを含む
Group
オブジェクトを定義します。例:disclaimer = Group(); append(disclaimer,disclaimerHead); append(disclaimer,disclaimerIntro); append(disclaimer,disclaimerList);
レポート内のコンテンツを繰り返す場所に
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');