private void build() {
FieldBuilder<String> itemField = field("item", type.stringType());
FieldBuilder<Integer> quantityField = field("quantity", type.integerType());
FieldBuilder<BigDecimal> unitPriceField = field("unitprice", type.bigDecimalType());
TableOfContentsHeadingBuilder tocHeading1 = tableOfContentsHeading();
TextFieldBuilder<String> title1 = cmp.text("Title1").setTableOfContentsHeading(tocHeading1);
TableOfContentsHeadingBuilder tocHeading2 = tableOfContentsHeading().setParentHeading(tocHeading1);
TextFieldBuilder<String> title2 = cmp.text("Title2").setTableOfContentsHeading(tocHeading2);
BarChartBuilder chart = cht.barChart()
.setDataSource(createChartDataSource())
.setCategory(itemField)
.series(cht.serie(quantityField).setLabel("Quantity"), cht.serie(unitPriceField).setLabel("Unit price"))
.setTableOfContentsHeading("Chart");
try {
report().setTemplate(Templates.reportTemplate)
.tableOfContents()
.title(Templates.createTitleComponent("TableOfContents2"), title1, title2, cmp.subreport(createSubreport(1)), cmp.subreport(createSubreport(2)), chart)
.pageFooter(Templates.footerComponent)
.show();
} catch (DRException e) {
e.printStackTrace();
}
}