Author: jleroux
Date: Sat Feb 18 22:06:51 2012 New Revision: 1290890 URL: http://svn.apache.org/viewvc?rev=1290890&view=rev Log: A patch from Ankit Jain "If Picklist is Cancelled than all the PicklistItem related to that PicklistId should also get Cancel." https://issues.apache.org/jira/browse/OFBIZ-4690 If we cancel a picklist from Manage Picklist screen then this ECA will fire and cancel all the PicklistItem. Modified: ofbiz/trunk/applications/product/entitydef/eecas.xml ofbiz/trunk/applications/product/script/org/ofbiz/shipment/picklist/PicklistServices.xml ofbiz/trunk/applications/product/servicedef/services_picklist.xml Modified: ofbiz/trunk/applications/product/entitydef/eecas.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/entitydef/eecas.xml?rev=1290890&r1=1290889&r2=1290890&view=diff ============================================================================== --- ofbiz/trunk/applications/product/entitydef/eecas.xml (original) +++ ofbiz/trunk/applications/product/entitydef/eecas.xml Sat Feb 18 22:06:51 2012 @@ -70,6 +70,11 @@ under the License. <condition field-name="availableToPromiseDiff" operator="not-equals" value="0" type="BigDecimal"/> <action service="setLastInventoryCount" mode="sync"/> </eca> + <!-- If the Picklist status is Cancelled then cancel all the PicklistItems --> + <eca entity="Picklist" operation="create-store" event="return"> + <condition field-name="statusId" operator="equals" value="PICKLIST_CANCELLED"/> + <action service="cancelPicklistAndItems" mode="async"/> + </eca> <!-- Product GroupOrder ECAs --> <eca entity="ProductGroupOrder" operation="create" event="return"> Modified: ofbiz/trunk/applications/product/script/org/ofbiz/shipment/picklist/PicklistServices.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/script/org/ofbiz/shipment/picklist/PicklistServices.xml?rev=1290890&r1=1290889&r2=1290890&view=diff ============================================================================== --- ofbiz/trunk/applications/product/script/org/ofbiz/shipment/picklist/PicklistServices.xml (original) +++ ofbiz/trunk/applications/product/script/org/ofbiz/shipment/picklist/PicklistServices.xml Sat Feb 18 22:06:51 2012 @@ -1672,4 +1672,23 @@ under the License. </else> </if-compare> </simple-method> + + <simple-method method-name="cancelPicklistAndItems" short-description="If Picklist is Cancelled then cancel all the PicklistItem"> + <entity-and entity-name="PicklistBin" list="picklistBinList"> + <field-map field-name="picklistId" from-field="parameters.picklistId"/> + </entity-and> + <if-not-empty field="picklistBinList"> + <iterate entry="picklistBin" list="picklistBinList"> + <entity-and entity-name="PicklistItem" list="itemList"> + <field-map field-name="picklistBinId" from-field="picklistBin.picklistBinId"/> + </entity-and> + <if-not-empty field="itemList"> + <iterate entry="item" list="itemList"> + <set field="item.itemStatusId" value="PICKITEM_CANCELLED"/> + <store-value value-field="item"/> + </iterate> + </if-not-empty> + </iterate> + </if-not-empty> + </simple-method> </simple-methods> Modified: ofbiz/trunk/applications/product/servicedef/services_picklist.xml URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/servicedef/services_picklist.xml?rev=1290890&r1=1290889&r2=1290890&view=diff ============================================================================== --- ofbiz/trunk/applications/product/servicedef/services_picklist.xml (original) +++ ofbiz/trunk/applications/product/servicedef/services_picklist.xml Sat Feb 18 22:06:51 2012 @@ -179,6 +179,11 @@ under the License. <auto-attributes include="pk" mode="IN" optional="false"/> <auto-attributes include="nonpk" mode="IN" optional="false"/> </service> + <service name="cancelPicklistAndItems" engine="simple" + location="component://product/script/org/ofbiz/shipment/picklist/PicklistServices.xml" invoke="cancelPicklistAndItems" auth="true"> + <description>If Picklist is Cancelled then cancel all the PicklistItems.</description> + <attribute name="picklistId" type="String" mode="IN"/> + </service> <!-- PicklistRole --> <service name="createPicklistRole" default-entity-name="PicklistRole" engine="simple" |
Free forum by Nabble | Edit this page |