Package org.pentaho.reporting.engine.classic.core

Examples of org.pentaho.reporting.engine.classic.core.Group


  public void groupFinished(final ReportEvent event)
  {
    if (event.getState().isPrepareRun())
    {
      final int currentIndex = event.getState().getCurrentGroupIndex();
      final Group g = event.getReport().getGroup(currentIndex);
      collectSubReports(g.getFooter());
      return;
    }

    if (isEnableGroupFooter() == false)
    {
      final int currentIndex = event.getState().getCurrentGroupIndex();
      final Group g = event.getReport().getGroup(currentIndex);
      collectSubReports(g.getFooter());
      return;
    }

    try
    {
      final int currentIndex = event.getState().getCurrentGroupIndex();

      final CSVRow row = new CSVRow(quoter);
      if (isWriteStateColumns())
      {
        row.append(currentIndex);
        final Group g = event.getReport().getGroup(currentIndex);
        final String bandInfo = "groupfooter name=\"" + g.getName() + '\"';
        row.append(bandInfo);
      }
      writeDataRow(event.getDataRow(), row);
      row.write(getWriter());
      final Group g = event.getReport().getGroup(currentIndex);
      collectSubReports(g.getFooter());
    }
    catch (IOException ioe)
    {
      throw new FunctionProcessingException("Error writing the current datarow", ioe);
    }
View Full Code Here


        {
          o.setGroup(group);
        }
        else
        {
          final Group g = findGroup(element);
          if (g != null)
          {
            if (g.getName() == null)
            {
              g.setName("::wizard:group:" + g.getClass().getName() + ':' + System.identityHashCode(g));
            }

            o.setGroup(g.getName());
          }
        }

        final String fieldName = (String) element.getAttribute(AttributeNames.Core.NAMESPACE, AttributeNames.Core.FIELD);
        if (o instanceof FieldAggregationFunction)
View Full Code Here

    for (int i = 0; i < count; i++)
    {
      final int groupIdx = groupCount - i - 1;
      final int wizGroupIdx = wizardCount - i - 1;
      final GroupDefinition gd = groupDefinitions[wizGroupIdx];
      final Group g = definition.getGroup(groupIdx);
      final Band groupHeader = g.getHeader();
      final Band groupFooter = g.getFooter();

      iterateSection(groupHeader, new UpdateHeaderTask(gd));
      iterateSection(groupFooter, new UpdateFooterTask(gd));
    }
View Full Code Here

    {
      crosstab = new CrosstabGroup();
      insertCrosstab(crosstab);
    }

    Group insertGroup = crosstab;
    final GroupDefinition[] groupDefinitions = wizardSpecification.getGroupDefinitions();
    for (int i = 0; i < groupDefinitions.length; i++)
    {
      final GroupDefinition groupDefinition = groupDefinitions[i];
      if (GroupType.CT_OTHER.equals(groupDefinition.getGroupType()) == false)
      {
        continue;
      }

      // create a new group and insert it at the end
      final CrosstabOtherGroup relationalGroup = new CrosstabOtherGroup();
      if (groupDefinition.getGroupName() != null)
      {
        relationalGroup.setName(groupDefinition.getGroupName());
      }
      configureCrosstabOtherGroup(relationalGroup, groupDefinition);
      insertGroup.setBody(new CrosstabOtherGroupBody(relationalGroup));
      insertGroup = relationalGroup;
    }

    for (int i = 0; i < groupDefinitions.length; i++)
    {
      final GroupDefinition groupDefinition = groupDefinitions[i];
      if (GroupType.CT_ROW.equals(groupDefinition.getGroupType()) == false)
      {
        continue;
      }

      // create a new group and insert it at the end
      final CrosstabRowGroup relationalGroup = new CrosstabRowGroup();
      if (groupDefinition.getGroupName() != null)
      {
        relationalGroup.setName(groupDefinition.getGroupName());
      }
      configureCrosstabRowGroup(relationalGroup, groupDefinition);
      insertGroup.setBody(new CrosstabRowGroupBody(relationalGroup));
      insertGroup = relationalGroup;
    }

    for (int i = 0; i < groupDefinitions.length; i++)
    {
      final GroupDefinition groupDefinition = groupDefinitions[i];
      if (GroupType.CT_COLUMN.equals(groupDefinition.getGroupType()) == false)
      {
        continue;
      }

      // create a new group and insert it at the end
      final CrosstabColumnGroup relationalGroup = new CrosstabColumnGroup();
      if (groupDefinition.getGroupName() != null)
      {
        relationalGroup.setName(groupDefinition.getGroupName());
      }
      configureCrosstabColumnGroup(relationalGroup, groupDefinition);
      insertGroup.setBody(new CrosstabColumnGroupBody(relationalGroup));
      insertGroup = relationalGroup;
    }

    final Band itemBand = AutoGeneratorUtility.findGeneratedContent(definition.getItemBand());
    if (itemBand == null)
View Full Code Here

    {
      return;
    }

    final String type = (String) event.getDataRow().get("type");
    final Group g = FunctionUtilities.getCurrentGroup(event);

    final Element headerIncomeBand = g.getHeader().getElement("income-band");
    final Element headerExpenseBand = g.getHeader().getElement("expense-band");
    final Element footerIncomeBand = g.getFooter().getElement("income-band");
    final Element footerExpenseBand = g.getFooter().getElement("expense-band");

    // and now apply the visibility ...
    if (type.equals("Income"))
    {
      headerExpenseBand.setVisible(false);
View Full Code Here

   * @return the relational groups in the templates in a flattened array.
   */
  private RelationalGroup[] getTemplateRelationalGroups()
  {
    ArrayList relationalGroups = new ArrayList();
    Group group = definition.getRootGroup();
    while (group != null && group instanceof RelationalGroup)
    {
      relationalGroups.add(group);
      final GroupBody body = group.getBody();
      if (body instanceof SubGroupBody)
      {
        final SubGroupBody sgBody = (SubGroupBody) body;
        if (sgBody.getGroup() instanceof RelationalGroup)
        {
View Full Code Here

    return (RelationalGroup[]) relationalGroups.toArray(new RelationalGroup[relationalGroups.size()]);
  }

  private void setupRelationalGroups() throws ReportProcessingException
  {
    final Group rootgroup = definition.getRootGroup();
    RelationalGroup group;
    if (rootgroup instanceof RelationalGroup == false)
    {
      group = null;
    }
View Full Code Here

  }

  private RelationalGroup findInnermostRelationalGroup(final AbstractReportDefinition definition)
  {
    RelationalGroup retval = null;
    Group existingGroup = definition.getRootGroup();
    while (existingGroup instanceof RelationalGroup)
    {
      retval = (RelationalGroup) existingGroup;
      final GroupBody body = existingGroup.getBody();
      if (body instanceof SubGroupBody == false)
      {
        return retval;
      }
      final SubGroupBody sgb = (SubGroupBody) body;
View Full Code Here

   *
   * @param crosstabGroup
   */
  private void insertCrosstab(final CrosstabGroup crosstabGroup)
  {
    Group existingGroup = definition.getRootGroup();
    GroupBody gb = existingGroup.getBody();
    while (gb instanceof SubGroupBody)
    {
      final SubGroupBody sgb = (SubGroupBody) gb;
      existingGroup = sgb.getGroup();
      gb = existingGroup.getBody();
    }
    existingGroup.setBody(new SubGroupBody(crosstabGroup));
  }
View Full Code Here

    existingGroup.setBody(new SubGroupBody(crosstabGroup));
  }

  private CrosstabGroup lookupCrosstab()
  {
    Group existingGroup = definition.getRootGroup();
    if (existingGroup instanceof CrosstabGroup)
    {
      return (CrosstabGroup) existingGroup;
    }

    GroupBody gb = existingGroup.getBody();
    while (gb instanceof SubGroupBody)
    {
      final SubGroupBody sgb = (SubGroupBody) gb;
      existingGroup = sgb.getGroup();
      if (existingGroup instanceof CrosstabGroup)
      {
        return (CrosstabGroup) existingGroup;
      }
      gb = existingGroup.getBody();
    }

    return null;
  }
View Full Code Here

TOP

Related Classes of org.pentaho.reporting.engine.classic.core.Group

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.