svn commit: r809984 - in /ofbiz/trunk/applications/accounting: ./ data/ entitydef/ script/org/ofbiz/accounting/ script/org/ofbiz/accounting/finaccount/ script/org/ofbiz/accounting/ledger/ servicedef/ webapp/accounting/finaccounttrans/ widget/

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r809984 - in /ofbiz/trunk/applications/accounting: ./ data/ entitydef/ script/org/ofbiz/accounting/ script/org/ofbiz/accounting/finaccount/ script/org/ofbiz/accounting/ledger/ servicedef/ webapp/accounting/finaccounttrans/ widget/

ashish-18
Author: ashish
Date: Tue Sep  1 11:51:29 2009
New Revision: 809984

URL: http://svn.apache.org/viewvc?rev=809984&view=rev
Log:
Applied patch from jira issue OFBIZ-2877 -   Add a new field nanmed - "statusId" to "GlReconciliation" entity.
Thanks Parimal & Sumit for the Contribution.

Please don't forget to update the info about migration on: http://docs.ofbiz.org/x/XxQ

Added:
    ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/UpgradeServices.xml   (with props)
    ofbiz/trunk/applications/accounting/servicedef/services_upgrade.xml   (with props)
Modified:
    ofbiz/trunk/applications/accounting/data/AccountingTypeData.xml
    ofbiz/trunk/applications/accounting/data/DemoGlSetupData.xml
    ofbiz/trunk/applications/accounting/entitydef/entitymodel.xml
    ofbiz/trunk/applications/accounting/ofbiz-component.xml
    ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/finaccount/FinAccountServices.xml
    ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/ledger/GeneralLedgerServices.xml
    ofbiz/trunk/applications/accounting/servicedef/secas_ledger.xml
    ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml
    ofbiz/trunk/applications/accounting/webapp/accounting/finaccounttrans/FinAccountTrans.ftl
    ofbiz/trunk/applications/accounting/widget/FinAccountForms.xml
    ofbiz/trunk/applications/accounting/widget/GlForms.xml

Modified: ofbiz/trunk/applications/accounting/data/AccountingTypeData.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/data/AccountingTypeData.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/data/AccountingTypeData.xml (original)
+++ ofbiz/trunk/applications/accounting/data/AccountingTypeData.xml Tue Sep  1 11:51:29 2009
@@ -1051,4 +1051,10 @@
     <EnumerationType description="Store Credit Account" enumTypeId="STR_CRDT_ACT" hasTable="N" parentTypeId=""/>
     <Enumeration description="Financial Account" enumCode="FINACCOUNT" enumId="FIN_ACCOUNT" sequenceId="01" enumTypeId="STR_CRDT_ACT"/>
     <Enumeration description="Billing Account" enumCode="BILLACCOUNT" enumId="BILLING_ACCOUNT" sequenceId="02" enumTypeId="STR_CRDT_ACT"/>
+
+    <!--GlReconciliation Status-->
+    <StatusType statusTypeId="GLREC_STATUS" description="Gl Reconciliation Status" hasTable="N" parentTypeId=""/>
+    <StatusItem statusId="GLREC_CREATED" statusTypeId="GLREC_STATUS" statusCode="CREATED" sequenceId="11" description="Created"/>
+    <StatusItem statusId="GLREC_RECONCILED" statusTypeId="GLREC_STATUS" statusCode="RECONCILED" sequenceId="12" description="Reconciled"/>
+    <StatusValidChange condition="" statusId="GLREC_CREATED" statusIdTo="GLREC_RECONCILED" transitionName="Set Created to Reconciled"/>
 </entity-engine-xml>

Modified: ofbiz/trunk/applications/accounting/data/DemoGlSetupData.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/data/DemoGlSetupData.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/data/DemoGlSetupData.xml (original)
+++ ofbiz/trunk/applications/accounting/data/DemoGlSetupData.xml Tue Sep  1 11:51:29 2009
@@ -400,8 +400,8 @@
     <UomConversionDated uomId="USD" uomIdTo="EUR" fromDate="2001-01-01 00:00:00.0" conversionFactor="0.7"/><!-- to convert demo invoice -->
 
     <!-- Gl Reconciliation -->
-    <GlReconciliation glReconciliationId="9000" glReconciliationName="demoGlReconciliation" glAccountId="111100" organizationPartyId="Company" reconciledBalance="75000.00" reconciledDate="2009-08-08 20:03:14.000"/>
-    <GlReconciliation glReconciliationId="9001" glReconciliationName="testGlReconciliation" glAccountId="111100" organizationPartyId="Company" reconciledDate="2009-08-12 20:03:14.000"/>
+    <GlReconciliation glReconciliationId="9000" glReconciliationName="demoGlReconciliation" glAccountId="111100" statusId="GLREC_RECONCILED" organizationPartyId="Company" reconciledBalance="75000.00" reconciledDate="2009-08-08 20:03:14.000"/>
+    <GlReconciliation glReconciliationId="9001" glReconciliationName="testGlReconciliation" glAccountId="111100" statusId="GLREC_CREATED" organizationPartyId="Company" reconciledDate="2009-08-12 20:03:14.000"/>
 
     <GlAccountCategoryMember glAccountId="112000" glAccountCategoryId="9301" fromDate="2009-07-08 11:54:03.8" amountPercentage="50"/>
     <GlAccountCategoryMember glAccountId="112000" glAccountCategoryId="9302" fromDate="2009-07-08 11:54:03.8" amountPercentage="20"/>

Modified: ofbiz/trunk/applications/accounting/entitydef/entitymodel.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/entitydef/entitymodel.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/entitydef/entitymodel.xml (original)
+++ ofbiz/trunk/applications/accounting/entitydef/entitymodel.xml Tue Sep  1 11:51:29 2009
@@ -2181,6 +2181,7 @@
       <field name="createdByUserLogin" type="id-vlong"></field>
       <field name="lastModifiedByUserLogin" type="id-vlong"></field>
       <field name="glAccountId" type="id-ne"></field>
+      <field name="statusId" type="id-ne"></field>
       <field name="organizationPartyId" type="id-ne"></field>
       <field name="reconciledBalance" type="currency-amount"></field>
       <field name="reconciledDate" type="date-time"></field>
@@ -2191,6 +2192,9 @@
       <relation type="one" fk-name="GLREC_GLPARTY" rel-entity-name="Party">
         <key-map field-name="organizationPartyId" rel-field-name="partyId"/>
       </relation>
+      <relation type="one" fk-name="GLREC_STI" rel-entity-name="StatusItem">
+        <key-map field-name="statusId"/>
+      </relation>
     </entity>
     <entity entity-name="GlReconciliationEntry"
             package-name="org.ofbiz.accounting.ledger"

Modified: ofbiz/trunk/applications/accounting/ofbiz-component.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/ofbiz-component.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/ofbiz-component.xml (original)
+++ ofbiz/trunk/applications/accounting/ofbiz-component.xml Tue Sep  1 11:51:29 2009
@@ -76,6 +76,9 @@
     <service-resource type="model" loader="main" location="servicedef/services_verisign.xml"/>
     <service-resource type="model" loader="main" location="servicedef/services_orbital.xml"/>
 
+    <!-- Accounting Migration Service Definition -->
+    <service-resource type="model" loader="main" location="servicedef/services_upgrade.xml"/>
+
     <service-resource type="group" loader="main" location="servicedef/groups.xml"/>
     <service-resource type="eca" loader="main" location="servicedef/secas.xml"/>
     <service-resource type="eca" loader="main" location="servicedef/secas_payment.xml"/>

Added: ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/UpgradeServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/UpgradeServices.xml?rev=809984&view=auto
==============================================================================
--- ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/UpgradeServices.xml (added)
+++ ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/UpgradeServices.xml Tue Sep  1 11:51:29 2009
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<simple-methods xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/simple-methods.xsd">
+
+    <simple-method method-name="migrateStatusToGlReconciliation" short-description="Migrate statusId to GlReconciliation entity">
+        <entity-condition entity-name="GlReconciliation" list="glReconciliationList">
+            <use-iterator/>
+        </entity-condition>
+        <iterate list="glReconciliationList" entry="glReconciliation">
+            <if-empty field="glReconciliation.statusId">
+                <if-empty field="glReconciliation.reconciledBalance">
+                    <set field="glReconciliation.statusId" value="GLREC_CREATED"/>
+                <else>
+                    <set field="glReconciliation.statusId" value="GLREC_RECONCILED"/>
+                </else>
+                </if-empty>
+                <store-value value-field="glReconciliation"/>
+            </if-empty>
+        </iterate>
+    </simple-method>
+</simple-methods>
\ No newline at end of file

Propchange: ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/UpgradeServices.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/UpgradeServices.xml
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/UpgradeServices.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/finaccount/FinAccountServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/finaccount/FinAccountServices.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/finaccount/FinAccountServices.xml (original)
+++ ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/finaccount/FinAccountServices.xml Tue Sep  1 11:51:29 2009
@@ -652,30 +652,39 @@
         <now-timestamp field="nowTimestamp"/>
         <entity-one entity-name="FinAccountTrans" value-field="finAccountTrans" auto-field-map="true"/>
         <if-not-empty field="finAccountTrans.glReconciliationId">
-            <get-related-one relation-name="GlReconciliation" value-field="finAccountTrans" to-value-field="glReconciliation"/>
-            <set-service-fields service-name="updateGlReconciliation" map="glReconciliation" to-map="updateGlReconciliationMap"/>
+            <!-- Create AcctgTrans, AcctgTransEntries and GlReconciliationEntries -->
             <if-compare field="finAccountTrans.finAccountTransTypeId" operator="equals" value="ADJUSTMENT">
                 <set-service-fields service-name="reconcileAdjustmentFinAcctgTrans" map="parameters" to-map="reconcileAdjustmentFinAcctgTransMap"/>
                 <set field="reconcileAdjustmentFinAcctgTransMap.finAccountTrans" from-field="finAccountTrans"/>
                 <set field="reconcileAdjustmentFinAcctgTransMap.organizationPartyId" from-field="parameters.organizationPartyId"/>
                 <call-service service-name="reconcileAdjustmentFinAcctgTrans" in-map-name="reconcileAdjustmentFinAcctgTransMap"/>
-                <set field="updateGlReconciliationMap.reconciledBalance" value="${glReconciliation.reconciledBalance + finAccountTrans.amount}"/>
             </if-compare>
             <if-compare field="finAccountTrans.finAccountTransTypeId" operator="equals" value="DEPOSIT">
                 <set-service-fields service-name="reconcileDepositFinAcctgTrans" map="parameters" to-map="reconcileDepositFinAcctgTransMap"/>
                 <set field="reconcileDepositFinAcctgTransMap.finAccountTrans" from-field="finAccountTrans"/>
                 <call-service service-name="reconcileDepositFinAcctgTrans" in-map-name="reconcileDepositFinAcctgTransMap"/>
-                <set field="updateGlReconciliationMap.reconciledBalance" value="${glReconciliation.reconciledBalance + finAccountTrans.amount}"/>
             </if-compare>
             <if-compare field="finAccountTrans.finAccountTransTypeId" operator="equals" value="WITHDRAWAL">
                 <set-service-fields service-name="reconcileWithdrawalFinAcctgTrans" map="parameters" to-map="reconcileWithdrawalFinAcctgTransMap"/>
                 <set field="reconcileWithdrawalFinAcctgTransMap.finAccountTrans" from-field="finAccountTrans"/>
                 <call-service service-name="reconcileWithdrawalFinAcctgTrans" in-map-name="reconcileWithdrawalFinAcctgTransMap"/>
-                <set field="updateGlReconciliationMap.reconciledBalance" value="${glReconciliation.reconciledBalance - finAccountTrans.amount}"/>
             </if-compare>
+
+            <!-- Update FinAccount Trans Record -->
             <set-service-fields service-name="setFinAccountTransStatus" map="finAccountTrans" to-map="setFinAccountTransStatusMap"/>
             <set field="setFinAccountTransStatusMap.statusId" value="FINACT_TRNS_APPROVED"/>
             <call-service service-name="setFinAccountTransStatus" in-map-name="setFinAccountTransStatusMap"/>
+
+            <!-- Update GlReconciliation record -->
+            <get-related-one relation-name="GlReconciliation" value-field="finAccountTrans" to-value-field="glReconciliation"/>
+            <set-service-fields service-name="updateGlReconciliation" map="glReconciliation" to-map="updateGlReconciliationMap"/>
+            <set field="isAdjustmentOrDeposit" value="${finAccountTrans.finAccountTransTypeId == 'ADJUSTMENT' @or finAccountTrans.finAccountTransTypeId == 'DEPOSIT'}" type="Boolean"/>
+            <if-compare field="isAdjustmentOrDeposit" operator="equals" value="true" type="Boolean">
+                <set field="updateGlReconciliationMap.reconciledBalance" value="${glReconciliation.reconciledBalance + finAccountTrans.amount}"/>
+            <else>
+                <set field="updateGlReconciliationMap.reconciledBalance" value="${glReconciliation.reconciledBalance - finAccountTrans.amount}"/>
+            </else>
+            </if-compare>
             <set field="isGlReconciliationReconciledMap.glReconciliationId" from-field="finAccountTrans.glReconciliationId"/>
             <call-service service-name="isGlReconciliationReconciled" in-map-name="isGlReconciliationReconciledMap">
                 <result-to-field result-name="isReconciled"/>
@@ -936,7 +945,7 @@
         <entity-one entity-name="FinAccountTrans" value-field="finAccountTrans"/>
         <set field="glReconciliationId" from-field="parameters.glReconciliationId"/>
         <entity-one entity-name="GlReconciliation" value-field="glReconciliation"/>
-        <if-empty field="glReconciliation.reconciledBalance">
+        <if-compare field="glReconciliation.statusId" operator="equals" value="GLREC_CREATED">
             <if-compare field="finAccountTrans.statusId" operator="not-equals" value="FINACT_TRNS_CREATED">
                 <add-error><fail-property resource="AccountingUiLabels" property="AccountingInvalidGlReconciliationAssignment"/></add-error>
                 <check-errors/>
@@ -966,7 +975,7 @@
             <add-error><fail-property resource="AccountingUiLabels" property="AccountingInvalidGlReconciliation"/></add-error>
             <check-errors/>
         </else>
-        </if-empty>
+        </if-compare>
     </simple-method>
 
     <simple-method method-name="removeFinAccountTransFromReconciliation" short-description="Remove finAccountTrans from reconciliation">

Modified: ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/ledger/GeneralLedgerServices.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/ledger/GeneralLedgerServices.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/ledger/GeneralLedgerServices.xml (original)
+++ ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/ledger/GeneralLedgerServices.xml Tue Sep  1 11:51:29 2009
@@ -202,9 +202,15 @@
         <set from-field="userLogin.userLoginId" field="newEntity.lastModifiedByUserLogin"/>
         <set from-field="userLogin.userLoginId" field="newEntity.createdByUserLogin"/>
 
+        <if-empty field="newEntity.statusId">
+            <set field="newEntity.statusId" value="GLREC_CREATED"/>
+        </if-empty>
         <create-value value-field="newEntity"/>
     </simple-method>
     <simple-method method-name="updateGlReconciliation" short-description="Update an GlReconciliation">
+        <set-service-fields service-name="setGlReconciliationStatus" map="parameters" to-map="setGlReconciliationStatusMap"/>
+        <call-service service-name="setGlReconciliationStatus" in-map-name="setGlReconciliationStatusMap"/>
+        <check-errors/>
         <entity-one entity-name="GlReconciliation" value-field="lookedUpValue"/>
         <set-nonpk-fields map="parameters" value-field="lookedUpValue"/>
 
@@ -243,6 +249,12 @@
         <call-service service-name="updateAcctgTransEntry" in-map-name="updateAcctgTransEntryInMap"/>
         <check-errors/>
 
+        <!-- Returns status "Reconciled" if it is "Created" -->
+        <entity-one entity-name="GlReconciliation" value-field="glReconciliation"/>
+        <if-compare field="glReconciliation.statusId" operator="equals" value="GLREC_CREATED">
+            <set field="statusId" value="GLREC_RECONCILED"/>
+            <field-to-result field="statusId"/>
+        </if-compare>
         <!-- when changing entries, also update the last modified info for the GlReconciliation -->
         <call-simple-method method-name="updateGlReconciliationLastModified"/>
     </simple-method>
@@ -2673,4 +2685,24 @@
             </if-compare>
         </if-not-empty>
     </simple-method>
+
+    <simple-method method-name="setGlReconciliationStatus" short-description="Set Gl Reconciliation status">
+        <entity-one entity-name="GlReconciliation" value-field="glReconciliation"/>
+        <field-to-result field="glReconciliation.statusId" result-name="oldStatusId"/>
+        <if-compare-field field="glReconciliation.statusId" operator="not-equals" to-field="parameters.statusId">
+            <entity-one entity-name="StatusValidChange" value-field="statusChange" auto-field-map="false">
+                <field-map field-name="statusId" from-field="glReconciliation.statusId"/>
+                <field-map field-name="statusIdTo" from-field="parameters.statusId"/>
+            </entity-one>
+            <if-empty field="statusChange">
+                <add-error><fail-property resource="AccountingUiLabels" property="AccountingPSInvalidStatusChange"/></add-error>
+                <log level="error" message="Cannot change from ${glReconciliation.statusId} to ${parameters.statusId}"/>
+                <check-errors/>
+            <else>
+                <set field="glReconciliation.statusId" from-field="parameters.statusId"/>
+                <store-value value-field="glReconciliation"/>
+            </else>
+            </if-empty>
+        </if-compare-field>
+    </simple-method>
 </simple-methods>

Modified: ofbiz/trunk/applications/accounting/servicedef/secas_ledger.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/servicedef/secas_ledger.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/servicedef/secas_ledger.xml (original)
+++ ofbiz/trunk/applications/accounting/servicedef/secas_ledger.xml Tue Sep  1 11:51:29 2009
@@ -138,4 +138,10 @@
         <condition field-name="invoiceId" operator="is-not-empty"/>
         <action service="createAcctgTransAndEntriesForPaymentApplication" mode="sync"/>
     </eca>
+
+    <!-- set GlReconciliation status after creating GlReconciliation Entries -->
+    <eca service="createGlReconciliationEntry" event="commit">
+        <condition field-name="statusId" operator="is-not-empty"/>
+        <action service="setGlReconciliationStatus" mode="sync"/>
+    </eca>
 </service-eca>
\ No newline at end of file

Modified: ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml (original)
+++ ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml Tue Sep  1 11:51:29 2009
@@ -165,6 +165,7 @@
         <permission-service service-name="basicGeneralLedgerPermissionCheck" main-action="CREATE"/>
         <auto-attributes include="pk" mode="IN" optional="false"/>
         <auto-attributes include="nonpk" mode="IN" optional="false"/>
+        <attribute name="statusId" type="String" mode="OUT" optional="true"/>
     </service>
     <service name="updateGlReconciliationEntry" default-entity-name="GlReconciliationEntry" engine="simple"
             location="component://accounting/script/org/ofbiz/accounting/ledger/GeneralLedgerServices.xml" invoke="updateGlReconciliationEntry" auth="true">
@@ -682,5 +683,12 @@
         <attribute name="glAccountCategoryId" mode="IN" type="String"/>
         <attribute name="amountPercentage" mode="IN" type="BigDecimal" optional="true"/>
     </service>
-    
+
+    <service name="setGlReconciliationStatus" engine="simple"
+            location="component://accounting/script/org/ofbiz/accounting/ledger/GeneralLedgerServices.xml" invoke="setGlReconciliationStatus">
+        <description>Set Gl Reconciliation status</description>
+        <attribute name="glReconciliationId" type="String" mode="IN" optional="false"/>
+        <attribute name="statusId" type="String" mode="IN" optional="false"/>
+        <attribute name="oldStatusId" type="String" mode="OUT" optional="true"/>
+    </service>
 </services>

Added: ofbiz/trunk/applications/accounting/servicedef/services_upgrade.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/servicedef/services_upgrade.xml?rev=809984&view=auto
==============================================================================
--- ofbiz/trunk/applications/accounting/servicedef/services_upgrade.xml (added)
+++ ofbiz/trunk/applications/accounting/servicedef/services_upgrade.xml Tue Sep  1 11:51:29 2009
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+
+<services xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+        xsi:noNamespaceSchemaLocation="http://ofbiz.apache.org/dtds/services.xsd">
+    <description>Accounting Services</description>
+    <vendor>OFBiz</vendor>
+
+    <service name="migrateStatusToGlReconciliation" engine="simple"
+            location="component://accounting/script/org/ofbiz/accounting/UpgradeServices.xml" invoke="migrateStatusToGlReconciliation">
+        <description>
+            Migrate statusId to GlReconciliation entity,
+            this service can be used to upgrade existing data i.e it sets the statusId(new field in entity) to "Created" if reconciledBalance found empty otherwise sets "Reconciled".
+            Before running this service, load the seed data for StatusType and StatusItem from the file :
+            accounting/data/AccountingTypeData.xml
+        </description>
+    </service>
+</services>
\ No newline at end of file

Propchange: ofbiz/trunk/applications/accounting/servicedef/services_upgrade.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: ofbiz/trunk/applications/accounting/servicedef/services_upgrade.xml
------------------------------------------------------------------------------
    svn:keywords = Date Rev Author URL Id

Propchange: ofbiz/trunk/applications/accounting/servicedef/services_upgrade.xml
------------------------------------------------------------------------------
    svn:mime-type = text/xml

Modified: ofbiz/trunk/applications/accounting/webapp/accounting/finaccounttrans/FinAccountTrans.ftl
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/webapp/accounting/finaccounttrans/FinAccountTrans.ftl?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/webapp/accounting/finaccounttrans/FinAccountTrans.ftl (original)
+++ ofbiz/trunk/applications/accounting/webapp/accounting/finaccounttrans/FinAccountTrans.ftl Tue Sep  1 11:51:29 2009
@@ -94,7 +94,7 @@
         <input name="openingBalance" type="hidden" value="${glReconciliationApprovedGrandTotal}"/>
         <input name="openingBalanceWithUom" type="hidden" id="openingBalanceWithUom" value="<@ofbizCurrency amount=glReconciliationApprovedGrandTotal?if_exists/>"/>
       </#if>
-      <#assign glReconciliations = delegator.findByAnd("GlReconciliation", {"glAccountId" : finAccount.postToGlAccountId, "reconciledBalance" : null}, Static["org.ofbiz.base.util.UtilMisc"].toList("reconciledDate DESC"))>
+      <#assign glReconciliations = delegator.findByAnd("GlReconciliation", {"glAccountId" : finAccount.postToGlAccountId, "statusId" : "GLREC_CREATED"}, Static["org.ofbiz.base.util.UtilMisc"].toList("reconciledDate DESC"))>
       <#if (glReconciliationId?has_content && (glReconciliationId == "_NA_" && finAccountTransList?has_content)) || !grandTotal?exists>
         <div align="right">
           <#if grandTotal?exists>

Modified: ofbiz/trunk/applications/accounting/widget/FinAccountForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/widget/FinAccountForms.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/widget/FinAccountForms.xml (original)
+++ ofbiz/trunk/applications/accounting/widget/FinAccountForms.xml Tue Sep  1 11:51:29 2009
@@ -422,6 +422,7 @@
                 <parameter param-name="finAccountId"/>
             </hyperlink>
         </field>
+        <field name="statusId" title="${uiLabelMap.CommonStatus}"><display-entity entity-name="StatusItem"/></field>
         <field name="organizationPartyId" title="${uiLabelMap.PartyParty}">
             <hyperlink target="/partymgr/control/viewprofile" target-type="inter-app" description="${partyName.firstName} ${partyName.lastName}${partyName.groupName} [${partyName.partyId}]">
                 <parameter param-name="partyId" from-field="partyName.partyId"/>

Modified: ofbiz/trunk/applications/accounting/widget/GlForms.xml
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/widget/GlForms.xml?rev=809984&r1=809983&r2=809984&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/widget/GlForms.xml (original)
+++ ofbiz/trunk/applications/accounting/widget/GlForms.xml Tue Sep  1 11:51:29 2009
@@ -788,6 +788,14 @@
         <field name="glReconciliationName"><text/></field>
         <field name="description"><text/></field>
         <field name="glAccountId"><display/></field>
+        <field name="statusId" use-when="glReconciliationId == null"><hidden value="GLREC_CREATED"/></field>
+        <field name="statusId" use-when="glReconciliationId != null" title="${uiLabelMap.CommonStatus}">
+            <drop-down>
+                <entity-options entity-name="StatusItem" description="${description}">
+                    <entity-constraint name="statusTypeId" value="GLREC_STATUS"/>
+                </entity-options>
+            </drop-down>
+        </field>
         <field name="reconciledDate"><date-time/></field>
         <field name="organizationPartyId"><display/></field>
         <field name="reconciledBalance"><display/></field>