Commit fd5b9f25 authored by vdhoble's avatar vdhoble

added changes for gltrace preview to fetch record from receipt window


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@98006 ce508802-f39f-4f6c-b175-0d175dae99d5
parent f7489121
......@@ -6,9 +6,14 @@ import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Timestamp;
import java.text.NumberFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
import java.util.StringTokenizer;
import org.apache.poi.hssf.record.formula.functions.Int;
import org.apache.poi.hssf.record.formula.functions.Trim;
import ibase.system.config.ConnDriver;
import ibase.webitm.ejb.ActionHandlerEJB;
......@@ -19,8 +24,10 @@ import ibase.webitm.utility.ITMException;
public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements PurchaseVoucherGltracePreviewLocal,PurchaseVoucherGltracePreviewRemote
{
public String preview(String tranID,String xtraParams, String forcedFlag) throws RemoteException,ITMException
{
{
System.out.println("Preview Method is called for Purchase Voucher");
String retString = "";
boolean adj_amt_flag = true,amt_upd_flag = true,retenamt_flag = true,hold_tax_flag = true;
......@@ -32,13 +39,15 @@ public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements P
GenericUtility genericUtility = null;
ITMDBAccessEJB itmDBAccessEJB = null;
ValidatorEJB validatorEJB = null;
String errString = "",lineNoDet = "" ;
double netAmt = 0.0,rndTo = 0.0,lc_netwr = 0.0;
String rndOff = "";
String errString = "",lineNoDet = "",tranType = "" ;
//String[] arrayOne;
String loginEmpCode = "",acctCodeDet ="", lineno = "",cctrCodeDet = "",deptCodeDet = "",empCodeDet = "",analCodeDet = "",analysis1 = "",analysis2 = "",analysis3 = "",basiccurr = "";
double taxtranamt = 0.0, taxamtDet = 0.0,advAmt = 0.0 ,amount = 0.0,vouchAmt = 0.0;
String acct_ap = "",acct_aphdr = "",vouchtype = "",purc_order= "",vouch_adv_amt= "",cctrcode = "",tran_id = "", proj_code = "";
String cctr_ap = "",cctr_aphdr = "",refno_det = "",retention_days = "",retdays = "",suppcode = "";
String refser_det = "",finentity = "",sitecode = "",sundrycode = "", empcode = "",currcode = "",remarks = "";
......@@ -48,9 +57,11 @@ public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements P
String acctcodeadv ="",cctrcodeadv = "",currcodeadv = "", ref_id = "",refser = "",refNo = "",analcode = "";
String acctreten ="",cctrreten = "",acct_code__cf = "",cctr_code__cf = "",tranMode = "",detcurrcode = "",projCodeDet = "",projCodeDet1 = "";
HashMap hdrmap = new HashMap();
HashMap map1 = new HashMap();
Date effDate = null;
Date tranDate = null;
Date refDate = null;
System.out.println("tran id = "+tranID);
boolean connStatus=false;
try{
......@@ -70,11 +81,12 @@ public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements P
validatorEJB = new ValidatorEJB();
loginEmpCode = validatorEJB.getValueFromXTRA_PARAMS(xtraParams, "loginEmpCode");
System.out.println("Printing loginEmpCode---1-----"+loginEmpCode+"--");
//Header coding ********************************************************************************************
sql = "select tran_id,tran_date,(case when retention_amt is null then 0 else retention_amt end) as retention_amt,(case when retention_days is null then 0 else retention_days end) as retention_days,"
sql = "select tran_id,tran_type,tran_date,(case when retention_amt is null then 0 else retention_amt end) as retention_amt,(case when retention_days is null then 0 else retention_days end) as retention_days,"
+"eff_date,fin_entity,site_code,supp_code,acct_code,cctr_code,emp_code,curr_code,exch_rate,"
+"remarks,proj_code,anal_code,rnd_amt,vouch_type,tran_mode,acct_code__cf,cctr_code__cf,net_amt,purc_order,bill_amt,tax_amt,adv_amt from voucher where tran_id = ?";
+"remarks,proj_code,anal_code,rnd_amt,vouch_type,tran_mode,acct_code__cf,cctr_code__cf,net_amt,purc_order,bill_amt,tax_amt,adv_amt,rnd_off,rnd_to from voucher where tran_id = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranID);
......@@ -83,6 +95,7 @@ public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements P
{
tran_id = rs.getString("tran_id");
tranType = checkNull(rs.getString("tran_type"));
tranDate = new Timestamp(rs.getDate("tran_Date").getTime());
effDate = new Timestamp(rs.getDate("eff_date").getTime());
finentity = rs.getString("fin_entity");
......@@ -106,6 +119,11 @@ public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements P
taxamt = rs.getDouble("tax_amt");
tranMode = rs.getString("tran_mode");
advAmt = rs.getDouble("adv_amt");
netAmt = rs.getDouble("net_amt");
rndOff = rs.getString("rnd_off");
rndTo = rs.getDouble("rnd_to");
System.out.println("VOUCHER TYPE>>>>>>>>>>>>>>>>>"+vouchtype);
if("A".equalsIgnoreCase(vouchtype))
{
......@@ -637,9 +655,556 @@ public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements P
rs1=null;
pstmt1.close();
pstmt1=null;
//********Posting for Receipt window
String ls_acct_tax = "",ls_cctr_tax = "";
String itemCode = "",itemSer ="",anly1 = "",acctCodePh = "",cctrCodePh = "",deptCode = "",projCode = "",analCode = "",anly2 = "",anly3 = "",acctVar = "",purcOrd = "";
double discAmt = 0.0,lc_tax_amt = 0.0,lc_reco_amt = 0.0 ,lc_rndAmt = 0.0;
int count = 0,count1 = 0,count2 = 0,count3 = 0,count4 = 0;
String lineNoRcp = "",prcp_id = "",cctrCodeDis = "",acctCodeDis = "",itemCode2 = "",itemSer2 = "",taxLs = "";
double rcpQty=0.0,vchQty = 0.0,rate = 0.0,rcpAmt = 0.0,varAmt = 0.0;
sql = "select line_no from vouchrcp where tran_id = ?";
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1,tranID);
rs1 = pstmt1.executeQuery();
while(rs1.next())
{
lineNoRcp = rs1.getString("line_no");
System.out.println("Posting Receipt window !!!!!!!!!!!!!!!"+rs1.getRow());
sql = "select * from vouchrcp where tran_id = ? and line_no = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranID);
pstmt.setString(2,lineNoRcp);
rs = pstmt.executeQuery();
while(rs.next())
{
rcpAmt = rs.getDouble("vouch_amt");
itemCode = rs.getString("item_code");
itemSer = rs.getString("item_ser");
discAmt = rs.getDouble("disc_amt");
acctCodePh = rs.getString("acct_code");
cctrCodePh = rs.getString("cctr_code");
deptCode = checkNull(rs.getString("dept_code"));
projCode = rs.getString("proj_code");
analCode = rs.getString("anal_code");
anly1 = rs.getString("analysis1");
anly2 = rs.getString("analysis2");
anly3 = rs.getString("analysis3");
System.out.println("Transaction Type >>>>"+tranType);
System.out.println("acctCodePh >>>>"+acctCodePh+ " cctrCodePh "+cctrCodePh);
String[] arrayOne = new String[1000];
if(acctCodePh == null || acctCodePh.trim().length() == 0)
{
System.out.println("706********INSIDING DETERMINATION TYPE");
acctCodePh = finCommon.getAcctDetrTtype(itemCode, itemSer, "IN", tranType, conn);
arrayOne = getTokens(acctCodePh,",");
}
System.out.println("cctrCodePh******"+arrayOne[1]+" acctCodePh*********"+arrayOne[0]);
prcp_id = rs.getString("prcp_id");
sql = "select quantity,vouch_qty,rate from porcpdet where tran_id = ? and line_no = ?" ;
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1,prcp_id);
pstmt2.setString(2,lineNoRcp);
rs2 = pstmt2.executeQuery();
while(rs2.next())
{
rcpQty = rs2.getDouble("quantity");
vchQty = rs2.getDouble("vouch_qty");
rate = rs2.getDouble("rate");
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
String[] cctrCodeDis1;
acctCodeDis= finCommon.getAcctDetrTtype(itemCode, itemSer, "DIS", tranType, conn);
cctrCodeDis1 = getTokens(acctCodeDis,",");
varAmt = rcpAmt - (rcpQty - vchQty)*rate;
System.out.println("tHE vAMT *****"+varAmt);
if(varAmt != 0.0)
{
rcpAmt = (rcpQty - vchQty)*rate;
}
System.out.println("RCP AMount >>>>>>>>>>"+rcpAmt);
sql = "select count(*) from vouchdet where acct_code = ? and cctr_code = ?";
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1,arrayOne[0]);
pstmt2.setString(2,arrayOne[1]);
rs2 = pstmt2.executeQuery();
while(rs2.next())
{
count = rs2.getInt(1);
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
if(count == 0 )
{
// hdrmap.put("amount",rs.getString("acct_code"));
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("acct_code",arrayOne[0]);
hdrmap.put("cctr_code",arrayOne[1]);
hdrmap.put("dr_amt", rcpAmt);
hdrmap.put("cr_amt",0.0);
hdrmap.put("dept_code",deptCode);
//hdrmap.put("emp_code",rs.getString(""));
hdrmap.put("anal_code",analCode);
hdrmap.put("proj_code",projCode);
hdrmap.put("analysis1",anly1);
hdrmap.put("analysis2",anly2);
hdrmap.put("analysis3",anly3);
System.out.println("calling Gltrace Update for VoucherRcp*********1**********");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
{
return errString;
}
}
else if (count > 0)//posting again instead of setting into detail*****updating amount
{
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("acct_code",arrayOne[0]);
hdrmap.put("cctr_code",arrayOne[1]);
System.out.println("Updating amount ******"+ rcpAmt + amount);
hdrmap.put("dr_amt", rcpAmt + amount );//**updating amount
hdrmap.put("cr_amt",0.0);
hdrmap.put("dept_code",deptCode);
//hdrmap.put("emp_code",rs.getString(""));
hdrmap.put("anal_code",analCode);
hdrmap.put("proj_code",projCode);
hdrmap.put("analysis1",anly1);
hdrmap.put("analysis2",anly2);
hdrmap.put("analysis3",anly3);
System.out.println("calling Gltrace Update for VoucherRcp*********2**********");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
{
return errString;
}
}
if(varAmt != 0.0)//Variance amount
{
acctVar= checkNull(finCommon.getAcctDetrTtype(itemCode, itemSer, "PPV", tranType, conn));
String tempStrAry[];
tempStrAry = getTokens(acctVar,",");
System.out.println("Length of array :- "+tempStrAry.length);
// System.out.println("acctVar>>>>>"+acctVar+" cctrVar "+cctrVar);
sql = "select count(*) from vouchdet where acct_code = ? and cctr_code = ?";
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1,tempStrAry[0]);
pstmt2.setString(2,tempStrAry[1]);
rs2 = pstmt2.executeQuery();
while(rs2.next())
{
count1 = rs2.getInt(1);
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
if(count1 == 0)
{
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("acct_code",tempStrAry[0]);
hdrmap.put("cctr_code",tempStrAry[1]);
hdrmap.put("dr_amt",varAmt );
hdrmap.put("cr_amt",0.0);
hdrmap.put("dept_code",deptCode);
//hdrmap.put("emp_code",rs.getString(""));
hdrmap.put("anal_code",analCode);
hdrmap.put("proj_code",projCode);
hdrmap.put("analysis1",anly1);
hdrmap.put("analysis2",anly2);
hdrmap.put("analysis3",anly3);
System.out.println("calling Gltrace Update for VoucherRcp********3**********");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
{
return errString;
}
}
else if (count1 > 0)//posting again instead of setting into detail*****updating amount
{
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("acct_code",tempStrAry[0]);
hdrmap.put("cctr_code",tempStrAry[1]);
System.out.println("Updating amount ******"+ varAmt + amount);
hdrmap.put("dr_amt", varAmt + amount );//**updating amount
hdrmap.put("cr_amt",0.0);
hdrmap.put("dept_code",deptCode);
//hdrmap.put("emp_code",rs.getString(""));
hdrmap.put("anal_code",analCode);
hdrmap.put("proj_code",projCode);
hdrmap.put("analysis1",anly1);
hdrmap.put("analysis2",anly2);
hdrmap.put("analysis3",anly3);
System.out.println("calling Gltrace Update for VoucherRcp*********4**********");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
{
return errString;
}
}
}//end of variance
//**********For Discount amount***
if(discAmt != 0.0)
{
discAmt = 0.0 - discAmt;
if(acctCodeDis == null || acctCodeDis.trim().length() == 0)
{
acctCodeDis = acctCodePh;
cctrCodeDis = checkNull(cctrCodeDis);
}
sql = "select count(*) from vouchdet where acct_code = ? and cctr_code = ?";
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1,cctrCodeDis1[0]);
pstmt2.setString(2,cctrCodeDis1[1]);
rs2 = pstmt2.executeQuery();
while(rs2.next())
{
count2 = rs2.getInt(1);
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
if(count2 == 0)
{
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("acct_code",cctrCodeDis1[0]);
hdrmap.put("cctr_code",cctrCodeDis1[1]);
hdrmap.put("dr_amt", discAmt);
hdrmap.put("cr_amt",0.0);
hdrmap.put("dept_code",deptCode);
//hdrmap.put("emp_code",rs.getString(""));
hdrmap.put("anal_code",analCode);
hdrmap.put("proj_code",projCode);
hdrmap.put("analysis1",anly1);
hdrmap.put("analysis2",anly2);
hdrmap.put("analysis3",anly3);
System.out.println("calling Gltrace Update for VoucherRcp********3**********");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
{
return errString;
}
}
else if (count2 > 0)//posting again instead of setting into detail*****updating amount
{
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("acct_code",cctrCodeDis1[0]);
hdrmap.put("cctr_code",cctrCodeDis1[1]);
System.out.println("Updating amount *discAmt*****"+ discAmt + amount);
hdrmap.put("dr_amt", discAmt + amount );//**updating amount
hdrmap.put("cr_amt",0.0);
hdrmap.put("dept_code",deptCode);
//hdrmap.put("emp_code",rs.getString(""));
hdrmap.put("anal_code",analCode);
hdrmap.put("proj_code",projCode);
hdrmap.put("analysis1",anly1);
hdrmap.put("analysis2",anly2);
hdrmap.put("analysis3",anly3);
System.out.println("calling Gltrace Update for VoucherRcp*********4**********");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
{
return errString;
}
}
}//end of discount amount
// taxtran taken outside
//do{
sql = "select purc_order as ls_purc_ord from voucher where tran_id = ? ";
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1,tranID);
rs2 = pstmt2.executeQuery();
while(rs2.next())
{
purcOrd = rs2.getString("ls_purc_ord");
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
sql = "select item.item_code as ls_itemcode, item.item_ser as ls_itemser "
+"from porddet, item where porddet.item_code = item.item_code and porddet.purc_order = ? "
+" and porddet.line_no = ( select min(line_no) from porddet where purc_order = ? ) ";
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1,purcOrd);
pstmt2.setString(2,purcOrd);
// pstmt2.setString(2,cctrCodeDis);
rs2 = pstmt2.executeQuery();
while(rs2.next())
{
itemCode2 = rs2.getString("ls_itemcode");
itemSer2 = rs2.getString("ls_itemser");
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
sql = "select case when max(line_no) is null then 0 else max(line_no) end as li_tax from vouchdet where tran_id = ? ";
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1,tranID);
// pstmt2.setString(2,cctrCodeDis);
rs2 = pstmt2.executeQuery();
while(rs2.next())
{
taxLs = rs2.getString("li_tax");
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
if(acctCodePh == null || acctCodePh.trim().length() == 0)
{
acctCodePh = finCommon.getAcctDetrTtype(itemCode, itemSer, "IN", tranType, conn);
cctrCodePh = getTokens(acctCodePh,",").toString();
}
// }while(true);
sql = " select sum(a.tax_amt) as tax_amt, a.acct_code as acct_code, a.cctr_code as cctr_code, case when sum(a.reco_amount) is null then 0 else sum(a.reco_amount) end as reco_amount "
+"from taxtran a, tax b where a.tax_code = b.tax_code and a.tran_code = 'VOUCH'" +
" and a.tran_id = ? and b.effect <> 'N'group by a.acct_code, a.cctr_code ";
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1,tranID);
// pstmt2.setString(2,cctrCodeDis);
rs2 = pstmt2.executeQuery();
while(rs2.next())
{
lc_tax_amt = rs2.getDouble("tax_amt");
ls_acct_tax = rs2.getString("acct_code");
ls_cctr_tax = checkNull(rs2.getString("cctr_code"));
lc_reco_amt = rs2.getDouble("reco_amount");
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
if(lc_tax_amt > 0.0)
{
if(ls_acct_tax == null || ls_acct_tax.trim().length() == 0)
{
ls_acct_tax = acctCodePh;
}
if(ls_cctr_tax == null || ls_cctr_tax.trim().length() == 0)
{
ls_cctr_tax = acctCodePh;
}
sql = "select count(*) from vouchdet where acct_code = ? and cctr_code = ?";
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1,ls_acct_tax);
pstmt2.setString(2,ls_cctr_tax);
rs2 = pstmt2.executeQuery();
while(rs2.next())
{
count3 = rs2.getInt(1);
}
rs2.close();
rs2=null;
pstmt2.close();
pstmt2=null;
// 22-03-03 Arif .. tax record should be separately inserted with auto_generated
// flag set as 'Y'. Records with flag 'Y' will not be considered in save_det
// while batchloading.
if(count3 == 0)
{
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("acct_code",ls_acct_tax);
hdrmap.put("cctr_code",ls_cctr_tax);
hdrmap.put("dr_amt", lc_tax_amt);
hdrmap.put("cr_amt",0.0);
hdrmap.put("dept_code",deptCode);
//hdrmap.put("emp_code",rs.getString(""));
hdrmap.put("anal_code",analCode);
hdrmap.put("proj_code",projCode);
hdrmap.put("analysis1",anly1);
hdrmap.put("analysis2",anly2);
hdrmap.put("analysis3",anly3);
System.out.println("calling Gltrace Update for VoucherRcp********taxing*********");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
{
return errString;
}
}
else if (count3 > 0)//posting again instead of setting into detail*****updating amount
{
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("acct_code",ls_acct_tax);
hdrmap.put("cctr_code",ls_cctr_tax);
System.out.println("Updating amount *discAmt*****"+ discAmt + amount);
hdrmap.put("dr_amt",( lc_tax_amt + amount) - lc_reco_amt );//**updating amount
hdrmap.put("cr_amt",0.0);
hdrmap.put("dept_code",deptCode);
//hdrmap.put("emp_code",rs.getString(""));
hdrmap.put("anal_code",analCode);
hdrmap.put("proj_code",projCode);
hdrmap.put("analysis1",anly1);
hdrmap.put("analysis2",anly2);
hdrmap.put("analysis3",anly3);
System.out.println("calling Gltrace Update for VoucherRcp********taxing*********");
errString = finCommon.glTraceUpdate(hdrmap,conn,true);
System.out.println("ERROR STRING>>>>>>>>>>>>>>>>>>>>>>["+errString+"]");
if(errString != null && errString.trim().length() > 0)
{
return errString;
}
}
}
//Rounding off net Amt
String ls_cctrcode_rnd = "",ls_acctcode_rnd = "";
if(rndOff != "N")
{
lc_netwr = netAmt;
netAmt = getRndamt(netAmt, rndOff, rndTo);
lc_rndAmt = netAmt - lc_netwr;
System.out.println("Rnd Amount >>> "+lc_rndAmt);
if(lc_rndAmt != 0.0)
{
ls_cctrcode_rnd = finCommon.getFinparams("999999", "RND_ACCT", conn);
if(ls_cctrcode_rnd != "NULLFOUND")
{
ls_acctcode_rnd = getTokens(ls_cctrcode_rnd,";").toString();
}
System.out.println("ls_cctrcode_rnd*****"+ls_cctrcode_rnd+" ls_acctcode_rnd "+ls_acctcode_rnd);
if( ls_acctcode_rnd.trim().length() == 0)
{
ls_acctcode_rnd = null;
}
if( ls_cctrcode_rnd.trim().length() == 0)
{
ls_cctrcode_rnd = null;
}
hdrmap.put("tran_date",tranDate);
hdrmap.put("eff_date", effDate);
hdrmap.put("fin_entity",finentity);
hdrmap.put("site_code",sitecode);
hdrmap.put("acct_code",ls_acctcode_rnd);
hdrmap.put("cctr_code",ls_cctrcode_rnd);
hdrmap.put("dr_amt", lc_tax_amt);
hdrmap.put("cr_amt",0.0);
hdrmap.put("dept_code",deptCode);
//hdrmap.put("emp_code",rs.getString(""));
hdrmap.put("anal_code",analCode);
hdrmap.put("proj_code",projCode);
hdrmap.put("analysis1",anly1);
hdrmap.put("analysis2",anly2);
hdrmap.put("analysis3",anly3);
System.out.println("calling Gltrace Update for VoucherRcp********roundoff*********");
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;
}
rs1.close();
rs1=null;
pstmt1.close();
pstmt1=null;
//DI7SUN0018-To reverse the inventory entry for items whose qc ord is not made*********************PROVISIONAL
/* String porcpOld = "",porcp = "",post_prov = "", transer = "",tran_id__ref = "",itemCd = "",lineNoRcp = "",lineno1 = "",porcp1 = "";
/* //DI7SUN0018-To reverse the inventory entry for items whose qc ord is not made*********************PROVISIONAL
String porcpOld = "",porcp = "",post_prov = "", transer = "",tran_id__ref = "",itemCd = "",lineNoRcp = "",lineno1 = "",porcp1 = "";
int cnt = 0,qcordcnt = 0;
Double amt = 0.0;
String acctcodedr = "",cctrcodedr = "" ,acctcodeprov = "",cctrcodeprov = "";
......@@ -773,16 +1338,28 @@ public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements P
rs=null;
pstmt.close();
pstmt=null;
amount = vouchAmt;
cnt = porcplst.size();
boolean foundRow;
int foundRow = 0;
if(cnt > 0)
{
foundRow = porcplst.contains("A");
map1.put("type", "A");
map1.put("acct_code", checkNull(acctcodedr));
map1.put("cctr_code", acctcodedr);
porcplst.add(map1);
porcplst.add(1);
porcplst.add(cnt);
foundRow = porcplst.size();
/*
ll_foundrow = lst_porcp.Find("type = 'A' and acct_code = '" + gf_nulltostr(ls_acctcode) + &
"' and cctr_code = '" + gf_nulltostr(ls_cctrcode) + "'", 1, ll_cnt);
}
if(cnt == 0)
if(foundRow == 0)
{
porcplst.add(1,"A");
porcplst.add(2,acctcodedr);//acctcode
......@@ -826,7 +1403,9 @@ public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements P
}
}
}
}*/
}
}
}*/
}
catch( Exception e)
{
......@@ -890,6 +1469,123 @@ public class PurchaseVoucherGltracePreview extends ActionHandlerEJB implements P
return retString;
}
private String checkNull(String inp)
{
if(inp == null)
inp = " ";
return inp.trim();
}
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;
}
public double getRndamt(double netamt, String round, double roundTo)
{
double lcMultiply = 1;
try
{
round = round.toUpperCase();
if(netamt < 0)
{
lcMultiply = -1;
netamt = Math.abs(netamt);
}
else if (netamt == 0)
{
return netamt;
}
else if (round.trim().equals("N"))
{
return netamt;
}
else if(roundTo == 0)
{
return netamt;
}
if(round.trim().equals("X"))
{
netamt = (netamt - (netamt % roundTo) + roundTo);
}
if(round.trim().equals("P"))
{
netamt = (netamt - (netamt % roundTo));
}
if(round.trim().equals("R"))
{
if((netamt % roundTo) < (roundTo / 2))
{
netamt = (netamt - (netamt % roundTo));
}
else
{
netamt = (netamt - (netamt % roundTo) + roundTo);
}
}
return netamt;
}
catch(Exception e)
{
System.out.println("Exception :Conversion Qty ::" + e.getMessage() + ":");
}
if (roundTo == 1)
{
netamt = getRequiredDecimal(netamt, 0);
}
else if (roundTo == .1)
{
netamt = getRequiredDecimal(netamt, 1);
}
else if (roundTo == .01)
{
netamt = getRequiredDecimal(netamt, 2);
}
else if (roundTo == .001)
{
netamt = getRequiredDecimal(netamt, 3);
}
else if (roundTo == .0001)
{
netamt = getRequiredDecimal(netamt, 4);
}
return netamt;
}
public double getRequiredDecimal(double actVal, int prec)
{
NumberFormat numberFormat = NumberFormat.getIntegerInstance ();
Double DoubleValue = new Double (actVal);
numberFormat.setMaximumFractionDigits(3);
String strValue = numberFormat.format(DoubleValue);
strValue = strValue.replaceAll(",","");
double reqVal = Double.parseDouble(strValue);
return reqVal;
}
}
/*
* SELECT VOUCHRCP.TRAN_ID,VOUCHRCP.LINE_NO,VOUCHRCP.PRCP_ID,VOUCHRCP.LINE_NO__RCP,VOUCHRCP.ITEM_CODE,VOUCHRCP.UNIT,VOUCHRCP.RCP_QTY,VOUCHRCP.VOUCH_QTY,VOUCHRCP.RCP_RATE,VOUCHRCP.VOUCH_RATE,VOUCHRCP.PURC_ORDER,VOUCHRCP.LINE_NO__PORD,VOUCHRCP.VOUCH_AMT,VOUCHRCP.TAX_CLASS,VOUCHRCP.TAX_CHAP,VOUCHRCP.TAX_ENV,VOUCHRCP.DISCOUNT,VOUCHRCP.DISC_AMT,VOUCHRCP.TAX_AMT,VOUCHRCP.NET_AMT,VOUCHRCP.RCP_AMT,VOUCHRCP.POST_DIFF,VOUCHRCP.CHG_DATE,VOUCHRCP.CHG_USER,VOUCHRCP.CHG_TERM,VOUCHRCP.ITEM_SER,ITEM.DESCR,VOUCHRCP.ACCT_CODE__DIFF,VOUCHRCP.CCTR_CODE__DIFF,VOUCHRCP.VOUCH_QTY__STDUOM,VOUCHRCP.VOUCH_RATE__STDUOM,VOUCHRCP.ACCT_CODE,VOUCHRCP.CCTR_CODE,ACCOUNTS.DESCR,VOUCHRCP.TAX_ADV_AMT,VOUCHRCP.RATE__CLG,VOUCHRCP.STD_RATE,VOUCHRCP.DEPT_CODE,VOUCHRCP.ANAL_CODE,ANALYSIS.DESCR,COSTCTR.DESCR,VOUCHRCP.PROJ_CODE,VOUCHRCP.ANALYSIS1,VOUCHRCP.ANALYSIS2,VOUCHRCP.ANALYSIS3,FN_GET_BUDGET_AMT('VOUCH',"VOUCHER"."SITE_CODE","VOUCHRCP"."ACCT_CODE","VOUCHRCP"."CCTR_CODE",VOUCHRCP.ANAL_CODE ,"VOUCHRCP"."DEPT_CODE",'A') BUDGET_AMT_ANAL,FN_GET_CONS_AMT('VOUCH',"VOUCHER"."SITE_CODE","VOUCHRCP"."ACCT_CODE","VOUCHRCP"."CCTR_CODE",VOUCHRCP.ANAL_CODE,"VOUCHRCP"."DEPT_CODE",'A') CONSUMED_AMT_ANAL,(CASE WHEN (FN_GET_CONS_AMT('VOUCH',VOUCHER.SITE_CODE,VOUCHRCP.ACCT_CODE,VOUCHRCP.CCTR_CODE,VOUCHRCP.ANAL_CODE,VOUCHRCP.DEPT_CODE,'A')) > 0 THEN (FN_GET_BUDGET_AMT('VOUCH',VOUCHER.SITE_CODE,VOUCHRCP.ACCT_CODE,VOUCHRCP.CCTR_CODE,VOUCHRCP.ANAL_CODE ,VOUCHRCP.DEPT_CODE,'A') - FN_GET_CONS_AMT('VOUCH',VOUCHER.SITE_CODE,VOUCHRCP.ACCT_CODE,VOUCHRCP.CCTR_CODE,VOUCHRCP.ANAL_CODE,VOUCHRCP.DEPT_CODE,'A')) ELSE 0 END) BUDGET_AMT FROM VOUCHRCP VOUCHRCP,ITEM ITEM,ACCOUNTS ACCOUNTS,ANALYSIS ANALYSIS,COSTCTR COSTCTR,VOUCHER VOUCHER WHERE ( VOUCHRCP.ITEM_CODE = ITEM.ITEM_CODE ) AND ( VOUCHER.TRAN_ID = VOUCHRCP.TRAN_ID ) AND ( VOUCHRCP.ACCT_CODE=ACCOUNTS.ACCT_CODE(+)) AND ( VOUCHRCP.ANAL_CODE=ANALYSIS.ANAL_CODE(+)) AND ( VOUCHRCP.CCTR_CODE=COSTCTR.CCTR_CODE(+)) AND VOUCHRCP.TRAN_ID = ?*/
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