Commit f17512d9 authored by apal's avatar apal

Client name:Loyd

 Request id :D17ELHP001
Issue: Post order Bug Quantity Allocation not as per available quantity bug fix 

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@174849 ce508802-f39f-4f6c-b175-0d175dae99d5
parent c884eefb
......@@ -457,8 +457,16 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
else
{
conn.rollback();
// Changes done by apal for stock allocation29/11/2017 start
// System.out.println("Invalid customer!,Customer clubbing option is selected a valid to customer must be entered....LINE NO ==348");
errString = itmDBAccessEJB.getErrorString("", "VTPOSTORD1", "","", conn);
if (retString.indexOf("Errors") != -1)
{
return retString;
}else
{
errString = itmDBAccessEJB.getErrorString("", "VTPOSTORD1", "","", conn);
}
//Changes done by apal for stock allocation29/11/2017 ended
// System.out.println("retString if toCustCode is not present>>> 350: "+retString);
}
}
......@@ -529,8 +537,18 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}else
{
conn.rollback();
errString = itmDBAccessEJB.getErrorString("", "VTPOSTORD1", "","", conn);
// Changes done by apal for stock allocation29/11/2017 start
if (retString.indexOf("Errors") != -1)
{
return retString;
}else////////
{
errString = itmDBAccessEJB.getErrorString("", "VTPOSTORD1", "","", conn);
}
// Changes done by apal for stock allocation29/11/2017 ended
// errString = itmDBAccessEJB.getErrorString("", "VTPOSTORD1", "","", conn);
}
}
}
if(isPostDone)
......@@ -1641,6 +1659,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
private String postOrder(String fromSaleOrder, String toSaleOrder,String custCodeFrom, String custCodeTo, Timestamp fromDate,Timestamp toDate, String lotSldom, String siteCodeShip, String xtraParams,
Connection conn) throws ITMException, IOException
{
Connection connCP = null;
String errStrng="",sqlstatement="",sql1="",sql2="",sql3="",sql="",logMsg="",postLog="",itemCodeParent="",schemeCode="";
String merrcode="",varValue="";
ResultSet rs = null, rs1 = null, rs2 = null, rs3 = null,rs5=null;
......@@ -1694,7 +1713,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
userId=genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode");
//System.out.println("userId :"+userId);
termId=genericUtility.getValueFromXTRA_PARAMS(xtraParams,"termId");
//System.out.println("termId :"+termId);
System.out.println("termId :"+termId);
chgUser=userId;
chgTerm=termId;
......@@ -1791,6 +1810,8 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
sorderBean.setStateCodeDlv(stateCodeDlv);
sorderBean.setCountCodeDlv(countCodeDlv);
sorderList.add(sorderBean);
System.out.println(" after sorderbean sorderList"+sorderList+"]");
}
rs.close();
......@@ -1805,21 +1826,28 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
/*Iterator sordIterator = sorderList.iterator();
while(sordIterator.hasNext())
{*/
//System.out.println("sorderList :"+sorderList.size());
sordItemList= new ArrayList<SordItemBean>();
System.out.println("sorderList :"+sorderList.size());
//sordItemList= new ArrayList<SordItemBean>();arun p
int sorderlistcnt=0;
for(SorderBean sorderBean : sorderList)
{
System.out.println(" inside sorderbean sorderList >>>>>>>>>:"+sorderList.size());
sorderlistcnt++;
//lockqty=0.0;
//arun p
sordItemList= new ArrayList<SordItemBean>();
/* SorderBean sorderBean = new SorderBean();
sorderBean = (SorderBean) sordIterator.next();*/
//System.out.println("sale order :"+sorderBean.getSaleOrder());
System.out.println("sale order :"+sorderBean.getSaleOrder());
saleOrder = sorderBean.getSaleOrder();
status = sorderBean.getStatus();
locGroup=sorderBean.getLocGroup();
//System.out.println("status :"+status);
System.out.println("status :"+status);
if(!salesOrderListAll.contains(saleOrder))
{
salesOrderListAll.add(saleOrder);
......@@ -1874,16 +1902,17 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
while(rs.next())
{
sorditmlistcnt++;
//lockqty=0.0;
SordItemBean sordItemBean = new SordItemBean();
//SorderBean sorderBean2 = new SorderBean();
totLines++;
lineNo = checkNull(rs.getString("line_no"));
// System.out.println("lineNo :"+lineNo);
System.out.println("lineNo :"+lineNo);
expLev = checkNull(rs.getString("exp_lev"));
itemCode = checkNull(rs.getString("item_code"));
//System.out.println("itemCode :"+itemCode);
System.out.println("itemCode :"+itemCode);
itemFlag = checkNull(rs.getString("item_flag"));
minShelfLife = rs.getDouble("min_shelf_life");
maxShelfLife = rs.getDouble("max_shelf_life");
......@@ -1930,6 +1959,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}
//End Added by chandrashekar on 26-sep-2016
sordItemBean.setSaleOrder(saleOrder);
System.out.println(" before sorditemlist sale order["+saleOrder+"]");
sordItemBean.setLineNo(lineNo);
sordItemBean.setConvQtyStduom(convQtyStduom);
sordItemBean.setExpLev(expLev);
......@@ -1965,13 +1995,13 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
if(!(unit.equalsIgnoreCase(unitStd)))
{
//System.out.println("unit and unitStd are not equals!!");
System.out.println("unit and unitStd are not equals!!");
sordItmQty=dist.convQtyFactor(unit,unitStd,itemCode, convQtyStduom, conn);
//System.out.println("sordItmQty@@@@ :"+sordItmQty);
System.out.println("sordItmQty@@@@ :"+sordItmQty);
//if(sordItmQty == -999999999)
if(sordItmQty == 0)
{
//System.out.println("Unable to convert quantity");
System.out.println("Unable to convert quantity");
logMsg="Unable to convert quantity";
strToWriteHead=strToWriteHead+saleOrder+"\t"+itemCode+"\t"+logMsg+"\t\r\n";
strToWrite=strToWrite + strToWriteHead;
......@@ -1995,7 +2025,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}
// System.out.println("sordItmQty>>"+sordItmQty);
System.out.println("sordItmQty>>"+sordItmQty);
sql = " select sum(quantity - case when qty_desp is null then 0 else qty_desp end) " +
"as siteItmQty from sorditem where sale_order = ? and " +
" item_code = ? and (line_no < ? or (line_no = ? and exp_lev < ?))";
......@@ -2045,71 +2075,73 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
rs = null;
pstmt.close();
pstmt = null;
}//End of iterator sordIterator
// }//End of iterator sordIterator commented by arun
System.out.println("sorderlistcnt"+sorderlistcnt);
int stockTestCnt=0,forTestCnt=0;
//System.out.println("sordItemList size :"+sordItemList.size());
System.out.println("sordItemList size :"+sordItemList.size());
for(SordItemBean sordItemBean :sordItemList )
{
//System.out.println("sale order :"+sordItemBean.getSorderBean().getSaleOrder());
//sordItemBean.setSaleOrder(saleOrder);
System.out.println("sale order :"+sordItemBean.getSorderBean().getSaleOrder());
System.out.println("sale order :"+sordItemBean.getSaleOrder());
forTestCnt++;
stockList=new ArrayList<StockBean>();
itemCode = sordItemBean.getItemCode();
//System.out.println("itemCode :"+itemCode);
System.out.println("itemCode :"+itemCode);
siteCode = sordItemBean.getSiteCode();
//System.out.println("siteCode :"+siteCode);
System.out.println("siteCode :"+siteCode);
locGroup= sordItemBean.getSorderBean().getLocGroup();
stockOpt=sordItemBean.getStockOpt();
saleOrder = sordItemBean.getSorderBean().getSaleOrder();
//System.out.println("saleOrder :"+saleOrder);
System.out.println("saleOrder :"+saleOrder);
lineNo=sordItemBean.getLineNo();
//System.out.println("lineNo "+lineNo);
System.out.println("lineNo "+lineNo);
expLev = sordItemBean.getExpLev();
//System.out.println("expLev "+expLev);
System.out.println("expLev "+expLev);
stockOpt = sordItemBean.getStockOpt();
//System.out.println("stockOpt "+stockOpt);
System.out.println("stockOpt "+stockOpt);
sordItmQty = sordItemBean.getSordItmQty();
//System.out.println("sordItmQty "+sordItmQty);
System.out.println("sordItmQty "+sordItmQty);
itemCodeOrd = sordItemBean.getItemCodeOrd();
//System.out.println("itemCodeOrd "+itemCodeOrd);
System.out.println("itemCodeOrd "+itemCodeOrd);
itemFlag = sordItemBean.getItemFlag();
//System.out.println("itemFlag "+itemFlag);
System.out.println("itemFlag "+itemFlag);
rate = sordItemBean.getRate();
//System.out.println("rate "+rate);
System.out.println("rate "+rate);
rateClg = sordItemBean.getRateClg();
// System.out.println("rateClg "+rateClg);
System.out.println("rateClg "+rateClg);
siteItmQty = sordItemBean.getSiteItmQty();
// System.out.println("siteItmQty "+siteItmQty);
System.out.println("siteItmQty "+siteItmQty);
priceListDisc = sordItemBean.getSorderBean().getPriceListDisc();
//System.out.println("priceListDisc "+priceListDisc);
System.out.println("priceListDisc "+priceListDisc);
custCode = sordItemBean.getSorderBean().getCustCode();
//System.out.println("custCode "+custCode);
System.out.println("custCode "+custCode);
orderDate = sordItemBean.getSorderBean().getOrderdate();
//System.out.println("orderDate "+orderDate);
System.out.println("orderDate "+orderDate);
priceListDisc = sordItemBean.getSorderBean().getPriceListDisc();
//System.out.println("priceListDisc "+priceListDisc);
System.out.println("priceListDisc "+priceListDisc);
plDate = sordItemBean.getSorderBean().getPlDate();
//System.out.println("plDate "+plDate);
System.out.println("plDate "+plDate);
minShelfLife = sordItemBean.getMinShelfLife();
//System.out.println("minShelfLife "+minShelfLife);
System.out.println("minShelfLife "+minShelfLife);
maxShelfLife = sordItemBean.getMaxShelfLife();
//System.out.println("maxShelfLife "+maxShelfLife);
System.out.println("maxShelfLife "+maxShelfLife);
quantityStduom = sordItemBean.getQuantityStduom();
//System.out.println("quantityStduom "+quantityStduom);
System.out.println("quantityStduom "+quantityStduom);
orderType = sordItemBean.getSorderBean().getOrderType();
//System.out.println("orderType "+orderType);
System.out.println("orderType "+orderType);
partQty = sordItemBean.getSorderBean().getPartQty();
//System.out.println("partQty "+partQty);
System.out.println("partQty "+partQty);
nature = sordItemBean.getNature();
//System.out.println("nature::: "+nature);
itemCodeParent=sordItemBean.getItemCodeParent();
//System.out.println("itemCodeParent:::["+itemCodeParent+"]");
unit = sordItemBean.getUnit();
unitStd = sordItemBean.getUnitStd();
/*System.out.println("@@@unit["+unit+"]");
System.out.println("@@@unitStd["+unitStd+"]");*/
System.out.println("@@@unit["+unit+"]");
System.out.println("@@@unitStd["+unitStd+"]");
sql = " select sum(a.quantity - case when a.alloc_qty is null then 0 else a.alloc_qty end - case when a.hold_qty is null then 0 else a.hold_qty end ) as quantity ";
sql = sql + "from stock a, invstat b, location c ";
......@@ -2142,9 +2174,9 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
pstmt.close();
pstmt = null;
//System.out.println("stockQtyTot >>"+stockQtyTot);
System.out.println("stockQtyTot >>"+stockQtyTot);
double allocQty1=0.0;
//double allocQty1=0.0;
sql = " select a.lot_no, a.lot_sl, a.quantity , a.alloc_qty,a.hold_qty, ";
sql = sql + " a.exp_date, a.grade, a.mfg_date, a.site_code__mfg, a.loc_code, a.hold_qty ";
......@@ -2172,33 +2204,35 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
pstmt5.setString(2,siteCode);
rs5 = pstmt5.executeQuery();
int stockcnt=0;
//added lockqty by arun
stockTot=0.0;
lockqty=0.0;
while(rs5.next())
{
stockcnt++;
isRejected=false;
allocQty=0;
qtyStk=0;
holdQty=0;
//System.out.println("Inside d while loop!!!!!!!!!!!.....");
System.out.println("Inside d while loop!!!!!!!!!!!.....");
stockTestCnt++;
lotNo = rs5.getString("lot_no");
lotSl = rs5.getString("lot_sl");
qtyStk = rs5.getDouble("quantity");
allocQty = rs5.getDouble("alloc_qty");
//System.out.println("allocQty >>>>>>>>>>>>>>"+allocQty);
System.out.println("allocQty >>>>>>>>>>>>>>"+allocQty);
holdQty = rs5.getDouble("hold_qty");
expDate = rs5.getTimestamp("exp_date");
//System.out.println("expDate:"+expDate);
System.out.println("expDate:"+expDate);
grade = rs5.getString("grade");
mfgDate = rs5.getTimestamp("mfg_date");
siteCodeMfg = rs5.getString("site_code__mfg");
locCode = rs5.getString("loc_code");
/*System.out.println("lotNo["+lotNo+"]"+"lotSl["+lotSl+"]");
System.out.println("lotNo["+lotNo+"]"+"lotSl["+lotSl+"]");
System.out.println("qtyStk["+qtyStk+"]"+"allocQty["+allocQty+"]");
System.out.println("holdQty["+holdQty+"]"+"locCode["+locCode+"]");*/
System.out.println("holdQty["+holdQty+"]"+"locCode["+locCode+"]");
//stockQtyTot = stockQtyTot + (qtyStk - allocQty - holdQty);
......@@ -2206,6 +2240,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
StockBean stockBean = new StockBean();
stockBean.setLotNo(lotNo);
stockBean.setLotSl(lotSl);
//stockBean.setQuantity(stockQty);
stockBean.setStockQty(qtyStk);
......@@ -2220,6 +2255,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
stockBean.setStockQtyTot(stockQtyTot);
stockBean.setSordItemBean(sordItemBean);
//stockList.add(stockBean);
System.out.println("After while setSordItemBean ["+stockBean+"]");
/*}
......@@ -2228,14 +2264,14 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
pstmt5.close();
pstmt5 = null;
*/
/*System.out.println("stockTestCnt :"+stockTestCnt);
System.out.println("stockQtyTot :"+stockQtyTot);*/
System.out.println("stockTestCnt :"+stockTestCnt);
System.out.println("stockQtyTot :"+stockQtyTot);
if(stockOpt != 0)
{
//1.Check Stock Quantity Avaibality
//System.out.println("stockQtyTot["+stockQtyTot+"]"+"sordItmQty["+sordItmQty+"]");
System.out.println("stockQtyTot["+stockQtyTot+"]"+"sordItmQty["+sordItmQty+"]");
if(stockQtyTot < sordItmQty)
{
//isRejected=true;
......@@ -2304,7 +2340,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
if(stockQtyTot >= sordItmQty)
{
//System.out.println("Stock found in other sites for Sale order :" + saleOrder +",Item Code : "+ itemCode +",line No:"+ lineNo);
System.out.println("Stock found in other sites for Sale order :" + saleOrder +",Item Code : "+ itemCode +",line No:"+ lineNo);
isRejected=true;
stockBean.setRejected(isRejected);
logMsg= saleOrder + "\t" + itemCode + "\t"+locCode + "\t" +lotNo+"\t"+ lineNo + "\tStock found in other sites";
......@@ -2324,7 +2360,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
if("B".equalsIgnoreCase(itemFlag.trim()))
{
//System.out.println("itemCodeOrd>>>>@@@["+itemCodeOrd+"]");
System.out.println("itemCodeOrd>>>>@@@["+itemCodeOrd+"]");
sql = " select grace_days from scheme_applicability " +
" where scheme_code = ? and app_from <= ? ";
pstmt = conn.prepareStatement(sql);
......@@ -2349,7 +2385,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
allocDate = utilmethod.RelativeDate(allocDate, graceDays);
System.out.println("allocDate:::"+allocDate);
//System.out.println("allocDate >>>>>"+allocDate);
System.out.println("allocDate >>>>>"+allocDate);
sql = " select count(*) as count from scheme_applicability where" +
" scheme_code = ? and app_from <= ? " +
......@@ -2373,7 +2409,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
if(schemeCnt >1)
{
//System.out.println("Scheme details not found for line no :"+lineNo);
System.out.println("Scheme details not found for line no :"+lineNo);
System.out.println("scheme count break:::::");
isRejected=true;
stockBean.setRejected(isRejected);
......@@ -2568,7 +2604,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
netQuantity = sordItmQty;
//System.out.println("netQuantity >>>>>>"+netQuantity);
System.out.println("netQuantity >>>>>>"+netQuantity);
sql = "select (case when track_shelf_life is null then 'N' else track_shelf_life end )" +
" as track_shelf_life from item where item_code = ? ";
......@@ -2856,7 +2892,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
if(rateClg < 0)
{
//System.out.println("rate not available");
System.out.println("rate not available");
skipline = skipline + "'"+lineNo;
isRejected=true;
stockBean.setRejected(isRejected);
......@@ -2873,8 +2909,8 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}//end of if(rateClg <= 0)
//lockqty=0;
//System.out.println("qtyStk["+qtyStk+"]"+"allocQty["+allocQty+"]"+"holdQty["+holdQty+"]");
//System.out.println("siteItmQty["+siteItmQty+"]"+"lockqty["+lockqty+"]"+"holdQty["+holdQty+"]");
System.out.println("qtyStk["+qtyStk+"]"+"allocQty["+allocQty+"]"+"holdQty["+holdQty+"]");
System.out.println("siteItmQty["+siteItmQty+"]"+"lockqty["+lockqty+"]"+"holdQty["+holdQty+"]");
if(((qtyStk - allocQty -holdQty) - siteItmQty ) > 0)
{
lockqty = lockqty + ((qtyStk - allocQty -holdQty) - siteItmQty);
......@@ -2887,19 +2923,22 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
{
siteItmQty = siteItmQty - (qtyStk - allocQty -holdQty);
}
//System.out.println("lockqty["+lockqty+"]"+"netQuantity["+netQuantity+"]");
System.out.println("lockqty["+lockqty+"]"+"netQuantity["+netQuantity+"]");
//if(lockqty >= netQuantity)
/*if(lockqty <= netQuantity)//code in line no 2225
{
//if(lockqty <= netQuantity)//code in line no 2225
//{
System.out.println("lock quantity greater than or eqaual to net quentity!!");
System.out.println("called exit from loop");
break;
}*/
//break;
//}
//System.out.println("rateFailed >>"+rateFailed);
if("F".equalsIgnoreCase(rateFailed))
{
/*if(!("F".equalsIgnoreCase(rateFailed)))
{
*/
if(("B".equalsIgnoreCase(itemFlag) || "N".equalsIgnoreCase(partQty)) && isScheme == false)
{
......@@ -3026,7 +3065,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}
if("0".equalsIgnoreCase(ratio))
{
//System.out.println("Short Quantity for scheme item");
System.out.println("Short Quantity for scheme item");
skipline = skipline + "'"+lineNo;
isRejected=true;
stockBean.setRejected(isRejected);
......@@ -3071,19 +3110,20 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}//end of if(schemeCnt > 0)
/*System.out.println("qtyStk["+qtyStk+"]"+"allocQty["+allocQty+"]"+"holdQty["+holdQty+"]");
System.out.println("netQuantity>>"+netQuantity);*/
System.out.println("PSqtyStk["+qtyStk+"]"+"allocQty["+allocQty+"]"+"holdQty["+holdQty+"]");
System.out.println(" PSnetQuantity>>"+netQuantity);
System.out.println("PSsordItemBean>>>>>>>>"+sordItemBean+"]");
if((qtyStk - allocQty - holdQty) <= netQuantity)
{
inputQty = qtyStk - allocQty - holdQty;
sordItemBean.setSordItmQty(inputQty);//Added by chandrashekar on 03-oct-2016
// sordItemBean.setSordItmQty(inputQty);//Added by chandrashekar on 03-oct-2016 ARUN PAL
}
else
{
inputQty = netQuantity;
sordItemBean.setSordItmQty(inputQty);//Added by chandrashekar on 03-oct-2016
// sordItemBean.setSordItmQty(inputQty);//Added by chandrashekar on 03-oct-2016 ARUN PAL
}
//System.out.println("inputQty>>"+inputQty);
System.out.println("inputQty>><<<<<<<<"+inputQty);
if(inputQty > 0)
{
//if isnull(as_tranid) or len(trim(as_tranid)) = 0
......@@ -3111,8 +3151,8 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
{
unitPack = unit;
}
//System.out.println("unitPack>>>>["+unitPack+"]");
//System.out.println("unit>>>>"+unit+"]");
System.out.println("unitPack>>>><<<<<<<["+unitPack+"]");
System.out.println("unit>>>><<<<<,"+unit+"]");
if(!(unitPack.equalsIgnoreCase(unit)))
{
......@@ -3326,10 +3366,10 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
{
freeQty=0;
}
/*System.out.println("inputQty>>>"+inputQty);
System.out.println("inputQty>>>"+inputQty);
System.out.println("totFreeQty>>>"+totFreeQty);
System.out.println("allocFreeQty>>>"+allocFreeQty);
System.out.println("freeQty>>>"+freeQty);*/
System.out.println("freeQty>>>"+freeQty);
if((inputQty + totFreeQty + allocFreeQty) > freeQty )
{
System.out.println("Chargeable quantity of group of items not eligible for the free quantity");
......@@ -3416,35 +3456,35 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
/*-------------------changes done on 08-02-2015,end--------------------------------------*/
/*System.out.println("-----------------Map the record for validation----------");
System.out.println("-----------------Map the record for validation----------");
System.out.println("saleOrder["+saleOrder+"]"+"itemCode["+itemCode+"]"+"lineNo["+lineNo+"]");
System.out.println("lotNo["+lotNo+"]"+"lotSl["+lotSl+"]"+"locCode["+locCode+"]");
System.out.println("qtyStk["+qtyStk+"]"+"holdQty["+holdQty+"]"+"allocQty["+allocQty+"]");
System.out.println("skipline :"+sordItemBean.getSkipline());
System.out.println("skiplot :"+sordItemBean.getSkiplot());
System.out.println("---------------------------------------------------------");*/
System.out.println("---------------------------------------------------------");
/*----------------------------------------------------------------------------------*/
}//end of if(stockOpt != 0)
stockList.add(stockBean);
/*
System.out.println("lotNO>>"+lotNo+"lotSl >>"+lotSl);
System.out.println("allocQty["+allocQty+"]"+"holdQty["+holdQty+"]"+"qtyStk - allocQty - holdQty["+(qtyStk - allocQty - holdQty)+"");
System.out.println("stockTot["+stockTot+"]"+"qtyStk["+qtyStk+"]"+"sordItmQty["+sordItmQty+"");
*/
stockTot=0.0;
System.out.println("PSallocQty["+allocQty+"]"+"holdQty["+holdQty+"]"+"qtyStk - allocQty - holdQty["+(qtyStk - allocQty - holdQty)+"");
System.out.println("PSstockTot["+stockTot+"]"+"qtyStk["+qtyStk+"]"+"sordItmQty["+sordItmQty+"");
// stockTot=0.0;// commemted by arun pal
stockTot = stockTot + (qtyStk - allocQty - holdQty);
System.out.println("stockTot >>>>"+stockTot);
if(stockTot > sordItmQty)
if(stockTot >= sordItmQty)
{
//System.out.println("total stock quantity greater than sorder quantity!!!");
System.out.println("total stock quantity greater than sorder quantity!!!");
break;
}
}//end of while
//System.out.println("@@@@@@@@@@@@@@@@@@@@@@@test stockList[[["+stockList.toString()+"]]]");
System.out.println("@@@@@@@@@@@@@@@@@@@@@@@test stockList[[["+stockList.toString()+"]]]");
System.out.println("stockcnt"+stockcnt);
rs5.close();
rs5 = null;
......@@ -3453,16 +3493,16 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
//System.out.println("@@@@@@@@@@ forTestCnt["+forTestCnt+"]:::stockList.size()>>>>"+stockList.size());
sordItemBean.setStockList(stockList);
//stockList.clear();
}// end of sordItemList
/*System.out.println("stockTestCnt :"+stockTestCnt);
System.out.println("forTestCnt :"+forTestCnt);*/
}// end of sordItemList commented by arun line no 3457 27-11-17
System.out.println("stockTestCnt :"+stockTestCnt);
System.out.println("forTestCnt :"+forTestCnt);
//}added arun
int vaildateData=0;
double totInputQty=0.0;
//System.out.println("sordItemList lenth@@@"+sordItemList.size());
System.out.println("sordItemList lenth@@@"+sordItemList.size());
sql = "select b.tran_id, b.line_no, (b.quantity - b.dealloc_qty) as pending_dealloc_qty" +
" from sord_alloc a, sord_alloc_det b where a.tran_id = b.tran_id " +
" and a.cust_code = ? and a.site_code = ? and a.sale_order " +
......@@ -3470,19 +3510,23 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
" and b.lot_no = ? and b.lot_sl = ? " +
" and b.quantity - b.dealloc_qty > 0 ";
pstmt1 = conn.prepareStatement(sql);
for(SordItemBean sordItemBean :sordItemList )//required for update sorditem accordingly line no and sale order
for(SordItemBean sordItemBean :sordItemList )//required for update sorditem accordingly line no and sale order// rename sordItemBean to sordItemBean1 by arun pal 27/11/17
{
sordItmQty = sordItemBean.getSordItmQty();
netQuantity=sordItmQty;
//System.out.println("netQuantity>>>"+netQuantity);
System.out.println("netQuantity>>>"+netQuantity);
stockList=sordItemBean.getStockList();
//System.out.println("stockList>>>"+stockList);
//System.out.println("expLev>@@@@@@@@@>"+expLev);
System.out.println("stockList>>>"+stockList);
System.out.println("expLev>@@@@@@@@@>"+expLev);
totInputQty=0;
//System.out.println("stockList lenth@@@"+stockList.size());
System.out.println("stockList lenth@@@"+stockList.size());
for(StockBean stockBean :stockList)
{
//System.out.println("stockList iterator starts...........");
//saleOrder = stockBean.getSordItemBean().getSaleOrder();
System.out.println("stockList iterator starts...........");
stockOpt = stockBean.getSordItemBean().getStockOpt();
//sordItmQty = stockBean.getSordItemBean().getSordItmQty();
siteCode = stockBean.getSordItemBean().getSiteCode();
......@@ -3500,16 +3544,44 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
nature=stockBean.getSordItemBean().getNature();
stockQtyTot = stockBean.getStockQty();
//qtyStk = stockBean.getStockQty();
/*custCode = stockBean.getSordItemBean().getSorderBean().getCustCode();
orderDate = stockBean.getSordItemBean().getSorderBean().getOrderdate();
priceListDisc = stockBean.getSordItemBean().getSorderBean().getPriceListDisc();
plDate = stockBean.getSordItemBean().getSorderBean().getPlDate();
minShelfLife = stockBean.getSordItemBean().getMinShelfLife();
maxShelfLife = stockBean.getSordItemBean().getMaxShelfLife();
quantityStduom = stockBean.getSordItemBean().getQuantityStduom();
orderType = stockBean.getSordItemBean().getSorderBean().getOrderType();
partQty = stockBean.getSordItemBean().getSorderBean().getPartQty();
saleOrder = stockBean.getSordItemBean().getSaleOrder();
//////////////////////////////////////////////////////
System.out.println(" after stockbean saleOrder ["+saleOrder+"]");
stateCodeDlv = stockBean.getSordItemBean().getSorderBean().getStateCodeDlv();
countCodeDlv = stockBean.getSordItemBean().getSorderBean().getCountCodeDlv();*/
custCode = stockBean.getSordItemBean().getSorderBean().getCustCode();
System.out.println("after custCode["+custCode+"]");
orderDate = stockBean.getSordItemBean().getSorderBean().getOrderdate();
System.out.println("after orderDate["+orderDate+"]");
priceListDisc = stockBean.getSordItemBean().getSorderBean().getPriceListDisc();
System.out.println("after priceListDisc["+priceListDisc+"]");
plDate = stockBean.getSordItemBean().getSorderBean().getPlDate();
System.out.println("after plDate["+plDate+"]");
minShelfLife = stockBean.getSordItemBean().getMinShelfLife();
System.out.println("after minShelfLife["+minShelfLife+"]");
maxShelfLife = stockBean.getSordItemBean().getMaxShelfLife();
System.out.println("after custCode["+custCode+"]");
quantityStduom = stockBean.getSordItemBean().getQuantityStduom();
System.out.println("after custCode["+custCode+"]");
orderType = stockBean.getSordItemBean().getSorderBean().getOrderType();
System.out.println("after custCode["+custCode+"]");
partQty = stockBean.getSordItemBean().getSorderBean().getPartQty();
saleOrder = stockBean.getSordItemBean().getSorderBean().getSaleOrder();
//saleOrder = stockBean.getSordItemBean().getSorderBean().getSaleOrder();
saleOrder = stockBean.getSordItemBean().getSaleOrder();
//////////////////////////////////////////////////////
System.out.println(" after stockbean saleOrder ["+saleOrder+"]");
stateCodeDlv = stockBean.getSordItemBean().getSorderBean().getStateCodeDlv();
countCodeDlv = stockBean.getSordItemBean().getSorderBean().getCountCodeDlv();
lotNo = stockBean.getLotNo();
......@@ -3526,12 +3598,12 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
skipline=stockBean.getSkipline();
skiplot =stockBean.getSkiplot();
isRejected = stockBean.isRejected();
//System.out.println("isRejected>>"+isRejected);
System.out.println("isRejected>>"+isRejected);
//inputQty=sordItmQty;
//quantityStduom=sordItmQty;
expLev=stockBean.getSordItemBean().getExpLev();
//System.out.println("expLev>>>"+expLev);
System.out.println("expLev>>>"+expLev);
skipline = skipline == null ? "" : skipline;
skiplot = skiplot == null ? "" : skiplot;
/*System.out.println("saleOrder["+saleOrder+"]"+"itemCode["+itemCode+"]"+"lineNo["+lineNo+"]");
......@@ -3603,9 +3675,12 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
int updSordAllCnt=0;
if(sordallocCnt == 0)
{
/* System.out.println("qtyStk["+qtyStk+"]"+"allocQty["+allocQty+"]"+"holdQty["+holdQty+"]");
System.out.println("netQuantity["+netQuantity+"]"+"inputQty["+inputQty+"]"+"netQuantity["+netQuantity+"]");
System.out.println("totInputQty["+totInputQty+"]"+"sordItmQty["+sordItmQty+"]"+"holdQty["+holdQty+"]");*/
System.out.println("ps2qtyStk["+qtyStk+"]"+"allocQty["+allocQty+"]"+"holdQty["+holdQty+"]");
System.out.println("PS2netQuantity["+netQuantity+"]"+"inputQty["+inputQty+"]"+"netQuantity["+netQuantity+"]");
System.out.println("PS2totInputQty["+totInputQty+"]"+"sordItmQty["+sordItmQty+"]"+"holdQty["+holdQty+"]");
System.out.println("totInputQty<<<<<<<<>>>>>>>>>>>"+totInputQty+"]");
System.out.println("netQuantity<<<<<>>>>>>>"+netQuantity+"]");
if(qtyStk - allocQty - holdQty <= netQuantity)
{
inputQty = qtyStk - allocQty - holdQty;
......@@ -3622,10 +3697,10 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
/*System.out.println("insert query for sordalloc ......");
System.out.println("insert query for sordalloc ......");
System.out.println("saleOrder["+saleOrder+"]"+"lineNo["+lineNo+"]"+"itemCode["+itemCode+"]");
System.out.println("quantityStduom["+quantityStduom+"]"+"quantity__stduom["+inputQty+"]"+"qty_alloc["+inputQty+"]");
*/
vaildateData++;
sql = "INSERT INTO sordalloc (sale_order, line_no, item_code, quantity, item_code__ord, site_code, unit, status, exp_lev, item_ref, alloc_mode,date_alloc, quantity__stduom, loc_code, lot_no, lot_sl,item_grade, exp_date, unit__std, conv__qty_stduom, qty_alloc, mfg_date, site_code__mfg)";
sql = sql + "values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
......@@ -3658,7 +3733,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
insCnt = pstmt.executeUpdate();
pstmt.close();
pstmt = null;
//System.out.println(">>>>>>>>insCnt:"+insCnt);
System.out.println(">>>>>>>>insCnt:"+insCnt);
if(insCnt > 0)
{
logMsg= saleOrder + "\t" + itemCode + "\t"+locCode + "\t" +lotNo+"\t"+ lineNo + "\tInserted data in sordalloc";
......@@ -3790,8 +3865,8 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}//end of if(stockOpt != 0)
}//end of for(StockBean stockBean :stockList) 2nd iterator..........
//System.out.println("vaildateData :"+vaildateData);
//System.out.println("records["+records+"]"+"totAlloc["+totAlloc+"]");
System.out.println("vaildateData :"+vaildateData);
System.out.println("records["+records+"]"+"totAlloc["+totAlloc+"]");
int updSorditemCnt=0;
if(records > 0 )
{
......@@ -3853,10 +3928,13 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
pstmt = null;
}
//End Added by chandrashekar on 13-sep-2016
}
pstmt1.close();
pstmt1 = null;
}// added by arun pal
//end of for(SordItemBean sordItemBean :sordItemList )...2nd
/*System.out.println("********************************************************");
System.out.println("records["+records+"]"+"stockOpt["+stockOpt+"]"+"saleOrder["+saleOrder+"]");
......@@ -3909,7 +3987,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}//end of try
catch(IOException e)
......@@ -4278,26 +4356,32 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
//('P02', ls_postlog ,'sorditem',msaleorder, mline_no, mexp_lev, ' ', ' ', msaleorder, 'S-DSP','REAS_CODE','W_POST_ORDER')
public String errorLog( String as_reas_code, String as_reas_detail, String as_table_name,
String keyfld1, String keyfld2, String keyfld3, String keyfld4, String keyfld5,
String as_tran_id, String as_tran_code, String gencode_fldname, String mod_name,Connection conn ) throws ITMException
String as_tran_id, String as_tran_code, String gencode_fldname, String mod_name,Connection conn) throws ITMException
{
String errorString = "",reasDetail="",sql="",reasDetailDom="";
String errorString = "",reasDetail="",sql="",reasDetailDom="" ,retString="";
//String gencodeFldname = "",reasCode="",modName="";
PreparedStatement pstmt=null;
ResultSet rs=null;
Connection connCP = null;
String ls_reas_detail = "", merrcode = "";
////// added arun
ITMDBAccessEJB itmDBAccessEJB = null;
try
{
connCP = getConnection() ;
//if(postLogYn)
//{
// System.out.println("call errorLog!!!!!!!....");
// System.out.println("as_reas_detail.trim().length()>>>"+as_reas_detail.trim().length());
System.out.println("call errorLog!!!!!!!....");
System.out.println("as_reas_detail.trim().length()>>>"+as_reas_detail.trim().length());
if(as_reas_detail.trim().length() == 0)
{
sql = " select descr from gencodes where " +
" fld_name = ? and ltrim(rtrim(fld_value))= ? and " +
" ltrim(rtrim(mod_name)) = ? ";
pstmt = conn.prepareStatement(sql);
pstmt = connCP.prepareStatement(sql);
pstmt.setString(1,gencode_fldname);
pstmt.setString(2,as_reas_code);
pstmt.setString(3,mod_name);
......@@ -4317,11 +4401,11 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}
as_reas_detail = ls_reas_detail;
}
/* System.out.println("as_reas_detail :"+as_reas_detail);
System.out.println("as_reas_detail :"+as_reas_detail);
System.out.println("as_table_name["+as_table_name+"]"+"keyfld1["+keyfld1+"]"+"keyfld2["+keyfld2+"]");
System.out.println("keyfld3["+keyfld3+"]"+"keyfld4["+keyfld4+"]"+"keyfld5["+keyfld5+"]");
System.out.println("as_tran_id["+as_tran_id+"]"+"as_tran_code["+as_tran_code+"]"+"gencode_fldname["+gencode_fldname+"]");
System.out.println("mod_name:"+mod_name);*/
System.out.println("mod_name:"+mod_name);
Log log = new Log();
log.setReasCode(as_reas_code);
......@@ -4337,10 +4421,28 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
log.setGencodeFldname(gencode_fldname);
log.setModName(mod_name);
merrcode=postLog(log,conn);
merrcode=postLog(log,connCP);
/*///////////////////////////////////////////-----------------------
if(merrcode.trim().length() !=0)
{
System.out.println("merrcode error log"+merrcode+"]");
errorString = itmDBAccessEJB.getErrorString("","CONSCOMBVR","","",conn);
return retString;
//merrcode = "";
//conn.commit();
}
else
{ merrcode = "";
conn.rollback();
errorString = itmDBAccessEJB.getErrorString("","CONSCOMBVR","","",conn);
return retString;
}
//================================================added arun p
*/
//}
}
catch(Exception e)
......@@ -4357,7 +4459,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
/*-----------------------------------------------------------------------------------*/
public String postLog(Log log,Connection conn) throws SQLException, ITMException
public String postLog(Log log,Connection connCP) throws SQLException, ITMException
{
String msg="";
String ls_table = "", ls_reas_code = "" , ls_reas_detail = "" , ls_errcode = "";
......@@ -4366,12 +4468,16 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
String ls_date = "", merrcode ="";
Date currentDate = new Date();
PreparedStatement pstmt=null;
int updCnt=0;
try
{
// System.out.println("called postLog........");
{
connCP = getConnection() ;
System.out.println(" start calling postLog........");
ls_date = sdf.format(currentDate);
// System.out.println("ls_date :"+ls_date);
ls_table = checkNull(log.getTableName());
......@@ -4422,7 +4528,7 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
*/
sql = "update sorditem set reas_code = ? ," +
" reas_detail = ? where sale_order = ? ";
pstmt = conn.prepareStatement(sql);
pstmt =connCP.prepareStatement(sql);
pstmt.setString(1,ls_reas_code);
pstmt.setString(2,ls_reas_detail);
pstmt.setString(3,keyfld1);
......@@ -4434,22 +4540,22 @@ public class PostOrderProcess extends ProcessEJB implements PostOrderProcessLoca
}
//merrcode = gbf_sorder_status_log(keyfld1,ls_date,5,keyfld2,keyfld3,ls_reas_code,ls_reas_detail);
merrcode = sorderStatusLog(keyfld1,ls_date,5,keyfld2,keyfld3,ls_reas_code,ls_reas_detail,conn);
merrcode = sorderStatusLog(keyfld1,ls_date,5,keyfld2,keyfld3,ls_reas_code,ls_reas_detail,connCP);
if(merrcode.trim().length() ==0)
{
merrcode = "";
//conn.commit();
connCP.commit();
}
else
{
conn.rollback();
connCP.rollback();
}
}
catch(Exception e)
{
conn.rollback();
connCP.rollback();
//return merrcode;
System.out.println(e.getMessage());
......
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