Project: Birt
Bug 130686 Request for an Aggregate builder in BIRT report designer
Reported: 2006-03-06 22:11:03 | Status: resolved fixed

It is somewhat difficult for a new BIRT user to figure out how to build an aggregate without reading the help or looking at examples. It's even more difficult to build an advanced aggregate (those that take advantage of filtering and non-default groupin. The issues are: (1) Aggregates are buried under BIRT functions/Total object in Expression builder. A novice may not be able to immediately locate this when he needs an aggregate. (2) The filter and group parameters are difficult to figure out without help. We should consider adding an aggregate builder to the Expression Builder. Some usability study is needed to figure out the exact UI, but I suggest the following guidelines: * Expression builder should list Aggregates as a top level construct (alongside operators/functions/data sets etc) rather than listing them under functions. * When an aggregate is selected, the builder should have a dialog to help the user construct the various arguments to the aggregate function, including (1) picking a column (or build an expression) to aggregate on; (2) Pick a group from a list of available groups; (3) build a filter expression

Files changed in fix:
UI/org.eclipse.birt.report.designer.ui.editors/src/org/eclipse/birt/report/designer/internal/ui/extension/EditorContributorManager.java UI/org.eclipse.birt.report.designer.ui.views/src/org/eclipse/birt/report/designer/internal/ui/views/attributes/provider/AggregateOnBindingsFormHandleProvider.java UI/org.eclipse.birt.report.designer.ui.views/src/org/eclipse/birt/report/designer/internal/ui/views/attributes/widget/AggregateOnBindingsFormDescriptor.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/AggDataDropAdapter.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/dialogs/AbstractBindingDialogHelper.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/dialogs/BindingDialogFactory.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/dialogs/BindingDialogHelper.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/dialogs/DataColumnBindingDialog.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/dialogs/DataItemBindingDialog.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/dialogs/IBindingDialogHelper.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/editors/schematic/editparts/DataEditPart.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/editors/schematic/editparts/ListEditPart.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/editors/schematic/editparts/ReportElementEditPart.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/editors/schematic/editparts/TableEditPart.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/editors/schematic/providers/SchematicContextMenuProvider.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/internal/ui/palette/DesignerPaletteFactory.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/ui/IReportGraphicConstants.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/ui/ReportPlatformUIImages.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/ui/actions/BaseInsertMenuAction.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/ui/views/ElementAdapter.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/ui/views/ElementAdapterInvocationHandler.java UI/org.eclipse.birt.report.designer.ui/src/org/eclipse/birt/report/designer/ui/views/ElementAdapterManager.java xtab/org.eclipse.birt.report.item.crosstab.ui/src/org/eclipse/birt/report/item/crosstab/internal/ui/CreateCrosstabHandler.java xtab/org.eclipse.birt.report.item.crosstab.ui/src/org/eclipse/birt/report/item/crosstab/internal/ui/CrosstabCellMenuAdapterFactory.java xtab/org.eclipse.birt.report.item.crosstab.ui/src/org/eclipse/birt/report/item/crosstab/internal/ui/dialogs/CrosstabBindingDialogFactory.java xtab/org.eclipse.birt.report.item.crosstab.ui/src/org/eclipse/birt/report/item/crosstab/internal/ui/dialogs/CrosstabBindingDialogHelper.java xtab/org.eclipse.birt.report.item.crosstab.ui/src/org/eclipse/birt/report/item/crosstab/internal/ui/editors/editparts/CrosstabTableEditPart.java