Author: doogie
Date: Fri Nov 13 03:59:34 2009 New Revision: 835729 URL: http://svn.apache.org/viewvc?rev=835729&view=rev Log: Allow for setting groupBy fields with just a simple list. Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/DynamicViewEntity.java ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelViewEntity.java Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/DynamicViewEntity.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/DynamicViewEntity.java?rev=835729&r1=835728&r2=835729&view=diff ============================================================================== --- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/DynamicViewEntity.java (original) +++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/DynamicViewEntity.java Fri Nov 13 03:59:34 2009 @@ -60,6 +60,9 @@ /** List of aliases with information in addition to what is in the standard field list */ protected List<ModelAlias> aliases = new ArrayList<ModelAlias>(); + /** List of fields to group by */ + protected List<String> groupBy; + /** List of view links to define how entities are connected (or "joined") */ protected List<ModelViewLink> viewLinks = new ArrayList<ModelViewLink>(); @@ -211,4 +214,14 @@ public void addAllRelationsToList(List<ModelRelation> addList) { addList.addAll(this.relations); } + + public void setGroupBy(List<String> groupBy) { + this.groupBy = groupBy; + } + + public void addAllGroupByFieldsToList(List<String> addList) { + if (groupBy != null) { + addList.addAll(this.groupBy); + } + } } Modified: ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelViewEntity.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelViewEntity.java?rev=835729&r1=835728&r2=835729&view=diff ============================================================================== --- ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelViewEntity.java (original) +++ ofbiz/trunk/framework/entity/src/org/ofbiz/entity/model/ModelViewEntity.java Fri Nov 13 03:59:34 2009 @@ -88,6 +88,9 @@ /** A List of the Field objects for the View Entity, one for each GROUP BY field */ protected List<ModelField> groupBys = FastList.newInstance(); + /** List of field names to group by */ + protected List<String> groupByFields = FastList.newInstance(); + protected Map<String, Map<String, ModelConversion>> conversions = FastMap.newInstance(); protected ViewEntityCondition viewEntityCondition = null; @@ -165,6 +168,8 @@ // relations dynamicViewEntity.addAllRelationsToList(this.relations); + dynamicViewEntity.addAllGroupByFieldsToList(this.groupByFields); + // finalize stuff // note that this doesn't result in a call to populateReverseLinks because a DynamicViewEntity should never be cached anyway, and will blow up when attempting to make the reverse links to the DynamicViewEntity this.populateFieldsBasic(modelReader); @@ -430,7 +435,7 @@ field.description = alias.description; // if this is a groupBy field, add it to the groupBys list - if (alias.groupBy) { + if (alias.groupBy || groupByFields.contains(alias.name)) { this.groupBys.add(field); } |
Free forum by Nabble | Edit this page |