Commit 880cfd68 authored by vdhoble's avatar vdhoble

changes done for taxtran amt calculation


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@100350 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 428bed9b
package ibase.webitm.ejb.fin; package ibase.webitm.ejb.fin;
import java.rmi.RemoteException; import java.rmi.RemoteException;
import java.sql.Connection; import java.sql.Connection;
import java.sql.PreparedStatement; import java.sql.PreparedStatement;
import java.sql.ResultSet; import java.sql.ResultSet;
import java.sql.SQLException; import java.sql.SQLException;
import java.sql.Timestamp; import java.sql.Timestamp;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.StringTokenizer; import java.util.StringTokenizer;
import ibase.system.config.ConnDriver; import ibase.system.config.ConnDriver;
import ibase.webitm.ejb.ActionHandlerEJB; import ibase.webitm.ejb.ActionHandlerEJB;
import ibase.webitm.ejb.ITMDBAccessEJB; import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.ValidatorEJB; import ibase.webitm.ejb.ValidatorEJB;
import ibase.webitm.utility.GenericUtility; import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.ITMException; import ibase.webitm.utility.ITMException;
public class MiscPayGltracePreview extends ActionHandlerEJB implements MiscPayGltracePreviewLocal,MiscPayGltracePreviewRemote public class MiscPayGltracePreview extends ActionHandlerEJB implements MiscPayGltracePreviewLocal,MiscPayGltracePreviewRemote
{ {
String errString = ""; String errString = "";
public String preview(String tranID,String xtraParams, String forcedFlag) throws RemoteException,ITMException public String preview(String tranID,String xtraParams, String forcedFlag) throws RemoteException,ITMException
{ {
System.out.println("Preview Method is called for Purchase Voucher"); System.out.println("Preview Method is called for Purchase Voucher");
String retString = ""; String retString = "";
boolean adj_amt_flag = true,amt_upd_flag = true,retenamt_flag = true,hold_tax_flag = true; boolean adj_amt_flag = true,amt_upd_flag = true,retenamt_flag = true,hold_tax_flag = true;
Connection conn = null; Connection conn = null;
String sql = "",sql1 = ""; String sql = "",sql1 = "";
PreparedStatement pstmt = null,pstmt1 = null,pstmt2 = null; PreparedStatement pstmt = null,pstmt1 = null,pstmt2 = null;
ResultSet rs = null,rs1 = null,rs2 = null; ResultSet rs = null,rs1 = null,rs2 = null;
FinCommon finCommon = null; FinCommon finCommon = null;
GenericUtility genericUtility = null; GenericUtility genericUtility = null;
ITMDBAccessEJB itmDBAccessEJB = null; ITMDBAccessEJB itmDBAccessEJB = null;
ValidatorEJB validatorEJB = null; ValidatorEJB validatorEJB = null;
HashMap hdrmap = new HashMap(); HashMap hdrmap = new HashMap();
Date effDate = null; Date effDate = null;
Date tranDate = null; Date tranDate = null;
Date refDate = null; Date refDate = null;
String tranid,finentity = "",sitecode = "",sundaryType = "",sundrycode = "",acct_code = "",cctr_code = "",empcode = "",analcode = "",currCode = ""; String tranid,finentity = "",sitecode = "",sundaryType = "",sundrycode = "",acct_code = "",cctr_code = "",empcode = "",analcode = "",currCode = "";
Double exchRate = 0.0,drAmt = 0.0,bankCharges = 0.0,Amt = 0.0,bnkChg = 0.0,exchRateDet = 0.0,exchRateBc = 0.0; Double exchRate = 0.0,drAmt = 0.0,bankCharges = 0.0,Amt = 0.0,bnkChg = 0.0,exchRateDet = 0.0,exchRateBc = 0.0;
Double payAmt = 0.0,discountAmt = 0.0,netAmt = 0.0, taxAmt = 0.0,totNetAmt = 0.0,discAmt = 0.0,discountAmtDet = 0.0,diffAmtExch = 0.0; Double payAmt = 0.0,discountAmt = 0.0,netAmt = 0.0, taxAmt = 0.0,totNetAmt = 0.0,discAmt = 0.0,discountAmtDet = 0.0,diffAmtExch = 0.0;
String acctCodeDisc = "",cctrCodeDisc = "",acctCodeCf = "",cctrCodeCf = "",cctrCodeAp = "",tranType = ""; String acctCodeDisc = "",cctrCodeDisc = "",acctCodeCf = "",cctrCodeCf = "",cctrCodeAp = "",tranType = "";
String lineNoDet = ""; String lineNoDet = "";
String loginEmpCode = "",currCodeBal = "",remarks = "",acctCodeBc = "",cctrCodeBc = "",currCodeBc = "",acctCodeAp = ""; String loginEmpCode = "",currCodeBal = "",remarks = "",acctCodeBc = "",cctrCodeBc = "",currCodeBc = "",acctCodeAp = "";
String tranSer = "", ref = "", party_doc_ref = "", acctCodeTran = "", cctrCodeTran = "", tax_reco_cctr = "", acctCodeReco = "", cctrCodeReco = ""; String tranSer = "", ref = "", party_doc_ref = "", acctCodeTran = "", cctrCodeTran = "", tax_reco_cctr = "", acctCodeReco = "", cctrCodeReco = "";
String[] tax_reco_acct; String[] tax_reco_acct;
String acct_code__revr = "", cctr_code__revr = ""; String acct_code__revr = "", cctr_code__revr = "";
Double miscAmt = 0.0; Double miscAmt = 0.0;
Double payAmtDet = 0.0, discAmtDet = 0.0, taxAmtDet = 0.0, reco_amount = 0.0,AmountDet =0.0; Double payAmtDet = 0.0, discAmtDet = 0.0, taxAmtDet = 0.0, reco_amount = 0.0,AmountDet =0.0;
System.out.println("tran id = "+tranID); System.out.println("tran id = "+tranID);
boolean connStatus=false; boolean connStatus=false;
boolean bchg = false; boolean bchg = false;
try{ try{
if ( conn == null )//changed by Gulzar - 25/11/11 if ( conn == null )//changed by Gulzar - 25/11/11
{ {
ConnDriver connDriver = null; ConnDriver connDriver = null;
connDriver = new ConnDriver(); connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM"); conn = connDriver.getConnectDB("DriverITM");
conn.setAutoCommit(false); conn.setAutoCommit(false);
connDriver = null; connDriver = null;
connStatus = true; connStatus = true;
} }
finCommon = new FinCommon(); finCommon = new FinCommon();
genericUtility = new GenericUtility(); genericUtility = new GenericUtility();
itmDBAccessEJB = new ITMDBAccessEJB(); itmDBAccessEJB = new ITMDBAccessEJB();
validatorEJB = new ValidatorEJB(); validatorEJB = new ValidatorEJB();
loginEmpCode = validatorEJB.getValueFromXTRA_PARAMS(xtraParams, "loginEmpCode"); loginEmpCode = validatorEJB.getValueFromXTRA_PARAMS(xtraParams, "loginEmpCode");
System.out.println("Printing loginEmpCode---1-----"+loginEmpCode+"--"); System.out.println("Printing loginEmpCode---1-----"+loginEmpCode+"--");
sql = "select tran_id,remarks,tran_Date,ref_date,tran_type,fin_entity,site_code,bank_code,acct_code__bal,cctr_code__bal,curr_code__bc,curr_code,exch_rate,bank_charges,discount_amt,acct_code__bc,cctr_code__bc,curr_code__bc,exch_rate__bc,diff_amt__exch,acct_code__cf,cctr_code__cf from misc_payment where tran_id = ?"; sql = "select tran_id,remarks,tran_Date,ref_date,tran_type,fin_entity,site_code" +
",bank_code,acct_code__bal,cctr_code__bal,curr_code__bc," +
pstmt = conn.prepareStatement(sql); "curr_code,exch_rate,bank_charges,discount_amt,acct_code__bc," +
pstmt.setString(1,tranID); "cctr_code__bc,curr_code__bc,exch_rate__bc,diff_amt__exch," +
rs = pstmt.executeQuery(); "acct_code__cf,cctr_code__cf from misc_payment where tran_id = ?";
if(rs.next())
{ pstmt = conn.prepareStatement(sql);
tranid = rs.getString("tran_id"); pstmt.setString(1,tranID);
tranDate = new Timestamp(rs.getDate("tran_Date").getTime()); rs = pstmt.executeQuery();
tranType = rs.getString("tran_type"); if(rs.next())
effDate = new Timestamp(rs.getDate("ref_date").getTime()); {
finentity = rs.getString("fin_entity"); tranid = rs.getString("tran_id");
sitecode = rs.getString("site_code"); tranDate = new Timestamp(rs.getDate("tran_Date").getTime());
sundaryType = "B"; tranType = rs.getString("tran_type");
sundrycode = rs.getString("bank_code"); effDate = new Timestamp(rs.getDate("ref_date").getTime());
acct_code = rs.getString("acct_code__bal"); finentity = rs.getString("fin_entity");
cctr_code = rs.getString("cctr_code__bal"); sitecode = rs.getString("site_code");
currCodeBal = rs.getString("curr_code__bc"); sundaryType = "B";
sundrycode = rs.getString("bank_code");
currCode = rs.getString("curr_code"); acct_code = rs.getString("acct_code__bal");
exchRate = rs.getDouble("exch_rate"); cctr_code = rs.getString("cctr_code__bal");
bankCharges = rs.getDouble("bank_charges"); currCodeBal = rs.getString("curr_code__bc");
discAmt = rs.getDouble("discount_amt");
acctCodeBc = rs.getString("acct_code__bc"); currCode = rs.getString("curr_code");
cctrCodeBc = rs.getString("cctr_code__bc"); exchRate = rs.getDouble("exch_rate");
currCodeBc = rs.getString("curr_code__bc"); bankCharges = rs.getDouble("bank_charges");
exchRateBc = rs.getDouble("exch_rate__bc"); discAmt = rs.getDouble("discount_amt");
diffAmtExch = rs.getDouble("diff_amt__exch"); acctCodeBc = rs.getString("acct_code__bc");
acctCodeCf = rs.getString("acct_code__cf"); cctrCodeBc = rs.getString("cctr_code__bc");
cctrCodeCf = rs.getString("cctr_code__cf"); currCodeBc = rs.getString("curr_code__bc");
exchRateBc = rs.getDouble("exch_rate__bc");
remarks = rs.getString("remarks"); diffAmtExch = rs.getDouble("diff_amt__exch");
} acctCodeCf = rs.getString("acct_code__cf");
rs.close(); cctrCodeCf = rs.getString("cctr_code__cf");
rs=null;
pstmt.close(); remarks = rs.getString("remarks");
pstmt=null; }
rs.close();
rs=null;
System.out.println("120****remarks"+remarks); pstmt.close();
pstmt=null;
//************fetching records from detail for calculation
sql1 = "select line_no from misc_paydet where tran_id = ?";
pstmt1 = conn.prepareStatement(sql1); System.out.println("120****remarks"+remarks);
pstmt1.setString(1,tranID);
rs1 = pstmt1.executeQuery(); //************fetching records from detail for calculation
while(rs1.next()) sql1 = "select line_no from misc_paydet where tran_id = ?";
{ pstmt1 = conn.prepareStatement(sql1);
lineNoDet = rs1.getString("line_no"); pstmt1.setString(1,tranID);
System.out.println("Line NO Detail***************"+lineNoDet); rs1 = pstmt1.executeQuery();
while(rs1.next())
sql = "select (case when exch_rate is null then 0 else exch_rate end) as exchRateDet,pay_amt,(case when tax_amt is null then 0 else tax_amt end) as taxAmt, (case when discount_amt is null then 0 else discount_amt end) as discountAmt from misc_paydet where tran_id = ? and line_no = ?"; {
pstmt = conn.prepareStatement(sql); lineNoDet = rs1.getString("line_no");
pstmt.setString(1,tranID); System.out.println("Line NO Detail***************"+lineNoDet);
pstmt.setString(2,lineNoDet);
rs = pstmt.executeQuery(); sql = "select (case when exch_rate is null then 0 else exch_rate end) as exchRateDet,pay_amt," +
if(rs.next()) "(case when tax_amt is null then 0 else tax_amt end) as taxAmt, " +
{ "(case when discount_amt is null then 0 else discount_amt end) as discountAmt " +
exchRateDet = rs.getDouble("exchRateDet"); " from misc_paydet where tran_id = ? and line_no = ?";
if(exchRateDet == 0.0) pstmt = conn.prepareStatement(sql);
{ pstmt.setString(1,tranID);
exchRateDet = exchRate; pstmt.setString(2,lineNoDet);
} rs = pstmt.executeQuery();
payAmt = rs.getDouble("pay_amt"); if(rs.next())
taxAmt = rs.getDouble("taxAmt"); {
discountAmt = rs.getDouble("discountAmt"); exchRateDet = rs.getDouble("exchRateDet");
netAmt = (payAmt + taxAmt + discountAmt) * (exchRateDet/exchRate ); if(exchRateDet == 0.0)
totNetAmt = totNetAmt + netAmt; {
exchRateDet = exchRate;
}
} payAmt = rs.getDouble("pay_amt");
rs.close(); taxAmt = rs.getDouble("taxAmt");
rs=null; discountAmt = rs.getDouble("discountAmt");
pstmt.close(); netAmt = (payAmt + taxAmt + discountAmt) * (exchRateDet/exchRate );
pstmt=null; totNetAmt = totNetAmt + netAmt;
}
rs1.close(); }
rs1=null; rs.close();
pstmt1.close(); rs=null;
pstmt1=null; pstmt.close();
pstmt=null;
lineNoDet = " " + lineNoDet;
lineNoDet = lineNoDet.substring(lineNoDet.length() - 3,lineNoDet.length()); }
rs1.close();
rs1=null;
//Header coding ******************************************************************************************** pstmt1.close();
pstmt1=null;
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate); /* lineNoDet = " " + lineNoDet;
hdrmap.put("fin_entity",finentity); lineNoDet = lineNoDet.substring(lineNoDet.length() - 3,lineNoDet.length());*/
hdrmap.put("site_code",sitecode);
hdrmap.put("sundry_type",sundaryType);
hdrmap.put("sundry_code",sundrycode); //Header coding ********************************************************************************************
hdrmap.put("acct_code",acct_code);
hdrmap.put("cctr_code",cctr_code); hdrmap.put("tran_date",tranDate);
hdrmap.put("emp_code",empcode); hdrmap.put("eff_date", effDate);
hdrmap.put("anal_code",analcode); hdrmap.put("fin_entity",finentity);
hdrmap.put("curr_code", currCode); hdrmap.put("site_code",sitecode);
hdrmap.put("exch_rate",exchRate); hdrmap.put("sundry_type",sundaryType);
hdrmap.put("dr_amt",0.0); hdrmap.put("sundry_code",sundrycode);
if(bankCharges > 0.0) hdrmap.put("acct_code",acct_code);
{ hdrmap.put("cctr_code",cctr_code);
sql = "select sum(case when net_pay_amt is null then 0 else net_pay_amt end) as Amt,sum(case when bank_charges is null then 0 else bank_charges end) as bnkChg from misc_paydet where tran_id = ?"; hdrmap.put("emp_code",empcode);
hdrmap.put("anal_code",analcode);
pstmt1 = conn.prepareStatement(sql); hdrmap.put("curr_code", currCode);
pstmt1.setString(1,tranID); hdrmap.put("exch_rate",exchRate);
rs1 = pstmt1.executeQuery(); hdrmap.put("dr_amt",0.0);
if(rs1.next()) if(bankCharges > 0.0)
{ {
Amt = rs1.getDouble("Amt"); sql = "select sum(case when net_pay_amt is null then 0 else net_pay_amt end) as Amt," +
bnkChg = rs1.getDouble("bnkChg"); "sum(case when bank_charges is null then 0 else bank_charges end) as bnkChg " +
"from misc_paydet where tran_id = ?";
}
rs1.close(); pstmt1 = conn.prepareStatement(sql);
rs1=null; pstmt1.setString(1,tranID);
pstmt1.close(); rs1 = pstmt1.executeQuery();
pstmt1=null; if(rs1.next())
if(currCode == currCodeBal) {
{ Amt = rs1.getDouble("Amt");
hdrmap.put("cr_amt",(Amt + bnkChg)); bnkChg = rs1.getDouble("bnkChg");
}
else{ }
hdrmap.put("cr_amt",(Amt)); rs1.close();
} rs1=null;
bchg = true; pstmt1.close();
} pstmt1=null;
if(currCode == currCodeBal)
else{ {
hdrmap.put("cr_amt",(Amt + bnkChg));
hdrmap.put("cr_amt",(totNetAmt)); }
} else{
hdrmap.put("ref_type","F"); hdrmap.put("cr_amt",(Amt));
hdrmap.put("ref_ser","M-PAY"); }
hdrmap.put("ref_id",tranID); bchg = true;
hdrmap.put("remarks",remarks); }
System.out.println("calling Gltrace Update for Header******** 1*******************"); else{
errString = finCommon.glTraceUpdate(hdrmap,conn,true); hdrmap.put("cr_amt",(totNetAmt));
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); }
if(errString != null && errString.trim().length() > 0) hdrmap.put("ref_type","F");
{ hdrmap.put("ref_ser","M-PAY");
return errString; hdrmap.put("ref_id",tranID);
} hdrmap.put("remarks",remarks);
if(discAmt > 0.0) System.out.println("calling Gltrace Update for Header******** 1*******************");
{
System.out.println("discAmt**************"+discAmt); errString = finCommon.glTraceUpdate(hdrmap,conn,true);
sql = "select sum(case when discount_amt is null then 0 else discount_amt end) as disc_amt, acct_code__disc as acct_code_disc,cctr_code__disc as cctr_code_disc,cctr_code__ap,acct_code__ap,sundry_type,sundry_code from misc_paydet where tran_id = ? group by acct_code__disc,cctr_code__disc"; System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
pstmt = conn.prepareStatement(sql); if(errString != null && errString.trim().length() > 0)
pstmt.setString(1,tranID); {
rs = pstmt.executeQuery(); return errString;
if(rs.next()) }
{
discountAmtDet = rs.getDouble("disc_amt"); if(discAmt > 0.0)
acctCodeDisc = rs.getString("acct_code_disc"); {
cctrCodeDisc = rs.getString("cctr_code_disc"); System.out.println("discAmt******@@@@@***header posting*****"+discAmt);
cctrCodeAp = rs.getString("cctr_code__ap"); sql = "select sum(case when discount_amt is null then 0 else discount_amt end) as disc_amt," +
acctCodeAp = rs.getString("acct_code__ap"); " acct_code__disc as acct_code_disc," +
} "cctr_code__disc as cctr_code_disc,cctr_code__ap,acct_code__ap," +
"sundry_type,sundry_code from misc_paydet where tran_id = ? " +
rs.close(); "group by discount_amt,acct_code__disc,cctr_code__disc,cctr_code__ap," +
rs=null; "acct_code__ap,sundry_type,sundry_code";
pstmt.close(); pstmt = conn.prepareStatement(sql);
pstmt=null; pstmt.setString(1,tranID);
rs = pstmt.executeQuery();
if(discountAmtDet != 0.0) while(rs.next())
{ {
hdrmap.put("acct_code",acctCodeDisc); discountAmtDet = rs.getDouble("disc_amt");
hdrmap.put("cctr_code",cctrCodeDisc); acctCodeDisc = rs.getString("acct_code_disc");
hdrmap.put("dr_amt",0.0); cctrCodeDisc = rs.getString("cctr_code_disc");
hdrmap.put("cr_amt",(discountAmtDet)); cctrCodeAp = rs.getString("cctr_code__ap");
hdrmap.put("sundry_type","O"); acctCodeAp = rs.getString("acct_code__ap");
System.out.println("calling Gltrace Update for Header******** 2*******************"); if(discountAmtDet != 0.0)
{
errString = finCommon.glTraceUpdate(hdrmap,conn,true); hdrmap.put("acct_code",acctCodeDisc);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); hdrmap.put("cctr_code",cctrCodeDisc);
if(errString != null && errString.trim().length() > 0) hdrmap.put("dr_amt",0.0);
{ hdrmap.put("cr_amt",(discountAmtDet));
return errString; hdrmap.put("sundry_type","O");
} System.out.println("calling Gltrace Update for Header******** 2*******************");
}
} errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
//*******************Debit Side Entry if(errString != null && errString.trim().length() > 0)
if(discAmt > 0.0) {
{ return errString;
}
sql = "select sum(case when discount_amt is null then 0 else discount_amt end) as disc_amt, acct_code__disc as acct_code_disc,cctr_code__disc as cctr_code_disc from misc_paydet where tran_id = ? group by acct_code__disc,cctr_code__disc"; }
pstmt = conn.prepareStatement(sql); }
pstmt.setString(1,tranID);
rs = pstmt.executeQuery(); rs.close();
if(rs.next()) rs=null;
{ pstmt.close();
discountAmtDet = rs.getDouble("disc_amt"); pstmt=null;
acctCodeDisc = rs.getString("acct_code_disc");
cctrCodeDisc = rs.getString("cctr_code_disc");
} }
rs.close(); //*******************Debit Side Entry
rs=null; if(discAmt > 0.0)
pstmt.close(); {
pstmt=null;
if(discountAmtDet != 0.0) sql = "select sum(case when discount_amt is null then 0 else discount_amt end) as disc_amt," +
{ " acct_code__disc as acct_code_disc,cctr_code__disc as cctr_code_disc " +
System.out.println("discountAmtDet*************"+discountAmtDet); "from misc_paydet where tran_id = ? group by discount_amt,acct_code__disc,cctr_code__disc";
hdrmap.put("acct_code",acctCodeDisc); pstmt = conn.prepareStatement(sql);
hdrmap.put("cctr_code",cctrCodeDisc); pstmt.setString(1,tranID);
hdrmap.put("remarks", "Discount Receivable"); rs = pstmt.executeQuery();
hdrmap.put("dr_amt",discountAmtDet); while(rs.next())
hdrmap.put("cr_amt",0.0); {
hdrmap.put("sundry_type","O"); discountAmtDet = rs.getDouble("disc_amt");
System.out.println("calling Gltrace Update for Header******** 3*******************"); acctCodeDisc = rs.getString("acct_code_disc");
cctrCodeDisc = rs.getString("cctr_code_disc");
errString = finCommon.glTraceUpdate(hdrmap,conn,true); if(discountAmtDet != 0.0)
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); {
if(errString != null && errString.trim().length() > 0) System.out.println("discountAmtDet*************"+discountAmtDet);
{ hdrmap.put("acct_code",acctCodeDisc);
return errString; hdrmap.put("cctr_code",cctrCodeDisc);
} hdrmap.put("remarks", "Discount Receivable");
} hdrmap.put("dr_amt",discountAmtDet);
hdrmap.put("cr_amt",0.0);
} hdrmap.put("sundry_type","O");
// update bank charges into gltrace System.out.println("calling Gltrace Update for Header******** 3*******************");
if(bankCharges > 0.0)
{ errString = finCommon.glTraceUpdate(hdrmap,conn,true);
hdrmap.put("tran_date",tranDate); System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
hdrmap.put("eff_date", effDate); if(errString != null && errString.trim().length() > 0)
hdrmap.put("fin_entity",finentity); {
hdrmap.put("site_code",sitecode); return errString;
hdrmap.put("sundry_type","O"); }
hdrmap.put("sundry_code",""); }
hdrmap.put("acct_code",acctCodeBc); }
hdrmap.put("cctr_code",cctrCodeBc);
hdrmap.put("emp_code",empcode); rs.close();
hdrmap.put("anal_code",analcode); rs=null;
hdrmap.put("curr_code", currCodeBc); pstmt.close();
hdrmap.put("exch_rate",exchRateBc); pstmt=null;
hdrmap.put("dr_amt",bankCharges);
hdrmap.put("cr_amt", 0.0);
hdrmap.put("ref_type","F"); }
hdrmap.put("ref_ser","M-PAY"); // update bank charges into gltrace
hdrmap.put("ref_id",tranID); if(bankCharges > 0.0)
hdrmap.put("remarks",remarks); {
hdrmap.put("tran_date",tranDate);
System.out.println("calling Gltrace Update for Header******** 4 *******************"); hdrmap.put("eff_date", effDate);
errString = finCommon.glTraceUpdate(hdrmap,conn,true); hdrmap.put("fin_entity",finentity);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); hdrmap.put("site_code",sitecode);
if(errString != null && errString.trim().length() > 0) hdrmap.put("sundry_type","O");
{ hdrmap.put("sundry_code"," ");
return errString; hdrmap.put("acct_code",acctCodeBc);
} hdrmap.put("cctr_code",cctrCodeBc);
} hdrmap.put("emp_code",empcode);
hdrmap.put("anal_code",analcode);
// update currency fluctuation to gltrace hdrmap.put("curr_code", currCodeBc);
if(diffAmtExch != 0.0) hdrmap.put("exch_rate",exchRateBc);
{ hdrmap.put("dr_amt",bankCharges);
hdrmap.put("tran_date",tranDate); hdrmap.put("cr_amt", 0.0);
hdrmap.put("eff_date", effDate); hdrmap.put("ref_type","F");
hdrmap.put("fin_entity",finentity); hdrmap.put("ref_ser","M-PAY");
hdrmap.put("site_code",sitecode); hdrmap.put("ref_id",tranID);
hdrmap.put("sundry_type","O"); hdrmap.put("remarks",remarks);
hdrmap.put("sundry_code","");
hdrmap.put("acct_code",acctCodeCf); System.out.println("calling Gltrace Update for Header******** 4 *******************");
if(cctrCodeCf == null || cctrCodeCf.trim().length() == 0) errString = finCommon.glTraceUpdate(hdrmap,conn,true);
{ System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
hdrmap.put("cctr_code",cctrCodeAp); if(errString != null && errString.trim().length() > 0)
{
} return errString;
else{ }
hdrmap.put("cctr_code",cctrCodeCf); }
}
hdrmap.put("emp_code",empcode); // update currency fluctuation to gltrace
hdrmap.put("anal_code",analcode); if(diffAmtExch != 0.0)
hdrmap.put("curr_code", currCode); {
hdrmap.put("exch_rate",1); hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
if(diffAmtExch > 0.0) hdrmap.put("fin_entity",finentity);
{ hdrmap.put("site_code",sitecode);
hdrmap.put("dr_amt",0.0); hdrmap.put("sundry_type","O");
hdrmap.put("cr_amt",diffAmtExch); hdrmap.put("sundry_code"," ");
} hdrmap.put("acct_code",acctCodeCf);
else{ if(cctrCodeCf == null || cctrCodeCf.trim().length() == 0)
hdrmap.put("dr_amt",0.0 - diffAmtExch); {
hdrmap.put("cr_amt",0.0); hdrmap.put("cctr_code",cctrCodeAp);
}
hdrmap.put("ref_type","F"); }
hdrmap.put("ref_ser","M-PAY"); else{
hdrmap.put("ref_id",tranID); hdrmap.put("cctr_code",cctrCodeCf);
hdrmap.put("remarks",remarks); }
hdrmap.put("emp_code",empcode);
System.out.println("calling Gltrace Update for Header******** 5 *******************"); hdrmap.put("anal_code",analcode);
errString = finCommon.glTraceUpdate(hdrmap,conn,true); hdrmap.put("curr_code", currCode);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); hdrmap.put("exch_rate",1);
if(errString != null && errString.trim().length() > 0)
{ if(diffAmtExch > 0.0)
return errString; {
} hdrmap.put("dr_amt",0.0);
hdrmap.put("cr_amt",diffAmtExch);
} }
// if bank charges in diff. currency then insert a rec. in gltrace, else{
// update sundry bal and insert into banktran_log hdrmap.put("dr_amt",0.0 - diffAmtExch);
hdrmap.put("cr_amt",0.0);
if(bchg) }
{ hdrmap.put("ref_type","F");
hdrmap.put("tran_date",tranDate); hdrmap.put("ref_ser","M-PAY");
hdrmap.put("eff_date", effDate); hdrmap.put("ref_id",tranID);
hdrmap.put("fin_entity",finentity); hdrmap.put("remarks",remarks);
hdrmap.put("site_code",sitecode);
hdrmap.put("sundry_type","B"); System.out.println("calling Gltrace Update for Header******** 5 *******************");
hdrmap.put("sundry_code",sundrycode); errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
hdrmap.put("acct_code",acct_code); if(errString != null && errString.trim().length() > 0)
hdrmap.put("cctr_code",cctr_code); {
hdrmap.put("emp_code",empcode); return errString;
hdrmap.put("anal_code",analcode); }
hdrmap.put("curr_code", currCodeBc);
hdrmap.put("exch_rate",exchRateBc); }
hdrmap.put("dr_amt",0.0); // if bank charges in diff. currency then insert a rec. in gltrace,
hdrmap.put("cr_amt",bankCharges); // update sundry bal and insert into banktran_log
hdrmap.put("ref_type","F");
hdrmap.put("ref_ser","M-PAY"); if(bchg)
hdrmap.put("ref_id",tranID); {
hdrmap.put("remarks",remarks); hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
System.out.println("calling Gltrace Update for Header******** 6 *******************"); hdrmap.put("fin_entity",finentity);
errString = finCommon.glTraceUpdate(hdrmap,conn,true); hdrmap.put("site_code",sitecode);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); hdrmap.put("sundry_type","B");
if(errString != null && errString.trim().length() > 0) hdrmap.put("sundry_code",sundrycode);
{ hdrmap.put("acct_code",acct_code);
return errString; hdrmap.put("cctr_code",cctr_code);
} hdrmap.put("emp_code",empcode);
} hdrmap.put("anal_code",analcode);
hdrmap.put("curr_code", currCodeBc);
//********************************Detail Coding************************** hdrmap.put("exch_rate",exchRateBc);
//************fetching records from detail hdrmap.put("dr_amt",0.0);
sql = "select line_no from misc_paydet where tran_id = ?"; hdrmap.put("cr_amt",bankCharges);
pstmt2 = conn.prepareStatement(sql); hdrmap.put("ref_type","F");
pstmt2.setString(1,tranID); hdrmap.put("ref_ser","M-PAY");
rs2 = pstmt2.executeQuery(); hdrmap.put("ref_id",tranID);
while(rs2.next()) hdrmap.put("remarks",remarks);
{
lineNoDet = rs2.getString("line_no"); System.out.println("calling Gltrace Update for Header******** 6 *******************");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("lineNoDet***"+lineNoDet); System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
{
sql = "select sundry_type,sundry_code,tran_ser,vouch_no,curr_code,exch_rate__vouch,pay_amt,(case when discount_amt is null then 0 else discount_amt end) as discount_amt,acct_code__ap,acct_code__disc,cctr_code__disc,cctr_code__ap from misc_paydet where tran_id = ? and line_no = ?"; return errString;
pstmt = conn.prepareStatement(sql); }
pstmt.setString(1,tranID); }
pstmt.setString(2,lineNoDet);
rs = pstmt.executeQuery(); //********************************Detail Coding**************************
while(rs.next()) //************fetching records from detail
{ sql = "select line_no from misc_paydet where tran_id = ?";
tranSer = rs.getString("tran_ser"); pstmt2 = conn.prepareStatement(sql);
ref = rs.getString("vouch_no"); pstmt2.setString(1,tranID);
// for each detail do the posting rs2 = pstmt2.executeQuery();
hdrmap.put("tran_date",tranDate); while(rs2.next())
hdrmap.put("eff_date", effDate); {
hdrmap.put("fin_entity",finentity); lineNoDet = rs2.getString("line_no");
hdrmap.put("site_code",sitecode);
hdrmap.put("sundry_type",rs.getString("sundry_type")); System.out.println("lineNoDet***"+lineNoDet);
hdrmap.put("sundry_code",rs.getString("sundry_code"));
hdrmap.put("acct_code",rs.getString("acct_code__ap"));
hdrmap.put("cctr_code",rs.getString("cctr_code__ap")); sql = "select sundry_type,sundry_code,tran_ser,vouch_no," +
hdrmap.put("emp_code",empcode); "curr_code,exch_rate__vouch,pay_amt," +
hdrmap.put("anal_code",analcode); "(case when discount_amt is null then 0 else discount_amt end)" +
hdrmap.put("curr_code", rs.getString("curr_code")); " as discount_amt,acct_code__ap,acct_code__disc,cctr_code__disc,cctr_code__ap " +
hdrmap.put("exch_rate",rs.getString("exch_rate__vouch")); " from misc_paydet where tran_id = ? and trim(line_no) = ?";
payAmtDet = rs.getDouble("pay_amt"); pstmt = conn.prepareStatement(sql);
discAmtDet = rs.getDouble("discount_amt"); pstmt.setString(1,tranID);
if(payAmtDet > 0.0) pstmt.setString(2,lineNoDet.trim());
{ rs = pstmt.executeQuery();
if(discAmtDet > 0.0) while(rs.next())
{ {
hdrmap.put("dr_amt",(payAmtDet - discAmtDet )); tranSer = rs.getString("tran_ser");
} ref = rs.getString("vouch_no");
else { // for each detail do the posting
hdrmap.put("dr_amt",payAmtDet); hdrmap.put("tran_date",tranDate);
} hdrmap.put("eff_date", effDate);
hdrmap.put("cr_amt",0.0); hdrmap.put("fin_entity",finentity);
} hdrmap.put("site_code",sitecode);
else { hdrmap.put("sundry_type",rs.getString("sundry_type"));
hdrmap.put("dr_amt",0.0); hdrmap.put("sundry_code",rs.getString("sundry_code"));
if(discAmtDet > 0.0) hdrmap.put("acct_code",rs.getString("acct_code__ap"));
{ hdrmap.put("cctr_code",rs.getString("cctr_code__ap"));
hdrmap.put("cr_amt",0.0 - (payAmtDet - discAmtDet )); hdrmap.put("emp_code",empcode);
} hdrmap.put("anal_code",analcode);
else { hdrmap.put("curr_code", rs.getString("curr_code"));
hdrmap.put("cr_amt",0.0 - payAmtDet); hdrmap.put("exch_rate",rs.getString("exch_rate__vouch"));
} payAmtDet = rs.getDouble("pay_amt");
} discAmtDet = rs.getDouble("discount_amt");
if(payAmtDet > 0.0)
hdrmap.put("ref_type","F"); {
hdrmap.put("ref_ser","M-PAY"); if(discAmtDet > 0.0)
hdrmap.put("ref_id",tranID); {
if(remarks.equalsIgnoreCase("Automatic Payment")) hdrmap.put("dr_amt",(payAmtDet - discAmtDet ));
{ }
hdrmap.put("remarks","Against voucher no. : "+ref+ " dated : "+new Timestamp(rs.getDate("vouch_date").getTime())); else {
} hdrmap.put("dr_amt",payAmtDet);
else { }
hdrmap.put("remarks",remarks); hdrmap.put("cr_amt",0.0);
} }
party_doc_ref = finCommon.gfGetPartyDocRef(tranSer,ref,conn);//transer and vouch_no else {
hdrmap.put("party_doc_ref",party_doc_ref); hdrmap.put("dr_amt",0.0);
if(discAmtDet > 0.0)
System.out.println("calling Gltrace Update for Detail******** 1 *******************"); {
errString = finCommon.glTraceUpdate(hdrmap,conn,true); hdrmap.put("cr_amt",0.0 - (payAmtDet - discAmtDet ));
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); }
if(errString != null && errString.trim().length() > 0) else {
{ hdrmap.put("cr_amt",0.0 - payAmtDet);
return errString; }
} }
//*********** hdrmap.put("ref_type","F");
sql = " select sum(case when tax_amt is null then 0 else tax_amt end) as tax_amt, acct_code, cctr_code ,case when sum(reco_amount) is null then 0 else sum(reco_amount) end from taxtran where tran_code = 'M-PAY' and tran_id = ? and line_no = ? and effect <> 'N' group by acct_code, cctr_code "; hdrmap.put("ref_ser","M-PAY");
hdrmap.put("ref_id",tranID);
pstmt1 = conn.prepareStatement(sql); if("Automatic Payment".equalsIgnoreCase(remarks))
pstmt1.setString(1,tranID); {
pstmt1.setString(2,lineNoDet); hdrmap.put("remarks","Against voucher no. : "+ref+ " dated : "+new Timestamp(rs.getDate("vouch_date").getTime()));
rs1 = pstmt1.executeQuery(); }
while(rs1.next()) else {
{ hdrmap.put("remarks",remarks);
taxAmtDet = rs1.getDouble("tax_amt"); }
acctCodeTran = rs1.getString("acct_code"); party_doc_ref = finCommon.gfGetPartyDocRef(tranSer,ref,conn);//transer and vouch_no
cctrCodeTran = rs1.getString("cctr_code"); hdrmap.put("party_doc_ref",party_doc_ref);
reco_amount = rs1.getDouble("reco_amount");
} System.out.println("calling Gltrace Update for Detail******** 1 *******************");
rs1.close(); errString = finCommon.glTraceUpdate(hdrmap,conn,true);
rs1=null; System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
pstmt1.close(); if(errString != null && errString.trim().length() > 0)
pstmt1=null; {
return errString;
if(taxAmtDet != 0.0) }
{
if(cctr_code == null) //***********
{ sql = " select sum(case when tax_amt is null then 0 else tax_amt end) as tax_amt, " +
cctr_code = cctrCodeAp; "acct_code, cctr_code ,case when sum(reco_amount) is null then 0" +
} " else sum(reco_amount) end as reco_amount from taxtran where tran_code = 'M-PAY'" +
hdrmap.put("tran_date",tranDate); " and tran_id = ? and trim(line_no) = ? and effect <> 'N' group by acct_code, cctr_code ";
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity); pstmt1 = conn.prepareStatement(sql);
hdrmap.put("site_code",sitecode); pstmt1.setString(1,tranID);
hdrmap.put("sundry_type","O"); pstmt1.setString(2,lineNoDet.trim());
hdrmap.put("sundry_code",""); rs1 = pstmt1.executeQuery();
hdrmap.put("acct_code",acctCodeTran); while(rs1.next())
hdrmap.put("cctr_code",cctrCodeTran); {
hdrmap.put("curr_code", currCode); taxAmtDet = rs1.getDouble("tax_amt");
hdrmap.put("exch_rate",exchRate); acctCodeTran = rs1.getString("acct_code");
hdrmap.put("ref_type","F"); cctrCodeTran = rs1.getString("cctr_code");
hdrmap.put("ref_ser","M-PAY"); reco_amount = rs1.getDouble("reco_amount");
hdrmap.put("ref_id",tranID); if(taxAmtDet != 0.0)
if(taxAmtDet > 0.0) {
{ if(cctrCodeTran == null)
hdrmap.put("dr_amt",taxAmtDet - reco_amount); {
hdrmap.put("cr_amt",0.0); cctrCodeTran = cctrCodeAp;
} }
else { System.out.println("Cost center code for taxtran"+cctrCodeTran);
hdrmap.put("dr_amt",0.0); hdrmap.put("tran_date",tranDate);
hdrmap.put("cr_amt",0.0 - (taxAmtDet - reco_amount)); hdrmap.put("eff_date", effDate);
} hdrmap.put("fin_entity",finentity);
party_doc_ref = finCommon.gfGetPartyDocRef(tranSer,ref,conn);//transer and vouch_no hdrmap.put("site_code",sitecode);
hdrmap.put("party_doc_ref",party_doc_ref); hdrmap.put("sundry_type","O");
hdrmap.put("sundry_code"," ");
System.out.println("calling Gltrace Update for Detail******** 2 *******************"); hdrmap.put("acct_code",acctCodeTran);
errString = finCommon.glTraceUpdate(hdrmap,conn,true); hdrmap.put("cctr_code",cctrCodeTran);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); hdrmap.put("curr_code", currCode);
if(errString != null && errString.trim().length() > 0) hdrmap.put("exch_rate",exchRate);
{ hdrmap.put("ref_type","F");
return errString; hdrmap.put("ref_ser","M-PAY");
} hdrmap.put("ref_id",tranID);
if(taxAmtDet > 0.0)
} {
hdrmap.put("dr_amt",taxAmtDet - reco_amount);
reco_amount = 0.0; hdrmap.put("cr_amt",0.0);
tax_reco_cctr = finCommon.getAcctDetrTtype("", "", "TAXRECO", tranType, conn); }
tax_reco_acct = getTokens(tax_reco_cctr, "~t"); else {
hdrmap.put("dr_amt",0.0);
sql = "select acct_code__reco, cctr_code__reco, case when sum(reco_amount) is null then 0 else sum(reco_amount) end from taxtran where tran_code = 'M-PAY' and tran_id = ? and line_no = ? and (case when reco_amount is null then 0 else reco_amount end) <> 0 and effect <> 'N' group by acct_code__reco, cctr_code__reco "; hdrmap.put("cr_amt",0.0 - (taxAmtDet - reco_amount));
}
pstmt1 = conn.prepareStatement(sql); party_doc_ref = finCommon.gfGetPartyDocRef(tranSer,ref,conn);//transer and vouch_no
pstmt1.setString(1,tranID); hdrmap.put("party_doc_ref",party_doc_ref);
pstmt1.setString(2,lineNoDet);
rs1 = pstmt1.executeQuery(); System.out.println("calling Gltrace Update for Detail******** 2 *******************");
while(rs1.next()) errString = finCommon.glTraceUpdate(hdrmap,conn,true);
{ System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
acctCodeReco = rs1.getString("acct_code__reco"); if(errString != null && errString.trim().length() > 0)
cctrCodeReco = rs1.getString("cctr_code__reco"); {
reco_amount = rs1.getDouble("reco_amount"); return errString;
} }
rs1.close();
rs1=null; }
pstmt1.close(); }
pstmt1=null; rs1.close();
if(acctCodeReco == null || acctCodeReco.trim().length() == 0 ) rs1=null;
{ pstmt1.close();
acctCodeReco = tax_reco_acct.toString(); pstmt1=null;
cctrCodeReco = tax_reco_cctr; reco_amount = 0.0;
} tax_reco_cctr = finCommon.getAcctDetrTtype("", "", "TAXRECO", tranType, conn);
if(cctrCodeReco == null || cctrCodeReco.trim().length() == 0) tax_reco_acct = getTokens(tax_reco_cctr, "~t");
{
cctrCodeReco = ""; sql = "select acct_code__reco, cctr_code__reco, " +
hdrmap.put("tran_date",tranDate); "case when sum(reco_amount) is null then 0 else sum(reco_amount) end as reco_amount " +
hdrmap.put("eff_date", effDate); "from taxtran where tran_code = 'M-PAY' and tran_id = ? and trim(line_no) = ? " +
hdrmap.put("fin_entity",finentity); "and (case when reco_amount is null then 0 else reco_amount end) <> 0 and effect <> 'N' " +
hdrmap.put("site_code",sitecode); "group by acct_code__reco, cctr_code__reco ";
hdrmap.put("sundry_type","O");
hdrmap.put("sundry_code",""); pstmt1 = conn.prepareStatement(sql);
hdrmap.put("acct_code",acctCodeReco); pstmt1.setString(1,tranID);
hdrmap.put("cctr_code",cctrCodeReco); pstmt1.setString(2,lineNoDet.trim());
hdrmap.put("curr_code", currCode); rs1 = pstmt1.executeQuery();
hdrmap.put("exch_rate",exchRate); while(rs1.next())
hdrmap.put("ref_type","F"); {
hdrmap.put("ref_ser","M-PAY"); acctCodeReco = rs1.getString("acct_code__reco");
hdrmap.put("ref_id",tranID); cctrCodeReco = rs1.getString("cctr_code__reco");
if(reco_amount == null) reco_amount = rs1.getDouble("reco_amount");
{ if(acctCodeReco == null || acctCodeReco.trim().length() == 0 )
reco_amount = 0.0; {
} acctCodeReco = tax_reco_acct.toString();
if(reco_amount > 0.0) cctrCodeReco = tax_reco_cctr;
{ }
hdrmap.put("dr_amt",reco_amount); if(cctrCodeReco == null || cctrCodeReco.trim().length() == 0)
hdrmap.put("cr_amt",0.0); {
} cctrCodeReco = "";
else { }//8th march changes
hdrmap.put("dr_amt",0.0); hdrmap.put("tran_date",tranDate);
hdrmap.put("cr_amt",0.0 - (reco_amount)); hdrmap.put("eff_date", effDate);
} hdrmap.put("fin_entity",finentity);
party_doc_ref = finCommon.gfGetPartyDocRef(tranSer,ref,conn);//transer and vouch_no hdrmap.put("site_code",sitecode);
hdrmap.put("party_doc_ref",party_doc_ref); hdrmap.put("sundry_type","O");
hdrmap.put("sundry_code"," ");
System.out.println("calling Gltrace Update for Detail******** 3 *******************"); hdrmap.put("acct_code",acctCodeReco);
errString = finCommon.glTraceUpdate(hdrmap,conn,true); hdrmap.put("cctr_code",cctrCodeReco);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); hdrmap.put("curr_code", currCode);
if(errString != null && errString.trim().length() > 0) hdrmap.put("exch_rate",exchRate);
{ hdrmap.put("ref_type","F");
return errString; hdrmap.put("ref_ser","M-PAY");
} hdrmap.put("ref_id",tranID);
} if(reco_amount == null)
{
reco_amount = 0.0;
}
if(reco_amount > 0.0)
sql = " select acct_code__revr,cctr_code__revr ,sum(misc_vouchdet.amount) as miscAmt from misc_vouchdet,misc_voucher where misc_vouchdet.tran_id =misc_voucher.tran_id and misc_voucher.vouch_type = 'T' and misc_voucher.tran_id in (select vouch_no from misc_paydet where tran_id = ? and tran_ser = 'M-VOUC') and acct_code__revr is not null group by acct_code__revr,cctr_code__revr"; {
pstmt1 = conn.prepareStatement(sql); hdrmap.put("dr_amt",reco_amount);
pstmt1.setString(1,tranID); hdrmap.put("cr_amt",0.0);
}
rs1 = pstmt1.executeQuery(); else {
while(rs1.next()) hdrmap.put("dr_amt",0.0);
{ hdrmap.put("cr_amt",0.0 - (reco_amount));
acct_code__revr = rs1.getString("acct_code__revr"); }
cctr_code__revr = rs1.getString("acct_code__revr"); party_doc_ref = finCommon.gfGetPartyDocRef(tranSer,ref,conn);//transer and vouch_no
miscAmt = rs1.getDouble("miscAmt"); hdrmap.put("party_doc_ref",party_doc_ref);
} System.out.println("calling Gltrace Update for Detail******** 3 *******************");
rs1.close(); errString = finCommon.glTraceUpdate(hdrmap,conn,true);
rs1=null; System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
pstmt1.close(); if(errString != null && errString.trim().length() > 0)
pstmt1=null; {
if(acct_code__revr != null && acct_code__revr.trim().length() > 0) return errString;
{ }
if(cctr_code == null)
{
hdrmap.put("cctr_code",""); }//close of loop
} rs1.close();
hdrmap.put("acct_code",acct_code__revr); rs1=null;
hdrmap.put("cctr_code",cctr_code__revr); pstmt1.close();
hdrmap.put("tran_date",tranDate); pstmt1=null;
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("sundry_type","O");
hdrmap.put("sundry_code",""); sql = " select acct_code__revr,cctr_code__revr ," +
hdrmap.put("curr_code", currCode); "sum(misc_vouchdet.amount) as miscAmt from misc_vouchdet," +
hdrmap.put("exch_rate",exchRate); "misc_voucher where misc_vouchdet.tran_id = misc_voucher.tran_id and" +
hdrmap.put("ref_type","F"); " misc_voucher.vouch_type = 'T' and misc_voucher.tran_id in" +
hdrmap.put("ref_ser","M-PAY"); " (select vouch_no from misc_paydet where tran_id = ? and tran_ser = 'M-VOUC') " +
hdrmap.put("ref_id",tranID); "and acct_code__revr is not null group by acct_code__revr,cctr_code__revr";
AmountDet = rs.getDouble("amount") ; pstmt1 = conn.prepareStatement(sql);
if(AmountDet == null){ pstmt1.setString(1,tranID);
AmountDet = 0.0;
} rs1 = pstmt1.executeQuery();
if(AmountDet > 0.0) while(rs1.next())
{ {
hdrmap.put("dr_amt", 0.0); acct_code__revr = rs1.getString("acct_code__revr");
hdrmap.put("cr_amt", 0.0 - AmountDet); cctr_code__revr = rs1.getString("acct_code__revr");
} miscAmt = rs1.getDouble("miscAmt");
else { if(acct_code__revr != null && acct_code__revr.trim().length() > 0)
hdrmap.put("dr_amt", 0.0 - AmountDet); {
hdrmap.put("cr_amt", 0.0); if(cctr_code == null)
} {
hdrmap.put("cctr_code","");
party_doc_ref = finCommon.gfGetPartyDocRef(tranSer,ref,conn);//transer and vouch_no }
hdrmap.put("party_doc_ref",party_doc_ref); hdrmap.put("acct_code",acct_code__revr);
hdrmap.put("cctr_code",cctr_code__revr);
System.out.println("calling Gltrace Update for Detail******** 4 *******************"); hdrmap.put("tran_date",tranDate);
errString = finCommon.glTraceUpdate(hdrmap,conn,true); hdrmap.put("eff_date", effDate);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]"); hdrmap.put("fin_entity",finentity);
if(errString != null && errString.trim().length() > 0) hdrmap.put("site_code",sitecode);
{ hdrmap.put("sundry_type","O");
return errString; hdrmap.put("sundry_code","");
} hdrmap.put("curr_code", currCode);
// posting of tax revarsal charge to Recovary account hdrmap.put("exch_rate",exchRate);
hdrmap.put("acct_code",acct_code__revr); hdrmap.put("ref_type","F");
hdrmap.put("ref_ser","M-PAY");
if(AmountDet > 0.0) hdrmap.put("ref_id",tranID);
{ //AmountDet = rs.getDouble("amount") ;
hdrmap.put("dr_amt",0.0 - AmountDet); if(miscAmt > 0.0)
hdrmap.put("cr_amt", 0.0); {
} hdrmap.put("dr_amt", miscAmt);
else { hdrmap.put("cr_amt", 0.0 );
hdrmap.put("dr_amt",0.0); }
hdrmap.put("cr_amt", 0.0 - AmountDet); else {
} hdrmap.put("dr_amt", 0.0);
System.out.println("calling Gltrace Update for Detail******** 5 *******************"); hdrmap.put("cr_amt", miscAmt);
errString = finCommon.glTraceUpdate(hdrmap,conn,true); }
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0) party_doc_ref = finCommon.gfGetPartyDocRef(tranSer,ref,conn);//transer and vouch_no
{ hdrmap.put("party_doc_ref",party_doc_ref);
return errString;
} System.out.println("calling Gltrace Update for Detail******** 4 *******************");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
} System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
} {
return errString;
rs.close(); }
rs=null;
pstmt.close();
pstmt=null;
} sql = " select fn_get_reco_acct(?) as ls_acct_revr from dual ";
rs2.close(); pstmt = conn.prepareStatement(sql);
rs2=null; pstmt.setString(1,acct_code__revr);
pstmt2.close();
pstmt2=null; rs = pstmt.executeQuery();
if(rs.next())
} {
catch( Exception e)
{ acct_code__revr = rs.getString("ls_acct_revr");
if(conn!=null)
{ }
try { rs.close();
conn.rollback(); rs=null;
} catch (SQLException ex) { pstmt.close();
pstmt=null;
System.out.println("Exception : "+e);
e.printStackTrace(); // posting of tax revarsal charge to revarsal account
throw new ITMException(e); /*
if ((acct_code__revr) == null || acct_code__revr.trim().length() == 0 )
} {
} */
System.out.println("Exception : "+e); // posting of tax revarsal charge to Recovary account
e.printStackTrace(); hdrmap.put("acct_code",acct_code__revr);
throw new ITMException(e); /*hdrmap.put("cctr_code",cctr_code__revr);
} hdrmap.put("tran_date",tranDate);
finally hdrmap.put("eff_date", effDate);
{ hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
try hdrmap.put("sundry_type","O");
{ hdrmap.put("sundry_code","");
hdrmap.put("curr_code", currCode);
if(errString != null && errString.trim().length() > 0) hdrmap.put("exch_rate",exchRate);
{ hdrmap.put("ref_type","F");
if( conn != null && !conn.isClosed() && connStatus ) hdrmap.put("ref_ser","M-PAY");
{ hdrmap.put("ref_id",tranID);*/
if(errString.indexOf("VTCICONF3") > -1)
{
conn.commit(); if(miscAmt > 0.0)
} {
else hdrmap.put("dr_amt",miscAmt);
{ hdrmap.put("cr_amt", 0.0);
conn.rollback(); }
} else {
conn.close(); hdrmap.put("dr_amt",0.0);
conn = null; hdrmap.put("cr_amt",miscAmt);
} }
}
if(rs != null) party_doc_ref = finCommon.gfGetPartyDocRef(tranSer,ref,conn);//transer and vouch_no
{ hdrmap.put("party_doc_ref",party_doc_ref);
rs.close(); System.out.println("calling Gltrace Update for Detail******** 5 *******************");
rs = null; errString = finCommon.glTraceUpdate(hdrmap,conn,true);
} System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(pstmt != null) if(errString != null && errString.trim().length() > 0)
{ {
pstmt.close(); return errString;
pstmt = null; }
}
//conn.close(); }
}
catch(Exception e) }
{ rs1.close();
System.out.println("Exception : "+e);e.printStackTrace(); rs1=null;
throw new ITMException(e); pstmt1.close();
} pstmt1=null;
}
}
rs.close();
rs=null;
return errString; pstmt.close();
} pstmt=null;
}
private String[] getTokens( String str, String seperator ) rs2.close();
{ rs2=null;
String val = null; pstmt2.close();
ArrayList sArr = new ArrayList(); pstmt2=null;
StringTokenizer st = new StringTokenizer( str, seperator ); }
while (st.hasMoreTokens()) catch( Exception e)
{ {
val = st.nextToken(); if(conn!=null)
sArr.add( val ); {
} try {
st = null; conn.rollback();
int lenArr = sArr.size(); } catch (SQLException ex) {
String str1[] = new String[ lenArr ];
for( int cnt = 0; cnt < lenArr ; cnt++ ) System.out.println("Exception : "+e);
{ e.printStackTrace();
str1[ cnt ] = ( String ) sArr.get( cnt ); throw new ITMException(e);
}
return str1; }
} }
System.out.println("Exception : "+e);
} e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if(errString != null && errString.trim().length() > 0)
{
if( conn != null && !conn.isClosed() && connStatus )
{
if(errString.indexOf("VTCICONF3") > -1)
{
conn.commit();
}
else
{
conn.rollback();
}
conn.close();
conn = null;
}
}
if(rs != null)
{
rs.close();
rs = null;
}
if(pstmt != null)
{
pstmt.close();
pstmt = null;
}
//conn.close();
}
catch(Exception e)
{
System.out.println("Exception : "+e);e.printStackTrace();
throw new ITMException(e);
}
}
return errString;
}
private String[] getTokens( String str, String seperator )
{
String val = null;
ArrayList sArr = new ArrayList();
StringTokenizer st = new StringTokenizer( str, seperator );
while (st.hasMoreTokens())
{
val = st.nextToken();
sArr.add( val );
}
st = null;
int lenArr = sArr.size();
String str1[] = new String[ lenArr ];
for( int cnt = 0; cnt < lenArr ; cnt++ )
{
str1[ cnt ] = ( String ) sArr.get( cnt );
}
return str1;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment