[
https://issues.apache.org/jira/browse/OFBIZ-6427?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Christian Carlow updated OFBIZ-6427:
------------------------------------
Attachment: OFBIZ-6427.patch
This patch enhances the last. All find field types are now support by extending FieldInfo to handle sort/group functionality. A interface or abstract class like FindField was considered to eliminate sort/group functionality code redundancy for all find fields but found too difficult to implement with the existing framework so FieldInfo was used as the simplest solution.
<auto-fields-entity> was also enhanced to support "find-sort" for showing sort fields and "find-sort-group" for showing sort and group fields as extensions of default-field-type="find".
SubmitField was also enhanced to support a showDetails drop down to control the display of group details for group rows.
There is still more to be done but it seems more than 1/2 complete now with much of the most difficult logic in place. Remaining enhancements include supporting <auto-fields-service>, cleaning up the UI now that it gets extremely cluttered with all sort and group fields displayed, and replacing the hard coded English with uiLabelMap translations.
> Implement FindService record grouping/summarization functionality
> -----------------------------------------------------------------
>
> Key: OFBIZ-6427
> URL:
https://issues.apache.org/jira/browse/OFBIZ-6427> Project: OFBiz
> Issue Type: Improvement
> Components: framework
> Affects Versions: Trunk
> Reporter: Christian Carlow
> Attachments: OFBIZ-6427.patch
>
>
> Just as sortSeq and sortDir will be added to find fields like ignoreCase is available, groupBy check box would also enhance user query capabilities. FindService would have to be extended to process the list and create group/summary records.
> For example, if a grid/form lists customer orders and the user wants to determine the total quantity and price of products ordered between a date range, then check marking the groupBy for productId would insert a grouping record before the details containing totals.
> This issue is primarily meant to handle reports for which pagination isn't used because all records are displayed. For these reports queries, group totals can simply be calculated by looping each detail record. But if pagination is used, the method of calculating totals for grouping records becomes more complicated because if detail records exist outside of the current page but are part of a group being summarized then they will be excluded from the group total unless implemented some other way.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)