Commit 19efb191 authored by ngadkari's avatar ngadkari

migration of pb code in java for identical invoice without taxes is generated at HO site

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@215299 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 5c774632
......@@ -3321,7 +3321,7 @@ public class PostOrdInvoicePost extends ActionHandlerEJB implements PostOrdInvoi
String sql="",trnDtStr="",despDtStr="",dueDtStr="",effDtStr="",taxDtStr="",confDtStr="",chgDtStr="", gpDtStr = null;
PreparedStatement pstmt=null;
ResultSet rs=null;
String blDtStr=null,lcDtStr=null,deliDtStr=null,lrDtStr=null,octRcpDtStr=null,invExpDtStr=null;//blDtStr,lcDtStr,deliDtStr added by nandkumar gadkari on 13/01/20
try
{
sql="SELECT invoice.invoice_id,invoice.tran_date,invoice.sale_order,invoice.desp_id,invoice.tran_mode,"
......@@ -3343,6 +3343,11 @@ public class PostOrdInvoicePost extends ActionHandlerEJB implements PostOrdInvoi
+ "case when adj_amount < 0 then abs(to_char(adj_amount,'9999999.99')) || ' Dr. ' else abs(to_char(adj_amount,'9999999.99')) || ' Cr. ' end as adjust_amount,"
+ "invoice.disc_schem_billback_amt,invoice.disc_schem_offinv_amt,invoice.acc_code__order,invoice.disc_offinv_amt_hdr,"
+ "invoice.disc_billback_amt_hdr,invoice.acct_code__pr,invoice.cctr_code__pr"
+ ",invoice.tran_id__rcv,invoice.bl_no,invoice.bl_date,invoice.exch_rate__ins,invoice.curr_code__ins,invoice.ins_amt"// added by nandkumar gadkari on 13/01/20
+ ",invoice.print_status,invoice.lc_ref,invoice.lc_date,invoice.prd_code,invoice.recd_yn,invoice.market_reg,invoice.delivered,invoice.delivery_date" // added by nandkumar gadkari on 13/01/20
+ ",invoice.lr_no,invoice.lr_date,invoice.tran_code,invoice.octroi_rcp_no,invoice.octroi_rcp_date,invoice.no_art,invoice.lorry_no,invoice.trans_mode,invoice.gross_weight" // added by nandkumar gadkari on 13/01/20
+ ",invoice.parent__tran_id,invoice.custstock_id,invoice.inv_ackno,invoice.cd_tranno,invoice.tran_id__crn" // added by nandkumar gadkari on 13/01/20
+ ",invoice.processed, invoice.download_flag,invoice.download_file_seq,invoice.inv_exp_date,invoice.edi_stat,invoice.edi_stat_asn" // added by nandkumar gadkari on 13/01/20
+ " FROM invoice,sales_pers,finent,site,customer,ins_agent"
+ " WHERE ( invoice.sales_pers = sales_pers.sales_pers (+))"
+ " and( invoice.agent_code = ins_agent.agent_code (+))"
......@@ -3479,6 +3484,94 @@ public class PostOrdInvoicePost extends ActionHandlerEJB implements PostOrdInvoi
InvoiceHrdMap.put("disc_billback_amt_hdr", checkNull(rs.getString("disc_billback_amt_hdr")));
InvoiceHrdMap.put("acct_code__pr", checkNull(rs.getString("acct_code__pr")));
InvoiceHrdMap.put("cctr_code__pr", checkNull(rs.getString("cctr_code__pr")));
// added by nandkumar gadkari on 13/01/20-------------start----------
InvoiceHrdMap.put("tran_id__rcv", checkNull(rs.getString("tran_id__rcv")));
InvoiceHrdMap.put("bl_no", checkNull(rs.getString("bl_no")));
if(rs.getString("bl_date") !=null )
{
blDtStr=genericUtility.getValidDateString(rs.getString("bl_date"), genericUtility.getDBDateFormat(),genericUtility.getApplDateFormat());
InvoiceHrdMap.put("bl_date", blDtStr);
}
else
{
InvoiceHrdMap.put("bl_date", blDtStr);
}
InvoiceHrdMap.put("exch_rate__ins", checkNull(rs.getString("exch_rate__ins")));
InvoiceHrdMap.put("curr_code__ins", checkNull(rs.getString("curr_code__ins")));
InvoiceHrdMap.put("ins_amt", checkNull(rs.getString("ins_amt")));
InvoiceHrdMap.put("print_status", checkNull(rs.getString("print_status")));
InvoiceHrdMap.put("lc_ref", checkNull(rs.getString("lc_ref")));
if(rs.getString("lc_date") !=null )
{
lcDtStr=genericUtility.getValidDateString(rs.getString("lc_date"), genericUtility.getDBDateFormat(),genericUtility.getApplDateFormat());
InvoiceHrdMap.put("lc_date", lcDtStr);
}
else
{
InvoiceHrdMap.put("lc_date", lcDtStr);
}
InvoiceHrdMap.put("prd_code", checkNull(rs.getString("prd_code")));
InvoiceHrdMap.put("recd_yn", checkNull(rs.getString("recd_yn")));
InvoiceHrdMap.put("market_reg", checkNull(rs.getString("market_reg")));
InvoiceHrdMap.put("delivered", checkNull(rs.getString("delivered")));
if(rs.getString("delivery_date") !=null )
{
deliDtStr=genericUtility.getValidDateString(rs.getString("delivery_date"), genericUtility.getDBDateFormat(),genericUtility.getApplDateFormat());
InvoiceHrdMap.put("delivery_date", deliDtStr);
}
else
{
InvoiceHrdMap.put("delivery_date", deliDtStr);
}
InvoiceHrdMap.put("lr_no", checkNull(rs.getString("lr_no")));
if(rs.getString("lr_date") !=null )
{
lrDtStr=genericUtility.getValidDateString(rs.getString("lr_date"), genericUtility.getDBDateFormat(),genericUtility.getApplDateFormat());
InvoiceHrdMap.put("lr_date", lrDtStr);
}
else
{
InvoiceHrdMap.put("lr_date", lrDtStr);
}
InvoiceHrdMap.put("tran_code", checkNull(rs.getString("tran_code")));
InvoiceHrdMap.put("octroi_rcp_no", checkNull(rs.getString("octroi_rcp_no")));
if(rs.getString("octroi_rcp_date") !=null )
{
octRcpDtStr=genericUtility.getValidDateString(rs.getString("octroi_rcp_date"), genericUtility.getDBDateFormat(),genericUtility.getApplDateFormat());
InvoiceHrdMap.put("octroi_rcp_date", octRcpDtStr);
}
else
{
InvoiceHrdMap.put("octroi_rcp_date", octRcpDtStr);
}
InvoiceHrdMap.put("no_art", checkNull(rs.getString("no_art")));
InvoiceHrdMap.put("lorry_no", checkNull(rs.getString("lorry_no")));
InvoiceHrdMap.put("trans_mode", checkNull(rs.getString("trans_mode")));
InvoiceHrdMap.put("gross_weight", checkNull(rs.getString("gross_weight")));
InvoiceHrdMap.put("parent__tran_id", checkNull(rs.getString("parent__tran_id")));
InvoiceHrdMap.put("custstock_id", checkNull(rs.getString("custstock_id")));
InvoiceHrdMap.put("inv_ackno", checkNull(rs.getString("inv_ackno")));
InvoiceHrdMap.put("cd_tranno", checkNull(rs.getString("cd_tranno")));
InvoiceHrdMap.put("tran_id__crn", checkNull(rs.getString("tran_id__crn")));
InvoiceHrdMap.put("processed", checkNull(rs.getString("processed")));
InvoiceHrdMap.put("download_flag", checkNull(rs.getString("download_flag")));
InvoiceHrdMap.put("download_file_seq", checkNull(rs.getString("download_file_seq")));
InvoiceHrdMap.put("edi_stat", checkNull(rs.getString("edi_stat")));
InvoiceHrdMap.put("edi_stat_asn", checkNull(rs.getString("edi_stat_asn")));
if(rs.getString("inv_exp_date") !=null )
{
invExpDtStr=genericUtility.getValidDateString(rs.getString("inv_exp_date"), genericUtility.getDBDateFormat(),genericUtility.getApplDateFormat());
InvoiceHrdMap.put("inv_exp_date", invExpDtStr);
}
else
{
InvoiceHrdMap.put("inv_exp_date", invExpDtStr);
}
// added by nandkumar gadkari on 13/01/20-------------end------------
}
pstmt.close();
pstmt=null;
......@@ -3826,6 +3919,695 @@ public class PostOrdInvoicePost extends ActionHandlerEJB implements PostOrdInvoi
return errString;
}
//Ended confirm method by Varsha V on 16-08-18 to confirm the transaction on clicking button
//added by nandkumar gadkari on 13/01/20-----------------------start---------------------
public String gbfCreateInvHdrOth(String invoiceId, String siteCode ,String asRunOpt,String refDate,String xtraParams, Connection conn) throws ITMException
{
String retSting="",sysDate="",transer="",sql="",custCode="",taxEnvInv="",finEntity="",trnofld="",insertSql="";
String loginEmpCode="",forcedFlag="";
String lineNoRef="";
double netAmt=0.0,taxAmt=0.0,netAmtTrace=0.0,taxAmtTrace=0.0,lcTotAmt=0.0,netAmtHdr=0,taxAmtHdr=0;
PreparedStatement pstmt=null,pstmt1=null;
ResultSet rs=null,rs1=null;
int cnt=0,lsNo=0;
UtilMethods utlMethods= new UtilMethods();
Timestamp today=null;
Timestamp tranDate = null,effDate=null,despDate=null,dueDate=null,taxDate=null,blDate=null,lcDate=null,delvDate=null,lrDate=null,octRcpDate=null,gpDate=null,invExpDate=null;
String xmlValues="",newInvoiceId="",keystr="";
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
HashMap<String, String>InvoiceDetMap=null;
try
{
java.util.Date currentD = new java.util.Date();
Calendar cal = Calendar.getInstance();
cal.setTime(currentD);
currentD = cal.getTime();
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
sysDate = sdf.format(currentD);
today= Timestamp.valueOf(genericUtility.getValidDateString(sysDate, genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
transer = "S-INV";
trnofld = "Invoice_id";
HashMap<String, String> InvoiceHrdMap=new HashMap<String, String>();
ArrayList<Object> invoiceDetList=new ArrayList<Object>();
try
{
sql ="select key_String from transetup where upper(tran_window) = 'W_INVOICE_PO' " ;
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
keystr = rs.getString("key_string");
}
else
{
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql ="select key_String from transetup where upper(tran_window) = 'GENERAL' " ;
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
keystr = rs.getString("key_string");
}
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
xmlValues ="<?xml version=\"1.0\" encoding=\"utf-8\"?><Root>";
xmlValues = xmlValues + "<Header></Header>";
xmlValues = xmlValues + "<Detail1>";
xmlValues = xmlValues + "<tran_id></tran_id>";
xmlValues = xmlValues + "<site_code>" + siteCode + "</site_code>";
xmlValues = xmlValues + "<tran_date>" + sysDate + "</tran_date>";
xmlValues = xmlValues +"</Detail1></Root>";
//System.out.println("xmlValues :["+xmlValues+"]");
TransIDGenerator tg = new TransIDGenerator(xmlValues, "BASE", CommonConstants.DB_NAME);
newInvoiceId = tg.generateTranSeqID("S-INV", "tran_id", keystr, conn);
//System.out.println("nextID ["+newInvoiceId + "]");
}catch(Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
InvoiceHrdMap=getInvoiceHdr(invoiceId,conn);
sql="select count(*) from site_customer where site_code__ch = ? and site_code = ? and channel_partner = 'Y'";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, siteCode );
pstmt.setString( 2, InvoiceHrdMap.get("site_code") );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt(1);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(cnt == 0)
{
sql="select count(*) from customer where site_code = ? and case when channel_partner is null then 'N' else channel_partner end = 'Y'";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, siteCode );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt(1);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(cnt > 1)
{
retSting = itmDBAccessEJB.getErrorString("", "ERRORVTCPC", "","", conn);
return retSting;
}
if(cnt == 0)
{
retSting = itmDBAccessEJB.getErrorString("", "VTCUSTCD4", "","", conn);
return retSting;
}
if(cnt == 1)
{
sql="select cust_code from customer where site_code = ? and channel_partner = 'Y'";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, siteCode );
rs = pstmt.executeQuery();
if( rs.next() )
{
custCode = rs.getString(1);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
}
else if(cnt == 1)
{
sql="select cust_code from site_customer where site_code__ch =? and site_code =? and channel_partner = 'Y' ";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, siteCode );
pstmt.setString( 2, InvoiceHrdMap.get("site_code") );
rs = pstmt.executeQuery();
if( rs.next() )
{
custCode = rs.getString(1);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
taxEnvInv=finCommon.getFinparams("999999", "SRETURN_TAX_ENV", conn);
if(taxEnvInv==null || taxEnvInv.trim().length()==0 || "NULLFOUND".equalsIgnoreCase(taxEnvInv))
{
taxEnvInv="";
}
sql="select fin_entity from site where site_code = ? ";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, siteCode );
rs = pstmt.executeQuery();
if( rs.next() )
{
finEntity = rs.getString(1);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(finEntity == null || finEntity.trim().length()== 0)
{
retSting = itmDBAccessEJB.getErrorString("", "DS000", "","", conn);
return retSting;
}
tranDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("tran_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
if(InvoiceHrdMap.get("eff_date") != null )
{
effDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("eff_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("desp_date") != null )
{
despDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("desp_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("due_date") != null )
{
dueDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("due_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("tax_date") != null )
{
taxDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("tax_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("bl_date") != null )
{
blDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("bl_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("lc_date") != null )
{
lcDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("lc_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("delivery_date") != null )
{
delvDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("delivery_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("lr_date") != null )
{
lrDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("lr_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("octroi_rcp_date") != null )
{
octRcpDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("octroi_rcp_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("gp_date") != null )
{
gpDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("gp_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
if(InvoiceHrdMap.get("inv_exp_date") != null )
{
invExpDate=Timestamp.valueOf(genericUtility.getValidDateString(InvoiceHrdMap.get("inv_exp_date"), genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat()) + " 00:00:00.0");
}
netAmtHdr=InvoiceHrdMap.get("net_amt")== null ? 0 : Double.parseDouble(InvoiceHrdMap.get("net_amt"));
taxAmtHdr=InvoiceHrdMap.get("tax_amt")== null ? 0 : Double.parseDouble(InvoiceHrdMap.get("tax_amt"));
netAmtHdr=netAmtHdr-taxAmtHdr;
sql = "insert into invoice ( INVOICE_ID,TRAN_DATE,FIN_ENTITY,EFF_DATE,TRAN_MODE,SALE_ORDER,DESP_ID,DESP_DATE," +
"SITE_CODE,CUST_CODE,CUST_CODE__BIL,ACCT_CODE__AR,CCTR_CODE__AR,CR_TERM,CR_DAYS,DUE_DATE," +
"TAX_CLASS,TAX_CHAP,TAX_ENV,INV_AMT,TAX_AMT,DISC_AMT,TAX_DATE,FRT_AMT,FRT_TYPE,NET_AMT," +
"CURR_CODE,EXCH_RATE,SALES_PERS,COMM_AMT,CURR_CODE__FRT,EXCH_RATE__FRT,CHG_DATE,CHG_USER,CHG_TERM," +
"CONFIRMED,ROUND_ADJ,TRAN_ID__RCV,BL_NO,BL_DATE,TRAN_ID__FB,REMARKS,ANAL_CODE," +
"ADJ_AMOUNT,INV_TYPE,ITEM_SER,ACCT_CODE__SAL,CCTR_CODE__SAL,ACCT_CODE__DIS,CCTR_CODE__DIS,BANK_CODE," +
"EMP_CODE__APRV,EXCH_RATE__INS,CURR_CODE__INS,INS_AMT,PRINT_STATUS,LC_REF,LC_DATE," +
"PRD_CODE,RECD_YN,MARKET_REG,DELIVERED,DELIVERY_DATE,AGENT_CODE,RATE__CLG,COMM_AMT__OC," +
"SALES_PERS__1,SALES_PERS__2,SALES_PERS_COMM_1,SALES_PERS_COMM_2,SALES_PERS_COMM_3,LR_NO,LR_DATE," +
"TRAN_CODE,OCTROI_RCP_NO,OCTROI_RCP_DATE,NO_ART,LORRY_NO,TRANS_MODE,GROSS_WEIGHT,POSTTYPE," +
"PARENT__TRAN_ID,CUSTSTOCK_ID,INV_ACKNO,CD_TRANNO,TRAN_ID__CRN,STAN_CODE__INIT,PROCESSED," +
"DOC_STATUS,GP_NO,GP_DATE,SALES_GRP,DOWNLOAD_FLAG,DOWNLOAD_FILE_SEQ,INV_EXP_DATE," +
"DISC_SCHEM_BILLBACK_AMT,DISC_SCHEM_OFFINV_AMT,DISC_BILLBACK_AMT_HDR,DISC_OFFINV_AMT_HDR," +
"ACC_CODE__ORDER,ACCT_CODE__PR,CCTR_CODE__PR,EDI_STAT,EDI_STAT_ASN)" +
"values" +
"(?,?,?,?,?,?,?,?," + //8
"?,?,?,?,?,?,?,?," + //16
"?,?,?,?,?,?,?,?,?,?," + //26
"?,?,?,?,?,? ,? ,? ,?," +// 35
"?,?,?,?,?,?,?,?,?," + //44
"?,?,?,?,?,?,?," + //51
"?,?,?,?,?,?,?," + //58
"?,?,?,?,?,?,?,?," + //66
"?,?,?,?,?,?,?," + //73
"?,?,?,?,?,?,?,?," + //81
"?,?,?,?,?,?,?," + //88
"?,?,?,?,?,?,?," + //95
"?,?,?,?," + //99
"?,?,?,?,?)";//104
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, newInvoiceId);
pstmt.setTimestamp(2,tranDate);
pstmt.setString(3, finEntity);
pstmt.setTimestamp(4, effDate);
pstmt.setString(5, InvoiceHrdMap.get("tran_mode"));
pstmt.setString(6, InvoiceHrdMap.get("sale_order"));
pstmt.setString(7, InvoiceHrdMap.get("desp_id"));
pstmt.setTimestamp(8, despDate);
pstmt.setString(9, siteCode);
pstmt.setString(10, custCode);
pstmt.setString(11, custCode);
pstmt.setString(12, InvoiceHrdMap.get("acct_code__ar"));
pstmt.setString(13, InvoiceHrdMap.get("cctr_code__ar"));
pstmt.setString(14, InvoiceHrdMap.get("cr_term"));
pstmt.setString(15, InvoiceHrdMap.get("cr_days"));
pstmt.setTimestamp(16, dueDate);
pstmt.setString(17, InvoiceHrdMap.get("tax_class"));
pstmt.setString(18, InvoiceHrdMap.get("tax_chap"));
pstmt.setString(19, InvoiceHrdMap.get("tax_env"));
pstmt.setString(20, InvoiceHrdMap.get("inv_amt"));
pstmt.setDouble(21, 0.0);
pstmt.setString(22, InvoiceHrdMap.get("disc_amt"));
pstmt.setTimestamp(23, taxDate);
pstmt.setString(24, InvoiceHrdMap.get("frt_amt"));
pstmt.setString(25, InvoiceHrdMap.get("frt_type"));
pstmt.setDouble(26, netAmtHdr);
pstmt.setString(27, InvoiceHrdMap.get("curr_code"));
pstmt.setString(28, InvoiceHrdMap.get("exch_rate"));
pstmt.setString(29, InvoiceHrdMap.get("sales_pers"));
pstmt.setString(30, InvoiceHrdMap.get("comm_amt"));
pstmt.setString(31, InvoiceHrdMap.get("curr_code__frt"));
pstmt.setString(32, InvoiceHrdMap.get("exch_rate__frt"));
pstmt.setTimestamp(33, today);
pstmt.setString(34, InvoiceHrdMap.get("chg_user"));
pstmt.setString(35, InvoiceHrdMap.get("chg_term"));
pstmt.setString(36, "N");
pstmt.setDouble(37, 0.0);
pstmt.setString(38, InvoiceHrdMap.get("tran_id__rcv"));
pstmt.setString(39, InvoiceHrdMap.get("bl_no"));
pstmt.setTimestamp(40, blDate);
pstmt.setString(41, InvoiceHrdMap.get("tran_id__fb"));
pstmt.setString(42, InvoiceHrdMap.get("remarks"));
pstmt.setString(43, InvoiceHrdMap.get("anal_code"));
pstmt.setString(44,InvoiceHrdMap.get("adj_amount"));
pstmt.setString(45, InvoiceHrdMap.get("inv_type"));
pstmt.setString(46, InvoiceHrdMap.get("item_ser"));
pstmt.setString(47, InvoiceHrdMap.get("acct_code__sal"));
pstmt.setString(48, InvoiceHrdMap.get("cctr_code__sal"));
pstmt.setString(49, InvoiceHrdMap.get("acct_code__dis"));
pstmt.setString(50,InvoiceHrdMap.get("cctr_code__dis"));
pstmt.setString(51, InvoiceHrdMap.get("bank_code"));
pstmt.setString(52, InvoiceHrdMap.get("emp_code__aprv"));
pstmt.setString(53, InvoiceHrdMap.get("exch_rate__ins"));
pstmt.setString(54, InvoiceHrdMap.get("curr_code__ins"));
pstmt.setString(55, InvoiceHrdMap.get("ins_amt"));
pstmt.setString(56,InvoiceHrdMap.get("print_status"));
pstmt.setString(57, InvoiceHrdMap.get("lc_ref"));
pstmt.setTimestamp(58,lcDate);
pstmt.setString(59, InvoiceHrdMap.get("prd_code"));
pstmt.setString(60, InvoiceHrdMap.get("recd_yn"));
pstmt.setString(61, InvoiceHrdMap.get("market_reg"));
pstmt.setString(62,InvoiceHrdMap.get("delivered"));
pstmt.setTimestamp(63, delvDate);
pstmt.setString(64, InvoiceHrdMap.get("agent_code"));
pstmt.setString(65, InvoiceHrdMap.get("rate__clg"));
pstmt.setString(66, InvoiceHrdMap.get("comm_amt__oc"));
pstmt.setString(67,InvoiceHrdMap.get("sales_pers__1"));
pstmt.setString(68, InvoiceHrdMap.get("sales_pers__2"));
pstmt.setString(69, InvoiceHrdMap.get("sales_pers_comm_1"));
pstmt.setString(70, InvoiceHrdMap.get("sales_pers_comm_2"));
pstmt.setString(71, InvoiceHrdMap.get("sales_pers_comm_3"));
pstmt.setString(72, InvoiceHrdMap.get("lr_no"));
pstmt.setTimestamp(73,lrDate);
pstmt.setString(74, InvoiceHrdMap.get("tran_code"));
pstmt.setString(75, InvoiceHrdMap.get("octroi_rcp_no"));
pstmt.setTimestamp(76,octRcpDate);
pstmt.setString(77, InvoiceHrdMap.get("no_art"));
pstmt.setString(78, InvoiceHrdMap.get("lorry_no"));
pstmt.setString(79, InvoiceHrdMap.get("trans_mode"));
pstmt.setString(80, InvoiceHrdMap.get("gross_weight"));
pstmt.setString(81, InvoiceHrdMap.get("posttype"));
pstmt.setString(82, InvoiceHrdMap.get("parent__tran_id"));
pstmt.setString(83, InvoiceHrdMap.get("custstock_id"));
pstmt.setString(84, InvoiceHrdMap.get("inv_ackno"));
pstmt.setString(85, InvoiceHrdMap.get("cd_tranno"));
pstmt.setString(86, InvoiceHrdMap.get("tran_id__crn"));
pstmt.setString(87, InvoiceHrdMap.get("stan_code__init"));
pstmt.setString(88, InvoiceHrdMap.get("processed"));
pstmt.setString(89, InvoiceHrdMap.get("doc_status"));
pstmt.setString(90, InvoiceHrdMap.get("gp_no"));
pstmt.setTimestamp(91, gpDate);
pstmt.setString(92, InvoiceHrdMap.get("sales_grp"));
pstmt.setString(93, InvoiceHrdMap.get("download_flag"));
pstmt.setString(94, InvoiceHrdMap.get("download_file_seq"));
pstmt.setTimestamp(95, invExpDate);
pstmt.setString(96, InvoiceHrdMap.get("disc_schem_billback_amt"));
pstmt.setString(97, InvoiceHrdMap.get("disc_schem_offinv_amt"));
pstmt.setString(98, InvoiceHrdMap.get("disc_billback_amt_hdr"));
pstmt.setString(99, InvoiceHrdMap.get("disc_offinv_amt_hdr"));
pstmt.setString(100, InvoiceHrdMap.get("acc_code__order"));
pstmt.setString(101, InvoiceHrdMap.get("acct_code__pr"));
pstmt.setString(102, InvoiceHrdMap.get("cctr_code__pr"));
pstmt.setString(103, InvoiceHrdMap.get("edi_stat"));
pstmt.setString(104, InvoiceHrdMap.get("edi_stat_asn"));
pstmt.executeUpdate();
pstmt.close();
pstmt = null;
//pb code not migrated --------
/*lc_check_amt = 0
ls_status = ''
For ll_cnt = 1 to UpperBound(ls_check)
ls_descr = ls_check[ll_cnt]
ls_cr_policy = f_get_token(ls_descr, "~t")
ls_desp_id = f_get_token(ls_descr, "~t")
ls_sale_order = f_get_token(ls_descr, "~t")
lc_aprv_amt = dec(f_get_token(ls_descr, "~t"))
//i_nvo_sales.gbf_credit_check_update(ls_sale_order,ls_cr_policy,0,'S',lc_check_amt,'C',ls_status) //Commented Ruchira 29/08/2k6, for invoice amt not getting passed.
i_nvo_sales.gbf_credit_check_update(ls_sale_order,ls_cr_policy,lc_net_amt,'S',lc_check_amt,'C',ls_status) //Added Ruchira 29/08/2k6, to pass invoice amt.
if lc_check_amt > 0 or ls_status = '' then
//Insert record for balance amount
ll_row = ads_credit_check.InsertRow(0)
ads_credit_check.SetItem(ll_row,'tran_type','S')
ads_credit_check.SetItem(ll_row,'cr_policy', ls_cr_policy)
ads_credit_check.SetItem(ll_row,'descr', ls_descr)
ads_credit_check.SetItem(ll_row,'sale_order', ls_sale_order)
ads_credit_check.SetItem(ll_row,'aprv_stat','F')
ads_credit_check.SetItem(ll_row,'aprv_amt',0)
ads_credit_check.SetItem(ll_row,'used_amt',0)
end if
Next
if UpperBound(ls_check) > 0 then
ls_errcode = 'VTCREDIT02'
end if*/
/*invoiceDetList=getInvoiceDet(invoiceId,conn);
for(int itr=0;itr<invoiceDetList.size();itr++)
{
InvoiceDetMap=(HashMap<String, String>) invoiceDetList.get(itr);
}*/
insertSql="INSERT INTO invdet (invoice_id,line_no,sord_line_no,item_code,item_flg,item_descr,quantity,unit,rate,"+
"unit__rate,discount,tax_class,tax_chap,tax_env,tax_amt,net_amt,unit__std,conv__qty_stduom,"+
"quantity__stduom,conv__rtuom_stduom,rate__stduom,comm_amt,"+
"sord_no,no_art,disc_amt,item_code__ord,rate__clg,comm_amt__oc,sales_pers_comm_1,"+
"sales_pers_comm_2,sales_pers_comm_3,cust_item__ref,analysis3,down_payment,down_payment_int,"+
"inst_amount,inst_int_amount,no_of_inst,frequency,analysis1,analysis2,disc_schem_billback_amt,"+
"disc_schem_offinv_amt,acc_code__item,chg_date,chg_user,chg_term) "+
"values (?,?,?,?,?,?,?," + //7
" ?,?,?,?,?,?,?,?,?," + //16
" ?,?,?,?,?,?,?," +//23
" ?,?,?,?,?,?,?,?," + //31
" ?,?,?,?,?,?," + //37
" ?,?,?,?,?,?,?," + //44
" ?,?,?)"; //47
pstmt1 = conn.prepareStatement(insertSql);
sql="select invoice_id,line_no,sord_line_no,item_code,item_flg,item_descr,quantity,unit,rate," +
"unit__rate,discount,tax_class,tax_chap,tax_env,tax_amt,net_amt,unit__std,conv__qty_stduom," +
"quantity__stduom,conv__rtuom_stduom,rate__stduom,comm_amt,sord_no,no_art,disc_amt," +
"item_code__ord,rate__clg,comm_amt__oc,sales_pers_comm_1,sales_pers_comm_2,sales_pers_comm_3," +
"cust_item__ref,analysis3,down_payment,down_payment_int,inst_amount,inst_int_amount,no_of_inst," +
"frequency,analysis1,analysis2,disc_schem_billback_amt,disc_schem_offinv_amt,acc_code__item,chg_date,chg_user,chg_term " +
"from invdet " +
"where invoice_id =? ";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, invoiceId );
rs = pstmt.executeQuery();
while( rs.next() )
{
netAmt = rs.getDouble("net_amt");
taxAmt = rs.getDouble("tax_amt");
netAmt=netAmt-taxAmt;
pstmt1.setString(1,newInvoiceId);
pstmt1.setString(2,rs.getString("line_no"));
pstmt1.setString(3,rs.getString("sord_line_no"));
pstmt1.setString(4,rs.getString("item_code"));
pstmt1.setString(5,rs.getString("item_flg"));
pstmt1.setString(6,rs.getString("item_descr"));
pstmt1.setDouble(7,rs.getDouble("quantity"));
pstmt1.setString(8,rs.getString("unit"));
pstmt1.setDouble(9,rs.getDouble("rate"));
pstmt1.setString(10,rs.getString("unit__rate"));
pstmt1.setDouble(11,rs.getDouble("discount"));
pstmt1.setString(12,rs.getString("tax_class"));
pstmt1.setString(13,rs.getString("tax_chap"));
pstmt1.setString(14,rs.getString("tax_env"));
pstmt1.setDouble(15,0);
pstmt1.setDouble(16,netAmt);
pstmt1.setString(17,rs.getString("unit__std"));
pstmt1.setDouble(18,rs.getDouble("conv__qty_stduom"));
pstmt1.setDouble(19,rs.getDouble("quantity__stduom"));
pstmt1.setDouble(20,rs.getDouble("conv__rtuom_stduom"));
pstmt1.setDouble(21,rs.getDouble("rate__stduom"));
pstmt1.setDouble(22,rs.getDouble("comm_amt"));
pstmt1.setString(23,rs.getString("sord_no"));
pstmt1.setDouble(24,rs.getDouble("no_art"));
pstmt1.setDouble(25,rs.getDouble("disc_amt"));
pstmt1.setString(26,rs.getString("item_code__ord"));
pstmt1.setDouble(27,rs.getDouble("rate__clg"));
pstmt1.setDouble(28,rs.getDouble("comm_amt__oc"));
pstmt1.setDouble(29,rs.getDouble("sales_pers_comm_1"));
pstmt1.setDouble(30,rs.getDouble("sales_pers_comm_2"));
pstmt1.setDouble(31,rs.getDouble("sales_pers_comm_3"));
pstmt1.setString(32,rs.getString("cust_item__ref"));
pstmt1.setString(33,rs.getString("analysis3"));
pstmt1.setDouble(34,rs.getDouble("down_payment"));
pstmt1.setDouble(35,rs.getDouble("down_payment_int"));
pstmt1.setDouble(36,rs.getDouble("inst_amount"));
pstmt1.setDouble(37,rs.getDouble("inst_int_amount"));
pstmt1.setInt(38,rs.getInt("no_of_inst"));
pstmt1.setString(39,rs.getString("frequency"));
pstmt1.setString(40,rs.getString("analysis1"));
pstmt1.setString(41,rs.getString("analysis2"));
pstmt1.setDouble(42,rs.getDouble("disc_schem_billback_amt"));
pstmt1.setDouble(43,rs.getDouble("disc_schem_offinv_amt"));
pstmt1.setString(44,rs.getString("acc_code__item"));
pstmt1.setTimestamp(45,rs.getTimestamp("chg_date"));
pstmt1.setString(46,rs.getString("chg_user"));
pstmt1.setString(47,rs.getString("chg_term"));
pstmt1.addBatch();
pstmt1.clearParameters();
//pb code not migrated
/* if len(trim(ls_tax_env_inv)) > 0 then
inv_det.retrieve(ls_invoice_id_new , ll_line_no)
// ls_filter = "tran_ser = '"+mtranser+"' and vouch_no='"+mvouchno+"'"
// lds_det.setfilter(ls_filter)
// lds_det.filter()
ds_tax_detbrow.reset()
lc_tax_amtdet = gf_calc_tax_ds(inv_det,ds_tax_detbrow,'S-INV',ls_invoice_id_new,ld_tran_date,"rate__stduom", "quantity__stduom",1,ls_curr_code,'3')
if ds_tax_detbrow.update() <> 1 then
i++
populateerror(9999,'populateerror')
ls_errcode = 'DS000' + string(sqlca.sqldbcode)+' ~t'+sqlca.sqlerrtext
ls_errcode = gf_error_location(ls_errcode)
exit
end if
end if
/// for tax calculation
IF isnull(lc_tax_amtdet) then lc_tax_amtdet = 0
if isnull(lc_tax_amtdet) or lc_tax_amtdet = -999999999 then lc_tax_amtdet = 0
IF isnull(lc_net_amt) then lc_net_amt = 0
IF isnull(lc_tottax) then lc_tottax = 0
IF isnull(lc_tot_net_amt) then lc_tot_net_amt = 0
IF isnull(lc_totdiscamt) then lc_totdiscamt = 0
lc_tot_net_amt = lc_tot_net_amt+ lc_net_amt + lc_tax_amtdet - lc_disc_amt
lc_tottax = lc_tottax + lc_tax_amtdet
// mtotamt = lc_net_amt - lc_disc_amt
lc_totdiscamt = lc_totdiscamt + lc_disc_amt
update invdet
set tax_amt = :lc_tax_amtdet,
net_amt = (net_amt + (:lc_tax_amtdet - :lc_disc_amt))
where INVOICE_ID = :ls_invoice_id_new
and LINE_NO = :ll_line_no ;*/
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
pstmt1.executeBatch();
pstmt1.close();
pstmt1=null;
insertSql="INSERT INTO invoice_trace (invoice_id,inv_line_no,desp_id,desp_line_no,item_code,quantity,unit,rate," +
" unit__rate,line_no,discount,tax_class,tax_chap,tax_env,tax_amt,net_amt,unit__std,conv__qty_stduom," +
" quantity__stduom,conv__rtuom_stduom,rate__stduom,comm_amt,sord_no,sord_line_no," +
" item_code__ord,no_art,lot_no,lot_sl,site_code__mfg,mfg_date,exp_date" +
" ,exp_lev,fob_value,rate__clg,item_ser__prom,curr_code,exch_rate,comm_amt__oc," +
" rate__stk,rate__std,cost_rate,line_type,cust_item__ref,disc_schem_billback_amt,disc_schem_offinv_amt,chg_user,chg_term,chg_date) " +
" VALUES(?,?,?,?,?,?,?,?," + //8
" ?,?,?,?,?,?,?,?,?," + //17
" ?,?,?,?,?,?," +// 23
" ?,?,?,?,?,?,?,?,?,?" + //33
" ,?,?,?,?,?,?,?,?," + //41
" ?,?,?,?,?,?,?)";//48
pstmt1 = conn.prepareStatement(insertSql);
sql="select invoice_id,inv_line_no,desp_id,desp_line_no,item_code,quantity,unit,rate," +
"unit__rate,line_no,discount,tax_class,tax_chap,tax_env,tax_amt,net_amt,unit__std,conv__qty_stduom," +
"quantity__stduom,conv__rtuom_stduom,rate__stduom,comm_amt,sord_no,sord_line_no," +
"item_code__ord,no_art,lot_no,lot_sl,site_code__mfg,mfg_date,exp_date" +
",exp_lev,fob_value,rate__clg,item_ser__prom,curr_code,exch_rate,comm_amt__oc," +
"rate__stk,rate__std,cost_rate,line_type,cust_item__ref,disc_schem_billback_amt,disc_schem_offinv_amt,chg_date,chg_user,chg_term " +
"from invoice_trace " +
"where invoice_id = ? ";
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, invoiceId );
rs = pstmt.executeQuery();
while( rs.next() )
{
netAmtTrace = rs.getDouble("net_amt");
taxAmtTrace = rs.getDouble("tax_amt");
netAmtTrace=netAmtTrace-taxAmtTrace;
pstmt1.setString(1, newInvoiceId);
pstmt1.setString(2, rs.getString("inv_line_no"));
pstmt1.setString(3, rs.getString("desp_id"));
pstmt1.setString(4, rs.getString("desp_line_no"));
pstmt1.setString(5, rs.getString("item_code"));
pstmt1.setDouble(6, rs.getDouble("quantity"));
pstmt1.setString(7, rs.getString("unit"));
pstmt1.setDouble(8, rs.getDouble("rate"));
pstmt1.setString(9, rs.getString("unit__rate"));
pstmt1.setString(10, rs.getString("line_no"));
pstmt1.setDouble(11, rs.getDouble("discount"));
pstmt1.setString(12, rs.getString("tax_class"));
pstmt1.setString(13, rs.getString("tax_chap"));
pstmt1.setString(14, rs.getString("tax_env"));
pstmt1.setDouble(15, 0);
pstmt1.setDouble(16, netAmtTrace);
pstmt1.setString(17, rs.getString("unit__std"));
pstmt1.setDouble(18, rs.getDouble("conv__qty_stduom"));
pstmt1.setDouble(19, rs.getDouble("quantity__stduom"));
pstmt1.setDouble(20, rs.getDouble("conv__rtuom_stduom"));
pstmt1.setDouble(21, rs.getDouble("rate__stduom"));
pstmt1.setDouble(22, rs.getDouble("comm_amt"));
pstmt1.setString(23, rs.getString("sord_no"));
pstmt1.setString(24, rs.getString("sord_line_no"));
pstmt1.setString(25, rs.getString("item_code__ord"));
pstmt1.setDouble(26, rs.getDouble("no_art"));
pstmt1.setString(27, rs.getString("lot_no"));
pstmt1.setString(28, rs.getString("lot_sl"));
pstmt1.setString(29, rs.getString("site_code__mfg"));
pstmt1.setTimestamp(30, rs.getTimestamp("mfg_date"));
pstmt1.setTimestamp(31, rs.getTimestamp("exp_date"));
pstmt1.setString(32, rs.getString("exp_lev"));
pstmt1.setString(33, rs.getString("fob_value"));
pstmt1.setDouble(34, rs.getDouble("rate__clg"));
pstmt1.setString(35, rs.getString("item_ser__prom"));
pstmt1.setString(36, rs.getString("curr_code"));
pstmt1.setDouble(37, rs.getDouble("exch_rate"));
pstmt1.setDouble(38, rs.getDouble("comm_amt__oc"));
pstmt1.setDouble(39, rs.getDouble("rate__stk"));
pstmt1.setDouble(40, rs.getDouble("rate__std"));
pstmt1.setDouble(41, rs.getDouble("cost_rate"));
pstmt1.setString(42, rs.getString("line_type"));
pstmt1.setString(43, rs.getString("cust_item__ref"));
pstmt1.setDouble(44, rs.getDouble("disc_schem_billback_amt"));
pstmt1.setDouble(45, rs.getDouble("disc_schem_offinv_amt"));
pstmt1.setString(46, rs.getString("chg_user"));
pstmt1.setString(47, rs.getString("chg_term"));
pstmt1.setTimestamp(48, rs.getTimestamp("chg_date"));
pstmt1.addBatch();
pstmt1.clearParameters();
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
pstmt1.executeBatch();
pstmt1.close();
pstmt1=null;
forcedFlag="N";
retSting= invoicePosting(newInvoiceId, xtraParams, forcedFlag,conn);
loginEmpCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginEmpCode");
if(retSting==null || retSting.trim().length() ==0)
{
sql="update invoice set confirmed = 'Y',conf_date=?, emp_code__aprv = ? where invoice_id = ? ";
pstmt=conn.prepareStatement(sql);
pstmt.setTimestamp(1,today);
pstmt.setString(2,loginEmpCode);
pstmt.setString(3,newInvoiceId);
pstmt.executeUpdate();
pstmt.close();
pstmt=null;
}
} catch (ITMException e)
{
e.printStackTrace();
System.out.println("Exception ::"+ e.getMessage());
throw new ITMException(e);
} catch (Exception e)
{
e.printStackTrace();
System.out.println("Exception ::"+ e.getMessage());
throw new ITMException(e);
}
return retSting;
}
//added by nandkumar gadkari on 13/01/20-----------------------end---------------------
private String checkNull(String inputStr)
{
// TODO Auto-generated method stub
......
......@@ -1287,6 +1287,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
String SendEmailOnNotify = "";
String xmlString = "",reportType = "PDF",usrLevel = "";
//Added By PriyankaC on 16OCt2019.[END]
String siteType="",creatInvOthlist="",creatInvOth="",otherSite="",refDate="";
if("Y".equalsIgnoreCase(autoInvOnDesp))
{
......@@ -1585,7 +1586,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
PostOrdInvoicePost postOrdInvoicePost = new PostOrdInvoicePost();
String forcedFlag="N";
String retString1=postOrdInvoicePost.invoicePosting(invoiceId, xtraParams, forcedFlag,conn);
postOrdInvoicePost = null;
//postOrdInvoicePost = null; COMMENTED BY NANDKUMAR GADKARI ON 13/01/20
System.out.println("PostOrdInvoicePost return string >>>>"+retString1);
if( retString1 != null && retString1.trim().length() > 0 )
{
......@@ -1600,6 +1601,55 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
pstmt.close();
pstmt=null;
//added by nandkumar gadkari on 13/01/20-----------------------start---------------------
sql = " select site_type from site where site_code = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, siteCodeShip);
rs = pstmt.executeQuery();
if(rs.next())
{
siteType= checkNullAndTrim(rs.getString(1));
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
creatInvOthlist = fnComm.getFinparams("999999", "ALOW_INV_OTH_SITE", conn);
if( "NULLFOUND".equalsIgnoreCase(creatInvOthlist) || creatInvOthlist == null)
{
creatInvOthlist="";
}
if(creatInvOthlist.trim().length() > 0)
{
String[] arrStr = creatInvOthlist.split(",");
for (int i = 0; i < arrStr.length; i++) {
creatInvOth = arrStr[i];
System.out.println("creatInvOth>>>>>>>>" + creatInvOth);
if(siteType.equalsIgnoreCase(creatInvOth.trim()))
{
otherSite = fnComm.getFinparams("999999", "INVOICE_OTHER_SITE", conn);
if( !"NULLFOUND".equalsIgnoreCase(creatInvOthlist) && creatInvOthlist != null && creatInvOthlist.trim().length() > 0)
{
retString1=postOrdInvoicePost.gbfCreateInvHdrOth( invoiceId, otherSite , "", refDate, xtraParams, conn);
if( retString1 != null && retString1.trim().length() > 0 )
{
return retString1;
}
}
}
}
}
//added by nandkumar gadkari on 13/01/20-----------------------end---------------------
//Added Arun by p 31-10-17 for generate edi outbond data when edi medium=4 and edi medium=1 -Start
String ediOption = "";
sql = "select edi_option from transetup where tran_window = ? ";
......
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