details: https://code.openbravo.com/erp/devel/pi/rev/cf309c370c14 changeset: 35697:cf309c370c14 user: Nono Carballo <nonofce <at> gmail.com> date: Tue Apr 23 10:48:04 2019 +0200 summary: Fixes issue 40628 fix match business partner by token
Fix match business partner by token in import bank statement process Do properly the get in businessPartnersScroll diffstat: modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_BankStatementImport.java | 36 +-------- 1 files changed, 7 insertions(+), 29 deletions(-) diffs (74 lines): diff -r bbafbe13a0c2 -r cf309c370c14 modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_BankStatementImport.java --- a/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_BankStatementImport.java Tue Apr 23 10:01:58 2019 +0200 +++ b/modules/org.openbravo.advpaymentmngt/src/org/openbravo/advpaymentmngt/utility/FIN_BankStatementImport.java Tue Apr 23 10:48:04 2019 +0200 @@ -427,15 +427,9 @@ } else { - final Object[] resultObject = (Object[]) businessPartnersScroll.get(0); + final String id = businessPartnersScroll.getString(0); if (!businessPartnersScroll.next()) { - String strParnterId = ""; - if (resultObject.getClass().isArray()) { - final Object[] values = resultObject; - strParnterId = (String) values[0]; - } - BusinessPartner bp = OBDal.getInstance().get(BusinessPartner.class, strParnterId); - return bp; + return OBDal.getInstance().get(BusinessPartner.class, id); } else { @@ -456,14 +450,8 @@ try { businessPartners.beforeFirst(); businessPartners.next(); - Object[] resultObject = (Object[]) businessPartners.get(0); - - String targetBusinessPartnerName = ""; - if (resultObject.getClass().isArray()) { - final Object[] values = resultObject; - targetBusinessPartnerId = (String) values[0]; - targetBusinessPartnerName = (String) values[1]; - } + targetBusinessPartnerId = businessPartners.getString(0); + String targetBusinessPartnerName = businessPartners.getString(1); int distance = StringUtils.getLevenshteinDistance(partnername, targetBusinessPartnerName); String parsedPartnername = partnername.toLowerCase(); @@ -480,17 +468,11 @@ } businessPartners.beforeFirst(); - int i = 0; while (businessPartners.next()) { - i++; String bpId = ""; String bpName = ""; - resultObject = (Object[]) businessPartners.get(0); - if (resultObject.getClass().isArray()) { - final Object[] values = resultObject; - bpId = (String) values[0]; - bpName = (String) values[1]; - } + bpId = businessPartners.getString(0); + bpName = businessPartners.getString(1); // Calculates distance between two strings meaning number of changes required for a string // to // convert in another string @@ -500,14 +482,10 @@ distance = bpDistance; targetBusinessPartnerId = bpId; } - if (i % 100 == 0) { - OBDal.getInstance().flush(); - OBDal.getInstance().getSession().clear(); - } } return targetBusinessPartnerId; } catch (Exception e) { - log4j.error(e.getStackTrace()); + log4j.error("Exception during closest", e); return targetBusinessPartnerId; } } _______________________________________________ Openbravo-commits mailing list Openbravo-commits@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/openbravo-commits