Commit b7e30eb2 authored by rbhogale's avatar rbhogale

Changed by Rohan on 22-03-13 changes in wave Cancellation impact of Pick deallocation


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@92859 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 843b6188
......@@ -296,7 +296,9 @@ public class WaveCancelEJB extends ActionHandlerEJB implements WaveCancelEJBLoca
{
//for stock to dock
replDet ="SELECT ITEM_CODE,LINE_NO,LOC_CODE,LOT_NO,LOT_SL,QUANTITY,"
//Changed by Rohan on 18-03-13 for for select Quantity as Quantity - Dealloc_qty
//replDet ="SELECT ITEM_CODE,LINE_NO,LOC_CODE,LOT_NO,LOT_SL,QUANTITY,"
replDet ="SELECT ITEM_CODE,LINE_NO,LOC_CODE,LOT_NO,LOT_SL,(QUANTITY - CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END) AS QUANTITY,"
+" EXP_LEV,SALE_ORDER,LINE_NO__SORD,LOC_CODE__TO,REPL_ORDER,LINE_NO "
+" FROM REPL_ORD_DET WHERE REPL_ORDER = ?";
pstmtSql = conn.prepareStatement(replDet);
......@@ -304,9 +306,13 @@ public class WaveCancelEJB extends ActionHandlerEJB implements WaveCancelEJBLoca
else
{
//for active,master,case picking
pickDet ="SELECT ITEM_CODE,LINE_NO,LOC_CODE,LOT_NO,LOT_SL,QUANTITY," +
//Changed by Rohan on 18-03-13 for for select Quantity as Quantity - Dealloc_qty
//pickDet ="SELECT ITEM_CODE,LINE_NO,LOC_CODE,LOT_NO,LOT_SL,QUANTITY," +
pickDet ="SELECT ITEM_CODE,LINE_NO,LOC_CODE,LOT_NO,LOT_SL,(QUANTITY - CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END) AS QUANTITY," +
"EXP_LEV,SALE_ORDER,LINE_NO__SORD,REPL_ORDER,LINE_NO__REPL,PICK_ORDER,LINE_NO FROM PICK_ORD_DET WHERE PICK_ORDER = ? ";
pstmtSql = conn.prepareStatement(pickDet);
}
//replHashMap.clear();
......@@ -329,7 +335,7 @@ public class WaveCancelEJB extends ActionHandlerEJB implements WaveCancelEJBLoca
expLev = checkNull( rsPick.getString("EXP_LEV") );
saleOrder = checkNull( rsPick.getString("SALE_ORDER") );
lineNoSord = checkNull( rsPick.getString("LINE_NO__SORD") );
System.out.println("quantity to Deallocate::::"+quantity);
//Changed by Rohan on 22-01-13 to cancle independent Repanishment.start
/*
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO"))
......@@ -339,434 +345,462 @@ public class WaveCancelEJB extends ActionHandlerEJB implements WaveCancelEJBLoca
}
//Changed by Rohan on 22-01-13 to cancle independent Repanishment.end
*/
//Changed by Rohan on 21-03-13 for not call wave Cancellation
System.out.println("Quantity"+quantity+"refSer"+refSer);
if(quantity > 0 || !(refSer.trim().equalsIgnoreCase("S-DOC") || refSer.equalsIgnoreCase("RP-PND") || refSer.equalsIgnoreCase("RP-PSO")))
{
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO"))
{
replOrder = checkNull( rsPick.getString("REPL_ORDER") );
replLineNo = checkNull( rsPick.getString("LINE_NO__REPL"));
//Changed by Rohan on 07-02-13 to get original repanishment code.start
/*
//Changed by Rohan on 22-01-13 to cancle independent Repanishment.start
replOrdOrg = replOrder;
replLineOrg = replLineNo;
*/
//Changed by Rohan on 22-01-13 to cancle independent Repanishment.end
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO"))
{
replOrder = checkNull( rsPick.getString("REPL_ORDER") );
replLineNo = checkNull( rsPick.getString("LINE_NO__REPL"));
pickOrder = checkNull( rsPick.getString("PICK_ORDER") );
pickLineNo = checkNull( rsPick.getString("LINE_NO") );
}
else
{
replOrder = checkNull( rsPick.getString("REPL_ORDER") );
replLineNo = checkNull( rsPick.getString("LINE_NO") );
}
//Changed by Rohan on 07-02-13 to get original repanishment code.start
/*
//Changed by Rohan on 22-01-13 to cancle independent Repanishment.start
replOrdOrg = replOrder;
replLineOrg = replLineNo;
*/
//Changed by Rohan on 22-01-13 to cancle independent Repanishment.end
//Changed by Rohan on 07-02-13 to get original repanishment code.end
pickOrder = checkNull( rsPick.getString("PICK_ORDER") );
pickLineNo = checkNull( rsPick.getString("LINE_NO") );
}
else
{
replOrder = checkNull( rsPick.getString("REPL_ORDER") );
replLineNo = checkNull( rsPick.getString("LINE_NO") );
}
//Changed by Rohan on 07-02-13 to get original repanishment code.start
replOrdOrg = replOrder;
replLineOrg = replLineNo;
//Changed by Rohan on 07-02-13 to get original repanishment code.end
System.out.println("Original Repl Order"+replOrdOrg+"Original Repl line no"+replLineOrg);
System.out.println("LOCCode***"+locCode);
qtyStduom = quantity;
do
{
//to check pick issue confirm.start
confirm = "";
locCodeTo = "";
transferStatus = "";
System.out.println("Original Repl Order"+replOrdOrg+"Original Repl line no"+replLineOrg);
System.out.println("LOCCode***"+locCode);
qtyStduom = quantity;
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO") && isPickConf)
{
ArrayList tempPickConfirm = isPickConfirm(pickOrder,pickLineNo,conn);
locCodeTo = (String) tempPickConfirm.get(0);
confirm = (String) tempPickConfirm.get(1);
transferStatus = (String) tempPickConfirm.get(2);
}
if("Y".equalsIgnoreCase(confirm))
do
{
//to update actual quantity in replanishment
//Changed by Rohan on 22-01-13 to cancle independent Repanishment
//updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,conn);
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,waveID,replOrdOrg,replLineOrg,conn);
//to check pick issue confirm.start
confirm = "";
locCodeTo = "";
transferStatus = "";
if(updateRecord > 0)
{
System.out.println("Replenishment updated with actual quantity "+quantity+" For replenishment oder :"+replOrder +" and line no :"+replLineNo);
}
//to check pick type
//if(refSer.equalsIgnoreCase("C-PICK"))
if(refSer.equalsIgnoreCase("C-PICK"))
{
locCode = locCodeTo;
System.out.println("Caspick loc code"+locCode);
break;
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO") && isPickConf)
{
ArrayList tempPickConfirm = isPickConfirm(pickOrder,pickLineNo,conn);
locCodeTo = (String) tempPickConfirm.get(0);
confirm = (String) tempPickConfirm.get(1);
transferStatus = (String) tempPickConfirm.get(2);
}
else if(refSer.equalsIgnoreCase("M-PICK") || refSer.equalsIgnoreCase("A-PICK") || refSer.equalsIgnoreCase("P-PICK"))
if("Y".equalsIgnoreCase(confirm))
{
//to check transfer status
if("Y".equalsIgnoreCase(transferStatus))
//to update actual quantity in replanishment
//Changed by Rohan on 22-01-13 to cancle independent Repanishment
//updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,conn);
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,waveID,replOrdOrg,replLineOrg,conn);
if(updateRecord > 0)
{
System.out.println("Replenishment updated with actual quantity "+quantity+" For replenishment oder :"+replOrder +" and line no :"+replLineNo);
}
//to check pick type
//if(refSer.equalsIgnoreCase("C-PICK"))
if(refSer.equalsIgnoreCase("C-PICK"))
{
locCode = locCodeTo;
System.out.println("Caspick loc code"+locCode);
break;
}
else
else if(refSer.equalsIgnoreCase("M-PICK") || refSer.equalsIgnoreCase("A-PICK") || refSer.equalsIgnoreCase("P-PICK"))
{
//stock allocate from staging location
if(refSer.equalsIgnoreCase("M-PICK") || refSer.equalsIgnoreCase("P-PICK"))
//to check transfer status
if("Y".equalsIgnoreCase(transferStatus))
{
locCode = stagingLocMpick;
locCode = locCodeTo;
break;
}
else
{
locCode = stagingLoc;
break;
//stock allocate from staging location
if(refSer.equalsIgnoreCase("M-PICK") || refSer.equalsIgnoreCase("P-PICK"))
{
locCode = stagingLocMpick;
break;
}
else
{
locCode = stagingLoc;
break;
}
}
}
}
}
else//pick iss confirm else
{
isPickConf = false;
//To check previous replanishment task confirm.start
locCodeRepl = "";
confirmRepl = "";
if(!"".equalsIgnoreCase(replPickOrder))
{
replOrder = replPickOrder;
replLineNo = replPickLineNo;
}
System.out.println(" New replOrder"+replOrder+"replLineNo"+replLineNo);
//Changed by Rohan Bhogale on 30-10-12 for if case pick is there that not depended on repalnishment then need not to check repalnishment confirm.start
if("".equalsIgnoreCase(replOrder))
{
break;
}
}
//Changed by Rohan Bhogale on 30-10-12 for if case pick is there that not depended on repalnishment then need not to check repalnishment confirm.end
ArrayList tempPrvReplConfirm = isReplinshmentConfirm(replOrder, replLineNo, conn);
locCodeRepl =(String) tempPrvReplConfirm.get(0);
confirmRepl = (String) tempPrvReplConfirm.get(1);
System.out.println("locCodeRepl***"+locCodeRepl+"confirmRepl***"+confirmRepl);
//replanishment issue is confirm
if("Y".equalsIgnoreCase(confirmRepl))
else//pick iss confirm else
{
locCode = locCodeRepl;
//RD-DSA Repanishment dso active is present
isPickConf = false;
//To check previous replanishment task confirm.start
locCodeRepl = "";
confirmRepl = "";
sqlWave = "SELECT REF_SER FROM WAVE_TASK_DET WHERE REF_ID = ?";
pstmtTask = conn.prepareStatement(sqlWave);
pstmtTask.setString(1,replOrder);
rsTask = pstmtTask.executeQuery();
if(rsTask.next())
{
refSeries = rsTask.getString("REF_SER") == null?"":rsTask.getString("REF_SER");
}
if(pstmtTask != null)
{
pstmtTask.close();
pstmtTask = null;
}
if(rsTask != null)
{
rsTask.close();
rsTask = null;
}
if("RD-DSA".equalsIgnoreCase(refSeries))
if(!"".equalsIgnoreCase(replPickOrder))
{
lotSl = (String) tempPrvReplConfirm.get(2);
replOrder = replPickOrder;
replLineNo = replPickLineNo;
}
//to update actual quantity in replanishment
//Test
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock
//updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,conn);
//Changed by Rohan on 28-Jan-13 for not update actual qty in case of stock to dock
//if(!refSer.trim().equalsIgnoreCase("S-DOC") || !refSer.equalsIgnoreCase("RP-PND") || !refSer.equalsIgnoreCase("RP-PSO"))
System.out.println("REFSERIEEEEEEEEEE"+refSer);
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO"))
{
//Changed by Rohan on 22-01-13 to cancle independent Repanishment
//updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,conn);
System.out.println("*#$S#$#$#$#$#$#$#$#$#$#$#$#$#$");
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,waveID,replOrdOrg,replLineOrg,conn);
}
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.end
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.start
else
System.out.println(" New replOrder"+replOrder+"replLineNo"+replLineNo);
//Changed by Rohan Bhogale on 30-10-12 for if case pick is there that not depended on repalnishment then need not to check repalnishment confirm.start
if("".equalsIgnoreCase(replOrder))
{
System.out.println("Cancle Repl"+replOrder+"replLineNo"+replLineNo);
updateCancelMode(replOrder, replLineNo,"N",conn);
}
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.start
if(updateRecord > 0)
{
System.out.println("Replenishment updated with actual quantity "+quantity+" For replenishment oder :"+replOrder +" and line no :"+replLineNo);
break;
}
//Changed by Rohan Bhogale on 30-10-12 for if case pick is there that not depended on repalnishment then need not to check repalnishment confirm.end
ArrayList tempPrvReplConfirm = isReplinshmentConfirm(replOrder, replLineNo, conn);
break;
}
else
{
locCode = "";
replPickOrder = "";
replPickLineNo = "";
//to get previous repanishment task
ArrayList tempRepl = getpreviousReplTask(replOrder, replLineNo, conn);
locCodeRepl =(String) tempPrvReplConfirm.get(0);
confirmRepl = (String) tempPrvReplConfirm.get(1);
locCode =(String) tempRepl.get(0);
replPickOrder = (String) tempRepl.get(1);
replPickLineNo = (String) tempRepl.get(2);
System.out.println("locCodeRepl***"+locCodeRepl+"confirmRepl***"+confirmRepl);
System.out.println("locCode--"+locCode+"replPickOrder"+replPickOrder+"replPickLineNo"+replPickLineNo);
//update actual quantity in repl_order_det.start
if("".equalsIgnoreCase(replPickOrder))
{ //to update actual quantity in repanishment
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.start
/*
if(refSer.trim().equalsIgnoreCase("S-DOC") || refSer.equalsIgnoreCase("RP-PND") || refSer.equalsIgnoreCase("RP-PSO"))
//replanishment issue is confirm
if("Y".equalsIgnoreCase(confirmRepl))
{
locCode = locCodeRepl;
//RD-DSA Repanishment dso active is present
sqlWave = "SELECT REF_SER FROM WAVE_TASK_DET WHERE REF_ID = ?";
pstmtTask = conn.prepareStatement(sqlWave);
pstmtTask.setString(1,replOrder);
rsTask = pstmtTask.executeQuery();
if(rsTask.next())
{
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,conn);//test1sucess
refSeries = rsTask.getString("REF_SER") == null?"":rsTask.getString("REF_SER");
}
else
{
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,false,conn);//test1sucess
if(pstmtTask != null)
{
pstmtTask.close();
pstmtTask = null;
}
*/
//Changed by Rohan on 24-01-13 do not allocate actual Quantity in Repl_ord_det in case of stock to dock
//if(!refSer.trim().equalsIgnoreCase("S-DOC") || !refSer.equalsIgnoreCase("RP-PND") || !refSer.equalsIgnoreCase("RP-PSO"))
//Changed by Rohan on 24-01-13 do not allocate actual Quantity in Repl_ord_det in case of stock to dock
if(rsTask != null)
{
rsTask.close();
rsTask = null;
}
if("RD-DSA".equalsIgnoreCase(refSeries))
{
lotSl = (String) tempPrvReplConfirm.get(2);
}
//to update actual quantity in replanishment
//Test
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock
//updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,conn);
//Changed by Rohan on 28-Jan-13 for not update actual qty in case of stock to dock
//if(!refSer.trim().equalsIgnoreCase("S-DOC") || !refSer.equalsIgnoreCase("RP-PND") || !refSer.equalsIgnoreCase("RP-PSO"))
System.out.println("REFSERIEEEEEEEEEE"+refSer);
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO"))
{
//Changed by Rohan on 22-01-13 to cancle independent Repanishment
//updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,false,conn);
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,false,waveID,replOrdOrg,replLineOrg,conn);
//updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,conn);
System.out.println("*#$S#$#$#$#$#$#$#$#$#$#$#$#$#$");
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,waveID,replOrdOrg,replLineOrg,conn);
}
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.start
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.end
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.start
else
{
System.out.println("Cancle Repl1"+replOrder+"replLineNo"+replLineNo);
System.out.println("Cancle Repl"+replOrder+"replLineNo"+replLineNo);
updateCancelMode(replOrder, replLineNo,"N",conn);
}
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.start
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.end
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.start
if(updateRecord > 0)
{
System.out.println("Replenishment updated with actual quantity "+quantity+" For replenishment oder :"+replOrder +" and line no :"+replLineNo);
}
break;
}
//update actual quantity in repl_order_det.end
}
//To check previous repalnishment task confirm.end
//if case to active replanishment present which depend upon dso-pnd,pnd-case pick replanishment
sqlInv = "SELECT INV_STAT FROM LOCATION WHERE LOC_CODE = ?";
pstmtInv = conn.prepareStatement(sqlInv);
pstmtInv.setString(1,locCode);
rsInv = pstmtInv.executeQuery();
if(rsInv.next())
{
invState = checkNull(rsInv.getString("INV_STAT"));
}
if(rsInv != null)
{
rsInv.close();
rsInv = null;
}
if(pstmtInv != null)
{
pstmtInv.close();
pstmtInv = null;
}
if(dsoInvstat.trim().equalsIgnoreCase(invState.trim()))
{
//to update actual quantity in replanishment
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.start
/*
if(refSer.trim().equalsIgnoreCase("S-DOC") || refSer.equalsIgnoreCase("RP-PND") || refSer.equalsIgnoreCase("RP-PSO"))
else
{
locCode = "";
replPickOrder = "";
replPickLineNo = "";
//to get previous repanishment task
ArrayList tempRepl = getpreviousReplTask(replOrder, replLineNo, conn);
locCode =(String) tempRepl.get(0);
replPickOrder = (String) tempRepl.get(1);
replPickLineNo = (String) tempRepl.get(2);
System.out.println("locCode--"+locCode+"replPickOrder"+replPickOrder+"replPickLineNo"+replPickLineNo);
//update actual quantity in repl_order_det.start
if("".equalsIgnoreCase(replPickOrder))
{ //to update actual quantity in repanishment
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.start
/*
if(refSer.trim().equalsIgnoreCase("S-DOC") || refSer.equalsIgnoreCase("RP-PND") || refSer.equalsIgnoreCase("RP-PSO"))
{
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,true,conn);//test1sucess
}
else
{
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,false,conn);//test1sucess
}
*/
//Changed by Rohan on 24-01-13 do not allocate actual Quantity in Repl_ord_det in case of stock to dock
//if(!refSer.trim().equalsIgnoreCase("S-DOC") || !refSer.equalsIgnoreCase("RP-PND") || !refSer.equalsIgnoreCase("RP-PSO"))
//Changed by Rohan on 24-01-13 do not allocate actual Quantity in Repl_ord_det in case of stock to dock
//if(!refSer.trim().equalsIgnoreCase("S-DOC") || !refSer.equalsIgnoreCase("RP-PND") || !refSer.equalsIgnoreCase("RP-PSO"))
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO"))
{
//Changed by Rohan on 22-01-13 to cancle independent Repanishment
//updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,false,conn);
updateRecord = updateReplanishment(replOrder,replLineNo,pickOrder,pickLineNo,quantity,false,waveID,replOrdOrg,replLineOrg,conn);
}
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.start
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.start
else
{
System.out.println("Cancle Repl1"+replOrder+"replLineNo"+replLineNo);
updateCancelMode(replOrder, replLineNo,"N",conn);
}
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.start
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.end
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.start
break;
}
//update actual quantity in repl_order_det.end
}
//To check previous repalnishment task confirm.end
//if case to active replanishment present which depend upon dso-pnd,pnd-case pick replanishment
sqlInv = "SELECT INV_STAT FROM LOCATION WHERE LOC_CODE = ?";
pstmtInv = conn.prepareStatement(sqlInv);
pstmtInv.setString(1,locCode);
rsInv = pstmtInv.executeQuery();
if(rsInv.next())
{
updateRecord = updateReplanishment(replPickOrder,replPickLineNo,pickOrder,pickLineNo,quantity,true,conn);//test1sucess
invState = checkNull(rsInv.getString("INV_STAT"));
}
else
{
updateRecord = updateReplanishment(replPickOrder,replPickLineNo,pickOrder,pickLineNo,quantity,false,conn);
}
*/
//Changed by Rohan on 24-01-13 do not allocate actual Quantity in Repl_ord_det in case of stock to dock
//if(!refSer.trim().equalsIgnoreCase("S-DOC") || !refSer.equalsIgnoreCase("RP-PND") || !refSer.equalsIgnoreCase("RP-PSO"))
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO"))
if(rsInv != null)
{
rsInv.close();
rsInv = null;
}
if(pstmtInv != null)
{
//Changed by Rohan on 22-01-13 to cancle independent Repanishment
//updateRecord = updateReplanishment(replPickOrder,replPickLineNo,pickOrder,pickLineNo,quantity,false,conn);
updateRecord = updateReplanishment(replPickOrder,replPickLineNo,pickOrder,pickLineNo,quantity,false,waveID,replOrdOrg,replLineOrg,conn);
pstmtInv.close();
pstmtInv = null;
}
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.end
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.start
else
{
System.out.println("Cancle Repl2"+replPickOrder+"replLineNo"+replPickLineNo);
updateCancelMode(replPickOrder, replPickLineNo,"N",conn);
}
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.end
if(updateRecord > 0)
if(dsoInvstat.trim().equalsIgnoreCase(invState.trim()))
{
System.out.println("Replenishment updated with actual quantity "+quantity+" For replenishment oder :"+replPickOrder +" and line no :"+replPickLineNo);
//to update actual quantity in replanishment
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.start
/*
if(refSer.trim().equalsIgnoreCase("S-DOC") || refSer.equalsIgnoreCase("RP-PND") || refSer.equalsIgnoreCase("RP-PSO"))
{
updateRecord = updateReplanishment(replPickOrder,replPickLineNo,pickOrder,pickLineNo,quantity,true,conn);//test1sucess
}
else
{
updateRecord = updateReplanishment(replPickOrder,replPickLineNo,pickOrder,pickLineNo,quantity,false,conn);
}
*/
//Changed by Rohan on 24-01-13 do not allocate actual Quantity in Repl_ord_det in case of stock to dock
//if(!refSer.trim().equalsIgnoreCase("S-DOC") || !refSer.equalsIgnoreCase("RP-PND") || !refSer.equalsIgnoreCase("RP-PSO"))
if(!refSer.trim().equalsIgnoreCase("S-DOC") && !refSer.equalsIgnoreCase("RP-PND") && !refSer.equalsIgnoreCase("RP-PSO"))
{
//Changed by Rohan on 22-01-13 to cancle independent Repanishment
//updateRecord = updateReplanishment(replPickOrder,replPickLineNo,pickOrder,pickLineNo,quantity,false,conn);
updateRecord = updateReplanishment(replPickOrder,replPickLineNo,pickOrder,pickLineNo,quantity,false,waveID,replOrdOrg,replLineOrg,conn);
}
//Changed by Rohan on 03/12/11 not update repanishment in case of stock to dock.end
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.start
else
{
System.out.println("Cancle Repl2"+replPickOrder+"replLineNo"+replPickLineNo);
updateCancelMode(replPickOrder, replPickLineNo,"N",conn);
}
//Changed by Rohan on 30-01-13 to set wave cancel mode Y in case of stock to dock.end
if(updateRecord > 0)
{
System.out.println("Replenishment updated with actual quantity "+quantity+" For replenishment oder :"+replPickOrder +" and line no :"+replPickLineNo);
}
break;
}
break;
}
}
}
while(!"".equalsIgnoreCase(replPickOrder) && !"".equalsIgnoreCase(replPickLineNo));
}
while(!"".equalsIgnoreCase(replPickOrder) && !"".equalsIgnoreCase(replPickLineNo));
System.out.println("Final location code*****"+locCode+"LoT Sl***"+lotSl);
lineNoSord = " " + lineNoSord;
sql = "SELECT QTY_ALLOC AS COUNT FROM SORDALLOC "
+"WHERE SALE_ORDER = ? "
+"AND LINE_NO = ? "
+"AND EXP_LEV = ? "
+"AND ITEM_CODE__ORD = ? "
+"AND ITEM_CODE = ? "
+"AND LOT_NO = ? "
+"AND LOT_SL = ? "
+"AND LOC_CODE = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,saleOrder);
pstmt.setString(2, lineNoSord);
pstmt.setString(3,expLev);
pstmt.setString(4,itemCode);
pstmt.setString(5,itemCode);
pstmt.setString(6,lotNo);
pstmt.setString(7,lotSl);
pstmt.setString(8,locCode);
rs = pstmt.executeQuery();
if(rs.next())
{
System.out.println("Final location code*****"+locCode+"LoT Sl***"+lotSl);
lineNoSord = " " + lineNoSord;
qtyAlloc = rs.getDouble(1);
}
else
rs.close();
rs = null;
pstmt.close();
pstmt = null;
// 22/02/10 manoharan if allocation found in sordalloc then deallocate
//if (count > 0 ) // 04/04/12 manoharan
if (qtyAlloc > 0) // 04/04/12 manoharan
{
if (qtyAlloc - qtyStduom <= 0)
sql = "SELECT QTY_ALLOC AS COUNT FROM SORDALLOC "
+"WHERE SALE_ORDER = ? "
+"AND LINE_NO = ? "
+"AND EXP_LEV = ? "
+"AND ITEM_CODE__ORD = ? "
+"AND ITEM_CODE = ? "
+"AND LOT_NO = ? "
+"AND LOT_SL = ? "
+"AND LOC_CODE = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,saleOrder);
pstmt.setString(2, lineNoSord);
pstmt.setString(3,expLev);
pstmt.setString(4,itemCode);
pstmt.setString(5,itemCode);
pstmt.setString(6,lotNo);
pstmt.setString(7,lotSl);
pstmt.setString(8,locCode);
rs = pstmt.executeQuery();
if(rs.next())
{
sqlSord = "DELETE FROM SORDALLOC WHERE SALE_ORDER = ? "
+"AND LINE_NO = ? "
+"AND EXP_LEV = ? "
+"AND ITEM_CODE__ORD = ? "
+"AND ITEM_CODE = ? "
+"AND LOT_NO = ? "
+"AND LOT_SL = ? "
+"AND LOC_CODE = ? ";
System.out.println("Delete sql sqlSord :"+sqlSord);
pstmt = conn.prepareStatement(sqlSord);
pstmt.setString(1,saleOrder);
pstmt.setString(2,lineNoSord);
pstmt.setString(3,expLev);
pstmt.setString(4,itemCode);
pstmt.setString(5,itemCode);
pstmt.setString(6,lotNo);
pstmt.setString(7,lotSl);
pstmt.setString(8,locCode);
updateCnt = pstmt.executeUpdate();
pstmt.close();
pstmt = null;
qtyAlloc = rs.getDouble(1);
}
else
rs.close();
rs = null;
pstmt.close();
pstmt = null;
// 22/02/10 manoharan if allocation found in sordalloc then deallocate
//if (count > 0 ) // 04/04/12 manoharan
if (qtyAlloc > 0) // 04/04/12 manoharan
{
sqlSord = "UPDATE SORDALLOC SET QTY_ALLOC = QTY_ALLOC - ? "
+"WHERE SALE_ORDER = ? "
+"AND LINE_NO = ? "
+"AND EXP_LEV = ? "
+"AND ITEM_CODE__ORD = ? "
+"AND ITEM_CODE = ? "
+"AND LOT_NO = ? "
+"AND LOT_SL = ? "
+"AND LOC_CODE = ? ";
System.out.println("Update sql sqlSord :"+sqlSord);
pstmt = conn.prepareStatement(sqlSord);
if (qtyAlloc - qtyStduom <= 0)
{
sqlSord = "DELETE FROM SORDALLOC WHERE SALE_ORDER = ? "
+"AND LINE_NO = ? "
+"AND EXP_LEV = ? "
+"AND ITEM_CODE__ORD = ? "
+"AND ITEM_CODE = ? "
+"AND LOT_NO = ? "
+"AND LOT_SL = ? "
+"AND LOC_CODE = ? ";
System.out.println("Delete sql sqlSord :"+sqlSord);
pstmt = conn.prepareStatement(sqlSord);
pstmt.setString(1,saleOrder);
pstmt.setString(2,lineNoSord);
pstmt.setString(3,expLev);
pstmt.setString(4,itemCode);
pstmt.setString(5,itemCode);
pstmt.setString(6,lotNo);
pstmt.setString(7,lotSl);
pstmt.setString(8,locCode);
updateCnt = pstmt.executeUpdate();
pstmt.close();
pstmt = null;
}
else
{
sqlSord = "UPDATE SORDALLOC SET QTY_ALLOC = QTY_ALLOC - ? "
+"WHERE SALE_ORDER = ? "
+"AND LINE_NO = ? "
+"AND EXP_LEV = ? "
+"AND ITEM_CODE__ORD = ? "
+"AND ITEM_CODE = ? "
+"AND LOT_NO = ? "
+"AND LOT_SL = ? "
+"AND LOC_CODE = ? ";
System.out.println("Update sql sqlSord :"+sqlSord);
pstmt = conn.prepareStatement(sqlSord);
pstmt.setDouble(1,qtyStduom);
pstmt.setString(2,saleOrder);
pstmt.setString(3,lineNoSord);
pstmt.setString(4,expLev);
pstmt.setString(5,itemCode);
pstmt.setString(6,itemCode);
pstmt.setString(7,lotNo);
pstmt.setString(8,lotSl);
pstmt.setString(9,locCode);
updateCnt = pstmt.executeUpdate();
pstmt.close();
pstmt = null;
System.out.println("Updated the no of records are : updateCnt :"+updateCnt);
}
sqlSordItem = "UPDATE SORDITEM SET QTY_ALLOC = QTY_ALLOC - ? "
+"WHERE SALE_ORDER = ? "
+"AND LINE_NO = ? "
+"AND EXP_LEV = ? ";
System.out.println("Update sql sqlSordItem :"+sqlSordItem);
pstmt = conn.prepareStatement(sqlSordItem);
pstmt.setDouble(1,qtyStduom);
pstmt.setString(2,saleOrder);
pstmt.setString(3,lineNoSord);
pstmt.setString(4,expLev);
pstmt.setString(5,itemCode);
pstmt.setString(6,itemCode);
pstmt.setString(7,lotNo);
pstmt.setString(8,lotSl);
pstmt.setString(9,locCode);
updateCnt = pstmt.executeUpdate();
pstmt.close();
pstmt = null;
System.out.println("Updated the no of records are : updateCnt :"+updateCnt);
}
sqlSordItem = "UPDATE SORDITEM SET QTY_ALLOC = QTY_ALLOC - ? "
+"WHERE SALE_ORDER = ? "
+"AND LINE_NO = ? "
+"AND EXP_LEV = ? ";
System.out.println("Update sql sqlSordItem :"+sqlSordItem);
pstmt = conn.prepareStatement(sqlSordItem);
pstmt.setDouble(1,qtyStduom);
pstmt.setString(2,saleOrder);
pstmt.setString(3,lineNoSord);
pstmt.setString(4,expLev);
updateCnt = pstmt.executeUpdate();
pstmt.close();
pstmt = null;
System.out.println("Updated the no of records : updateCnt :"+updateCnt);
line = " " + lineNo;
System.out.println("line :"+line);
//Changed by Rohan on 10/8/12 to give proper loc code.start
//Changed by Rohan on 10/8/12 to give proper loc code.end
strAllocate.put("tran_date",tranDate);
strAllocate.put("ref_ser","P-TASK");
//strAllocate.put("ref_id",tranId);
strAllocate.put("ref_id",refId);
strAllocate.put("ref_line",line.substring(line.length()-3));
strAllocate.put("site_code",siteCode);
strAllocate.put("item_code",itemCode);
strAllocate.put("loc_code",locCode);
strAllocate.put("lot_no",lotNo);
strAllocate.put("lot_sl",lotSl);
strAllocate.put("alloc_qty",new Double(-1*qtyStduom));
strAllocate.put("chg_user",genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode"));
strAllocate.put("chg_term",genericUtility.getValueFromXTRA_PARAMS(xtraParams,"termId"));
strAllocate.put("chg_win","W_PICK_ORD");
//Calling DistStkUpdEJB
System.out.println("Calling DistStkUpdEJB.....");
if (distStkUpd.updAllocTrace(strAllocate, conn) > 0)
{
System.out.println("distStkUpd.UpdAllocTrace(hashMap) : Sucessuful!");
}
System.out.println("Updated the no of records : updateCnt :"+updateCnt);
line = " " + lineNo;
System.out.println("line :"+line);
//Changed by Rohan on 10/8/12 to give proper loc code.start
//Changed by Rohan on 10/8/12 to give proper loc code.end
strAllocate.put("tran_date",tranDate);
strAllocate.put("ref_ser","P-TASK");
//strAllocate.put("ref_id",tranId);
strAllocate.put("ref_id",refId);
strAllocate.put("ref_line",line.substring(line.length()-3));
strAllocate.put("site_code",siteCode);
strAllocate.put("item_code",itemCode);
strAllocate.put("loc_code",locCode);
strAllocate.put("lot_no",lotNo);
strAllocate.put("lot_sl",lotSl);
strAllocate.put("alloc_qty",new Double(-1*qtyStduom));
strAllocate.put("chg_user",genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode"));
strAllocate.put("chg_term",genericUtility.getValueFromXTRA_PARAMS(xtraParams,"termId"));
strAllocate.put("chg_win","W_PICK_ORD");
//Calling DistStkUpdEJB
System.out.println("Calling DistStkUpdEJB.....");
if (distStkUpd.updAllocTrace(strAllocate, conn) > 0)
{
System.out.println("distStkUpd.UpdAllocTrace(hashMap) : Sucessuful!");
}
sqlUpdate = "UPDATE WAVE_TASK SET CANCEL ='Y' WHERE WAVE_ID = ?" ;
pstmtUpd = conn.prepareStatement(sqlUpdate);
pstmtUpd.setString(1, waveID);
updCnt = pstmtUpd.executeUpdate();
if( updCnt > 0 )
{
retString = itmDBAccess.getErrorString("","WAVEREV","");
}
else
{
retString = itmDBAccess.getErrorString("","NTWAVEREV","");
}
if(pstmtUpd != null)
{
pstmtUpd.close();
pstmtUpd = null;
}
}//qty allocate > 0
}
else
{
sqlUpdate = "UPDATE WAVE_TASK SET CANCEL ='Y' WHERE WAVE_ID = ?" ;
pstmtUpd = conn.prepareStatement(sqlUpdate);
pstmtUpd.setString(1, waveID);
......@@ -786,9 +820,8 @@ public class WaveCancelEJB extends ActionHandlerEJB implements WaveCancelEJBLoca
pstmtUpd.close();
pstmtUpd = null;
}
}
}//qty allocate > 0
}
}
}//while close
......@@ -823,10 +856,16 @@ public class WaveCancelEJB extends ActionHandlerEJB implements WaveCancelEJBLoca
pstmtReplDet = null;
}
System.out.println("status"+status+"retString"+retString);
if("Y".equalsIgnoreCase(status))
{
retString = itmDBAccess.getErrorString("","WAVENTREV","");
}
if("".equalsIgnoreCase(retString) && retString.trim().length() == 0)
{
System.out.println("Enter Here in Wave CAncelllation c");
retString = itmDBAccess.getErrorString("","WAVEREV","");
}
}
else if (isError && connStatus)
......@@ -866,6 +905,7 @@ public class WaveCancelEJB extends ActionHandlerEJB implements WaveCancelEJBLoca
}
}
System.out.println("Returning Result ::"+retString);
return retString;
}
private String checkNull( String input )
......@@ -1425,14 +1465,26 @@ public class WaveCancelEJB extends ActionHandlerEJB implements WaveCancelEJBLoca
if(invS.trim().equalsIgnoreCase(psoLoc.trim()))
{
//Changed by Rohan on 22-03-13 for adding one shipper into actual qty
/*
updateSql= " UPDATE REPL_ORD_DET SET ACTUAL_QTY = ACTUAL_QTY - ?"
+" WHERE REPL_ORDER = ? AND LINE_NO = ? ";
*/
updateSql= " UPDATE REPL_ORD_DET SET ACTUAL_QTY = ACTUAL_QTY + ?"
+" WHERE REPL_ORDER = ? AND LINE_NO = ? ";
}
else
{
//Changed by Rohan on 22-03-13 for adding one shipper into actual qty
/*
updateSql= " UPDATE REPL_ORD_DET SET ACTUAL_QTY = ACTUAL_QTY - ?"
+" WHERE (REPL_ORDER,LINE_NO) IN(SELECT PICK_ORDER,LINE_NO__PICK FROM REPL_ORD_DET"
+" WHERE REPL_ORDER = ? AND LINE_NO = ?)";
*/
updateSql= " UPDATE REPL_ORD_DET SET ACTUAL_QTY = ACTUAL_QTY + ?"
+" WHERE (REPL_ORDER,LINE_NO) IN(SELECT PICK_ORDER,LINE_NO__PICK FROM REPL_ORD_DET"
+" WHERE REPL_ORDER = ? AND LINE_NO = ?)";
}
pstmt1 = conn.prepareStatement(updateSql);
//Changed by Rohan on 11-02-13 for reduce one case from actual qty
......
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