/** Business logic to execute. */ public VOListResponse loadCharges( GridParams gridParams, String serverLanguageId, String username, ArrayList companiesList, ArrayList customizedFields) throws Throwable { PreparedStatement pstmt = null; Connection conn = null; try { if (this.conn == null) conn = getConn(); else conn = this.conn; // retrieve companies list... String companies = (String) gridParams .getOtherGridParams() .get(ApplicationConsts.COMPANY_CODE_SYS01); // used in lookup grid... if (companies == null) { companies = ""; for (int i = 0; i < companiesList.size(); i++) companies += "'" + companiesList.get(i).toString() + "',"; companies = companies.substring(0, companies.length() - 1); } else companies = "'" + companies + "'"; String sql = "select SAL06_CHARGES.COMPANY_CODE_SYS01,SAL06_CHARGES.CHARGE_CODE,SAL06_CHARGES.PROGRESSIVE_SYS10," + "SYS10_TRANSLATIONS.DESCRIPTION,SAL06_CHARGES.VALUE,SAL06_CHARGES.PERC,SAL06_CHARGES.VAT_CODE_REG01," + "SAL06_CHARGES.CURRENCY_CODE_REG03,SAL06_CHARGES.ENABLED" + " from SAL06_CHARGES,SYS10_TRANSLATIONS where " + "SAL06_CHARGES.PROGRESSIVE_SYS10=SYS10_TRANSLATIONS.PROGRESSIVE and " + "SYS10_TRANSLATIONS.LANGUAGE_CODE=? and " + "SAL06_CHARGES.ENABLED='Y' and " + "SAL06_CHARGES.COMPANY_CODE_SYS01 in (" + companies + ")"; Map attribute2dbField = new HashMap(); attribute2dbField.put("companyCodeSys01SAL06", "SAL06_CHARGES.COMPANY_CODE_SYS01"); attribute2dbField.put("chargeCodeSAL06", "SAL06_CHARGES.CHARGE_CODE"); attribute2dbField.put("descriptionSYS10", "SYS10_TRANSLATIONS.DESCRIPTION"); attribute2dbField.put("progressiveSys10SAL06", "SAL06_CHARGES.PROGRESSIVE_SYS10"); attribute2dbField.put("valueSAL06", "SAL06_CHARGES.VALUE"); attribute2dbField.put("percSAL06", "SAL06_CHARGES.PERC"); attribute2dbField.put("vatCodeReg01SAL06", "SAL06_CHARGES.VAT_CODE_REG01"); attribute2dbField.put("currencyCodeReg03SAL06", "SAL06_CHARGES.CURRENCY_CODE_REG03"); attribute2dbField.put("enabledSAL06", "SAL06_CHARGES.ENABLED"); ArrayList values = new ArrayList(); values.add(serverLanguageId); // read from SAL06 table... Response res = CustomizeQueryUtil.getQuery( conn, new UserSessionParameters(username), sql, values, attribute2dbField, ChargeVO.class, "Y", "N", null, gridParams, 50, true, customizedFields); if (res.isError()) throw new Exception(res.getErrorMessage()); java.util.List list = ((VOListResponse) res).getRows(); ChargeVO vo = null; sql = "select SYS10_TRANSLATIONS.DESCRIPTION,REG01_VATS.VALUE,REG01_VATS.DEDUCTIBLE " + "from SYS10_TRANSLATIONS,REG01_VATS where " + "REG01_VATS.PROGRESSIVE_SYS10=SYS10_TRANSLATIONS.PROGRESSIVE and " + "SYS10_TRANSLATIONS.LANGUAGE_CODE=? and " + "REG01_VATS.VAT_CODE=?"; pstmt = conn.prepareStatement(sql); ResultSet rset = null; for (int i = 0; i < list.size(); i++) { vo = (ChargeVO) list.get(i); if (vo.getVatCodeReg01SAL06() != null) { // retrieve vat data from REG01... pstmt.setString(1, serverLanguageId); pstmt.setString(2, vo.getVatCodeReg01SAL06()); rset = pstmt.executeQuery(); if (rset.next()) { vo.setVatDescriptionSYS10(rset.getString(1)); vo.setVatValueREG01(rset.getBigDecimal(2)); vo.setVatDeductibleREG01(rset.getBigDecimal(3)); } rset.close(); } } Response answer = res; if (answer.isError()) throw new Exception(answer.getErrorMessage()); else return (VOListResponse) answer; } catch (Throwable ex) { Logger.error( username, this.getClass().getName(), "executeCommand", "Error while fetching charges list", ex); throw new Exception(ex.getMessage()); } finally { try { pstmt.close(); } catch (Exception exx) { } try { if (this.conn == null && conn != null) { // close only local connection conn.commit(); conn.close(); } } catch (Exception exx) { } } }
/** Business logic to execute. */ public VOListResponse insertCharges( ArrayList list, String serverLanguageId, String username, ArrayList customizedFields) throws Throwable { Connection conn = null; try { if (this.conn == null) conn = getConn(); else conn = this.conn; ChargeVO vo = null; Map attribute2dbField = new HashMap(); attribute2dbField.put("companyCodeSys01SAL06", "COMPANY_CODE_SYS01"); attribute2dbField.put("chargeCodeSAL06", "CHARGE_CODE"); attribute2dbField.put("chargeCodeSAL06", "CHARGE_CODE"); attribute2dbField.put("progressiveSys10SAL06", "PROGRESSIVE_SYS10"); attribute2dbField.put("valueSAL06", "VALUE"); attribute2dbField.put("percSAL06", "PERC"); attribute2dbField.put("vatCodeReg01SAL06", "VAT_CODE_REG01"); attribute2dbField.put("currencyCodeReg03SAL06", "CURRENCY_CODE_REG03"); attribute2dbField.put("enabledSAL06", "ENABLED"); BigDecimal progressiveSYS10 = null; Response res = null; for (int i = 0; i < list.size(); i++) { vo = (ChargeVO) list.get(i); vo.setEnabledSAL06("Y"); // insert record in SYS10... progressiveSYS10 = TranslationUtils.insertTranslations( vo.getDescriptionSYS10(), vo.getCompanyCodeSys01SAL06(), conn); vo.setProgressiveSys10SAL06(progressiveSYS10); // insert into SAL06... res = CustomizeQueryUtil.insertTable( conn, new UserSessionParameters(username), vo, "SAL06_CHARGES", attribute2dbField, "Y", "N", null, true, customizedFields); if (res.isError()) { throw new Exception(res.getErrorMessage()); } } return new VOListResponse(list, false, list.size()); } catch (Throwable ex) { Logger.error( username, this.getClass().getName(), "executeCommand", "Error while inserting new charges", ex); try { if (this.conn == null && conn != null) // rollback only local connection conn.rollback(); } catch (Exception ex3) { } throw new Exception(ex.getMessage()); } finally { try { if (this.conn == null && conn != null) { // close only local connection conn.commit(); conn.close(); } } catch (Exception exx) { } } }
/** Business logic to execute. */ public VOListResponse loadSupplierPriceItems( GridParams pars, String serverLanguageId, String username, ArrayList customizedFields) throws Throwable { PreparedStatement pstmt = null; Connection conn = null; try { if (this.conn == null) conn = getConn(); else conn = this.conn; BigDecimal rootProgressiveHIE01 = (BigDecimal) pars.getOtherGridParams().get(ApplicationConsts.ROOT_PROGRESSIVE_HIE01); BigDecimal progressiveHIE01 = (BigDecimal) pars.getOtherGridParams().get(ApplicationConsts.PROGRESSIVE_HIE01); BigDecimal progressiveHIE02 = (BigDecimal) pars.getOtherGridParams().get(ApplicationConsts.PROGRESSIVE_HIE02); BigDecimal progressiveREG04 = (BigDecimal) pars.getOtherGridParams().get(ApplicationConsts.PROGRESSIVE_REG04); String companyCodeSYS01 = (String) pars.getOtherGridParams().get(ApplicationConsts.COMPANY_CODE_SYS01); String pricelistCodePUR03 = (String) pars.getOtherGridParams().get(ApplicationConsts.PRICELIST); CompanyHierarchyLevelVO vo = (CompanyHierarchyLevelVO) pars.getOtherGridParams().get(ApplicationConsts.TREE_FILTER); if (vo != null) { progressiveHIE01 = vo.getProgressiveHIE01(); progressiveHIE02 = vo.getProgressiveHie02HIE01(); } String sql = "select PUR02_SUPPLIER_ITEMS.COMPANY_CODE_SYS01,PUR02_SUPPLIER_ITEMS.ITEM_CODE_ITM01,PUR02_SUPPLIER_ITEMS.SUPPLIER_ITEM_CODE,PUR02_SUPPLIER_ITEMS.PROGRESSIVE_REG04," + "PUR02_SUPPLIER_ITEMS.PROGRESSIVE_HIE02,PUR02_SUPPLIER_ITEMS.PROGRESSIVE_HIE01,PUR02_SUPPLIER_ITEMS.MIN_PURCHASE_QTY,PUR02_SUPPLIER_ITEMS.MULTIPLE_QTY," + "PUR02_SUPPLIER_ITEMS.UM_CODE_REG02,PUR02_SUPPLIER_ITEMS.ENABLED,SYS10_COMPANY_TRANSLATIONS.DESCRIPTION,REG02_MEASURE_UNITS.DECIMALS," + "ITM01_ITEMS.VAT_CODE_REG01,SYS10_VAT.DESCRIPTION,REG01_VATS.DEDUCTIBLE,REG01_VATS.VALUE," + "PUR04_SUPPLIER_PRICES.VALUE,PUR04_SUPPLIER_PRICES.START_DATE,PUR04_SUPPLIER_PRICES.END_DATE," + "ITM01_ITEMS.USE_VARIANT_1,ITM01_ITEMS.USE_VARIANT_2,ITM01_ITEMS.USE_VARIANT_3,ITM01_ITEMS.USE_VARIANT_4,ITM01_ITEMS.USE_VARIANT_5, " + "ITM01_ITEMS.NO_WAREHOUSE_MOV " + " from PUR02_SUPPLIER_ITEMS,SYS10_COMPANY_TRANSLATIONS,ITM01_ITEMS,REG02_MEASURE_UNITS,SYS10_TRANSLATIONS SYS10_VAT,REG01_VATS,PUR04_SUPPLIER_PRICES where " + "PUR02_SUPPLIER_ITEMS.PROGRESSIVE_HIE02=? and " + "PUR02_SUPPLIER_ITEMS.UM_CODE_REG02=REG02_MEASURE_UNITS.UM_CODE and " + "PUR02_SUPPLIER_ITEMS.COMPANY_CODE_SYS01=ITM01_ITEMS.COMPANY_CODE_SYS01 and " + "PUR02_SUPPLIER_ITEMS.ITEM_CODE_ITM01=ITM01_ITEMS.ITEM_CODE and " + "ITM01_ITEMS.COMPANY_CODE_SYS01=SYS10_COMPANY_TRANSLATIONS.COMPANY_CODE_SYS01 and " + "ITM01_ITEMS.PROGRESSIVE_SYS10=SYS10_COMPANY_TRANSLATIONS.PROGRESSIVE and " + "SYS10_COMPANY_TRANSLATIONS.LANGUAGE_CODE=? and " + "PUR02_SUPPLIER_ITEMS.COMPANY_CODE_SYS01 = ? and " + "PUR02_SUPPLIER_ITEMS.PROGRESSIVE_REG04=? and " + "PUR02_SUPPLIER_ITEMS.ENABLED='Y' and " + "ITM01_ITEMS.VAT_CODE_REG01=REG01_VATS.VAT_CODE and " + "REG01_VATS.PROGRESSIVE_SYS10=SYS10_VAT.PROGRESSIVE and " + "SYS10_VAT.LANGUAGE_CODE=? and " + "PUR02_SUPPLIER_ITEMS.COMPANY_CODE_SYS01=PUR04_SUPPLIER_PRICES.COMPANY_CODE_SYS01 and " + "PUR02_SUPPLIER_ITEMS.PROGRESSIVE_REG04=PUR04_SUPPLIER_PRICES.PROGRESSIVE_REG04 and " + "PUR02_SUPPLIER_ITEMS.ITEM_CODE_ITM01=PUR04_SUPPLIER_PRICES.ITEM_CODE_ITM01 and " + "PUR04_SUPPLIER_PRICES.PRICELIST_CODE_PUR03=? and " + "PUR04_SUPPLIER_PRICES.START_DATE<=? and " + "PUR04_SUPPLIER_PRICES.END_DATE>? "; if (rootProgressiveHIE01 == null || !rootProgressiveHIE01.equals(progressiveHIE01)) { // retrieve all subnodes of the specified node... pstmt = conn.prepareStatement( "select HIE01_COMPANY_LEVELS.PROGRESSIVE,HIE01_COMPANY_LEVELS.PROGRESSIVE_HIE01,HIE01_COMPANY_LEVELS.LEV from HIE01_COMPANY_LEVELS " + "where COMPANY_CODE_SYS01='" + companyCodeSYS01 + "' and ENABLED='Y' and PROGRESSIVE_HIE02=? and PROGRESSIVE>=? " + "order by LEV,PROGRESSIVE_HIE01,PROGRESSIVE"); pstmt.setBigDecimal(1, progressiveHIE02); pstmt.setBigDecimal(2, progressiveHIE01); ResultSet rset = pstmt.executeQuery(); HashSet currentLevelNodes = new HashSet(); HashSet newLevelNodes = new HashSet(); String nodes = ""; int currentLevel = -1; while (rset.next()) { if (currentLevel != rset.getInt(3)) { // next level... currentLevel = rset.getInt(3); currentLevelNodes = newLevelNodes; newLevelNodes = new HashSet(); } if (rset.getBigDecimal(1).equals(progressiveHIE01)) { newLevelNodes.add(rset.getBigDecimal(1)); nodes += rset.getBigDecimal(1) + ","; } else if (currentLevelNodes.contains(rset.getBigDecimal(2))) { newLevelNodes.add(rset.getBigDecimal(1)); nodes += rset.getBigDecimal(1) + ","; } } rset.close(); pstmt.close(); if (nodes.length() > 0) nodes = nodes.substring(0, nodes.length() - 1); if (rootProgressiveHIE01 != null || nodes.length() > 0) sql += " and PUR02_SUPPLIER_ITEMS.PROGRESSIVE_HIE01 in (" + nodes + ")"; } Map attribute2dbField = new HashMap(); attribute2dbField.put("companyCodeSys01PUR02", "PUR02_SUPPLIER_ITEMS.COMPANY_CODE_SYS01"); attribute2dbField.put("itemCodeItm01PUR02", "PUR02_SUPPLIER_ITEMS.ITEM_CODE_ITM01"); attribute2dbField.put("supplierItemCodePUR02", "PUR02_SUPPLIER_ITEMS.SUPPLIER_ITEM_CODE"); attribute2dbField.put("progressiveReg04PUR02", "PUR02_SUPPLIER_ITEMS.PROGRESSIVE_REG04"); attribute2dbField.put("progressiveHie02PUR02", "PUR02_SUPPLIER_ITEMS.PROGRESSIVE_HIE02"); attribute2dbField.put("progressiveHie01PUR02", "PUR02_SUPPLIER_ITEMS.PROGRESSIVE_HIE01"); attribute2dbField.put("minPurchaseQtyPUR02", "PUR02_SUPPLIER_ITEMS.MIN_PURCHASE_QTY"); attribute2dbField.put("multipleQtyPUR02", "PUR02_SUPPLIER_ITEMS.MULTIPLE_QTY"); attribute2dbField.put("umCodeReg02PUR02", "PUR02_SUPPLIER_ITEMS.UM_CODE_REG02"); attribute2dbField.put("enabledPUR02", "PUR02_SUPPLIER_ITEMS.ENABLED"); attribute2dbField.put("descriptionSYS10", "SYS10_COMPANY_TRANSLATIONS.DESCRIPTION"); attribute2dbField.put("decimalsREG02", "REG02_MEASURE_UNITS.DECIMALS"); attribute2dbField.put("vatCodeReg01ITM01", "ITM01_ITEMS.VAT_CODE_REG01"); attribute2dbField.put("vatDescriptionSYS10", "SYS10_VAT.DESCRIPTION"); attribute2dbField.put("deductibleREG01", "REG01_VATS.DEDUCTIBLE"); attribute2dbField.put("valueREG01", "REG01_VATS.VALUE"); attribute2dbField.put("valuePUR04", "PUR04_SUPPLIER_PRICES.VALUE"); attribute2dbField.put("startDatePUR04", "PUR04_SUPPLIER_PRICES.START_DATE"); attribute2dbField.put("endDatePUR04", "PUR04_SUPPLIER_PRICES.END_DATE"); attribute2dbField.put("useVariant1ITM01", "ITM01_ITEMS.USE_VARIANT_1"); attribute2dbField.put("useVariant2ITM01", "ITM01_ITEMS.USE_VARIANT_2"); attribute2dbField.put("useVariant3ITM01", "ITM01_ITEMS.USE_VARIANT_3"); attribute2dbField.put("useVariant4ITM01", "ITM01_ITEMS.USE_VARIANT_4"); attribute2dbField.put("useVariant5ITM01", "ITM01_ITEMS.USE_VARIANT_5"); attribute2dbField.put("noWarehouseMovITM01", "ITM01_ITEMS.NO_WAREHOUSE_MOV"); ArrayList values = new ArrayList(); values.add(progressiveHIE02); values.add(serverLanguageId); values.add(companyCodeSYS01); values.add(progressiveREG04); values.add(serverLanguageId); values.add(pricelistCodePUR03); values.add(new java.sql.Date(System.currentTimeMillis())); values.add(new java.sql.Date(System.currentTimeMillis())); // read from PUR02 table... Response answer = CustomizeQueryUtil.getQuery( conn, new UserSessionParameters(username), sql, values, attribute2dbField, SupplierPriceItemVO.class, "Y", "N", null, pars, 50, true, customizedFields); if (answer.isError()) throw new Exception(answer.getErrorMessage()); else return (VOListResponse) answer; } catch (Throwable ex) { Logger.error( username, this.getClass().getName(), "executeCommand", "Error while fetching supplier items list", ex); throw new Exception(ex.getMessage()); } finally { try { pstmt.close(); } catch (Exception exx) { } try { if (this.conn == null && conn != null) { // close only local connection conn.commit(); conn.close(); } } catch (Exception exx) { } } }
/** Business logic to execute. */ public final Response executeCommand( Object inputPar, UserSessionParameters userSessionPars, HttpServletRequest request, HttpServletResponse response, HttpSession userSession, ServletContext context) { String serverLanguageId = ((JAIOUserSessionParameters) userSessionPars).getServerLanguageId(); Connection conn = null; PreparedStatement pstmt = null; try { conn = ConnectionManager.getConnection(context); // fires the GenericEvent.CONNECTION_CREATED event... EventsManager.getInstance() .processEvent( new GenericEvent( this, getRequestName(), GenericEvent.CONNECTION_CREATED, (JAIOUserSessionParameters) userSessionPars, request, response, userSession, context, conn, inputPar, null)); // retrieve companies list... GridParams gridParams = (GridParams) inputPar; String companies = (String) gridParams .getOtherGridParams() .get(ApplicationConsts.COMPANY_CODE_SYS01); // used in lookup grid... if (companies == null) { ArrayList companiesList = ((JAIOUserSessionParameters) userSessionPars).getCompanyBa().getCompaniesList("SAL06"); companies = ""; for (int i = 0; i < companiesList.size(); i++) companies += "'" + companiesList.get(i).toString() + "',"; companies = companies.substring(0, companies.length() - 1); } else companies = "'" + companies + "'"; String sql = "select SAL06_CHARGES.COMPANY_CODE_SYS01,SAL06_CHARGES.CHARGE_CODE,SAL06_CHARGES.PROGRESSIVE_SYS10," + "SYS10_TRANSLATIONS.DESCRIPTION,SAL06_CHARGES.VALUE,SAL06_CHARGES.PERC,SAL06_CHARGES.VAT_CODE_REG01," + "SAL06_CHARGES.CURRENCY_CODE_REG03,SAL06_CHARGES.ENABLED" + " from SAL06_CHARGES,SYS10_TRANSLATIONS where " + "SAL06_CHARGES.PROGRESSIVE_SYS10=SYS10_TRANSLATIONS.PROGRESSIVE and " + "SYS10_TRANSLATIONS.LANGUAGE_CODE=? and " + "SAL06_CHARGES.ENABLED='Y' and " + "SAL06_CHARGES.COMPANY_CODE_SYS01 in (" + companies + ")"; Map attribute2dbField = new HashMap(); attribute2dbField.put("companyCodeSys01SAL06", "SAL06_CHARGES.COMPANY_CODE_SYS01"); attribute2dbField.put("chargeCodeSAL06", "SAL06_CHARGES.CHARGE_CODE"); attribute2dbField.put("descriptionSYS10", "SYS10_TRANSLATIONS.DESCRIPTION"); attribute2dbField.put("progressiveSys10SAL06", "SAL06_CHARGES.PROGRESSIVE_SYS10"); attribute2dbField.put("valueSAL06", "SAL06_CHARGES.VALUE"); attribute2dbField.put("percSAL06", "SAL06_CHARGES.PERC"); attribute2dbField.put("vatCodeReg01SAL06", "SAL06_CHARGES.VAT_CODE_REG01"); attribute2dbField.put("currencyCodeReg03SAL06", "SAL06_CHARGES.CURRENCY_CODE_REG03"); attribute2dbField.put("enabledSAL06", "SAL06_CHARGES.ENABLED"); ArrayList values = new ArrayList(); values.add(serverLanguageId); // read from SAL06 table... Response res = CustomizeQueryUtil.getQuery( conn, userSessionPars, sql, values, attribute2dbField, ChargeVO.class, "Y", "N", context, gridParams, 50, true, new BigDecimal(292) // window identifier... ); if (res.isError()) return res; ArrayList list = ((VOListResponse) res).getRows(); ChargeVO vo = null; sql = "select SYS10_TRANSLATIONS.DESCRIPTION,REG01_VATS.VALUE,REG01_VATS.DEDUCTIBLE " + "from SYS10_TRANSLATIONS,REG01_VATS where " + "REG01_VATS.PROGRESSIVE_SYS10=SYS10_TRANSLATIONS.PROGRESSIVE and " + "SYS10_TRANSLATIONS.LANGUAGE_CODE=? and " + "REG01_VATS.VAT_CODE=?"; pstmt = conn.prepareStatement(sql); ResultSet rset = null; for (int i = 0; i < list.size(); i++) { vo = (ChargeVO) list.get(i); if (vo.getVatCodeReg01SAL06() != null) { // retrieve vat data from REG01... pstmt.setString(1, serverLanguageId); pstmt.setString(2, vo.getVatCodeReg01SAL06()); rset = pstmt.executeQuery(); if (rset.next()) { vo.setVatDescriptionSYS10(rset.getString(1)); vo.setVatValueREG01(rset.getBigDecimal(2)); vo.setVatDeductibleREG01(rset.getBigDecimal(3)); } rset.close(); } } Response answer = res; // fires the GenericEvent.BEFORE_COMMIT event... EventsManager.getInstance() .processEvent( new GenericEvent( this, getRequestName(), GenericEvent.BEFORE_COMMIT, (JAIOUserSessionParameters) userSessionPars, request, response, userSession, context, conn, inputPar, answer)); return answer; } catch (Throwable ex) { Logger.error( userSessionPars.getUsername(), this.getClass().getName(), "executeCommand", "Error while fetching charges list", ex); return new ErrorResponse(ex.getMessage()); } finally { try { pstmt.close(); } catch (Exception ex2) { } try { ConnectionManager.releaseConnection(conn, context); } catch (Exception ex1) { } } }
/** Business logic to execute. */ public VOListResponse loadLedger( GridParams gridParams, String serverLanguageId, String username, ArrayList companiesList, ArrayList customizedFields) throws Throwable { Connection conn = null; try { if (this.conn == null) conn = getConn(); else conn = this.conn; // retrieve companies list... String companies = ""; if (gridParams.getOtherGridParams().get(ApplicationConsts.COMPANY_CODE_SYS01) != null) { companies = "'" + gridParams.getOtherGridParams().get(ApplicationConsts.COMPANY_CODE_SYS01) + "'"; } else { for (int i = 0; i < companiesList.size(); i++) companies += "'" + companiesList.get(i).toString() + "',"; companies = companies.substring(0, companies.length() - 1); } String sql = "select ACC01_LEDGER.COMPANY_CODE_SYS01,ACC01_LEDGER.LEDGER_CODE,ACC01_LEDGER.PROGRESSIVE_SYS10,SYS10_TRANSLATIONS.DESCRIPTION,ACC01_LEDGER.ENABLED,ACC01_LEDGER.ACCOUNT_TYPE from ACC01_LEDGER,SYS10_TRANSLATIONS where " + "ACC01_LEDGER.PROGRESSIVE_SYS10=SYS10_TRANSLATIONS.PROGRESSIVE and " + "SYS10_TRANSLATIONS.LANGUAGE_CODE=? and " + "ACC01_LEDGER.ENABLED='Y' and ACC01_LEDGER.COMPANY_CODE_SYS01 in (" + companies + ")"; Map attribute2dbField = new HashMap(); attribute2dbField.put("ledgerCodeACC01", "ACC01_LEDGER.LEDGER_CODE"); attribute2dbField.put("descriptionSYS10", "SYS10_TRANSLATIONS.DESCRIPTION"); attribute2dbField.put("progressiveSys10ACC01", "ACC01_LEDGER.PROGRESSIVE_SYS10"); attribute2dbField.put("enabledACC01", "ACC01_LEDGER.ENABLED"); attribute2dbField.put("companyCodeSys01ACC01", "ACC01_LEDGER.COMPANY_CODE_SYS01"); attribute2dbField.put("accountTypeACC01", "ACC01_LEDGER.ACCOUNT_TYPE"); ArrayList values = new ArrayList(); values.add(serverLanguageId); // read from ACC01 table... Response answer = CustomizeQueryUtil.getQuery( conn, new UserSessionParameters(username), sql, values, attribute2dbField, LedgerVO.class, "Y", "N", null, gridParams, true, customizedFields); if (answer.isError()) throw new Exception(answer.getErrorMessage()); else return (VOListResponse) answer; } catch (Throwable ex) { Logger.error( username, this.getClass().getName(), "executeCommand", "Error while fetching the ledger", ex); throw new Exception(ex.getMessage()); } finally { try { if (this.conn == null && conn != null) { // close only local connection conn.commit(); conn.close(); } } catch (Exception exx) { } } }
/** Business logic to execute. */ public VOListResponse insertLedger( ArrayList list, String serverLanguageId, String username, ArrayList companyCodes, ArrayList customizedFields) throws Throwable { Connection conn = null; try { if (this.conn == null) conn = getConn(); else conn = this.conn; String companyCode = companyCodes.get(0).toString(); LedgerVO vo = null; BigDecimal progressiveSYS10 = null; Response res = null; Map attribute2dbField = new HashMap(); attribute2dbField.put("ledgerCodeACC01", "LEDGER_CODE"); attribute2dbField.put("progressiveSys10ACC01", "PROGRESSIVE_SYS10"); attribute2dbField.put("enabledACC01", "ENABLED"); attribute2dbField.put("companyCodeSys01ACC01", "COMPANY_CODE_SYS01"); attribute2dbField.put("accountTypeACC01", "ACCOUNT_TYPE"); for (int i = 0; i < list.size(); i++) { vo = (LedgerVO) list.get(i); vo.setEnabledACC01("Y"); if (vo.getCompanyCodeSys01ACC01() == null) vo.setCompanyCodeSys01ACC01(companyCode); // insert record in SYS10... progressiveSYS10 = TranslationUtils.insertTranslations( vo.getDescriptionSYS10(), vo.getCompanyCodeSys01ACC01(), conn); vo.setProgressiveSys10ACC01(progressiveSYS10); // insert into ACC01... res = CustomizeQueryUtil.insertTable( conn, new UserSessionParameters(username), vo, "ACC01_LEDGER", attribute2dbField, "Y", "N", null, true, customizedFields); if (res.isError()) { throw new Exception(res.getErrorMessage()); } } return new VOListResponse(list, false, list.size()); } catch (Throwable ex) { Logger.error( username, this.getClass().getName(), "executeCommand", "Error while inserting new ledgers", ex); try { if (this.conn == null && conn != null) // rollback only local connection conn.rollback(); } catch (Exception ex3) { } throw new Exception(ex.getMessage()); } finally { try { if (this.conn == null && conn != null) { // close only local connection conn.commit(); conn.close(); } } catch (Exception exx) { } } }