ofbiz-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From er...@apache.org
Subject svn commit: r910587 - in /ofbiz/trunk/framework: common/webcommon/WEB-INF/actions/includes/FindAutocompleteOptions.groovy example/widget/example/FormWidgetExampleLookupScreens.xml
Date Tue, 16 Feb 2010 16:42:00 GMT
Author: erwan
Date: Tue Feb 16 16:42:00 2010
New Revision: 910587

URL: http://svn.apache.org/viewvc?rev=910587&view=rev
Log:
The auto-completer (in lookup fields) default behavior is "%fieldValue%" (contains operation).
This allows to change the behavior to "fieldValue%"(statrWith operation) when setting to "Y"
the searchTypeStartWith field

Modified:
    ofbiz/trunk/framework/common/webcommon/WEB-INF/actions/includes/FindAutocompleteOptions.groovy
    ofbiz/trunk/framework/example/widget/example/FormWidgetExampleLookupScreens.xml

Modified: ofbiz/trunk/framework/common/webcommon/WEB-INF/actions/includes/FindAutocompleteOptions.groovy
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/common/webcommon/WEB-INF/actions/includes/FindAutocompleteOptions.groovy?rev=910587&r1=910586&r2=910587&view=diff
==============================================================================
--- ofbiz/trunk/framework/common/webcommon/WEB-INF/actions/includes/FindAutocompleteOptions.groovy
(original)
+++ ofbiz/trunk/framework/common/webcommon/WEB-INF/actions/includes/FindAutocompleteOptions.groovy
Tue Feb 16 16:42:00 2010
@@ -32,7 +32,10 @@
 displayFields = context.displayFields ?: searchFields;
 searchValueFieldName = parameters.searchValueField;
 fieldValue = parameters.get(searchValueFieldName);
- 
+searchTypeStartWith = context.searchTypeStartWith;
+if( searchTypeStartWith == null){
+    searchTypeStartWith = "N";
+}
 if (searchFields && fieldValue) {
     searchFieldsList = StringUtil.toList(searchFields);
     displayFieldsSet = StringUtil.toSet(displayFields);
@@ -40,20 +43,26 @@
     displayFieldsSet.add(returnField); //add it to select fields, in case it is missing
     context.returnField = returnField;
     context.displayFieldsSet = displayFieldsSet;
-    searchFieldsList.each { fieldName -> 
-        andExprs.add(EntityCondition.makeCondition(EntityFunction.UPPER(EntityFieldValue.makeFieldValue(fieldName)),
EntityOperator.LIKE, "%" + fieldValue.toUpperCase() + "%"));
+    if("Y".equals(searchTypeStartWith.toUpperCase())){
+    	searchValue = fieldValue.toUpperCase() + "%";
+    }
+    else{
+    	searchValue = "%" + fieldValue.toUpperCase() + "%";
+    }
+    searchFieldsList.each { fieldName ->
+        andExprs.add(EntityCondition.makeCondition(EntityFunction.UPPER(EntityFieldValue.makeFieldValue(fieldName)),
EntityOperator.LIKE, searchValue));
     }
 }
-
+System.out.println(andExprs);
 if (andExprs && entityName && displayFieldsSet) {
     entityConditionList = EntityCondition.makeCondition(andExprs, EntityOperator.OR);
-    
-    //if there is an extra condition, add it to main condition 
+
+    //if there is an extra condition, add it to main condition
     if (context.andCondition && context.andCondition  instanceof EntityCondition)
{
         entityConditionList = EntityCondition.makeCondition(context.andCondition, entityConditionList);
     }
-    
-    Integer autocompleterViewSize = Integer.valueOf(context.autocompleterViewSize ?: 10);
    
+
+    Integer autocompleterViewSize = Integer.valueOf(context.autocompleterViewSize ?: 10);
     EntityFindOptions findOptions = new EntityFindOptions();
     findOptions.setMaxRows(autocompleterViewSize);
     autocompleteOptions = delegator.findList(entityName, entityConditionList, displayFieldsSet,
StringUtil.toList(displayFields), findOptions, false);

Modified: ofbiz/trunk/framework/example/widget/example/FormWidgetExampleLookupScreens.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/example/widget/example/FormWidgetExampleLookupScreens.xml?rev=910587&r1=910586&r2=910587&view=diff
==============================================================================
--- ofbiz/trunk/framework/example/widget/example/FormWidgetExampleLookupScreens.xml (original)
+++ ofbiz/trunk/framework/example/widget/example/FormWidgetExampleLookupScreens.xml Tue Feb
16 16:42:00 2010
@@ -41,6 +41,10 @@
                 <!-- it might be hidden based on widget.autocompleter.displayReturnField
property in widget.properties -->
                 <set field="searchFields" value="[partyId, firstName, middleName, lastName,
groupName]"/>
 
+                <!--  when set Y the auto-completer will search value using "fieldValue%"(statrWith
operation)-->
+                <!--  the default behavior is "%fieldValue%" (contains operation) -->
+                <set field="searchTypeStartWith" value="Y"/>
+
                 <!-- optional: fields to display in the given order, default is searchFields
-->
                 <set field="displayFields" value="[firstName, lastName, groupName]"/>
 
@@ -106,24 +110,24 @@
                 <property-map resource="PartyUiLabels" map-name="uiLabelMap" global="true"/>
                 <set field="title" value="${uiLabelMap.PartyLookupPartyPerson}"/>
                 <set field="queryString" from-field="result.queryString"/>
-                
+
                 <set field="viewIndex" from-field="parameters.VIEW_INDEX" type="Integer"
default-value="0"/>
                 <set field="viewSize" from-field="parameters.VIEW_SIZE" type="Integer"
default-value="20"/>
-                
+
                 <!-- entries needed for lookup ajax auto completer -->
                 <!-- required: entity to search in -->
                 <set field="entityName" value="PartyNameView"/>
-                
+
                 <!-- required: fields to search a match -->
                 <set field="searchFields" value="[partyId, firstName, middleName, lastName]"/>
-                
+
                 <!-- optional: field to return after user selection, default is first
element of searchFields -->
                 <!-- return field might be hidden based on widget.autocompleter.displayReturnField
property in widget.properties -->
                 <set field="returnField" value="partyId"/>
-                
+
                 <!-- optional: fields to display, default are searchFields -->
                 <set field="displayFields" value="[firstName, lastName]"/>
-                
+
             </actions>
             <widgets>
                 <decorator-screen name="LookupLayerPopupDecorator" location="component://common/widget/CommonScreens.xml">
@@ -136,6 +140,6 @@
                 </decorator-screen>
             </widgets>
         </section>
-    </screen>    
-    
+    </screen>
+
 </screens>
\ No newline at end of file



Mime
View raw message