details:   https://code.openbravo.com/erp/devel/pi/rev/6033a86144f7
changeset: 33695:6033a86144f7
user:      Sandra Huguet <sandra.huguet <at> openbravo.com>
date:      Thu Mar 15 16:21:15 2018 +0100
summary:   Fixed issue 38141 use bind-variables in FIN_Utility.getDocumentType

diffstat:

 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_Utility.java
 |  17 +++++----
 1 files changed, 10 insertions(+), 7 deletions(-)

diffs (33 lines):

diff -r c6e6d9b1a8f0 -r 6033a86144f7 
modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_Utility.java
--- 
a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_Utility.java
    Thu Mar 15 10:44:22 2018 +0100
+++ 
b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_Utility.java
    Thu Mar 15 16:21:15 2018 +0100
@@ -292,19 +292,22 @@
     OBContext.setAdminMode(false);
     try {
       StringBuilder whereOrderByClause = new StringBuilder();
-      whereOrderByClause.append(" as dt where dt.organization.id in (");
-      whereOrderByClause.append(Utility.getInStrSet(new 
OrganizationStructureProvider()
-          .getParentTree(org.getId(), true)));
-      whereOrderByClause.append(") and dt.client.id = '" + client.getId()
-          + "' and dt.documentCategory = '" + docCategory + "' order by 
ad_isorgincluded('"
-          + org.getId() + "', dt.organization.id, '" + client.getId()
-          + "') , dt.default desc, dt.id desc");
+      whereOrderByClause.append(" as dt where dt.organization.id in ( 
:orgIdList ) ");
+      whereOrderByClause
+          .append(" and dt.client.id = :clientId and dt.documentCategory = 
:docCategory  order by ad_isorgincluded( :orgId, dt.organization.id, :clientId) 
, dt.default desc, dt.id desc");
       OBQuery<DocumentType> dt = 
OBDal.getInstance().createQuery(DocumentType.class,
           whereOrderByClause.toString());
       dt.setFilterOnReadableClients(false);
       dt.setFilterOnReadableOrganization(false);
       dt.setMaxResult(1);
 
+      List<Object> orgIdList = new ArrayList<Object>(
+          new OrganizationStructureProvider().getParentTree(org.getId(), 
true));
+      dt.setNamedParameter("orgIdList", orgIdList);
+      dt.setNamedParameter("clientId", client.getId());
+      dt.setNamedParameter("docCategory", docCategory);
+      dt.setNamedParameter("orgId", org.getId());
+
       List<DocumentType> dtList = dt.list();
       if (dtList != null && !dtList.isEmpty()) {
         outDocType = dtList.get(0);

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Openbravo-commits mailing list
Openbravo-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to