/** * Rendert eine einzelne Kategorie sammt Unterkategorien und stellt ihre Einnahmen, Ausgaben und * den Betrag dar. * * @param reporter der Reporter. * @param node der Knoten mit evtl vorhanden Unterkategorien und deren Einnahmen, Ausgaben und * Betrag. * @throws Exception */ private void renderNode(Reporter reporter, UmsatzTreeNode node, int level) throws Exception { String name = (String) node.getAttribute("name"); for (int j = 0; j < level; ++j) { name = " " + name; } PdfPCell cell = reporter.getDetailCell(name, Element.ALIGN_LEFT); reporter.addColumn(cell); reporter.addColumn(reporter.getDetailCell((Double) node.getAttribute("einnahmen"))); reporter.addColumn(reporter.getDetailCell((Double) node.getAttribute("ausgaben"))); reporter.addColumn(reporter.getDetailCell((Double) node.getAttribute("betrag"))); List<UmsatzTreeNode> children = node.getSubGroups(); for (int i = 0; i < children.size(); ++i) { renderNode(reporter, children.get(i), level + 1); } }