details: /erp/devel/main/rev/19b60f6a538f
changeset: 8038:19b60f6a538f
user: Víctor Martínez Romanos <victor.martinez <at> openbravo.com>
date: Fri Aug 06 18:33:51 2010 +0200
summary: Fixed bug 14125: Added multicurrency support for Payment Aging
Balance report
Added a Currency field when launching the report. The amounts in the
report are automatically converted to the selected currency.
If no rate conversion is defined for any currency on a payment,
the system shows an error.
details: /erp/devel/main/rev/68eefc476782
changeset: 8039:68eefc476782
user: RM packaging bot <staff.rm <at> openbravo.com>
date: Mon Aug 09 13:05:29 2010 +0200
summary: CI: promote changesets from pi to main
details: /erp/devel/main/rev/df37f48fac4e
changeset: 8040:df37f48fac4e
user: RM packaging bot <staff.rm <at> openbravo.com>
date: Mon Aug 09 13:05:30 2010 +0200
summary: CI: update AD_MODULE - Core version and label
diffstat:
src-db/database/sourcedata/AD_MODULE.xml | 4 +-
src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.html | 8 +-
src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.java | 76
+++++++--
src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.xml | 7 +-
src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance_data.xsql | 7 +-
5 files changed, 76 insertions(+), 26 deletions(-)
diffs (252 lines):
diff -r a97e0286a716 -r df37f48fac4e src-db/database/sourcedata/AD_MODULE.xml
--- a/src-db/database/sourcedata/AD_MODULE.xml Fri Aug 06 13:23:42 2010 +0200
+++ b/src-db/database/sourcedata/AD_MODULE.xml Mon Aug 09 13:05:30 2010 +0200
@@ -6,7 +6,7 @@
<!--0--> <AD_ORG_ID><![CDATA[0]]></AD_ORG_ID>
<!--0--> <ISACTIVE><![CDATA[Y]]></ISACTIVE>
<!--0--> <NAME><![CDATA[core]]></NAME>
-<!--0--> <VERSION><![CDATA[2.50.17989]]></VERSION>
+<!--0--> <VERSION><![CDATA[2.50.18039]]></VERSION>
<!--0--> <DESCRIPTION><![CDATA[Core module is the base one]]></DESCRIPTION>
<!--0--> <HELP><![CDATA[Core module is the base one, all developments in core
are included as part of the standard Openbravo ERP.]]></HELP>
<!--0--> <URL><![CDATA[www.openbravo.com]]></URL>
@@ -22,7 +22,7 @@
<!--0--> <ISTRANSLATIONMODULE><![CDATA[N]]></ISTRANSLATIONMODULE>
<!--0--> <HASREFERENCEDATA><![CDATA[Y]]></HASREFERENCEDATA>
<!--0--> <REFERENCEDATAINFO><![CDATA[Standard document types for orders,
invoices, etc. and settings]]></REFERENCEDATAINFO>
-<!--0--> <VERSION_LABEL><![CDATA[dev]]></VERSION_LABEL>
+<!--0--> <VERSION_LABEL><![CDATA[CI]]></VERSION_LABEL>
<!--0--> <ISCOMMERCIAL><![CDATA[N]]></ISCOMMERCIAL>
<!--0--></AD_MODULE>
diff -r a97e0286a716 -r df37f48fac4e
src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.html
--- a/src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.html Fri Aug
06 13:23:42 2010 +0200
+++ b/src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.html Mon Aug
09 13:05:30 2010 +0200
@@ -443,8 +443,12 @@
<input
dojoType="openbravo:RealNumberTextbox" greaterThan="paramColumn3"
class="required TextBox_OneCell_width" type="text" name="inpColumn4"
id="paramColumn4" maxlength="4" size="4" onchange="columnChange();"
value="xxx7" width="4"
outputformat="integerEdition"/><script>djConfig.searchIds.push("paramColumn4");</script></td></tr>
<tr>
- <td
class="TitleCell"></td>
- <td
class="TitleCell"></td>
+ <td
class="TitleCell"> <span class="LabelText">Currency</span></td>
+ <td
class="Combo_ContentCell">
+ <select name="inpCurrencyId"
id="inpCurrencyId" class="ComboKey Combo_OneCell_width" required="true">
+ <option value=""> <div
id="reportC_Currency_ID"></div></option>
+ </select>
+ </td>
<td
class="TitleCell"></td>
<td
class="TitleCell"></td>
<td
class="TitleCell">>
diff -r a97e0286a716 -r df37f48fac4e
src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.java
--- a/src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.java Fri Aug
06 13:23:42 2010 +0200
+++ b/src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.java Mon Aug
09 13:05:30 2010 +0200
@@ -11,7 +11,7 @@
* under the License.
* The Original Code is Openbravo ERP.
* The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2001-2009 Openbravo SLU
+ * All portions are Copyright (C) 2001-2010 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -48,9 +48,12 @@
// static Category log4j = Category.getInstance(ReportAgingBalance.class);
+ @Override
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws IOException,
ServletException {
VariablesSecureApp vars = new VariablesSecureApp(request);
+ // Get user Client's base currency
+ final String strUserCurrencyId = Utility.stringBaseCurrencyId(this,
vars.getClient());
if (vars.commandIn("DEFAULT")) {
String strisReceipt = vars.getGlobalVariable("inpReceipt",
"ReportAgingBalance|IsReceipt",
@@ -66,8 +69,10 @@
String strcBpartnerId = vars.getInGlobalVariable("inpcBPartnerId_IN",
"ReportAgingBalance|cBpartnerId", "", IsIDFilter.instance);
String strOrg = vars.getGlobalVariable("inpOrg",
"ReportAgingBalance|Org", "");
+ final String strCurrencyId = vars.getGlobalVariable("inpCurrencyId",
+ "ReportAgingBalance|currency", strUserCurrencyId);
printPageDataSheet(response, vars, strisReceipt, strcolumn1, strcolumn2,
strcolumn3,
- strcolumn4, strcBpartnerId, strOrg, "Y");
+ strcolumn4, strcBpartnerId, strOrg, "Y", strCurrencyId);
} else if (vars.commandIn("FIND")) {
String strisReceipt = vars.getRequestGlobalVariable("inpReceipt",
"ReportAgingBalance|IsReceipt");
@@ -82,8 +87,10 @@
String strcBpartnerId =
vars.getRequestInGlobalVariable("inpcBPartnerId_IN",
"ReportAgingBalance|cBpartnerId", IsIDFilter.instance);
String strOrg = vars.getRequestGlobalVariable("inpOrg",
"ReportAgingBalance|Org");
+ final String strCurrencyId = vars.getGlobalVariable("inpCurrencyId",
+ "ReportAgingBalance|currency", strUserCurrencyId);
printPageDataSheet(response, vars, strisReceipt, strcolumn1, strcolumn2,
strcolumn3,
- strcolumn4, strcBpartnerId, strOrg, "N");
+ strcolumn4, strcBpartnerId, strOrg, "N", strCurrencyId);
} else if (vars.commandIn("PRINT_PDF")) {
String strisReceipt = vars.getRequestGlobalVariable("inpReceipt",
"ReportAgingBalance|IsReceipt");
@@ -98,16 +105,18 @@
String strcBpartnerId =
vars.getRequestInGlobalVariable("inpcBPartnerId_IN",
"ReportAgingBalance|cBpartnerId", IsIDFilter.instance);
String strOrg = vars.getRequestGlobalVariable("inpOrg",
"ReportAgingBalance|Org");
- printPageDataPdf(response, vars, strisReceipt, strcolumn1, strcolumn2,
strcolumn3,
- strcolumn4, strcBpartnerId, strOrg, "N");
+ final String strCurrencyId = vars.getGlobalVariable("inpCurrencyId",
+ "ReportAgingBalance|currency", strUserCurrencyId);
+ printPageDataPdf(request, response, vars, strisReceipt, strcolumn1,
strcolumn2, strcolumn3,
+ strcolumn4, strcBpartnerId, strOrg, "N", strCurrencyId);
} else
pageError(response);
}
- private void printPageDataPdf(HttpServletResponse response,
VariablesSecureApp vars,
- String strisReceipt, String strcolumn1, String strcolumn2, String
strcolumn3,
- String strcolumn4, String strcBpartnerId, String strOrgTrx, String
strfirstPrint)
- throws IOException, ServletException {
+ private void printPageDataPdf(final HttpServletRequest request,
HttpServletResponse response,
+ VariablesSecureApp vars, String strisReceipt, String strcolumn1, String
strcolumn2,
+ String strcolumn3, String strcolumn4, String strcBpartnerId, String
strOrgTrx,
+ String strfirstPrint, final String strCurrencyId) throws IOException,
ServletException {
ReportAgingBalanceData[] data = null;
// Jarenor
/*
@@ -121,10 +130,16 @@
if (strisReceipt.equals(""))
strisReceipt = "N";
- data = ReportAgingBalanceData.select(this, vars.getLanguage(), strOrgTrx,
strcolumn1,
- strcolumn2, strcolumn3, strcolumn4, strisReceipt, strcBpartnerId,
strOrgFamily, Utility
- .getContext(this, vars, "#User_Client", "ReportAgingBalance"),
Utility.getContext(this,
- vars, "#AccessibleOrgTree", "ReportAgingBalance"));
+ try {
+ data = ReportAgingBalanceData.select(this, vars.getLanguage(),
strOrgTrx, strCurrencyId,
+ strcolumn1, strcolumn2, strcolumn3, strcolumn4, strisReceipt,
strcBpartnerId,
+ strOrgFamily, Utility.getContext(this, vars, "#User_Client",
"ReportAgingBalance"),
+ Utility.getContext(this, vars, "#AccessibleOrgTree",
"ReportAgingBalance"));
+ } catch (ServletException ex) {
+ advisePopUp(request, response, Utility.messageBD(this,
"NoConversionRateHeader", vars
+ .getLanguage()), Utility.translateError(this, vars,
vars.getLanguage(), ex.getMessage())
+ .getMessage());
+ }
String strReportName =
"@basedesign@/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.jrxml";
HashMap<String, Object> parameters = new HashMap<String, Object>();
parameters.put("col1", "0 - " + strcolumn1);
@@ -138,8 +153,8 @@
private void printPageDataSheet(HttpServletResponse response,
VariablesSecureApp vars,
String strisReceipt, String strcolumn1, String strcolumn2, String
strcolumn3,
- String strcolumn4, String strcBpartnerId, String strOrgTrx, String
strfirstPrint)
- throws IOException, ServletException {
+ String strcolumn4, String strcBpartnerId, String strOrgTrx, String
strfirstPrint,
+ final String strCurrencyId) throws IOException, ServletException {
if (log4j.isDebugEnabled())
log4j.debug("Output: dataSheet");
response.setContentType("text/html; charset=UTF-8");
@@ -155,10 +170,19 @@
strisReceipt = "N";
if (vars.commandIn("FIND")) {
- data = ReportAgingBalanceData.select(this, vars.getLanguage(),
strOrgTrx, strcolumn1,
- strcolumn2, strcolumn3, strcolumn4, strisReceipt, strcBpartnerId,
strOrgFamily, Utility
- .getContext(this, vars, "#User_Client", "ReportAgingBalance"),
Utility.getContext(
- this, vars, "#AccessibleOrgTree", "ReportAgingBalance"));
+ try {
+ data = ReportAgingBalanceData.select(this, vars.getLanguage(),
strOrgTrx, strCurrencyId,
+ strcolumn1, strcolumn2, strcolumn3, strcolumn4, strisReceipt,
strcBpartnerId,
+ strOrgFamily, Utility.getContext(this, vars, "#User_Client",
"ReportAgingBalance"),
+ Utility.getContext(this, vars, "#AccessibleOrgTree",
"ReportAgingBalance"));
+ } catch (final ServletException ex) {
+ final OBError message = new OBError();
+ message.setType("Error");
+ message.setTitle(Utility.messageBD(this, "NoConversionRateHeader",
vars.getLanguage()));
+ message.setMessage(Utility.translateError(this, vars,
vars.getLanguage(), ex.getMessage())
+ .getMessage());
+ vars.setMessage("ReportAgingBalance", message);
+ }
}
if (strfirstPrint == "Y" || data == null || data.length == 0) {
xmlDocument = xmlEngine.readXmlTemplate(
@@ -220,6 +244,19 @@
throw new ServletException(ex);
}
+ xmlDocument.setParameter("ccurrencyid", strCurrencyId);
+ try {
+ ComboTableData comboTableData = new ComboTableData(vars, this,
"TABLEDIR", "C_Currency_ID",
+ "", "", Utility.getContext(this, vars, "#AccessibleOrgTree",
"ReportProductionCost"),
+ Utility.getContext(this, vars, "#User_Client",
"ReportProductionCost"), 0);
+ Utility.fillSQLParameters(this, vars, null, comboTableData,
"ReportProductionCost",
+ strCurrencyId);
+ xmlDocument.setData("reportC_Currency_ID", "liststructure",
comboTableData.select(false));
+ comboTableData = null;
+ } catch (Exception ex) {
+ throw new ServletException(ex);
+ }
+
xmlDocument.setParameter("titleColumn1", "0 - " + strcolumn1);
Integer iAux = Integer.valueOf(strcolumn1).intValue() +
Integer.valueOf("1").intValue();
xmlDocument.setParameter("titleColumn2", iAux.toString() + " - " +
strcolumn2);
@@ -272,6 +309,7 @@
*/
}
+ @Override
public String getServletInfo() {
return "Servlet ReportAgingBalance. This Servlet was made by David
Alsasua";
} // end of the getServletInfo() method
diff -r a97e0286a716 -r df37f48fac4e
src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.xml
--- a/src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.xml Fri Aug
06 13:23:42 2010 +0200
+++ b/src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance.xml Mon Aug
09 13:05:30 2010 +0200
@@ -12,7 +12,7 @@
* under the License.
* The Original Code is Openbravo ERP.
* The Initial Developer of the Original Code is Openbravo SLU
-* All portions are Copyright (C) 2001-2006 Openbravo SLU
+* All portions are Copyright (C) 2001-2010 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -72,6 +72,11 @@
<SUBREPORT id="reportAD_ORGID" name="reportAD_ORGID"
report="org/openbravo/erpCommon/reference/List">
<ARGUMENT name="parameterListSelected" withId="paramAD_ORG_Id"/>
</SUBREPORT>
+
+ <PARAMETER id="paramC_Currency_ID" name="ccurrencyid" attribute="value"/>
+ <SUBREPORT id="reportC_Currency_ID" name="reportC_Currency_ID"
report="org/openbravo/erpCommon/reference/List">
+ <ARGUMENT name="parameterListSelected" withId="paramC_Currency_ID"/>
+ </SUBREPORT>
<structure name="structure1">
<FIELD id="fieldBpartner">bpartner</FIELD>
diff -r a97e0286a716 -r df37f48fac4e
src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance_data.xsql
--- a/src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance_data.xsql
Fri Aug 06 13:23:42 2010 +0200
+++ b/src/org/openbravo/erpCommon/ad_reports/ReportAgingBalance_data.xsql
Mon Aug 09 13:05:30 2010 +0200
@@ -12,7 +12,7 @@
* under the License.
* The Original Code is Openbravo ERP.
* The Initial Developer of the Original Code is Openbravo SLU
- * All portions are Copyright (C) 2001-2009 Openbravo SLU
+ * All portions are Copyright (C) 2001-2010 Openbravo SLU
* All Rights Reserved.
* Contributor(s): ______________________________________.
************************************************************************
@@ -32,7 +32,9 @@
SUM(CASE(SCOPE) WHEN 5 THEN AMOUNT ELSE 0 END) AS FIVE,
SUM(AMOUNT) AS TOTAL, ? AS AD_ORG_ID
FROM(
- SELECT C_BPARTNER_ID AS BPARTNER, AMOUNT, ISRECEIPT, DATEPLANNED,
+ SELECT C_BPARTNER_ID AS BPARTNER,
+ C_CURRENCY_CONVERT(AMOUNT, C_CURRENCY_ID, ?, DATEPLANNED, null,
ad_client_id, ad_org_id) AS AMOUNT,
+ ISRECEIPT, DATEPLANNED,
C_AGING_GET_SCOPE(DATEPLANNED, TO_NUMBER(?), TO_NUMBER(?),
TO_NUMBER(?), TO_NUMBER(?)) AS SCOPE, C_DEBT_PAYMENT_ID
FROM C_DEBT_PAYMENT
WHERE C_DEBT_PAYMENT_STATUS(C_SETTLEMENT_CANCEL_ID,
CANCEL_PROCESSED,
GENERATE_PROCESSED,ISPAID,ISVALID,C_CASHLINE_ID,C_BANKSTATEMENTLINE_ID) = 'P'
@@ -46,6 +48,7 @@
]]></Sql>
<Parameter name="adLanguage"/>
<Parameter name="orgTrx"></Parameter>
+ <Parameter name="cCurrencyConv"/>
<Parameter name="one"></Parameter>
<Parameter name="two"></Parameter>
<Parameter name="three"></Parameter>
------------------------------------------------------------------------------
This SF.net email is sponsored by
Make an app they can't live without
Enter the BlackBerry Developer Challenge
http://p.sf.net/sfu/RIM-dev2dev
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits