details: https://code.openbravo.com/erp/devel/pi/rev/339f82efc76c
changeset: 19428:339f82efc76c
user: Javier Etxarri <javier.echarri <at> openbravo.com>
date: Thu Jan 24 12:53:13 2013 +0100
summary: Fixes issue 22814: In prepayments against invoices,
no generate double posting if BP receivables account and BP prepayment account
are the same
diffstat:
src/org/openbravo/erpCommon/ad_forms/DocFINFinAccTransaction.java | 40
++++++----
src/org/openbravo/erpCommon/ad_forms/DocFINPayment.java | 35
+++++---
src/org/openbravo/erpCommon/ad_forms/DocFINReconciliation.java | 21 +++--
3 files changed, 59 insertions(+), 37 deletions(-)
diffs (129 lines):
diff -r 918cc7183ad6 -r 339f82efc76c
src/org/openbravo/erpCommon/ad_forms/DocFINFinAccTransaction.java
--- a/src/org/openbravo/erpCommon/ad_forms/DocFINFinAccTransaction.java Thu Jan
24 12:09:48 2013 +0100
+++ b/src/org/openbravo/erpCommon/ad_forms/DocFINFinAccTransaction.java Thu Jan
24 12:53:13 2013 +0100
@@ -532,24 +532,32 @@
DocLine line2 = new DocLine(DocumentType, Record_ID,
line.m_TrxLine_ID);
line2.copyInfo(line);
line2.m_DateAcct =
OBDateUtils.formatDate(invoice.getAccountingDate());
- fact.createLine(
- line2,
- getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
+ // checking if the prepayment account and ReceivablesNo account in
the Business Partner
+ // is the same.In this case we do not need to create more
accounting lines
+ if (!getAccountBPartner(
+ (line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID.equals("")) ? this.C_BPartner_ID
+ : line2.m_C_BPartner_ID, as, isReceipt, true,
conn).Account_ID
+ .equals(getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
.equals("")) ? this.C_BPartner_ID : line2.m_C_BPartner_ID,
as, isReceipt,
- false, conn), paymentCurrency.getId(),
- (isReceipt ? "" : bpAmountConverted.toString()),
- (isReceipt ? bpAmountConverted.toString() : ""),
Fact_Acct_Group_ID2,
- nextSeqNo(SeqNo), DocumentType, conn);
- fact.createLine(
- line2,
- getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
- .equals("")) ? this.C_BPartner_ID : line2.m_C_BPartner_ID,
as, isReceipt, true,
- conn), paymentCurrency.getId(),
- (!isReceipt ? "" : bpAmountConverted.toString()),
- (!isReceipt ? bpAmountConverted.toString() : ""),
Fact_Acct_Group_ID2,
- nextSeqNo(SeqNo), DocumentType, conn);
+ false, conn).Account_ID)) {
+ fact.createLine(
+ line2,
+ getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
+ .equals("")) ? this.C_BPartner_ID :
line2.m_C_BPartner_ID, as, isReceipt,
+ false, conn), paymentCurrency.getId(),
+ (isReceipt ? "" : bpAmountConverted.toString()),
+ (isReceipt ? bpAmountConverted.toString() : ""),
Fact_Acct_Group_ID2,
+ nextSeqNo(SeqNo), DocumentType, conn);
+ fact.createLine(
+ line2,
+ getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
+ .equals("")) ? this.C_BPartner_ID :
line2.m_C_BPartner_ID, as, isReceipt,
+ true, conn), paymentCurrency.getId(),
+ (!isReceipt ? "" : bpAmountConverted.toString()),
+ (!isReceipt ? bpAmountConverted.toString() : ""),
Fact_Acct_Group_ID2,
+ nextSeqNo(SeqNo), DocumentType, conn);
+ }
}
-
}
}
// Pre-payment is consumed when Used Credit Amount not equals Zero. When
consuming Credit no
diff -r 918cc7183ad6 -r 339f82efc76c
src/org/openbravo/erpCommon/ad_forms/DocFINPayment.java
--- a/src/org/openbravo/erpCommon/ad_forms/DocFINPayment.java Thu Jan 24
12:09:48 2013 +0100
+++ b/src/org/openbravo/erpCommon/ad_forms/DocFINPayment.java Thu Jan 24
12:53:13 2013 +0100
@@ -364,20 +364,29 @@
DocLine line2 = new DocLine(DocumentType, Record_ID,
line.m_TrxLine_ID);
line2.copyInfo(line);
line2.m_DateAcct =
OBDateUtils.formatDate(invoice.getAccountingDate());
- fact.createLine(
- line2,
- getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
+ // checking if the prepayment account and ReceivablesNo account in
the Business Partner
+ // is the same.In this case we do not need to create more
accounting lines
+ if (!getAccountBPartner(
+ (line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID.equals("")) ? this.C_BPartner_ID
+ : line2.m_C_BPartner_ID, as, isReceipt, true,
conn).Account_ID
+ .equals(getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
.equals("")) ? this.C_BPartner_ID : line2.m_C_BPartner_ID,
as, isReceipt,
- false, conn), strcCurrencyId, (isReceipt ? "" :
bpAmountConverted),
- (isReceipt ? bpAmountConverted : ""), Fact_Acct_Group_ID2,
nextSeqNo(SeqNo),
- DocumentType, conn);
- fact.createLine(
- line2,
- getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
- .equals("")) ? this.C_BPartner_ID : line2.m_C_BPartner_ID,
as, isReceipt, true,
- conn), strcCurrencyId, (!isReceipt ? "" :
bpAmountConverted),
- (!isReceipt ? bpAmountConverted : ""), Fact_Acct_Group_ID2,
nextSeqNo(SeqNo),
- DocumentType, conn);
+ false, conn).Account_ID)) {
+ fact.createLine(
+ line2,
+ getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
+ .equals("")) ? this.C_BPartner_ID :
line2.m_C_BPartner_ID, as, isReceipt,
+ false, conn), strcCurrencyId, (isReceipt ? "" :
bpAmountConverted),
+ (isReceipt ? bpAmountConverted : ""), Fact_Acct_Group_ID2,
nextSeqNo(SeqNo),
+ DocumentType, conn);
+ fact.createLine(
+ line2,
+ getAccountBPartner((line2.m_C_BPartner_ID == null ||
line2.m_C_BPartner_ID
+ .equals("")) ? this.C_BPartner_ID :
line2.m_C_BPartner_ID, as, isReceipt,
+ true, conn), strcCurrencyId, (!isReceipt ? "" :
bpAmountConverted),
+ (!isReceipt ? bpAmountConverted : ""), Fact_Acct_Group_ID2,
nextSeqNo(SeqNo),
+ DocumentType, conn);
+ }
}
} else {
fact.createLine(
diff -r 918cc7183ad6 -r 339f82efc76c
src/org/openbravo/erpCommon/ad_forms/DocFINReconciliation.java
--- a/src/org/openbravo/erpCommon/ad_forms/DocFINReconciliation.java Thu Jan
24 12:09:48 2013 +0100
+++ b/src/org/openbravo/erpCommon/ad_forms/DocFINReconciliation.java Thu Jan
24 12:53:13 2013 +0100
@@ -865,14 +865,19 @@
DocLine line2 = new DocLine(DocumentType, Record_ID,
line.m_TrxLine_ID);
line2.copyInfo(line);
line2.m_DateAcct = OBDateUtils.formatDate(invoice.getAccountingDate());
- fact.createLine(line2, getAccountBPartner(bpartnerId, as, isReceipt,
false, conn),
- paymentCurrency.getId(), !isReceipt ? bpAmountConverted.toString()
: "",
- isReceipt ? bpAmountConverted.toString() : "",
Fact_Acct_Group_ID2, nextSeqNo(SeqNo),
- DocumentType, line2.m_DateAcct, null, conn);
- fact.createLine(line2, getAccountBPartner(bpartnerId, as, isReceipt,
true, conn),
- paymentCurrency.getId(), isReceipt ? bpAmountConverted.toString()
: "",
- !isReceipt ? bpAmountConverted.toString() : "",
Fact_Acct_Group_ID2, nextSeqNo(SeqNo),
- DocumentType, line2.m_DateAcct, null, conn);
+ // checking if the prepayment account and ReceivablesNo account in the
Business Partner
+ // is the same.In this case we do not need to create more accounting
lines
+ if (!getAccountBPartner(bpartnerId, as, isReceipt, false,
conn).Account_ID
+ .equals(getAccountBPartner(bpartnerId, as, isReceipt, true,
conn))) {
+ fact.createLine(line2, getAccountBPartner(bpartnerId, as, isReceipt,
false, conn),
+ paymentCurrency.getId(), !isReceipt ?
bpAmountConverted.toString() : "",
+ isReceipt ? bpAmountConverted.toString() : "",
Fact_Acct_Group_ID2, nextSeqNo(SeqNo),
+ DocumentType, line2.m_DateAcct, null, conn);
+ fact.createLine(line2, getAccountBPartner(bpartnerId, as, isReceipt,
true, conn),
+ paymentCurrency.getId(), isReceipt ?
bpAmountConverted.toString() : "",
+ !isReceipt ? bpAmountConverted.toString() : "",
Fact_Acct_Group_ID2,
+ nextSeqNo(SeqNo), DocumentType, line2.m_DateAcct, null, conn);
+ }
}
}
------------------------------------------------------------------------------
Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
MVPs and experts. ON SALE this month only -- learn more at:
http://p.sf.net/sfu/learnnow-d2d
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits