details: /erp/devel/pi/rev/bce4bc9e881e
changeset: 9117:bce4bc9e881e
user: Asier Lostalé <asier.lostale <at> openbravo.com>
date: Tue Dec 14 11:45:49 2010 +0100
summary: fixed bug 14633: Wrong behaviour when printing messages using OBError
diffstat:
src/org/openbravo/erpCommon/utility/MessageBD_data.xsql | 39 +++++-----------
src/org/openbravo/erpCommon/utility/Utility.java | 15 ++---
2 files changed, 19 insertions(+), 35 deletions(-)
diffs (101 lines):
diff -r 79d70b18309e -r bce4bc9e881e
src/org/openbravo/erpCommon/utility/MessageBD_data.xsql
--- a/src/org/openbravo/erpCommon/utility/MessageBD_data.xsql Tue Dec 14
10:43:05 2010 +0100
+++ b/src/org/openbravo/erpCommon/utility/MessageBD_data.xsql Tue Dec 14
11:45:49 2010 +0100
@@ -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): ______________________________________.
************************************************************************
@@ -36,41 +36,28 @@
<Parameter name="language"/>
<Parameter name="value"/>
</SqlMethod>
+
<SqlMethod name="message" type="preparedStatement" return="String"
default="">
<SqlMethodComment></SqlMethodComment>
<Sql>
- SELECT MSGTEXT FROM AD_MESSAGE WHERE VALUE=?
+ SELECT coalesce(t.MSGTEXT, m.MSGTEXT) AS MSGTEXT
+ FROM AD_MESSAGE m left join AD_MESSAGE_TRL t on m.AD_MESSAGE_ID =
t.AD_MESSAGE_ID
+ and t.AD_LANGUAGE = ?
+ WHERE m.VALUE=?
</Sql>
+ <Parameter name="language"/>
<Parameter name="value"/>
</SqlMethod>
- <SqlMethod name="messageLanguage" type="preparedStatement" return="String"
default="">
- <SqlMethodComment></SqlMethodComment>
- <Sql>
- SELECT AD_MESSAGE_TRL.MSGTEXT
- FROM AD_MESSAGE, AD_MESSAGE_TRL WHERE AD_MESSAGE.VALUE=?
- AND AD_MESSAGE.AD_MESSAGE_ID = AD_MESSAGE_TRL.AD_MESSAGE_ID
- AND AD_MESSAGE_TRL.AD_LANGUAGE = ?
- </Sql>
- <Parameter name="value"/>
- <Parameter name="language"/>
- </SqlMethod>
+
<SqlMethod name="columnname" type="preparedStatement" return="String"
default="">
<SqlMethodComment></SqlMethodComment>
<Sql>
- SELECT NAME FROM AD_ELEMENT WHERE COLUMNNAME=?
+ SELECT coalesce(E_TRL.NAME, E.NAME) AS NAME
+ FROM AD_ELEMENT E left join AD_ELEMENT_TRL E_TRL on E.AD_ELEMENT_ID =
E_TRL.AD_ELEMENT_ID
+ and E_TRL.AD_LANGUAGE = ?
+ where E.COLUMNNAME=?
</Sql>
+ <Parameter name="language"/>
<Parameter name="value"/>
</SqlMethod>
- <SqlMethod name="columnnameLanguage" type="preparedStatement"
return="String" default="">
- <SqlMethodComment></SqlMethodComment>
- <Sql>
- SELECT (case when E_TRL.NAME IS NULL then E.NAME else E_TRL.NAME end) AS
NAME
- FROM AD_ELEMENT E, AD_ELEMENT_TRL E_TRL
- WHERE E.AD_ELEMENT_ID = E_TRL.AD_ELEMENT_ID
- AND E.COLUMNNAME=?
- AND E_TRL.AD_LANGUAGE = ?
- </Sql>
- <Parameter name="value"/>
- <Parameter name="language"/>
- </SqlMethod>
</SqlClass>
diff -r 79d70b18309e -r bce4bc9e881e
src/org/openbravo/erpCommon/utility/Utility.java
--- a/src/org/openbravo/erpCommon/utility/Utility.java Tue Dec 14 10:43:05
2010 +0100
+++ b/src/org/openbravo/erpCommon/utility/Utility.java Tue Dec 14 11:45:49
2010 +0100
@@ -297,25 +297,22 @@
try {
log4j.debug("Utility.messageBD - Message Code: " + strCode);
- if (strLanguage.equals("en_US"))
- strMessage = MessageBDData.message(conn, strCode);
- else
- strMessage = MessageBDData.messageLanguage(conn, strCode, strLanguage);
+ strMessage = MessageBDData.message(conn, strLanguage, strCode);
} catch (final Exception ignore) {
+ log4j.error("Error getting message", ignore);
}
log4j.debug("Utility.messageBD - Message description: " + strMessage);
if (strMessage == null || strMessage.equals("")) {
try {
- if (strLanguage.equals("en_US"))
- strMessage = MessageBDData.columnname(conn, strCode);
- else
- strMessage = MessageBDData.columnnameLanguage(conn, strCode,
strLanguage);
+ strMessage = MessageBDData.columnname(conn, strLanguage, strCode);
} catch (final Exception e) {
+ log4j.error("Error getting message", e);
strMessage = strCode;
}
}
- if (strMessage == null || strMessage.equals(""))
+ if (strMessage == null || strMessage.equals("")) {
strMessage = strCode;
+ }
return Replace.replace(Replace.replace(strMessage, "\n", "\\n"), "\"",
""");
}
------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits