Commit a9807a2a authored by msharma's avatar msharma

Issue resolved while inserting record in qc_order_lots table


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@97152 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 2a68299f
......@@ -14,6 +14,7 @@ import ibase.webitm.ejb.mfg.adv.RcpBackflushConfirm;
import ibase.webitm.ejb.sys.*;
import ibase.system.config.*;
import ibase.webitm.utility.ITMException;
import java.text.*;
import ibase.webitm.ejb.dis.DistCommon;
......@@ -36,14 +37,13 @@ import org.apache.axis.encoding.XMLType;
//import org.drools.runtime.pipeline.SmooksTransformerProvider;
import org.w3c.dom.*;
//import com.borland.enterprise.xml.toolkit.impl.tomcat.v4_0.std.Type;
import javax.xml.rpc.ParameterMode;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.parsers.*;
import java.text.SimpleDateFormat;
@Stateless
......@@ -2848,6 +2848,13 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
today = java.sql.Timestamp.valueOf(sdf.format(date).toString() + " 00:00:00.0");
SimpleDateFormat sdf1= new SimpleDateFormat(genericUtility.getDBDateFormat());
java.util.Date currentDate = new java.util.Date();
Timestamp newsysDate = java.sql.Timestamp.valueOf( sdf1.format(currentDate)+" 00:00:00.0");
nullPo = distCommon.getDisparams("999999", "RCP_WO_PO", conn);
sql = "SELECT KEY_STRING FROM TRANSETUP WHERE TRAN_WINDOW = ? ";
......@@ -3405,11 +3412,12 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
+ " sum(case when excess_short_qty is null then 0 else excess_short_qty end) as excess_short_qty ,sum((case when quantity__stduom is null then 0 else quantity__stduom end)) as quantity__stduom,supp_code__mnfr " //added by kunal on 5/11/12
+ " ,(case when no_art is null then 0 else no_art end) as no_art," //stary added by chandrashekar on 06-01-2015
+ "(case when net_weight is null then 0 else net_weight end) as net_weight"//stary added by chandrashekar on 06-01-2015
+" ,expiry_date "
+ " FROM PORCPDET WHERE TRAN_ID = ? "
+ " AND ITEM_CODE = ? "
+ " GROUP BY (CASE WHEN BATCH_NO IS NULL THEN ' ' ELSE BATCH_NO END), "
+ " LOC_CODE, UNIT__STD, (CASE WHEN SPEC_REF IS NULL THEN ' ' ELSE SPEC_REF END), "
+ " MFG_DATE ,LOT_NO,supp_code__mnfr,no_art,net_weight "
+ " MFG_DATE ,expiry_date,LOT_NO,supp_code__mnfr,no_art,net_weight "
+ " ORDER BY MIN(LINE_NO) ASC ";
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1, tranId);
......@@ -3429,6 +3437,7 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
//added by kunal on 5/11/12 start as per Pravin Sali Sir instruction
excessShortQty = rs1.getDouble("excess_short_qty"); //added by Kunal on 5/11/12
quantityStduom = rs1.getDouble("quantity__stduom"); //added by Kunal on 5/11/12
expiryDate = rs1.getTimestamp("expiry_date");
System.out.println("excessShortQt ="+excessShortQty);
System.out.println("quantityStduom ="+quantityStduom);
if(excessShortQty == 0)
......@@ -3440,7 +3449,9 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
suppCodeMnfr = rs1.getString("supp_code__mnfr");//added by Kunal on 8/11/12
System.out.println("suppCodeMnfr = "+suppCodeMnfr);
sql = "SELECT PURC_ORDER, LINE_NO__ORD, EXPIRY_DATE , LOT_SL , LINE_NO, MFG_DATE FROM PORCPDET WHERE TRAN_ID = ? AND ITEM_CODE = ? AND LOC_CODE = ? AND (CASE WHEN BATCH_NO IS NULL THEN ' ' ELSE BATCH_NO END) = ?";
sql = "SELECT PURC_ORDER, LINE_NO__ORD"
//+ ", EXPIRY_DATE , LOT_SL , LINE_NO, MFG_DATE"//Changed by manoj td 21/01/2015
+ " FROM PORCPDET WHERE TRAN_ID = ? AND ITEM_CODE = ? AND LOC_CODE = ? AND (CASE WHEN BATCH_NO IS NULL THEN ' ' ELSE BATCH_NO END) = ?";
pstmt2 = conn.prepareStatement(sql);
pstmt2.setString(1, tranId);
pstmt2.setString(2, itemCode);
......@@ -3451,10 +3462,10 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
{
purcOrder = checkNull(rs2.getString("PURC_ORDER"));
lineNoOrd = checkNull(rs2.getString("LINE_NO__ORD"));
expiryDate = rs2.getTimestamp("EXPIRY_DATE");
lotSl = checkNull(rs2.getString("LOT_SL"));
rcpLine = checkNull(rs2.getString("LINE_NO"));
mfgDate = rs2.getTimestamp("MFG_DATE");
//expiryDate = rs2.getTimestamp("EXPIRY_DATE");
//lotSl = checkNull(rs2.getString("LOT_SL"));
//rcpLine = checkNull(rs2.getString("LINE_NO"));
//mfgDate = rs2.getTimestamp("MFG_DATE");
}
pstmt2.close();
pstmt2 = null;
......@@ -3489,7 +3500,7 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
xmlValues = xmlValues + "<lot_no>" + lotNoRcp + "</lot_no>";
xmlValues = xmlValues + "<item_ser>" + itemSer + "</item_ser>";
xmlValues = xmlValues + "<porcp_no>" + tranId + "</porcp_no>";
xmlValues = xmlValues + "<porcp_line_no>" + rcpLine + "</porcp_line_no>";
//xmlValues = xmlValues + "<porcp_line_no>" + rcpLine + "</porcp_line_no>";
xmlValues = xmlValues +"</Detail1></Root>";
System.out.println("xmlValues :["+xmlValues+"]");
TransIDGenerator tg = new TransIDGenerator(xmlValues, "BASE", commonConstants.DB_NAME);
......@@ -3599,13 +3610,13 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
}
sql = "INSERT INTO QC_ORDER( QORDER_NO, QORDER_TYPE, QORDER_DATE, SITE_CODE ,ITEM_CODE, ROUTE_CODE, QUANTITY, QTY_PASSED ,"
+" QTY_REJECTED , START_DATE , DUE_DATE , PORCP_NO , PORCP_LINE_NO, LOT_NO, LOT_SL , CHG_DATE , CHG_USER, CHG_TERM ,"
+" QTY_REJECTED , START_DATE , DUE_DATE , PORCP_NO , LOT_NO, LOT_SL , CHG_DATE , CHG_USER, CHG_TERM ,"
+" LOC_CODE, QTY_SAMPLE, STATUS, UNIT, QC_CREATE_TYPE , BATCH_NO, EXPIRY_DATE, "
+" LOC_CODE__APRV , LOC_CODE__REJ , UNIT__SAMPLE, LOT_NO__NEW , RETEST_DATE , EMP_CODE__QCAPRV, "
+" SPEC_REF, ITEM_CODE__NEW , MFG_DATE, EMP_CODE,SUPP_CODE,SUPP_CODE__MFG ) "
+" VALUES( ?,?,?,?,?,?,?,? ,? ," //bug fixing done by kunal on 29/10/12
+" ?,?,?,?,?,?,?,?,?,?,?,?,?,?,"
+" ?,?,?,?,?,?,?,?,?,?,?,?,?,? )";
+" ?,?,?,?,?,?,?,?,?,?,?,?,? )";
pstmtInsert = conn.prepareStatement(sql);
pstmtInsert.setString(1, qcNo);
//pstmtInsert.setString(2, "I");
......@@ -3625,32 +3636,32 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
pstmtInsert.setTimestamp(10, tranDate);
pstmtInsert.setTimestamp(11, qcDueDate);
pstmtInsert.setString(12, tranId);
pstmtInsert.setString(13, rcpLine);
pstmtInsert.setString(14, lotNoRcp);
//pstmtInsert.setString(13, rcpLine);
pstmtInsert.setString(13, lotNoRcp);
//pstmtInsert.setString(15, lotSl);
pstmtInsert.setString(15, null);//start added by chandrashekar on 12-12-14
pstmtInsert.setTimestamp(16, tranDate);
pstmtInsert.setString(17, userId);
pstmtInsert.setString(18, termId);
pstmtInsert.setString(19, locCode);
pstmtInsert.setDouble(20, qtySample);
pstmtInsert.setString(21, "U");
pstmtInsert.setString(22, unit);
pstmtInsert.setString(23, "A");
pstmtInsert.setString(24, batchNo);
pstmtInsert.setTimestamp(25, expiryDate);
pstmtInsert.setString(26, aprv);
pstmtInsert.setString(27, rej);
pstmtInsert.setString(28, unit);
pstmtInsert.setString(29, lotNoRcp);
pstmtInsert.setTimestamp(30, retestDt);
pstmtInsert.setString(31, empCodeQcaprv);
pstmtInsert.setString(32, spec);
pstmtInsert.setString(33, itemCode);
pstmtInsert.setTimestamp(34, mfgDate);
pstmtInsert.setString(35, emp);
pstmtInsert.setString(36, suppCode); //added by Kunal on 8/11/12 as per Pravin Sali intruction
pstmtInsert.setString(37, suppCodeMnfr);//added by Kunal on 8/11/12 as per Pravin Sali intruction
pstmtInsert.setString(14, null);//start added by chandrashekar on 12-12-14
pstmtInsert.setTimestamp(15, tranDate);
pstmtInsert.setString(16, userId);
pstmtInsert.setString(17, termId);
pstmtInsert.setString(18, locCode);
pstmtInsert.setDouble(19, qtySample);
pstmtInsert.setString(20, "U");
pstmtInsert.setString(21, unit);
pstmtInsert.setString(22, "A");
pstmtInsert.setString(23, batchNo);
pstmtInsert.setTimestamp(24, expiryDate);
pstmtInsert.setString(25, aprv);
pstmtInsert.setString(26, rej);
pstmtInsert.setString(27, unit);
pstmtInsert.setString(28, lotNoRcp);
pstmtInsert.setTimestamp(29, retestDt);
pstmtInsert.setString(30, empCodeQcaprv);
pstmtInsert.setString(31, spec);
pstmtInsert.setString(32, itemCode);
pstmtInsert.setTimestamp(33, mfgDate);
pstmtInsert.setString(34, emp);
pstmtInsert.setString(35, suppCode); //added by Kunal on 8/11/12 as per Pravin Sali intruction
pstmtInsert.setString(36, suppCodeMnfr);//added by Kunal on 8/11/12 as per Pravin Sali intruction
updCnt = pstmtInsert.executeUpdate();
pstmtInsert.close();
pstmtInsert = null;
......@@ -3716,7 +3727,9 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
rs2.close();
rs2 = null;
}
sql = " Insert into qc_order_lots (QC_ORDER,LINE_NO,ITEM_CODE,LOT_NO,LOT_SL,LOC_CODE,QUANTITY," +
//int rowcount=InsertQcOrderLots(qcNo,tranId,itemCode,unit,lotNoRcp,qcLotLocCode,conn);
/* sql = " Insert into qc_order_lots (QC_ORDER,LINE_NO,ITEM_CODE,LOT_NO,LOT_SL,LOC_CODE,QUANTITY," +
"UNIT,SAMPLE_QTY,LOCTYPE,LOC_CODE__ISSUE,QORDER_NO,NO_ART,NET_WEIGHT) " +
" values (?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
pstmtInsert = conn.prepareStatement(sql);
......@@ -3738,7 +3751,7 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
pstmtInsert.setDouble(14, netWeight);
updCnt1 = pstmtInsert.executeUpdate();
pstmtInsert.close();
pstmtInsert = null;
pstmtInsert = null;*/
System.out.println("qc_order_lots insert count"+updCnt1);
//end added by chandrashekar on 08-01-2015
......@@ -3748,11 +3761,14 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
{
if ( mfgDate == null )
{
mfgDate = today;
//mfgDate = today;
mfgDate=newsysDate;
}
if ( !pordType.equals(jobWorkType) && !pordType.equals(subContractType) )
{
System.out.println("Enter if 11111111111");
//sql = "UPDATE PORCPDET SET LOT_NO = ?, LOT_SL = ? WHERE TRAN_ID = ? AND ITEM_CODE = ? AND LOC_CODE = ? AND (CASE WHEN BATCH_NO IS NULL THEN ' ' ELSE BATCH_NO END) = ? AND (CASE WHEN SPEC_REF IS NULL THEN ' ' ELSE SPEC_REF END) = ? AND (CASE WHEN MFG_DATE IS NULL THEN ? ELSE MFG_DATE END) = ? ";
sql = "UPDATE PORCPDET SET LOT_NO = ? WHERE TRAN_ID = ? AND ITEM_CODE = ? AND LOC_CODE = ? AND (CASE WHEN BATCH_NO IS NULL THEN ' ' ELSE BATCH_NO END) = ? AND (CASE WHEN SPEC_REF IS NULL THEN ' ' ELSE SPEC_REF END) = ? AND (CASE WHEN MFG_DATE IS NULL THEN ? ELSE MFG_DATE END) = ? ";
pstmtUpd = conn.prepareStatement(sql);
......@@ -3764,6 +3780,7 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
pstmtUpd.setString(5, batchNo);
pstmtUpd.setString(6, spec);
pstmtUpd.setTimestamp(7, today);
//pstmtUpd.setTimestamp(7, newsysDate);
pstmtUpd.setTimestamp(8, mfgDate);
updCnt = pstmtUpd.executeUpdate();
//if ( updCnt != 1 )
......@@ -3776,10 +3793,12 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
}
else
{
System.out.println("Enter else 11111111111");
if ( genLotSubctr.equalsIgnoreCase("Y") )
{
System.out.println("Enter else if 222222222");
//sql = "UPDATE PORCPDET SET LOT_NO = ?, LOT_SL = ? WHERE TRAN_ID = ? AND ITEM_CODE = ? AND LOC_CODE = ? AND (CASE WHEN BATCH_NO IS NULL THEN ' ' ELSE BATCH_NO END) = ? AND (CASE WHEN SPEC_REF IS NULL THEN ' ' ELSE SPEC_REF END) = ? AND (CASE WHEN MFG_DATE IS NULL THEN ? ELSE MFG_DATE END) = ?";
sql = "UPDATE PORCPDET SET LOT_NO = ? WHERE TRAN_ID = ? AND ITEM_CODE = ? AND LOC_CODE = ? AND (CASE WHEN BATCH_NO IS NULL THEN ' ' ELSE BATCH_NO END) = ? AND (CASE WHEN SPEC_REF IS NULL THEN ' ' ELSE SPEC_REF END) = ? AND (CASE WHEN MFG_DATE IS NULL THEN ? ELSE MFG_DATE END) = ?";
sql = "UPDATE PORCPDET SET LOT_NO = ? WHERE TRAN_ID = ? AND ITEM_CODE = ? AND LOC_CODE = ? AND (CASE WHEN BATCH_NO IS NULL THEN ' ' ELSE BATCH_NO END) = ? AND (CASE WHEN SPEC_REF IS NULL THEN ' ' ELSE SPEC_REF END) = ? AND (CASE WHEN MFG_DATE IS NULL THEN ? ELSE MFG_DATE END) = ? AND (CASE WHEN EXPIRY_DATE IS NULL THEN ? ELSE EXPIRY_DATE END) = ? ";
pstmtUpd = conn.prepareStatement(sql);
pstmtUpd.setString(1, lotNoRcp);
//pstmtUpd.setString(2, lotSl);//commented by chandrashekar on 12-12-14
......@@ -3789,7 +3808,10 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
pstmtUpd.setString(5, batchNo);
pstmtUpd.setString(6, spec);
pstmtUpd.setTimestamp(7, today);
//pstmtUpd.setTimestamp(7, newsysDate);
pstmtUpd.setTimestamp(8, mfgDate);
pstmtUpd.setTimestamp(9, today);
pstmtUpd.setTimestamp(10, expiryDate);
updCnt = pstmtUpd.executeUpdate();
//if ( updCnt != 1 )
if(updCnt == 0)// Condition Added by Sagar on 20/OCT/14
......@@ -3801,6 +3823,8 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
}
}
}
//added by priyanka
int rowcount=InsertQcOrderLots(qcNo,tranId,itemCode,unit,lotNoRcp,qcLotLocCode,batchNo,spec,today,mfgDate,expiryDate,conn);
}
//ls_qord_no[upperbound(ls_qord_no[]) + 1] = ls_qcno;
}
......@@ -7318,5 +7342,95 @@ public class PoRcpConf extends ActionHandlerEJB implements PoRcpConfLocal, PoRcp
return retVal;
}
int InsertQcOrderLots(String qcNo,String tranId,String itemCode,String unit,String lotNoRcp,String qcLotLocCode,String batchNo,String spec,Timestamp today,Timestamp mfgDate,Timestamp expiryDate,Connection conn) throws ITMException
{
String sql="",lotSl="",locCode="";
PreparedStatement pstmt=null,pstmtInsert=null;
ResultSet rs=null;
double qty=0,noArt=0,netWeight=0;
int lineNo=1;
int updCnt1=0;
try
{
System.out.println("mfgDate========"+mfgDate);
sql="select * from porcpdet where tran_id=? and item_code=? and lot_no=? and (CASE WHEN BATCH_NO IS NULL THEN ' ' ELSE BATCH_NO END) = ? AND (CASE WHEN SPEC_REF IS NULL THEN ' ' ELSE SPEC_REF END) = ? AND (CASE WHEN MFG_DATE IS NULL THEN ? ELSE MFG_DATE END) = ? AND (CASE WHEN EXPIRY_DATE IS NULL THEN ? ELSE EXPIRY_DATE END) = ? ";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,tranId);
pstmt.setString(2,itemCode);
pstmt.setString(3,lotNoRcp);
pstmt.setString(4,batchNo);
pstmt.setString(5,spec);
pstmt.setTimestamp(6,today);
pstmt.setTimestamp(7,mfgDate);
pstmt.setTimestamp(8,today);
pstmt.setTimestamp(9,expiryDate);
rs=pstmt.executeQuery();
while(rs.next())
{
System.out.println("Enter in while==============");
lotSl=rs.getString("LOT_SL");
qty=rs.getDouble("QUANTITY");
noArt=rs.getDouble("NO_ART");
netWeight=rs.getDouble("NET_WEIGHT");
locCode=rs.getString("LOC_CODE");
sql = " Insert into qc_order_lots (QC_ORDER,LINE_NO,ITEM_CODE,LOT_NO,LOT_SL,LOC_CODE,QUANTITY," +
"UNIT,LOCTYPE,LOC_CODE__ISSUE,QORDER_NO,NO_ART,NET_WEIGHT) " +
" values (?,?,?,?,?,?,?,?,?,?,?,?,?)";
pstmtInsert = conn.prepareStatement(sql);
pstmtInsert.setString(1, qcNo);
pstmtInsert.setInt(2, lineNo);
pstmtInsert.setString(3, itemCode);
pstmtInsert.setString(4, lotNoRcp);
pstmtInsert.setString(5, lotSl);
//pstmtInsert.setString(6, locCode);
pstmtInsert.setString(6, qcLotLocCode);
qty = getUnroundDecimal(qty,3);
pstmtInsert.setDouble(7, qty);
pstmtInsert.setString(8, unit);
//pstmtInsert.setDouble(9, qtySample);
pstmtInsert.setString(9, "A");
pstmtInsert.setString(10, locCode);
pstmtInsert.setString(11, qcNo);
pstmtInsert.setDouble(12, noArt);
pstmtInsert.setDouble(13, netWeight);
updCnt1 = pstmtInsert.executeUpdate();
pstmtInsert.close();
pstmtInsert = null;
lineNo++;
}
rs.close();
rs=null;
pstmt.close();
pstmt=null;
}catch(Exception e)
{
e.printStackTrace();
}
finally
{
try {
if(pstmt!=null)
{
pstmt.close();
pstmt=null;
}
if(pstmtInsert!=null)
{
pstmtInsert.close();
pstmtInsert=null;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return updCnt1;
}
}
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