Author: ashish
Date: Fri Sep 18 08:09:02 2009
New Revision: 816517
URL: http://svn.apache.org/viewvc?rev=816517&view=rev
Log:
Applied patch from jira issue OFBIZ-2783 - Cost Centers: implement new
accounting screen to associate gl accounts to "cost centers"
Thanks Brajesh, Rishi, Anil.
Special thanks to Jacopo for providing wonderful notes for the implementation.
Added:
ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/ledger/
ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/ledger/GeneralLedgerServices.java
(with props)
Modified:
ofbiz/trunk/applications/accounting/config/AccountingUiLabels.xml
ofbiz/trunk/applications/accounting/script/org/ofbiz/accounting/ledger/GeneralLedgerServices.xml
ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml
ofbiz/trunk/applications/accounting/webapp/accounting/WEB-INF/controller.xml
ofbiz/trunk/applications/accounting/webapp/accounting/images/costCenters.js
ofbiz/trunk/applications/accounting/webapp/accounting/ledger/CostCenters.ftl
Modified: ofbiz/trunk/applications/accounting/config/AccountingUiLabels.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/config/AccountingUiLabels.xml?rev=816517&r1=816516&r2=816517&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/config/AccountingUiLabels.xml (original)
+++ ofbiz/trunk/applications/accounting/config/AccountingUiLabels.xml Fri Sep
18 08:09:02 2009
@@ -8574,9 +8574,9 @@
<value
xml:lang="th">รหัสà¸à¸£à¸°à¹à¸ à¸à¸à¹à¸§à¸à¸£à¸°à¸¢à¸°à¹à¸§à¸¥à¸²</value>
<value xml:lang="zh">æ¡ä»¶ç±»åæ è¯</value>
</property>
- <property key="AccountingTotalAmountPercentageIsGreaterThenOneHundred">
- <value xml:lang="en">Total amountPercentage is greater then
100.</value>
- <value xml:lang="hi_IN">à¤à¥à¤² amountPercentage 100 सॠà¤à¥
à¤à¥à¤¯à¤¾à¤¦à¤¾ हà¥</value>
+ <property key="AccountingTotalAmountPercentageIsNotEqualOneHundred">
+ <value xml:lang="en">Total amountPercentage is not equal 100.</value>
+ <value xml:lang="hi_IN">à¤à¥à¤² amountPercentage बराबर 100
नहà¥à¤ हà¥</value>
</property>
<property key="AccountingTotalCommissionAmount">
<value xml:lang="en">Total Commission Amount</value>
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=816517&r1=816516&r2=816517&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
Fri Sep 18 08:09:02 2009
@@ -2439,44 +2439,40 @@
<set field="glAccountId" from-field="parameters.glAccountId"/>
<set field="glAccountCategoryId"
from-field="parameters.glAccountCategoryId"/>
<set field="amountPercentage" from-field="parameters.amountPercentage"
type="BigDecimal"/>
-
- <set-service-fields service-name="calculateCostCenterTotal"
map="parameters" to-map="calculateCostCenterTotalMap"/>
- <call-service service-name="calculateCostCenterTotal"
in-map-name="calculateCostCenterTotalMap"/>
- <check-errors/>
+ <set field="totalAmountPercentage"
from-field="parameters.totalAmountPercentage" type="BigDecimal"/>
<entity-and entity-name="GlAccountCategoryMember"
list="glAccountCategoryMemberList" filter-by-date="true">
<field-map field-name="glAccountId" from-field="glAccountId"/>
<field-map field-name="glAccountCategoryId"
from-field="glAccountCategoryId"/>
</entity-and>
<first-from-list list="glAccountCategoryMemberList"
entry="glAccountCategoryMember"/>
- <if-empty field="glAccountCategoryMember">
- <set field="createGlAccountCategoryMemberMap.amountPercentage"
from-field="amountPercentage" type="BigDecimal"/>
- <set field="createGlAccountCategoryMemberMap.glAccountCategoryId"
from-field="glAccountCategoryId"/>
- <set field="createGlAccountCategoryMemberMap.glAccountId"
from-field="glAccountId"/>
- <now-timestamp field="createGlAccountCategoryMemberMap.fromDate"/>
- <call-service service-name="createGlAccountCategoryMember"
in-map-name="createGlAccountCategoryMemberMap"/>
- <log level="info" message="GlAccountCategoryMember created for
[${glAccountCategoryId}] and [${glAccountId}]"/>
+ <if-compare field="totalAmountPercentage" operator="equals"
value="100" type="BigDecimal">
+ <if-empty field="glAccountCategoryMember">
+ <set field="createGlAccountCategoryMemberMap.amountPercentage"
from-field="amountPercentage" type="BigDecimal"/>
+ <set
field="createGlAccountCategoryMemberMap.glAccountCategoryId"
from-field="glAccountCategoryId"/>
+ <set field="createGlAccountCategoryMemberMap.glAccountId"
from-field="glAccountId"/>
+ <now-timestamp
field="createGlAccountCategoryMemberMap.fromDate"/>
+ <call-service service-name="createGlAccountCategoryMember"
in-map-name="createGlAccountCategoryMemberMap"/>
+ <log level="info" message="GlAccountCategoryMember created for
[${glAccountCategoryId}] and [${glAccountId}]"/>
+ <else>
+ <set-service-fields
service-name="updateGlAccountCategoryMember"
to-map="updateGlAccountCategoryMemberMap" map="glAccountCategoryMember"/>
+ <set field="updateGlAccountCategoryMemberMap.amountPercentage"
from-field="amountPercentage" type="BigDecimal"/>
+ <call-service service-name="updateGlAccountCategoryMember"
in-map-name="updateGlAccountCategoryMemberMap"/>
+ </else>
+ </if-empty>
<else>
- <if-compare field="amountPercentage" operator="not-equals"
value="0" type="BigDecimal">
- <if-compare-field
field="glAccountCategoryMember.amountPercentage" operator="not-equals"
to-field="nullfield">
- <set-service-fields
service-name="updateGlAccountCategoryMember"
to-map="updateGlAccountCategoryMemberMap" map="glAccountCategoryMember"/>
- <set
field="updateGlAccountCategoryMemberMap.amountPercentage"
from-field="amountPercentage" type="BigDecimal"/>
- <call-service service-name="updateGlAccountCategoryMember"
in-map-name="updateGlAccountCategoryMemberMap"/>
- <else>
- <set
field="createGlAccountCategoryMemberMap.amountPercentage"
from-field="amountPercentage" type="BigDecimal"/>
- <set
field="createGlAccountCategoryMemberMap.glAccountCategoryId"
from-field="glAccountCategoryId"/>
- <set field="createGlAccountCategoryMemberMap.glAccountId"
from-field="glAccountId"/>
- <now-timestamp
field="createGlAccountCategoryMemberMap.fromDate"/>
- <call-service service-name="createGlAccountCategoryMember"
in-map-name="createGlAccountCategoryMemberMap"/>
- <log level="info" message="GlAccountCategoryMember created
for [${glAccountCategoryId}] and [${glAccountId}]"/>
- </else>
- </if-compare-field>
+ <if-compare field="totalAmountPercentage" operator="equals"
value="0" type="BigDecimal">
+ <if-not-empty field="glAccountCategoryMember">
+ <now-timestamp field="glAccountCategoryMember.thruDate"/>
+ <store-value value-field="glAccountCategoryMember"/>
+ <log level="info" message="GlAccountCategoryMember expired
for [${glAccountCategoryId}] and [${glAccountId}]"/>
+ </if-not-empty>
<else>
- <now-timestamp field="glAccountCategoryMember.thruDate"/>
- <store-value value-field="glAccountCategoryMember"/>
+ <add-error><fail-property resource="AccountingUiLabels"
property="AccountingTotalAmountPercentageIsNotEqualOneHundred"/></add-error>
+ <check-errors/>
</else>
</if-compare>
</else>
- </if-empty>
+ </if-compare>
</simple-method>
<simple-method method-name="updateGlAccountCategoryMember"
short-description="Update GL Account Category Member">
@@ -2652,38 +2648,6 @@
<log level="info" message="Got settings from arithmetic.properties:
ledgerDecimals=${ledgerDecimals}, roundingMode=${roundingMode}"/>
</simple-method>
- <simple-method method-name="calculateCostCenterTotal"
short-description="Calculate cost center total">
- <set field="amountPercentage" from-field="parameters.amountPercentage"
type="BigDecimal"/>
- <if-not-empty field="amountPercentage">
- <if-compare field="amountPercentage" operator="greater"
value="100" type="BigDecimal">
- <add-error><fail-property resource="AccountingUiLabels"
property="AccountingTotalAmountPercentageIsGreaterThenOneHundred"/></add-error>
- <check-errors/>
- <else>
- <entity-condition entity-name="GlAccountCategoryMember"
list="glAccountCategoryMembers" filter-by-date="true">
- <condition-list>
- <condition-expr field-name="glAccountId"
from-field="parameters.glAccountId"/>
- </condition-list>
- <order-by field-name="glAccountCategoryId DESC"/>
- </entity-condition>
- <set field="totalAmountPercentage" value="0"
type="BigDecimal"/>
- <iterate list="glAccountCategoryMembers"
entry="glAccountCategoryMember">
- <if-compare-field
field="glAccountCategoryMember.glAccountCategoryId" operator="not-equals"
to-field="parameters.glAccountCategoryId">
- <set field="totalAmountPercentage"
value="${groovy:totalAmountPercentage.add(glAccountCategoryMember.amountPercentage)}"
type="BigDecimal"/>
- </if-compare-field>
- </iterate>
- <first-from-list list="glAccountCategoryMembers"
entry="glAccountCategoryMember"/>
- <set field="totalAmountPercentage"
value="${groovy:totalAmountPercentage.add(amountPercentage)}"
type="BigDecimal"/>
- <if-compare field="totalAmountPercentage"
operator="not-equals" value="100" type="BigDecimal">
- <if-compare-field
field="glAccountCategoryMember.glAccountCategoryId" operator="equals"
to-field="parameters.glAccountCategoryId">
- <add-error><fail-property
resource="AccountingUiLabels"
property="AccountingTotalAmountPercentageIsGreaterThenOneHundred"/></add-error>
- <check-errors/>
- </if-compare-field>
- </if-compare>
- </else>
- </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"/>
Modified: ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml?rev=816517&r1=816516&r2=816517&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml
(original)
+++ ofbiz/trunk/applications/accounting/servicedef/services_ledger.xml Fri Sep
18 08:09:02 2009
@@ -644,6 +644,7 @@
<attribute name="glAccountId" mode="IN" type="String"/>
<attribute name="glAccountCategoryId" mode="IN" type="String"/>
<attribute name="amountPercentage" mode="IN" type="BigDecimal"
optional="true"/>
+ <attribute name="totalAmountPercentage" mode="IN" type="BigDecimal"
optional="true"/>
</service>
<service name="getGlAcctgOrgWithPostedBalanceSplit" engine="simple"
@@ -676,14 +677,6 @@
<attribute name="inventoryValuationList" type="List" mode="OUT"
optional="true"/>
</service>
- <service name="calculateCostCenterTotal" engine="simple" auth="true"
-
location="component://accounting/script/org/ofbiz/accounting/ledger/GeneralLedgerServices.xml"
invoke="calculateCostCenterTotal">
- <description>Calculate Cost Center total with respect to the
glAccountId</description>
- <attribute name="glAccountId" mode="IN" type="String"/>
- <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>
@@ -691,4 +684,11 @@
<attribute name="statusId" type="String" mode="IN" optional="false"/>
<attribute name="oldStatusId" type="String" mode="OUT"
optional="true"/>
</service>
+
+ <service name="createUpdateCostCenter" engine="java" auth="true"
invoke="createUpdateCostCenter"
+ location="org.ofbiz.accounting.ledger.GeneralLedgerServices">
+ <description>Create Update CostCenters</description>
+ <attribute name="glAccountId" mode="IN" type="String"/>
+ <attribute name="amountPercentageMap" type="Map"
string-map-prefix="amp_" mode="IN" optional="true"/>
+ </service>
</services>
Added:
ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/ledger/GeneralLedgerServices.java
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/ledger/GeneralLedgerServices.java?rev=816517&view=auto
==============================================================================
---
ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/ledger/GeneralLedgerServices.java
(added)
+++
ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/ledger/GeneralLedgerServices.java
Fri Sep 18 08:09:02 2009
@@ -0,0 +1,80 @@
+/*******************************************************************************
+ * 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.
+
*******************************************************************************/
+package org.ofbiz.accounting.ledger;
+
+import java.math.BigDecimal;
+import java.util.Map;
+
+import org.ofbiz.base.util.Debug;
+import org.ofbiz.base.util.UtilGenerics;
+import org.ofbiz.base.util.UtilMisc;
+import org.ofbiz.base.util.UtilValidate;
+import org.ofbiz.entity.GenericValue;
+import org.ofbiz.service.DispatchContext;
+import org.ofbiz.service.GenericServiceException;
+import org.ofbiz.service.LocalDispatcher;
+import org.ofbiz.service.ServiceUtil;
+
+public class GeneralLedgerServices {
+
+ public static final String module = GeneralLedgerServices.class.getName();
+
+ private static BigDecimal ZERO = BigDecimal.ZERO;
+
+ public static Map<String, Object> createUpdateCostCenter(DispatchContext
dctx, Map<String, ? extends Object> context) {
+ LocalDispatcher dispatcher = dctx.getDispatcher();
+ BigDecimal totalAmountPercentage = ZERO;
+ Map<String, Object> createGlAcctCatMemFromCostCentersMap = null;
+ String glAccountId = (String) context.get("glAccountId");
+ GenericValue userLogin = (GenericValue) context.get("userLogin");
+ Map<String, String> amountPercentageMap =
UtilGenerics.checkMap(context.get("amountPercentageMap"));
+ totalAmountPercentage =
GeneralLedgerServices.calculateCostCenterTotal(amountPercentageMap);
+ for (String rowKey : amountPercentageMap.keySet()) {
+ String rowValue = amountPercentageMap.get(rowKey);
+ if (UtilValidate.isNotEmpty(rowValue)) {
+ createGlAcctCatMemFromCostCentersMap =
UtilMisc.toMap("glAccountId", glAccountId,
+ "glAccountCategoryId", rowKey, "amountPercentage", new
BigDecimal(rowValue),
+ "userLogin", userLogin, "totalAmountPercentage",
totalAmountPercentage);
+ } else {
+ createGlAcctCatMemFromCostCentersMap =
UtilMisc.toMap("glAccountId", glAccountId,
+ "glAccountCategoryId", rowKey, "amountPercentage", new
BigDecimal(0),
+ "userLogin", userLogin, "totalAmountPercentage",
totalAmountPercentage);
+ }
+ try {
+ dispatcher.runSync("createGlAcctCatMemFromCostCenters",
createGlAcctCatMemFromCostCentersMap);
+ } catch (GenericServiceException e) {
+ Debug.logError(e, module);
+ return ServiceUtil.returnError(e.getMessage());
+ }
+ }
+ return ServiceUtil.returnSuccess();
+ }
+
+ public static BigDecimal calculateCostCenterTotal(Map<String, String>
amountPercentageMap) {
+ BigDecimal totalAmountPercentage = ZERO;
+ for (String rowKey : amountPercentageMap.keySet()) {
+ if (UtilValidate.isNotEmpty(amountPercentageMap.get(rowKey))) {
+ BigDecimal rowValue = new
BigDecimal(amountPercentageMap.get(rowKey));
+ if (rowValue != null)
+ totalAmountPercentage =
totalAmountPercentage.add(rowValue);
+ }
+ }
+ return totalAmountPercentage;
+ }
+}
\ No newline at end of file
Propchange:
ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/ledger/GeneralLedgerServices.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange:
ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/ledger/GeneralLedgerServices.java
------------------------------------------------------------------------------
svn:keywords = Date Rev Author URL Id
Propchange:
ofbiz/trunk/applications/accounting/src/org/ofbiz/accounting/ledger/GeneralLedgerServices.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified:
ofbiz/trunk/applications/accounting/webapp/accounting/WEB-INF/controller.xml
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/webapp/accounting/WEB-INF/controller.xml?rev=816517&r1=816516&r2=816517&view=diff
==============================================================================
---
ofbiz/trunk/applications/accounting/webapp/accounting/WEB-INF/controller.xml
(original)
+++
ofbiz/trunk/applications/accounting/webapp/accounting/WEB-INF/controller.xml
Fri Sep 18 08:09:02 2009
@@ -2434,13 +2434,6 @@
<response name="success" type="view" value="CostCenters"/>
</request-map>
- <request-map uri="createGlAcctCatMemFromCostCenters">
- <security https="true" auth="true"/>
- <event type="jsonservice" invoke="createGlAcctCatMemFromCostCenters"/>
- <response name="success" type="none"/>
- <response name="error" type="none"/>
- </request-map>
-
<request-map uri="CostCenterReport">
<security https="true" auth="true"/>
<response name="success" type="view" value="CostCenterReport"/>
@@ -2458,6 +2451,12 @@
<response name="success" type="view" value="CostCentersReportPdf"/>
</request-map>
+ <request-map uri="createUpdateCostCenter">
+ <security auth="true" https="true"/>
+ <event type="jsonservice-multi" invoke="createUpdateCostCenter"/>
+ <response name="success" type="none"/>
+ <response name="error" type="none"/>
+ </request-map>
<!-- end of request mappings -->
<!-- View Mappings -->
Modified:
ofbiz/trunk/applications/accounting/webapp/accounting/images/costCenters.js
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/webapp/accounting/images/costCenters.js?rev=816517&r1=816516&r2=816517&view=diff
==============================================================================
--- ofbiz/trunk/applications/accounting/webapp/accounting/images/costCenters.js
(original)
+++ ofbiz/trunk/applications/accounting/webapp/accounting/images/costCenters.js
Fri Sep 18 08:09:02 2009
@@ -16,24 +16,16 @@
* specific language governing permissions and limitations
* under the License.
*/
-
-function changeAmountPercentage(elementId) {
- idArray = elementId.split('_');
- var data = null;
- new Ajax.Request('createGlAcctCatMemFromCostCenters', {
+Event.observe(window, 'load', function() {
+ Event.observe($('costCentersSubmit'), 'click', processCostCenterData);
+});
+function processCostCenterData() {
+ new Ajax.Request($('costCenters').action, {
asynchronous: false,
onSuccess: function(transport) {
- data = transport.responseText.evalJSON(true);
- },
- parameters: {amountPercentage : $F(elementId), glAccountId :
idArray[1], glAccountCategoryId : idArray[2]}
+ if (transport.responseText == "") {
+ Effect.Appear('errorMessage', {duration: 0.0});
+ }
+ }, parameters: $('costCenters').serialize(), requestHeaders: {Accept:
'application/json'}
});
- if (data._ERROR_MESSAGE_LIST_ != undefined) {
- Effect.Appear('notValidTotal_'+idArray[1], {duration: 0.0});
- Effect.Fade('notValidTotal_'+idArray[1], {duration: 5.0});
- } else {
- Effect.Appear('validTotal_'+idArray[1], {duration: 0.0});
- Effect.Fade('validTotal_'+idArray[1], {duration: 5.0});
- }
}
-
-
Modified:
ofbiz/trunk/applications/accounting/webapp/accounting/ledger/CostCenters.ftl
URL:
http://svn.apache.org/viewvc/ofbiz/trunk/applications/accounting/webapp/accounting/ledger/CostCenters.ftl?rev=816517&r1=816516&r2=816517&view=diff
==============================================================================
---
ofbiz/trunk/applications/accounting/webapp/accounting/ledger/CostCenters.ftl
(original)
+++
ofbiz/trunk/applications/accounting/webapp/accounting/ledger/CostCenters.ftl
Fri Sep 18 08:09:02 2009
@@ -19,7 +19,9 @@
-->
<#if glAcctgAndAmountPercentageList?has_content &&
glAccountCategories?has_content>
- <form name="costCenters" id="costCenters" method="post">
+ <form id="costCenters" method="post"
action="<@ofbizUrl>createUpdateCostCenter</@ofbizUrl>">
+ <div id="errorMessage" class="errorMessage" style="display :
none">${uiLabelMap.AccountingTotalAmountPercentageIsNotEqualOneHundred}</div>
+ <input type="hidden" name="_useRowSubmit" value="Y">
<table class="basic-table hover-bar" cellspacing="0">
<tr class="header-row">
<th>${uiLabelMap.FormFieldTitle_glAccountId}</th>
@@ -31,29 +33,25 @@
</tr>
<#list glAcctgAndAmountPercentageList as glAcctgAndAmountPercentage>
+ <input type="hidden"
id="glAccountId_${glAcctgAndAmountPercentage.glAccountId}"
name="glAccountId_o_${glAcctgAndAmountPercentage_index}"
value="${glAcctgAndAmountPercentage.glAccountId!}"/>
<tr>
<td>${glAcctgAndAmountPercentage.glAccountId}</td>
<td>${glAcctgAndAmountPercentage.accountCode!}</td>
<td>${glAcctgAndAmountPercentage.accountName!}</td>
<#list glAccountCategories as glAccountCategory>
<td>
- <input type="hidden"
id="glAccountId_${glAcctgAndAmountPercentage.glAccountId}"
name="glAccountId_${glAcctgAndAmountPercentage.glAccountId!}"
value="${glAcctgAndAmountPercentage.glAccountId!}"/>
- <input type="hidden"
id="glAccountCategoryId_${glAccountCategory.glAccountCategoryId!}_${glAcctgAndAmountPercentage.glAccountId!}"
name="glAccountCategoryId_${glAccountCategory.glAccountCategoryId!}_${glAcctgAndAmountPercentage.glAccountId!}"
value="${(glAccountCategory.glAccountCategoryId!)}"/>
- <#assign id = "amountPercentage_" +
glAcctgAndAmountPercentage.glAccountId + "_" +
glAccountCategory.glAccountCategoryId/>
<#if
(glAcctgAndAmountPercentage[glAccountCategory.glAccountCategoryId!])??>
- <input type="text" id="${id}" name="${id}"
value="${(glAcctgAndAmountPercentage[glAccountCategory.glAccountCategoryId!])!}"
onchange="javascript:changeAmountPercentage(id);"/>
+ <input type="text"
name="amp_${glAccountCategory.glAccountCategoryId!}_o_${glAcctgAndAmountPercentage_index}"
value="${(glAcctgAndAmountPercentage[glAccountCategory.glAccountCategoryId!])!}"/>
<#else>
- <input type="text" id="${id}" name="${id}" value=""
onchange="javascript:changeAmountPercentage(id);"/>
+ <input type="text"
name="amp_${glAccountCategory.glAccountCategoryId!}_o_${glAcctgAndAmountPercentage_index}"
value=""/>
</#if>
</td>
</#list>
- <td>
- <span id="notValidTotal_${glAcctgAndAmountPercentage.glAccountId}"
style="display:none">${uiLabelMap.FormFieldTitle_notValidTotal}</span>
- <span id="validTotal_${glAcctgAndAmountPercentage.glAccountId}"
style="display:none">${uiLabelMap.FormFieldTitle_validTotal}</span>
- </td>
+ <input name="_rowSubmit_o_${glAcctgAndAmountPercentage_index}"
type="hidden" value="Y"/>
</tr>
</#list>
</table>
+ <div align="right"><input type="button" id="costCentersSubmit"
value="${uiLabelMap.CommonSubmit}"/></div>
</form>
<#else>
<label>${uiLabelMap.AccountingNoRecordFound}</label>