Why do a remove and then create instead of a store/update? Did that not work for some reason?

-David


On Dec 2, 2008, at 9:23 PM, [EMAIL PROTECTED] wrote:

Author: hansbak
Date: Tue Dec  2 20:23:30 2008
New Revision: 722753

URL: http://svn.apache.org/viewvc?rev=722753&view=rev
Log:
remove timeentries from an invoice when invoice is cancelled

Modified:
ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/ invoice/InvoiceServices.xml

Modified: ofbiz/trunk/applications/accounting/script/org/ofbiz/ accounting/invoice/InvoiceServices.xml
URL: 
http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/invoice/InvoiceServices.xml?rev=722753&r1=722752&r2=722753&view=diff
= = = = = = = = ====================================================================== --- ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/ invoice/InvoiceServices.xml (original) +++ ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/ invoice/InvoiceServices.xml Tue Dec 2 20:23:30 2008
@@ -487,10 +487,19 @@
                </if-empty>
                <create-value value-name="newEntity"/>

- <!-- if new status is cancelled remove existing payment applications. --> + <!-- if new status is cancelled remove existing payment applications and time entries. --> <if-compare field="parameters.statusId" operator="equals" value="INVOICE_CANCELLED"> <set field="removePaymentApplicationMap.invoiceId" from- field="parameters.invoiceId"/> <remove-by-and entity-name="PaymentApplication" map-name="removePaymentApplicationMap"/> + <entity-and entity-name="TimeEntry" list- name="entries"> + <field-map field-name="invoiceId" env- name="parameters.invoiceId"/>
+                    </entity-and>
+                    <iterate entry-name="entry" list-name="entries">
+                        <remove-value value-name="entry"/>
+                        <clear-field field-name="entry.invoiceId"/>
+ <clear-field field- name="entry.invoiceItemSeqId"/>
+                        <create-value value-name="entry"/>
+                    </iterate>
                </if-compare>
            </else>
            </if-empty>



Reply via email to