details: https://code.openbravo.com/erp/devel/pi/rev/06f7621a2907
changeset: 19082:06f7621a2907
user: David Miguelez <david.miguelez <at> openbravo.com>
date: Tue Dec 18 13:34:45 2012 +0100
summary: Fixes Issue 22609. Checks MultiAccounting restriction before
making a Payment against a GL/Journal Line.
diffstat:
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_AddPaymentFromJournalLine.java
| 20 ++++++++++
src-db/database/sourcedata/AD_MESSAGE.xml
| 11 +++++
2 files changed, 31 insertions(+), 0 deletions(-)
diffs (61 lines):
diff -r 08166a9f3ffc -r 06f7621a2907
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_AddPaymentFromJournalLine.java
---
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_AddPaymentFromJournalLine.java
Wed Dec 19 20:30:19 2012 +0100
+++
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/process/FIN_AddPaymentFromJournalLine.java
Tue Dec 18 13:34:45 2012 +0100
@@ -24,9 +24,12 @@
import java.util.Date;
import java.util.List;
+import org.hibernate.Query;
+import org.hibernate.Session;
import org.openbravo.advpaymentmngt.dao.AdvPaymentMngtDao;
import org.openbravo.advpaymentmngt.utility.FIN_Utility;
import org.openbravo.base.exception.OBException;
+import org.openbravo.dal.core.OBContext;
import org.openbravo.dal.service.OBDal;
import org.openbravo.erpCommon.utility.OBError;
import org.openbravo.model.common.businesspartner.BusinessPartner;
@@ -68,6 +71,23 @@
.compareTo(BigDecimal.ZERO) > 0;
// Check restrictions
+ OBContext.setAdminMode(false);
+ try {
+ final StringBuilder hsqlScript = new StringBuilder();
+ hsqlScript.append("select distinct(o.generalLedger) ");
+ hsqlScript.append("from Organization o ");
+ hsqlScript.append("where ad_isorgincluded('" +
journalLine.getOrganization().getId()
+ + "', o.id, o.client) <> -1 ");
+ hsqlScript.append("and o.generalLedger is not null ");
+ final Session session = OBDal.getInstance().getSession();
+ final Query query = session.createQuery(hsqlScript.toString());
+ if (query.list().size() != 1) {
+ throw new OBException("@FIN_NoMultiAccountingAllowed@");
+ }
+ } finally {
+ OBContext.restorePreviousMode();
+ }
+
if (!journalLine.getCurrency().equals(financialAccount.getCurrency())) {
throw new OBException("@FIN_NoMultiCurrencyAllowed@");
}
diff -r 08166a9f3ffc -r 06f7621a2907 src-db/database/sourcedata/AD_MESSAGE.xml
--- a/src-db/database/sourcedata/AD_MESSAGE.xml Wed Dec 19 20:30:19 2012 +0100
+++ b/src-db/database/sourcedata/AD_MESSAGE.xml Tue Dec 18 13:34:45 2012 +0100
@@ -20204,6 +20204,17 @@
<!--BFF7429026D04A688FB45439980F9B59-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
<!--BFF7429026D04A688FB45439980F9B59--></AD_MESSAGE>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3--><AD_MESSAGE>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3-->
<AD_MESSAGE_ID><![CDATA[C06FE9D0CA434D37B37F9C014EB0ECC3]]></AD_MESSAGE_ID>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3-->
<VALUE><![CDATA[FIN_NoMultiAccountingAllowed]]></VALUE>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3--> <MSGTEXT><![CDATA[No MultiAccounting
transactions are allowed.]]></MSGTEXT>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3--> <MSGTYPE><![CDATA[E]]></MSGTYPE>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3-->
<AD_MODULE_ID><![CDATA[0]]></AD_MODULE_ID>
+<!--C06FE9D0CA434D37B37F9C014EB0ECC3--></AD_MESSAGE>
+
<!--C0AEE77C2EB84B018153576679981D60--><AD_MESSAGE>
<!--C0AEE77C2EB84B018153576679981D60-->
<AD_MESSAGE_ID><![CDATA[C0AEE77C2EB84B018153576679981D60]]></AD_MESSAGE_ID>
<!--C0AEE77C2EB84B018153576679981D60-->
<AD_CLIENT_ID><![CDATA[0]]></AD_CLIENT_ID>
------------------------------------------------------------------------------
LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial
Remotely access PCs and mobile devices and provide instant support
Improve your efficiency, and focus on delivering more value-add services
Discover what IT Professionals Know. Rescue delivers
http://p.sf.net/sfu/logmein_12329d2d
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits