Commit 772c91e3 authored by manohar's avatar manohar

stock button itemchanged disabled and all values set from action handler


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@93956 ce508802-f39f-4f6c-b175-0d175dae99d5
parent b35ad64f
......@@ -339,22 +339,30 @@ public class DistIssueAct extends ActionHandlerEJB implements DistIssueActLocal,
private String stockTransform(Document dom,Document dom1, String objContext, String xtraParams, Document selDataDom)throws ITMException
{
String qtyStr = "0";
String itemCode = "",siteCode = "",packCode = "",distOrder = "",tranType = "",noArt = "";
String checkIntegralQty = "",lineNoOrd ="",sql = "",pickQtyStr = "";
String locCode = "",lotNo = "",lotSl = "",errCode = "", errString = "";
String itemCode = "",siteCode = "",packCode = "",distOrder = "",tranType = "",noArt = "", type = "", unitAlt = "";
String checkIntegralQty = "",lineNoOrd ="",sql = "",pickQtyStr = "", taxClass = "", taxChap = "", taxEnv = "";
String locCode = "",lotNo = "",lotSl = "",errCode = "", errString = "", priceList = "", priceListClg = "", sundryCode = "";
NodeList detailList = null;
Node currDetail = null;
int detailListLength = 0;
int detailListLength = 0,noArt1 = 0, noArt2 = 0;
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
ResultSet rs = null, rs1 = null;
ConnDriver connDriver = new ConnDriver();
double ordQty = 0,pickQty = 0,integralQty = 0, stkQty = 0, remainingQty = 0;
double ordQty = 0,pickQty = 0,integralQty = 0, stkQty = 0, remainingQty = 0, rate1 = 0, rateClg = 0, convQtyAlt = 0;
StringBuffer valueXmlString = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root>\r\n");
//GenericUtility genericUtility = GenericUtility.getInstance(); //ADDED BY ALKA ON 24/07/07
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB(); //ADDED BY ALKA ON 24/07/07
double shipperSize=0,shipQty=0,noArt11=0,remainder=0, amount = 0, disAmount = 0, disCountPer = 0;
double integralqty=0, grossWt = 0, tareWt = 0;
double noArt12=0,acShipperQty=0,acIntegralQty=0, potencyPerc = 0, grossPer = 0,tarePer = 0, qtyPerArt= 0, netWt = 0 ;
String tranDate = "", unit = "", siteCodeMfg = "", batchNo = "", grade = "", dimension = "",suppCodeMfg = "",packInstr = "", locationDescr = "", itemDescr= "" ;
PreparedStatement pstmt = null;
java.sql.Timestamp expDate = null, mfgDate = null, retestDate = null;
try
{
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
conn = connDriver.getConnectDB("DriverITM");
stmt = conn.createStatement();
if (qtyStr.equals("0"))
......@@ -367,6 +375,7 @@ public class DistIssueAct extends ActionHandlerEJB implements DistIssueActLocal,
//System.out.println("qtyStr ::"+qtyStr);
}
//lineNoOrd = GenericUtility.getInstance().getColumnValue("line_no_ord",dom);
tranDate = genericUtility.getColumnValue("tran_date",dom1);
lineNoOrd = genericUtility.getColumnValue("line_no_dist_order",dom);
itemCode = genericUtility.getColumnValue("item_code",dom);
siteCode = genericUtility.getColumnValue("site_code",dom1);
......@@ -437,24 +446,7 @@ public class DistIssueAct extends ActionHandlerEJB implements DistIssueActLocal,
locCode = genericUtility.getColumnValueFromNode("loc_code",currDetail);
lotNo = genericUtility.getColumnValueFromNode("lot_no",currDetail);
lotSl = genericUtility.getColumnValueFromNode("lot_sl",currDetail);
if (packCode == null || packCode.trim().length() == 0)
{
sql = "SELECT PACK_CODE FROM STOCK WHERE ITEM_CODE = '"+itemCode+"' AND SITE_CODE = '"+siteCode+
"' AND LOC_CODE = '"+locCode+"' AND LOT_NO = '"+lotNo+"' AND LOT_SL = '"+lotSl+"'";
rs = stmt.executeQuery(sql);
if (rs.next())
{
packCode = rs.getString("PACK_CODE");
}
}
pickQty = Double.parseDouble(pickQtyStr);
/* if (pickQty > ordQty)
{
pickQty = ordQty;
}
System.out.println("pickQty ::"+pickQty+"ordQty ::"+ordQty);
*/
if (pickQty > remainingQty)
{
pickQty = remainingQty;
......@@ -464,8 +456,54 @@ public class DistIssueAct extends ActionHandlerEJB implements DistIssueActLocal,
{
continue;
}
sql = "SELECT A.EXP_DATE, A.UNIT, a.GROSS_WT_PER_ART, A.TARE_WT_PER_ART, A.QTY_PER_ART, "
+" A.SITE_CODE__MFG, A.MFG_DATE, A.POTENCY_PERC, A.PACK_CODE, A.BATCH_NO, A.GRADE , "
+" A.GROSS_WEIGHT, A.TARE_WEIGHT, A.NET_WEIGHT, A.DIMENSION, A.RETEST_DATE , "
+" A.SUPP_CODE__MFG, A.PACK_INSTR,A.RATE,C.DESCR LOCATION_DESCR, D.DESCR ITEM_DESCR "
+" FROM STOCK A, INVSTAT B, LOCATION C , ITEM D"
+" WHERE A.INV_STAT = B.INV_STAT "
+" AND A.LOC_CODE = C.LOC_CODE "
+" AND D.ITEM_CODE = A.ITEM_CODE "
+" AND A.ITEM_CODE = ? "
+" AND A.SITE_CODE = ? "
+" AND A.LOC_CODE = ? "
+" AND A.LOT_NO = ? "
+" AND A.LOT_SL = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,itemCode);
pstmt.setString(2,siteCode);
pstmt.setString(3,locCode);
pstmt.setString(4,lotNo);
pstmt.setString(5,lotSl);
rs = pstmt.executeQuery();
if ( rs.next() )
{
expDate = rs.getTimestamp("EXP_DATE");
unit = rs.getString("UNIT");
siteCodeMfg = rs.getString("SITE_CODE__MFG");
mfgDate = rs.getTimestamp("MFG_DATE");
potencyPerc = rs.getDouble("POTENCY_PERC");
packCode = rs.getString("PACK_CODE");
batchNo = rs.getString("BATCH_NO");
grade = rs.getString("GRADE");
dimension = rs.getString("DIMENSION");
retestDate = rs.getTimestamp("RETEST_DATE");
suppCodeMfg = rs.getString("SUPP_CODE__MFG");
packInstr = rs.getString("PACK_INSTR");
locationDescr = rs.getString("LOCATION_DESCR");
itemDescr = rs.getString("ITEM_DESCR");
grossPer = rs.getDouble("GROSS_WT_PER_ART");
tarePer = rs.getDouble("TARE_WT_PER_ART");
qtyPerArt = rs.getDouble("QTY_PER_ART");
grossWt = pickQty * grossPer;
tareWt = pickQty * tarePer;
netWt = grossWt - tareWt;
}
pstmt.close();
pstmt = null;
rs.close();
rs = null;
System.out.println("checkIntegralQty ::"+checkIntegralQty);
//if (checkIntegralQty.equalsIgnoreCase("Y"))
if (!checkIntegralQty.equalsIgnoreCase("N"))//added by jiten - 04/10/06
{
integralQty = getIntegralQty(siteCode,itemCode,lotNo,packCode,checkIntegralQty);
......@@ -481,6 +519,169 @@ public class DistIssueAct extends ActionHandlerEJB implements DistIssueActLocal,
{
continue;
}
sql = "SELECT PRICE_LIST, PRICE_LIST__CLG, SUNDRY_CODE FROM DISTORDER "
+" WHERE DIST_ORDER = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,distOrder);
rs = pstmt.executeQuery();
if ( rs.next() )
{
priceList = rs.getString("PRICE_LIST");
priceListClg = rs.getString("PRICE_LIST__CLG");
sundryCode = rs.getString("SUNDRY_CODE");
}
pstmt.close();
pstmt = null;
rs.close();
rs = null;
sql ="select (case when shipper_size is null then 0 else shipper_size end) shipper_size"
+" from item_lot_packsize where item_code = ? "
+" and ? >= lot_no__from "
+" and ? <= lot_no__to ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,itemCode);
pstmt.setString(2,lotNo);
pstmt.setString(3,lotNo);
rs1 = pstmt.executeQuery();
if (rs1.next())
{
shipperSize = rs1.getDouble(1);
}
pstmt.close();
pstmt = null;
rs1.close();
rs1 = null;
if( shipperSize > 0)
{
shipQty = shipperSize;
noArt11 = (pickQty - (pickQty % shipQty))/shipQty;
remainder = pickQty % shipQty;
sql ="select ( case when integral_qty is null then 0 else integral_qty end) integral_qty"
+" from customeritem where cust_code = ? and item_code = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,sundryCode);
pstmt.setString(2,itemCode);
rs1 = pstmt.executeQuery();
if (rs1.next())
{
integralqty = rs1.getDouble(1);
}
pstmt.close();
pstmt = null;
rs1.close();
rs1 = null;
//System.out.println("integralqty .............:"+integralqty);
if(integralqty ==0)
{
sql ="select ( case when integral_qty is null then 0 else integral_qty end) integral_qty"
+" from siteitem where site_code = ? and item_code = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,siteCode);
pstmt.setString(2,itemCode);
rs1 = pstmt.executeQuery();
if (rs1.next())
{
integralqty = rs1.getDouble(1);
}
pstmt.close();
pstmt = null;
rs1.close();
rs1 = null;
if(integralqty ==0)
{
sql ="select ( case when integral_qty is null then 0 else integral_qty end) integral_qty"
+" from item where item_code = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,itemCode);
rs1 = pstmt.executeQuery();
if (rs1.next())
{
integralqty = rs1.getDouble(1);
}
pstmt.close();
pstmt = null;
rs1.close();
rs1 = null;
}
}
if(integralqty > 0)
{
noArt12 = (remainder -(remainder % integralqty))/integralqty;
}
if(noArt12 > 0)
{
noArt12 = 1;
}
noArt1 = (int)(noArt11 + noArt12);
noArt = "" + noArt1;
acShipperQty = shipQty;
acIntegralQty = integralqty;
}
if(shipperSize ==0)
{
noArt1 = getNoArt(siteCode, sundryCode, itemCode, packCode, pickQty, 'B', acShipperQty, acIntegralQty);
noArt = "" + noArt1;
}
sql = "SELECT TAX_CLASS, TAX_CHAP, TAX_ENV, DISCOUNT,UNIT__ALT, CONV__QTY__ALT, RATE, RATE__CLG FROM DISTORDER_DET "
+" WHERE DIST_ORDER = ? "
+" AND LINE_NO = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,distOrder);
pstmt.setInt(2,Integer.parseInt(lineNoOrd));
rs = pstmt.executeQuery();
if ( rs.next() )
{
taxClass = rs.getString("TAX_CLASS");
taxChap = rs.getString("TAX_CHAP");
taxEnv = rs.getString("TAX_ENV");
unitAlt = rs.getString("UNIT__ALT");
convQtyAlt = rs.getDouble("CONV__QTY__ALT");
rate1 = rs.getDouble("RATE");
rateClg = rs.getDouble("RATE__CLG");
}
pstmt.close();
pstmt = null;
rs.close();
rs = null;
if (rate1 == 0)
{
type = Character.toString( priceListType(priceList) );
if("I".equalsIgnoreCase(type))
{
rate1 = pickRate(priceList, tranDate, itemCode, siteCode + "\t"+locCode+"\t"+lotNo+"\t"+lotSl,'I'); // D
}
else
{
rate1 = pickRate(priceList, tranDate, itemCode, lotNo,'D');
}
}
if (rateClg == 0)
{
type = Character.toString( priceListType(priceListClg) );
if("I".equalsIgnoreCase(type))
{
rateClg = pickRate(priceListClg, tranDate, itemCode, siteCode + "\t"+locCode+"\t"+lotNo+"\t"+lotSl,'I'); // D
}
else
{
rateClg = pickRate(priceListClg, tranDate, itemCode, lotNo,'D');
}
}
amount = rate1 * pickQty;
disAmount = (amount * disCountPer / 100);
valueXmlString.append("<Detail>");
//valueXmlString.append("<line_no_ord isSrvCallOnChg='1'>").append(lineNoOrd).append("</line_no_ord>");
// 12/10/09 manoharan to take care of empty/null
......@@ -493,12 +694,46 @@ public class DistIssueAct extends ActionHandlerEJB implements DistIssueActLocal,
lotSl = " ";
}
// end 12/10/09 manoharan to take care of empty/null
valueXmlString.append("<lot_no isSrvCallOnChg='1'>").append("<![CDATA[").append(lotNo).append("]]>").append("</lot_no>");
valueXmlString.append("<line_no_dist_order isSrvCallOnChg='1'>").append("<![CDATA[").append(lineNoOrd).append("]]>").append("</line_no_dist_order>");
valueXmlString.append("<quantity isSrvCallOnChg='1'>").append("<![CDATA[").append(pickQty).append("]]>").append("</quantity>");
valueXmlString.append("<loc_code isSrvCallOnChg='1'>").append("<![CDATA[").append(locCode).append("]]>").append("</loc_code>");
valueXmlString.append("<lot_no isSrvCallOnChg='1'>").append("<![CDATA[").append(lotNo).append("]]>").append("</lot_no>");
valueXmlString.append("<lot_sl isSrvCallOnChg='1'>").append("<![CDATA[").append(lotSl).append("]]>").append("</lot_sl>");
valueXmlString.append("<line_no_dist_order isSrvCallOnChg='0'>").append("<![CDATA[").append(lineNoOrd).append("]]>").append("</line_no_dist_order>");
valueXmlString.append("<quantity isSrvCallOnChg='0'>").append("<![CDATA[").append(pickQty).append("]]>").append("</quantity>");
valueXmlString.append("<loc_code isSrvCallOnChg='0'>").append("<![CDATA[").append(locCode).append("]]>").append("</loc_code>");
valueXmlString.append("<lot_no isSrvCallOnChg='0'>").append("<![CDATA[").append(lotNo).append("]]>").append("</lot_no>");
valueXmlString.append("<lot_sl isSrvCallOnChg='0'>").append("<![CDATA[").append(lotSl).append("]]>").append("</lot_sl>");
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
valueXmlString.append("<item_code isSrvCallOnChg='0'>").append("<![CDATA[").append(itemCode == null ? "" : itemCode).append("]]>").append("</item_code>\r\n");
valueXmlString.append("<item_descr isSrvCallOnChg='0'>").append("<![CDATA[").append(itemDescr==null ? "" : itemDescr).append("]]>").append("</item_descr>\r\n");
valueXmlString.append("<location_descr isSrvCallOnChg='0'>").append("<![CDATA[").append(locationDescr).append("]]>").append("</location_descr>\r\n");
valueXmlString.append("<unit isSrvCallOnChg='0'>").append("<![CDATA[").append(unit).append("]]>").append("</unit>\r\n");
valueXmlString.append("<unit__alt isSrvCallOnChg='0'>").append("<![CDATA[").append(unitAlt).append("]]>").append("</unit__alt>\r\n");
valueXmlString.append("<conv__qty__alt isSrvCallOnChg='0'>").append("<![CDATA[").append(convQtyAlt).append("]]>").append("</conv__qty__alt>\r\n");
valueXmlString.append("<rate isSrvCallOnChg='0'>").append("<![CDATA[").append(rate1).append("]]>").append("</rate>\r\n");
valueXmlString.append("<rate__clg isSrvCallOnChg='0'>").append("<![CDATA[").append(rateClg).append("]]>").append("</rate__clg>\r\n");
valueXmlString.append("<amount isSrvCallOnChg='0'>").append("<![CDATA[").append(amount).append("]]>").append("</amount>\r\n");
valueXmlString.append("<pack_code isSrvCallOnChg='0'>").append("<![CDATA[").append(packCode).append("]]>").append("</pack_code>\r\n");
valueXmlString.append("<disc_amt isSrvCallOnChg='0'>").append("<![CDATA[").append(disAmount).append("]]>").append("</disc_amt>\r\n");
valueXmlString.append("<tax_class isSrvCallOnChg='0'>").append("<![CDATA[").append( ( taxClass == null ? "": taxClass ) ).append("]]>").append("</tax_class>\r\n");
valueXmlString.append("<tax_chap isSrvCallOnChg='0'>").append("<![CDATA[").append( ( taxChap == null ? "": taxChap ) ).append("]]>").append("</tax_chap>\r\n");
valueXmlString.append("<tax_env isSrvCallOnChg='0'>").append("<![CDATA[").append( ( taxEnv == null ? "": taxEnv ) ).append("]]>").append("</tax_env>\r\n");
grossWt = Double.parseDouble(getFormatedValue(grossWt,3));
valueXmlString.append("<gross_weight isSrvCallOnChg='0'>").append("<![CDATA[").append(grossWt).append("]]>").append("</gross_weight>\r\n");
netWt = Double.parseDouble(getFormatedValue(netWt,3));
valueXmlString.append("<net_weight isSrvCallOnChg='0'>").append("<![CDATA[").append(netWt).append("]]>").append("</net_weight>\r\n");
tareWt = Double.parseDouble(getFormatedValue(netWt,3));
valueXmlString.append("<tare_weight isSrvCallOnChg='0'>").append("<![CDATA[").append(tareWt).append("]]>").append("</tare_weight>\r\n");
valueXmlString.append("<pack_instr isSrvCallOnChg='0'>").append("<![CDATA[").append((packInstr == null) ? "":packInstr).append("]]>").append("</pack_instr>\r\n");
valueXmlString.append("<retest_date isSrvCallOnChg='0'>").append("<![CDATA[").append((retestDate == null) ? "":retestDate ).append("]]>").append("</retest_date>\r\n");
valueXmlString.append("<dimension isSrvCallOnChg='0'>").append("<![CDATA[").append((dimension == null) ? "":dimension).append("]]>").append("</dimension>\r\n");
valueXmlString.append("<supp_code__mfg isSrvCallOnChg='0'>").append("<![CDATA[").append((suppCodeMfg == null) ? "":suppCodeMfg).append("]]>").append("</supp_code__mfg>\r\n");
valueXmlString.append("<site_code__mfg isSrvCallOnChg='0'>").append("<![CDATA[").append((siteCodeMfg == null) ? "":siteCodeMfg).append("]]>").append("</site_code__mfg>\r\n");
valueXmlString.append("<mfg_date isSrvCallOnChg='0'>").append("<![CDATA[").append((mfgDate == null) ? "":sdf.format(mfgDate)).append("]]>").append("</mfg_date>\r\n");
valueXmlString.append("<exp_date isSrvCallOnChg='0'>").append("<![CDATA[").append((expDate == null) ? "":sdf.format(expDate)).append("]]>").append("</exp_date>\r\n");
valueXmlString.append("<potency_perc isSrvCallOnChg='0'>").append("<![CDATA[").append(potencyPerc).append("]]>").append("</potency_perc>\r\n");
valueXmlString.append("<no_art isSrvCallOnChg='0'>").append("<![CDATA[").append(noArt).append("]]>").append("</no_art>\r\n");
valueXmlString.append("<batch_no isSrvCallOnChg='0'>").append("<![CDATA[").append((batchNo == null) ? "":batchNo).append("]]>").append("</batch_no>\r\n");
valueXmlString.append("<grade isSrvCallOnChg='0'>").append("<![CDATA[").append( ( (grade == null) ? "": grade ) ).append("]]>").append("</grade>\r\n");
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ordQty = ordQty - pickQty;
remainingQty = remainingQty - pickQty; //ADDED BY ALKA ON 03/08/07 FOR THE VARIABLE CHANGED FOR REMAINING QTY -- FOR DETAIL TO BE UPDATED EVEN IF NO QTY ENTERED.
valueXmlString.append("</Detail>");
......
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