Commit 8737359c authored by rtiwari's avatar rtiwari

updated


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@95887 ce508802-f39f-4f6c-b175-0d175dae99d5
parent e7f91caa
...@@ -1079,7 +1079,7 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto ...@@ -1079,7 +1079,7 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto
+"((SORDITEM.QUANTITY*SORDITEM.CONV__QTY_STDQTY) - (SORDITEM.QTY_DESP*SORDITEM.CONV__QTY_STDQTY) - SORDITEM.QTY_ALLOC) PENDING_QUANTITY," +"((SORDITEM.QUANTITY*SORDITEM.CONV__QTY_STDQTY) - (SORDITEM.QTY_DESP*SORDITEM.CONV__QTY_STDQTY) - SORDITEM.QTY_ALLOC) PENDING_QUANTITY,"
+"SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR," +"SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR,"
+"SORDER.SITE_CODE,SORDITEM.EXP_LEV, " +"SORDER.SITE_CODE,SORDITEM.EXP_LEV, "
+"SORDER.PART_QTY AS PART_QTY, CUSTOMER.SINGLE_LOT AS SINGLE_LOT, SORDITEM.MIN_SHELF_LIFE AS MIN_SHELF_LIFE "//Gulzar 5/13/2012 +"SORDER.PART_QTY AS PART_QTY, SORDER.SINGLE_LOT AS SINGLE_LOT, SORDITEM.MIN_SHELF_LIFE AS MIN_SHELF_LIFE "//Gulzar 5/13/2012
//Chnged by Rohan 0n 22/06/12 //Chnged by Rohan 0n 22/06/12
//Changed by sumit 20/08/12 getting column data start. //Changed by sumit 20/08/12 getting column data start.
//+",SORDER.ALLOC_FLAG AS ALLOC_FLAG " //+",SORDER.ALLOC_FLAG AS ALLOC_FLAG "
...@@ -1119,7 +1119,7 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto ...@@ -1119,7 +1119,7 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
if( rs.next()) if( rs.next())
{ {
singleLot = rs.getString("SINGLE_LOT"); singleLot = rs.getString("SINGLE_LOT")==null?"N":rs.getString("SINGLE_LOT");
minSelfLife = rs.getInt("MIN_SHELF_LIFE"); minSelfLife = rs.getInt("MIN_SHELF_LIFE");
pendingQty = rs.getInt("PENDING_QUANTITY"); pendingQty = rs.getInt("PENDING_QUANTITY");
} }
...@@ -1299,7 +1299,6 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto ...@@ -1299,7 +1299,6 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto
stockList.add(lotNo+"@"+lotSl+"@"+locCode+"@"+locDescr+"@"+qtyAvail); stockList.add(lotNo+"@"+lotSl+"@"+locCode+"@"+locDescr+"@"+qtyAvail);
stockLotDetail.put(lotNo, stockList); stockLotDetail.put(lotNo, stockList);
} }
} }
rs.close(); rs = null; rs.close(); rs = null;
pstmt.close(); pstmt = null; pstmt.close(); pstmt = null;
...@@ -1795,7 +1794,7 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto ...@@ -1795,7 +1794,7 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto
+"((SORDITEM.QUANTITY*SORDITEM.CONV__QTY_STDQTY) - (SORDITEM.QTY_DESP*SORDITEM.CONV__QTY_STDQTY) - SORDITEM.QTY_ALLOC) PENDING_QUANTITY," +"((SORDITEM.QUANTITY*SORDITEM.CONV__QTY_STDQTY) - (SORDITEM.QTY_DESP*SORDITEM.CONV__QTY_STDQTY) - SORDITEM.QTY_ALLOC) PENDING_QUANTITY,"
+"SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR," +"SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR,"
+"SORDER.SITE_CODE,SORDITEM.EXP_LEV, " +"SORDER.SITE_CODE,SORDITEM.EXP_LEV, "
+"SORDER.PART_QTY AS PART_QTY, CUSTOMER.SINGLE_LOT AS SINGLE_LOT, SORDITEM.MIN_SHELF_LIFE AS MIN_SHELF_LIFE "//Gulzar 5/13/2012 +"SORDER.PART_QTY AS PART_QTY, SORDER.SINGLE_LOT AS SINGLE_LOT, SORDITEM.MIN_SHELF_LIFE AS MIN_SHELF_LIFE "//Gulzar 5/13/2012
+" ,SORDER.ALLOC_FLAG AS ALLOC_FLAG , WAVE_TYPE.MASTER_PACK_ALLOW , WAVE_TYPE.ACTIVE_PICK_ALLOW , WAVE_TYPE.STOCK_TO_DOCK_ALLOW " +" ,SORDER.ALLOC_FLAG AS ALLOC_FLAG , WAVE_TYPE.MASTER_PACK_ALLOW , WAVE_TYPE.ACTIVE_PICK_ALLOW , WAVE_TYPE.STOCK_TO_DOCK_ALLOW "
+"FROM SORDDET,SORDER,SORDITEM,CUSTOMER,ITEM , WAVE_TYPE " +"FROM SORDDET,SORDER,SORDITEM,CUSTOMER,ITEM , WAVE_TYPE "
//Changed by sumit 20/08/12 getting column data end. //Changed by sumit 20/08/12 getting column data end.
...@@ -1831,7 +1830,7 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto ...@@ -1831,7 +1830,7 @@ public class StockAllocIc extends ValidatorEJB implements StockAllocIcLocal, Sto
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
if( rs.next()) if( rs.next())
{ {
singleLot = rs.getString("SINGLE_LOT"); singleLot = rs.getString("SINGLE_LOT")==null?"N":rs.getString("SINGLE_LOT");
minSelfLife = rs.getInt("MIN_SHELF_LIFE"); minSelfLife = rs.getInt("MIN_SHELF_LIFE");
pendingQty = rs.getInt("PENDING_QUANTITY"); pendingQty = rs.getInt("PENDING_QUANTITY");
} }
......
...@@ -466,7 +466,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -466,7 +466,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
+"((SORDITEM.QUANTITY*SORDITEM.CONV__QTY_STDQTY) - (SORDITEM.QTY_DESP*SORDITEM.CONV__QTY_STDQTY) - SORDITEM.QTY_ALLOC) PENDING_QUANTITY," +"((SORDITEM.QUANTITY*SORDITEM.CONV__QTY_STDQTY) - (SORDITEM.QTY_DESP*SORDITEM.CONV__QTY_STDQTY) - SORDITEM.QTY_ALLOC) PENDING_QUANTITY,"
+"SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR," +"SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR,"
+"SORDER.SITE_CODE,SORDITEM.EXP_LEV, " +"SORDER.SITE_CODE,SORDITEM.EXP_LEV, "
+"SORDER.PART_QTY AS PART_QTY, CUSTOMER.SINGLE_LOT AS SINGLE_LOT, SORDITEM.MIN_SHELF_LIFE AS MIN_SHELF_LIFE "//Gulzar 5/13/2012 +"SORDER.PART_QTY AS PART_QTY, SORDER.SINGLE_LOT AS SINGLE_LOT, SORDITEM.MIN_SHELF_LIFE AS MIN_SHELF_LIFE "//Gulzar 5/13/2012
+" ,SORDER.ALLOC_FLAG AS ALLOC_FLAG , WAVE_TYPE.MASTER_PACK_ALLOW , WAVE_TYPE.ACTIVE_PICK_ALLOW , WAVE_TYPE.STOCK_TO_DOCK_ALLOW " +" ,SORDER.ALLOC_FLAG AS ALLOC_FLAG , WAVE_TYPE.MASTER_PACK_ALLOW , WAVE_TYPE.ACTIVE_PICK_ALLOW , WAVE_TYPE.STOCK_TO_DOCK_ALLOW "
+"FROM SORDDET,SORDER,SORDITEM,CUSTOMER,ITEM , WAVE_TYPE " +"FROM SORDDET,SORDER,SORDITEM,CUSTOMER,ITEM , WAVE_TYPE "
//Changed by sumit 20/08/12 getting column data end. //Changed by sumit 20/08/12 getting column data end.
...@@ -975,7 +975,12 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -975,7 +975,12 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
boolean flag = false,isFlag = true,allocqtyflag = false,pendingOrderFlag=false; boolean flag = false,isFlag = true,allocqtyflag = false,pendingOrderFlag=false;
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB(); ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
String sql = "",shipStatus=""; String sql = "",shipStatus="";
// ArrayList<Object> itemList = new ArrayList<Object> ();
HashMap<String,HashMap> map = new HashMap<String,HashMap>();
HashMap<String,String> lineNoMap = null;
// ArrayList itemList = new ArrayList();;
String itemList = "";
ArrayList<String> sorderList = new ArrayList<String>();
try try
{ {
...@@ -1210,8 +1215,80 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1210,8 +1215,80 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
if(allocQty > 0 && flag == false) if(allocQty > 0 && flag == false)
{ {
System.out.println("if calling........"); // ADDED BY RITESH ON 09/08/14 START
errString = sorderAllocate(saleOrder, lineNo, itemCode, allocQty, expLev ,holdFlag,activeAllow,xtraParams); System.out.println("if calling...allocQty > 0.....");
itemList = saleOrder+","+lineNo+","+itemCode+","+allocQty+","+expLev+","+holdFlag+","+holdFlag+","+activeAllow;
if(!sorderList.contains(saleOrder))
{
lineNoMap = new HashMap<String,String>(); System.out.println(" lineNoMap cleared()");
}
sorderList.add(saleOrder);
// itemList.add(saleOrder);
// itemList.add(lineNo);
// itemList.add(itemCode);
// itemList.add(allocQty);
// itemList.add(expLev);
// itemList.add(holdFlag);
// itemList.add(activeAllow);
System.out.println("itemList::"+itemList);
lineNoMap.put(lineNo.trim()+"-"+saleOrder,itemList); System.out.println("lineNoMap for each row ::"+lineNoMap);
map.put(saleOrder+activeAllow,lineNoMap);
// errString = sorderAllocate(saleOrder, lineNo, itemCode, allocQty, expLev ,holdFlag,activeAllow,xtraParams);
// System.out.println("@@@@@@ sorderAllocate return string["+errString+"]");
// if (errString != null && errString.trim().length() > 0)
// {
// if( errString.indexOf("VSTQTYER") != -1)
// {
// System.out.println("@@@@@@@@@[VSTQTYER]");
// isFlag = false;
// list2.add(saleOrder);
// list2.add(lineNo);
// list2.add(itemCode);
// list2.add(allocQty);
// elements2 ++;
// errString = "";
// }
// else
// {
// System.out.println("@@@errString :"+errString);
// return errString;
// }
// }
// else
// {
// allocqtyflag = true;
// }
}else if(allocQty == 0 && flag == false) //added by kunal on 27/12/12 as per manoj instruction
{
updateSql = "UPDATE SORDDET SET HOLD_FLAG ='"+holdFlag+"'"
+ " WHERE SALE_ORDER = '" + saleOrder + " ' "
+ " AND LINE_NO = '" + lineNo + "' ";
System.out.println("updateSql::"+ updateSql);
pstmt = conn.prepareStatement(updateSql);
int noRowupdated = pstmt.executeUpdate();
System.out.println("no of row updated in sorddet = "+noRowupdated);
pstmt.close();
pstmt = null;
}
errString = ""; //added by kunal for handle multiple error message 31/DEC/13
}// out for loop
//added by ritesh on 07/10/13 for request DI3ESUN009 start
//if (errString != null && errString.trim().length() > 0)
//errString = "PROCSUCC";
//errString = itmDBAccessEJB.getErrorString("",errString,"","",conn);
System.out.println(" fINALLY map "+map);
Set<String> set = map.keySet();
Iterator<String> it = set.iterator();
while(it.hasNext())
{
String key = (String)it.next();
HashMap soLnValues =(HashMap) map.get(key);
System.out.println("swecondry map "+soLnValues);
errString = sorderAllocate(soLnValues,xtraParams);
// errString = sorderAllocate(saleOrder, lineNo, itemCode, allocQty, expLev ,holdFlag,activeAllow,xtraParams);
// ADDED BY RITESH ON 09/08/14 END
System.out.println("@@@@@@ sorderAllocate return string["+errString+"]"); System.out.println("@@@@@@ sorderAllocate return string["+errString+"]");
if (errString != null && errString.trim().length() > 0) if (errString != null && errString.trim().length() > 0)
{ {
...@@ -1236,25 +1313,8 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1236,25 +1313,8 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
{ {
allocqtyflag = true; allocqtyflag = true;
} }
}else if(allocQty == 0 && flag == false) //added by kunal on 27/12/12 as per manoj instruction
{
updateSql = "UPDATE SORDDET SET HOLD_FLAG ='"+holdFlag+"'"
+ " WHERE SALE_ORDER = '" + saleOrder + " ' "
+ " AND LINE_NO = '" + lineNo + "' ";
System.out.println("updateSql::"+ updateSql);
pstmt = conn.prepareStatement(updateSql);
int noRowupdated = pstmt.executeUpdate();
System.out.println("no of row updated in sorddet = "+noRowupdated);
pstmt.close();
pstmt = null;
} }
errString = ""; //added by kunal for handle multiple error message 31/DEC/13
}// out for loop
//added by ritesh on 07/10/13 for request DI3ESUN009 start
//if (errString != null && errString.trim().length() > 0)
//errString = "PROCSUCC";
//errString = itmDBAccessEJB.getErrorString("",errString,"","",conn);
System.out.println("CHEK isFlag:::"+isFlag); System.out.println("CHEK isFlag:::"+isFlag);
//if(isFlag == false && errString != null && errString.trim().length() > 0)//CHANGE DONE BY KUNAL ON 26/DEC/13 FOR SHOW MULTIPE ERROR MESSAGE //if(isFlag == false && errString != null && errString.trim().length() > 0)//CHANGE DONE BY KUNAL ON 26/DEC/13 FOR SHOW MULTIPE ERROR MESSAGE
if(isFlag == false) if(isFlag == false)
...@@ -1309,8 +1369,21 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1309,8 +1369,21 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
if( elements2 > 0 ) if( elements2 > 0 )
{ {
String singLot = "";
sql = "select single_lot from sorder where sale_order = '"+saleOrder+"'";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
singLot = rs.getString(1);
}pstmt.close();pstmt = null;rs.close();rs = null;
if("Y".equalsIgnoreCase(singLot))
{
mainStr = mainStr + "\n Stock not available in single lot.\n";
}else{
mainStr = mainStr + "\n Insufficient stock available.\n"; mainStr = mainStr + "\n Insufficient stock available.\n";
} }
}
for(int i = 0; i < elements2 * 4 ; i++ ) for(int i = 0; i < elements2 * 4 ; i++ )
{ {
if( i > 0) if( i > 0)
...@@ -1458,9 +1531,14 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1458,9 +1531,14 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
* @return * @return
* @throws ITMException * @throws ITMException
*/ */
private String sorderAllocate(String saleOrder, String lineNo, String itemCode, double allocQty, String expLev ,String holdFlag,String activeAllow,String xtraParams) throws ITMException // private String sorderAllocate(String saleOrder, String lineNo, String itemCode, double allocQty, String expLev ,String holdFlag,String activeAllow,String xtraParams) throws ITMException
private String sorderAllocate(HashMap soLnValues,String xtraParams) throws ITMException
{ {
System.out.println("updateSOrder calling .............."); System.out.println("updateSOrder calling .08/08/14.............");
String saleOrder = "", lineNo = "", itemCode = "";
double allocQty = 0d;
String expLev = "" ,holdFlag = "", activeAllow= "";
String getDataSql = null; String getDataSql = null;
String sorditemSql=null; String sorditemSql=null;
String itemCodeOrd = null ; String itemCodeOrd = null ;
...@@ -1504,8 +1582,8 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1504,8 +1582,8 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
String errString = ""; String errString = "";
String error = ""; String error = "";
String errCode = ""; String errCode = "";
boolean checkLocation = false; // boolean checkLocation = false;
boolean isActives = false; // boolean isActives = false;
Connection conn = null; Connection conn = null;
PreparedStatement pstmtStock = null ,pstmt1 = null; PreparedStatement pstmtStock = null ,pstmt1 = null;
PreparedStatement pstmtStockInsertSordAlloc = null; PreparedStatement pstmtStockInsertSordAlloc = null;
...@@ -1520,18 +1598,21 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1520,18 +1598,21 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
double minSelfLife=0; double minSelfLife=0;
// ADDED BY RITESH ON 15/07/14 START // ADDED BY RITESH ON 15/07/14 START
String singleLot = ""; String singleLot = "";
TreeMap stockLot=new TreeMap<String,Double>(); // TreeMap stockLot=new TreeMap<String,Double>();
TreeMap<String,ArrayList<String>>stockLotDetail=new TreeMap<String, ArrayList<String>>(); // TreeMap<String,ArrayList<String>>stockLotDetail=new TreeMap<String, ArrayList<String>>();
ArrayList<String> lotList= new ArrayList<String>(); // ArrayList<String> lotList= new ArrayList<String>();
ArrayList<String> lotDeatilList = new ArrayList<String>(); // ArrayList<String> lotDeatilList = new ArrayList<String>();
PreparedStatement pstmtShip = null; PreparedStatement pstmtShip = null;
ResultSet rsShip = null; ResultSet rsShip = null;
String sqlShip = ""; String sqlShip = "";
double shipperSizeLot = 0; double shipperSizeLot = 0;
boolean getLotFlag = false ; // boolean getLotFlag = false ;
double totalQtyAvailAlloc = 0d; double totalQtyAvailAlloc = 0d;
boolean isQtyAvail = false ; // boolean isQtyAvail = false ;
int linenoDet = 0; int linenoDet = 0;
int count =0;
boolean isHdr = true;
String allocqtyStr = "";
// ADDED BY RITESH ON 15/07/14 END // ADDED BY RITESH ON 15/07/14 END
try try
{ {
...@@ -1549,6 +1630,58 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1549,6 +1630,58 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
//SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat()); //SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
//connDriver = null; //connDriver = null;
// 21/08/12 manoharan get the shipping site // 21/08/12 manoharan get the shipping site
System.out.println("soLnValues::"+soLnValues);
// ArrayList listmap = new ArrayList(soLnValues.values());System.out.println("listmap::"+listmap);
// for(int k = 0 ; k < listmap.size();k++)
// {
// ADDED BY RITESH ON 09/08/14 START
Set set = soLnValues.keySet();System.out.println("SET::"+set);
Iterator it = set.iterator();
while(it.hasNext())
{
count ++;
TreeMap stockLot=new TreeMap<String,Double>();
TreeMap<String,ArrayList<String>>stockLotDetail=new TreeMap<String, ArrayList<String>>();
ArrayList<String> lotList= new ArrayList<String>();
ArrayList<String> lotDeatilList = new ArrayList<String>();
boolean isQtyAvail = false ;
boolean checkLocation = false;
boolean isActives = false;
boolean getLotFlag = false ;
if(count>1)
isHdr = false;
String key = (String)it.next();System.out.println("key value::"+key);System.out.println("soLnValues.get(key)::"+soLnValues.get(key));
String solnValueList[] = ((String)soLnValues.get(key)).split(",");System.out.println("solnValueList::"+solnValueList);
saleOrder = (String)solnValueList[0];
lineNo = (String)solnValueList[1];
itemCode =(String) solnValueList[2];
allocqtyStr = (String)solnValueList[3];
allocQty = Double.parseDouble(allocqtyStr);
expLev = (String)solnValueList[4];
holdFlag = (String)solnValueList[5];
activeAllow =(String) solnValueList[6];
// ArrayList solnValueList = new ArrayList();
// solnValueList =(ArrayList) soLnValues.get(key);System.out.println("solnValueList:12:"+solnValueList);
// saleOrder = (String)solnValueList.get(0);
// lineNo = (String)solnValueList.get(1);
// itemCode =(String) solnValueList.get(2);
// allocQty = Double.parseDouble((solnValueList.get(3)).toString());
// expLev = (String)solnValueList.get(4);
// holdFlag = (String)solnValueList.get(5);
// activeAllow =(String)solnValueList.get(6);
System.out.println(" saleOrder::"+saleOrder);
System.out.println(" lineNo::"+lineNo);
System.out.println(" itemCode::"+itemCode);
System.out.println(" allocQty::"+allocQty);
System.out.println(" expLev::"+expLev);
System.out.println(" holdFlag::"+holdFlag);
System.out.println(" activeAllow::"+activeAllow);
// ADDED BY RITESH ON 09/08/14 END
getDataSql = "SELECT SITE_CODE__SHIP FROM SORDER WHERE SALE_ORDER = ? "; getDataSql = "SELECT SITE_CODE__SHIP FROM SORDER WHERE SALE_ORDER = ? ";
pstmtStock = conn.prepareStatement(getDataSql); pstmtStock = conn.prepareStatement(getDataSql);
...@@ -1661,9 +1794,9 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1661,9 +1794,9 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
+"((SORDITEM.QUANTITY*SORDITEM.CONV__QTY_STDQTY) - (SORDITEM.QTY_DESP*SORDITEM.CONV__QTY_STDQTY) - SORDITEM.QTY_ALLOC) PENDING_QUANTITY," +"((SORDITEM.QUANTITY*SORDITEM.CONV__QTY_STDQTY) - (SORDITEM.QTY_DESP*SORDITEM.CONV__QTY_STDQTY) - SORDITEM.QTY_ALLOC) PENDING_QUANTITY,"
+"SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR," +"SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR,"
+"SORDER.SITE_CODE,SORDITEM.EXP_LEV, " +"SORDER.SITE_CODE,SORDITEM.EXP_LEV, "
+"SORDER.PART_QTY AS PART_QTY, CUSTOMER.SINGLE_LOT AS SINGLE_LOT, SORDITEM.MIN_SHELF_LIFE AS MIN_SHELF_LIFE "//Gulzar 5/13/2012 +"SORDER.PART_QTY AS PART_QTY, SORDER.SINGLE_LOT AS SINGLE_LOT, SORDITEM.MIN_SHELF_LIFE AS MIN_SHELF_LIFE "//Gulzar 5/13/2012
+" ,SORDER.ALLOC_FLAG AS ALLOC_FLAG , WAVE_TYPE.MASTER_PACK_ALLOW , WAVE_TYPE.ACTIVE_PICK_ALLOW , WAVE_TYPE.STOCK_TO_DOCK_ALLOW " +" ,SORDER.ALLOC_FLAG AS ALLOC_FLAG , WAVE_TYPE.MASTER_PACK_ALLOW , WAVE_TYPE.ACTIVE_PICK_ALLOW , WAVE_TYPE.STOCK_TO_DOCK_ALLOW "
+ " ,CUSTOMER.SINGLE_LOT AS SINGLE_LOT " //ADDED BY RITESH ON 15/07/14 + " ,SORDER.SINGLE_LOT AS SINGLE_LOT " //ADDED BY RITESH ON 15/07/14
+"FROM SORDDET,SORDER,SORDITEM,CUSTOMER,ITEM , WAVE_TYPE " +"FROM SORDDET,SORDER,SORDITEM,CUSTOMER,ITEM , WAVE_TYPE "
//Changed by sumit 20/08/12 getting column data end. //Changed by sumit 20/08/12 getting column data end.
+"WHERE ( SORDER.SALE_ORDER = SORDDET.SALE_ORDER ) AND " +"WHERE ( SORDER.SALE_ORDER = SORDDET.SALE_ORDER ) AND "
...@@ -1697,7 +1830,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1697,7 +1830,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
if(rs.next()) if(rs.next())
{ {
pendingQty = rs.getInt("PENDING_QUANTITY"); pendingQty = rs.getInt("PENDING_QUANTITY");
singleLot = rs.getString("SINGLE_LOT"); //ADDED BY RITESH ON 15/07/14 singleLot = rs.getString("SINGLE_LOT")==null?"N":rs.getString("SINGLE_LOT"); //ADDED BY RITESH ON 15/07/14
} }
rs.close(); rs.close();
rs = null; rs = null;
...@@ -1738,7 +1871,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1738,7 +1871,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
+"AND INVSTAT.AVAILABLE = 'Y' " +"AND INVSTAT.AVAILABLE = 'Y' "
+"AND STOCK.ITEM_CODE = ? AND STOCK.SITE_CODE = ? " +"AND STOCK.ITEM_CODE = ? AND STOCK.SITE_CODE = ? "
+"AND (STOCK.QUANTITY - STOCK.ALLOC_QTY - case when STOCK.HOLD_QTY is null then 0 else STOCK.HOLD_QTY end) > 0 " +"AND (STOCK.QUANTITY - STOCK.ALLOC_QTY - case when STOCK.HOLD_QTY is null then 0 else STOCK.HOLD_QTY end) > 0 "
+"AND NOT EXISTS (SELECT 1 FROM INV_RESTR I WHERE I.INV_STAT = INVSTAT.INV_STAT AND I.REF_SER = 'S-DSP' )"; +"AND NOT EXISTS (SELECT 1 FROM INV_RESTR I WHERE I.INV_STAT = INVSTAT.INV_STAT AND I.REF_SER = 'S-DSP' )" + " AND STOCK.LOC_CODE NOT IN ('D1911C ') ";
if("N".equalsIgnoreCase(activeAllow)) if("N".equalsIgnoreCase(activeAllow))
...@@ -1746,8 +1879,8 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1746,8 +1879,8 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
getDataSql = getDataSql.concat(" AND LOCATION.INV_STAT NOT IN(?,?) "); getDataSql = getDataSql.concat(" AND LOCATION.INV_STAT NOT IN(?,?) ");
} }
//Added by manoj dtd 09/08/2013 to implement FEFO concept //Added by manoj dtd 09/08/2013 to implement FEFO concept
// getDataSql=getDataSql+"AND (MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE) > ? ) "; getDataSql=getDataSql+" AND (MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE) > ? ) ";
getDataSql=getDataSql+"AND (MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE) > ? ) AND STOCK.LOC_CODE NOT IN ('D1911C')"; // getDataSql=getDataSql+"AND (MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE) > ? ) AND STOCK.LOC_CODE NOT IN ('D1911C')";
if(checkLocation) //added by kunal on 14/NOV/13 DI3ESUN009 if(checkLocation) //added by kunal on 14/NOV/13 DI3ESUN009
{ {
...@@ -1799,7 +1932,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1799,7 +1932,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
rs = pstmtStock.executeQuery(); rs = pstmtStock.executeQuery();
System.out.println("siteCode------"+ siteCodeShip); System.out.println("siteCodeShip------"+ siteCodeShip);
System.out.println("itemCode------"+ itemCode); System.out.println("itemCode------"+ itemCode);
System.out.println("saleOrder------"+ saleOrder); System.out.println("saleOrder------"+ saleOrder);
System.out.println("siteCode------"+ siteCode); System.out.println("siteCode------"+ siteCode);
...@@ -1860,7 +1993,6 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1860,7 +1993,6 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
if(sz == 0 ) if(sz == 0 )
{ {
if("N".equalsIgnoreCase(singleLot.trim())) if("N".equalsIgnoreCase(singleLot.trim()))
{ {
totalQtyAvailAlloc = totalQtyAvailAlloc + qtyAvailAlloc ; totalQtyAvailAlloc = totalQtyAvailAlloc + qtyAvailAlloc ;
...@@ -1869,13 +2001,18 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1869,13 +2001,18 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
isQtyAvail = true; isQtyAvail = true;
} }
lotDeatilList.add(lotNo+"@"+lotSl+"@"+locCode+"@"+unit+"@"+qtyAvailAlloc+"@"+grade+"@"+convQtyStduom+"@"+quantity+"@"+siteCodeMfg); lotDeatilList.add(lotNo+"@"+lotSl+"@"+locCode+"@"+unit+"@"+qtyAvailAlloc+"@"+grade+"@"+convQtyStduom+"@"+quantity+"@"+siteCodeMfg);
System.out.println("lotDeatilList1 ::"+lotDeatilList);
} }
System.out.println("lotDeatilList2 ::"+lotDeatilList);
//ADDED BY RITESH ON 16/07/14 START //ADDED BY RITESH ON 16/07/14 START
if("Y".equalsIgnoreCase(singleLot.trim())) if("Y".equalsIgnoreCase(singleLot.trim()))
{ {
System.out.println("singleLot y CONDITION ::");
if(stockLot.containsKey(lotNo)) if(stockLot.containsKey(lotNo))
{ {
System.out.println("singleLot y CONDITION IF ::");
stockLot.put(lotNo, ((Double)stockLot.get(lotNo)+qtyAvailAlloc)); stockLot.put(lotNo, ((Double)stockLot.get(lotNo)+qtyAvailAlloc));
ArrayList<String> stockList=new ArrayList<String>(); ArrayList<String> stockList=new ArrayList<String>();
stockList=stockLotDetail.get(lotNo); stockList=stockLotDetail.get(lotNo);
...@@ -1886,6 +2023,8 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1886,6 +2023,8 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
} }
else else
{ {
System.out.println("singleLot y CONDITION ELSE ::");
stockLot.put(lotNo,qtyAvailAlloc); stockLot.put(lotNo,qtyAvailAlloc);
ArrayList<String> stockList=new ArrayList<String>(); ArrayList<String> stockList=new ArrayList<String>();
//stockList=stockLotDetail.get(lotNo); //stockList=stockLotDetail.get(lotNo);
...@@ -1909,6 +2048,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1909,6 +2048,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
System.out.println("qty1---"+qty1+"---qty to be allocate---"+allocQty); System.out.println("qty1---"+qty1+"---qty to be allocate---"+allocQty);
if(qty1>=allocQty) if(qty1>=allocQty)
{ {
System.out.println("qty1>=allocQty::y");
// lotDetail=stockLotDetail.get(lotKeyVal).get(0); // lotDetail=stockLotDetail.get(lotKeyVal).get(0);
getLotFlag = true; // break add lot no getLotFlag = true; // break add lot no
lotDeatilList = stockLotDetail.get(lotKeyVal); lotDeatilList = stockLotDetail.get(lotKeyVal);
...@@ -1917,7 +2057,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1917,7 +2057,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
} }
} }
} }System.out.println(" OUT OF Y / N SINGLELOT");
} }
if(getLotFlag) if(getLotFlag)
{ {
...@@ -1927,10 +2067,13 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1927,10 +2067,13 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
} }
System.out.println(" lotDeatilList ::"+lotDeatilList); System.out.println(" lotDeatilList ::"+lotDeatilList);
System.out.println(" isQtyAvail ::["+isQtyAvail+"]"); System.out.println(" isQtyAvail ::["+isQtyAvail+"]");
if(lotDeatilList.size() > 0 && isQtyAvail) if(lotDeatilList.size() > 0 && isQtyAvail)
{ {
if(isHdr)
{
System.out.println("New Record Inserting*********============***********"); System.out.println("New Record Inserting*********============***********");
xmlBuff = new StringBuffer(); xmlBuff = new StringBuffer();
xmlBuff.append("<?xml version='1.0' encoding='ISO-8859-1'?>\n"); xmlBuff.append("<?xml version='1.0' encoding='ISO-8859-1'?>\n");
xmlBuff.append("<DocumentRoot>"); xmlBuff.append("<DocumentRoot>");
...@@ -1966,8 +2109,10 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -1966,8 +2109,10 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
xmlBuff.append("<add_term><![CDATA["+ chgTerm +"]]></add_term>"); xmlBuff.append("<add_term><![CDATA["+ chgTerm +"]]></add_term>");
xmlBuff.append("<add_user><![CDATA["+ chgUser +"]]></add_user>"); xmlBuff.append("<add_user><![CDATA["+ chgUser +"]]></add_user>");
xmlBuff.append("<active_pick_allow><![CDATA["+ activeAllow +"]]></active_pick_allow>"); xmlBuff.append("<active_pick_allow><![CDATA["+ activeAllow +"]]></active_pick_allow>");
xmlBuff.append("<alloc_source><![CDATA[P]]></alloc_source>");
xmlBuff.append("<alloc_flag><![CDATA[A]]></alloc_flag>");
xmlBuff.append("</Detail1>"); xmlBuff.append("</Detail1>");
}
for(int i = 0; i < lotDeatilList.size();i++) for(int i = 0; i < lotDeatilList.size();i++)
{ {
...@@ -2135,14 +2280,14 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2135,14 +2280,14 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
xmlBuff.append("<lot_sl><![CDATA["+lotSl+"]]></lot_sl>"); xmlBuff.append("<lot_sl><![CDATA["+lotSl+"]]></lot_sl>");
xmlBuff.append("<quantity><![CDATA["+ lotQtyToBeAllocated +"]]></quantity>"); xmlBuff.append("<quantity><![CDATA["+ lotQtyToBeAllocated +"]]></quantity>");
xmlBuff.append("<dealloc_qty><![CDATA[0]]></dealloc_qty>"); xmlBuff.append("<dealloc_qty><![CDATA[0]]></dealloc_qty>");
xmlBuff.append("<site_code><![CDATA["+ siteCode +"]]></site_code>"); xmlBuff.append("<site_code><![CDATA["+ siteCodeShip +"]]></site_code>");
xmlBuff.append("<exp_lev><![CDATA["+ expLev +"]]></exp_lev>"); xmlBuff.append("<exp_lev><![CDATA["+ expLev +"]]></exp_lev>");
xmlBuff.append("<pending_qty><![CDATA["+ qty +"]]></pending_qty>"); xmlBuff.append("<pending_qty><![CDATA["+ qty +"]]></pending_qty>");
xmlBuff.append("</Detail2>"); xmlBuff.append("</Detail2>");
// xmlBuff.append("</Header0>"); // xmlBuff.append("</Header0>");
// xmlBuff.append("</group0>"); // xmlBuff.append("</group0>");
// xmlBuff.append("</DocumentRoot>"); // xmlBuff.append("</DocumentRoot>");
// xmlString = xmlBuff.toString(); // xmlString = xmlBuff.toSlinenoDettring();
// System.out.println("@@@@@2: xmlString:"+xmlBuff.toString()); // System.out.println("@@@@@2: xmlString:"+xmlBuff.toString());
// System.out.println("...............just before savdata()"); // System.out.println("...............just before savdata()");
// System.out.println("Getting site code value"); // System.out.println("Getting site code value");
...@@ -2153,7 +2298,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2153,7 +2298,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
// //
// retString = saveData(siteCode,xmlString,conn); // retString = saveData(siteCode,xmlString,conn);
// System.out.println("@@@@@2: retString11111111111:"+retString); // System.out.println("@@@@@2: retString11111111111:"+retString);
// if (retString.indexOf("Success") > -1) // if (retString.indexOf("linenoDetSuccess") > -1)
// { // {
// System.out.println("@@@@@@3: retString22222222222"+retString); // System.out.println("@@@@@@3: retString22222222222"+retString);
// //
...@@ -2164,7 +2309,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2164,7 +2309,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
// System.out.println("tranIdForIssue"+ tranIdForIssue); // System.out.println("tranIdForIssue"+ tranIdForIssue);
// retString=allocPrc.confirm(tranIdForIssue, xtraParams, "",conn); // retString=allocPrc.confirm(tranIdForIssue, xtraParams, "",conn);
// //
// System.out.println("@@@@@@3: retString Confirm"+retString); // System.out.println(linenoDet"@@@@@@3: retString Confirm"+retString);
// System.out.println("=====Its Confirmed====="); // System.out.println("=====Its Confirmed=====");
// System.out.println("retString from conf ::"+retString); // System.out.println("retString from conf ::"+retString);
// } // }
...@@ -2175,7 +2320,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2175,7 +2320,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
// } // }
} }
/*if (lotQtyToBeAllocated > 0) /*if (lotQtyToBeAllocated > linenoDet0)
{ {
invallocTrace.setChgUser(chgUser); invallocTrace.setChgUser(chgUser);
invallocTrace.setChgTerm(chgTerm); invallocTrace.setChgTerm(chgTerm);
...@@ -2185,7 +2330,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2185,7 +2330,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
if (errString != null && errString.trim().length() > 0) if (errString != null && errString.trim().length() > 0)
{ {
System.out.println("manohar connection rolledback errString :::"+ errString ); System.out.println("manohar connection rolledback errString :::"+ errString );
conn.rollback(); conn.rollback();linenoDet
return errString; return errString;
} }
...@@ -2198,7 +2343,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2198,7 +2343,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
+" WHERE SALE_ORDER = '" + saleOrder + "' " +" WHERE SALE_ORDER = '" + saleOrder + "' "
+" AND LINE_NO = '" + lineNo + "' " +" AND LINE_NO = '" + lineNo + "' "
+" AND EXP_LEV = '" + expLev + "' "; +" AND EXP_LEV = '" + expLev + "' ";
tran_id
System.out.println("updateSql------->"+updateSorditem); System.out.println("updateSql------->"+updateSorditem);
st = conn.createStatement(); st = conn.createStatement();
st.executeUpdate(updateSorditem); st.executeUpdate(updateSorditem);
...@@ -2247,7 +2392,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2247,7 +2392,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
+"ITEM_CODE,QUANTITY ,LOT_NO, LOT_SL, LOC_CODE, UNIT, QTY_ALLOC," +"ITEM_CODE,QUANTITY ,LOT_NO, LOT_SL, LOC_CODE, UNIT, QTY_ALLOC,"
+"ITEM_REF, DATE_ALLOC, STATUS,ITEM_GRADE, EXP_DATE, ALLOC_MODE, " +"ITEM_REF, DATE_ALLOC, STATUS,ITEM_GRADE, EXP_DATE, ALLOC_MODE, "
+" CONV__QTY_STDUOM, UNIT__STD, QUANTITY__STDUOM, " +" CONV__QTY_STDUOM, UNIT__STD, QUANTITY__STDUOM, "
+"MFG_DATE, SITE_CODE__MFG ) " +"MFG_DATE, SITEtranIdForIssue_CODE__MFG ) "
+"VALUES ( ?, ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ," +"VALUES ( ?, ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? ,"
+" ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) " ; +" ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ? ) " ;
...@@ -2287,7 +2432,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2287,7 +2432,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
//UNIT //UNIT
pstmtStockInsertSordAlloc.setString(11, unit); pstmtStockInsertSordAlloc.setString(11, unit);
System.out.println("unit------->"+unit); System.out.println("unit------->"+unit);
//QTY_ALLOC tranIdForIssue //QTY_ALLOC
pstmtStockInsertSordAlloc.setDouble(12, lotQtyToBeAllocated); pstmtStockInsertSordAlloc.setDouble(12, lotQtyToBeAllocated);
System.out.println("lotQtyToBeAllocated------->"+lotQtyToBeAllocated); System.out.println("lotQtyToBeAllocated------->"+lotQtyToBeAllocated);
//ITEM_REF //ITEM_REF
...@@ -2297,7 +2442,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2297,7 +2442,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
pstmtStockInsertSordAlloc.setDate(14,dateAlloc); pstmtStockInsertSordAlloc.setDate(14,dateAlloc);
System.out.println("dateAlloc------->"+dateAlloc); System.out.println("dateAlloc------->"+dateAlloc);
//STATUS //STATUS
pstmtStockInsertSordAlloc.setString(15,"P"); pstmtStockInsertSordAllotranIdForIssuec.setString(15,"P");
System.out.println("status------->P"); System.out.println("status------->P");
//ITEM_GRADE //ITEM_GRADE
pstmtStockInsertSordAlloc.setString(16,grade); pstmtStockInsertSordAlloc.setString(16,grade);
...@@ -2349,11 +2494,16 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2349,11 +2494,16 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
*/ */
}//end of while }//end of while
}
}
if(xmlBuff!=null)
{
xmlBuff.append("</Header0>"); xmlBuff.append("</Header0>");
xmlBuff.append("</group0>"); xmlBuff.append("</group0>");
xmlBuff.append("</DocumentRoot>"); xmlBuff.append("</DocumentRoot>");
xmlString = xmlBuff.toString(); xmlString = xmlBuff.toString();
System.out.println("@@@@@2: xmlString:"+xmlBuff.toString()); System.out.println("@@@@@2: xmlString:"+xmlBuff.toString());
}
System.out.println("...............just before savdata()"); System.out.println("...............just before savdata()");
System.out.println("Getting site code value"); System.out.println("Getting site code value");
siteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode"); siteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
...@@ -2381,9 +2531,10 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2381,9 +2531,10 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
else else
{ {
//System.out.println("[" + retString + "]"); //System.out.println("[" + retString + "]");
return retString; // return retString ;
return errString = itmDBAccessEJB.getErrorString("", "VSTQTYER", "", "", conn);
} }
} //CHANGE BY RITESH ON 18/07/14 END //CHANGE BY RITESH ON 18/07/14 END
rs.close(); rs.close();
pstmtStock.clearParameters(); pstmtStock.clearParameters();
pstmtStock.close(); pstmtStock.close();
...@@ -2402,6 +2553,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc ...@@ -2402,6 +2553,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
//errString = "VSTQTYER"; //errString = "VSTQTYER";
conn.rollback(); conn.rollback();
} }
} }
catch(SQLException se) catch(SQLException se)
{ {
......
...@@ -784,7 +784,13 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat ...@@ -784,7 +784,13 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat
int elements = 0,elements1 = 0,cnt=0,elements2 = 0 ; int elements = 0,elements1 = 0,cnt=0,elements2 = 0 ;
ConnDriver connDriver = new ConnDriver(); //added by rajendra on 02/11/07 ConnDriver connDriver = new ConnDriver(); //added by rajendra on 02/11/07
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB(); ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
String sql = "",shipStatus=""; String sql = "",shipStatus="",retString="",xmlString="";
double qty=0d;
HashMap<String, ArrayList<String>> hdrMap=new HashMap<String, ArrayList<String>>();
HashMap<String, ArrayList<DetElement>> detailMap=new HashMap<String, ArrayList<DetElement>>();
StringBuffer xmlBuff = null;
Timestamp sysDate = null;
Calendar currentDate = Calendar.getInstance();
try try
{ {
...@@ -1095,7 +1101,85 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat ...@@ -1095,7 +1101,85 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
errString = sorderDeAllocate(saleOrder,siteCodeShip, lineNo, itemCode, DeallocQty, expLev,custCode,lotSl,lotNo,locCode,tranId,allocLineno ,activeAllow,xtraParams ); qty=0;
sql="SELECT ITEM_CODE,(CASE WHEN qty_alloc IS NULL THEN 0 ELSE qty_alloc END), EXP_LEV FROM SORDITEM WHERE SALE_ORDER = ? AND LINE_NO = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,saleOrder);
pstmt.setString(2,lineNo);
rs = pstmt.executeQuery();
if(rs.next())
{
//itemCode = rs.getString("ITEM_CODE");
qty = rs.getDouble(2);
expLev = rs.getString("EXP_LEV");
System.out.println("=========qty========="+qty);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql="SELECT CUST_CODE FROM SORDER WHERE SALE_ORDER = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,saleOrder);
rs = pstmt.executeQuery();
if(rs.next())
{
custCode = rs.getString("cust_code");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
//errString = sorderDeAllocate(saleOrder,siteCodeShip, lineNo, itemCode, DeallocQty, expLev,custCode,lotSl,lotNo,locCode,tranId,allocLineno ,activeAllow,xtraParams );
if(!hdrMap.containsKey(saleOrder))
{
ArrayList< String> hdrElem= new ArrayList<String>();
hdrElem.add(custCode);
hdrElem.add(saleOrder);
hdrElem.add(siteCodeShip);
hdrElem.add(chgTerm);
hdrElem.add(chgUser);
hdrElem.add(activeAllow);
hdrMap.put(saleOrder, hdrElem);
DetElement detObj = new DetElement();
detObj.setLineNo(lineNo);
detObj.setItemCode(itemCode);
detObj.setDeallocQty(DeallocQty);
detObj.setExpLev(expLev);
detObj.setLotNo(lotNo);
detObj.setLotSl(lotSl);
detObj.setLocCode(locCode);
detObj.setSiteCode(siteCode);
detObj.setPendingQty(qty);
ArrayList< DetElement> detElem= new ArrayList<DetElement>();
detElem.add(detObj);
detailMap.put(saleOrder, detElem);
}
else
{
DetElement detObj = new DetElement();
detObj.setLineNo(lineNo);
detObj.setItemCode(itemCode);
detObj.setDeallocQty(DeallocQty);
detObj.setExpLev(expLev);
detObj.setLotNo(lotNo);
detObj.setLotSl(lotSl);
detObj.setLocCode(locCode);
detObj.setSiteCode(siteCode);
detObj.setPendingQty(qty);
ArrayList<DetElement> detElem= new ArrayList<DetElement>();
detElem= detailMap.get(saleOrder);
detElem.add(detObj);
detailMap.put(saleOrder, detElem);
}
if (errString != null && errString.trim().length() > 0) if (errString != null && errString.trim().length() > 0)
{ {
System.out.println("errString :"+errString); System.out.println("errString :"+errString);
...@@ -1107,6 +1191,133 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat ...@@ -1107,6 +1191,133 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat
} }
}// out for loop }// out for loop
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
String sysDateStr = sdf.format(currentDate.getTime());
System.out.println("Now the date is :=> " + sysDateStr);
sysDate = Timestamp.valueOf(genericUtility.getValidDateString(
sysDateStr, genericUtility.getApplDateFormat(),
genericUtility.getDBDateFormat())
+ " 00:00:00.0");
StockDeAllocConf confirmdealloc = new StockDeAllocConf();
xmlBuff = new StringBuffer();
String keyParam="";
ArrayList< String> hdrList=null;
Set< String> keySet = hdrMap.keySet();
Iterator< String> itr = keySet.iterator();
while(itr.hasNext())
{
int linenoDet=0;
keyParam=itr.next();
hdrList= hdrMap.get(keyParam);
System.out.println("hdrList"+hdrList);
xmlBuff = new StringBuffer();
xmlBuff.append("<?xml version='1.0' encoding='ISO-8859-1'?>\n");
xmlBuff.append("<DocumentRoot>");
xmlBuff.append("<description>").append("Datawindow Root").append("</description>");
xmlBuff.append("<group0>");
xmlBuff.append("<description>").append("Group0 description").append("</description>");
xmlBuff.append("<Header0>");
xmlBuff.append("<objName><![CDATA[").append("sorddealloc").append("]]></objName>");
xmlBuff.append("<pageContext><![CDATA[").append("1").append("]]></pageContext>");
xmlBuff.append("<objContext><![CDATA[").append("1").append("]]></objContext>");
xmlBuff.append("<editFlag><![CDATA[").append("A").append("]]></editFlag>");
xmlBuff.append("<focusedColumn><![CDATA[").append("").append("]]></focusedColumn>");
xmlBuff.append("<action><![CDATA[").append("SAVE").append("]]></action>");
xmlBuff.append("<elementName><![CDATA[").append("").append("]]></elementName>");
xmlBuff.append("<keyValue><![CDATA[").append("1").append("]]></keyValue>");
xmlBuff.append("<taxKeyValue><![CDATA[").append("").append("]]></taxKeyValue>");
xmlBuff.append("<saveLevel><![CDATA[").append("1").append("]]></saveLevel>");
xmlBuff.append("<forcedSave><![CDATA[").append(true).append("]]></forcedSave>");
xmlBuff.append("<taxInFocus><![CDATA[").append(false).append("]]></taxInFocus>");
xmlBuff.append("<description>").append("Header0 members").append("</description>");
xmlBuff.append("<Detail1 dbID=\"\" domID=\"1\" objName=\"sorddealloc\" objContext=\"1\">");
xmlBuff.append("<attribute selected=\"N\" updateFlag=\"A\" status=\"N\" pkNames=\"\"/>");
xmlBuff.append("<tran_id/>");
xmlBuff.append("<TRAN_DATE><![CDATA["+ sdf.format(sysDate) +"]]></TRAN_DATE>");
xmlBuff.append("<cust_code><![CDATA["+ hdrList.get(0) +"]]></cust_code>");
xmlBuff.append("<sale_order><![CDATA["+ hdrList.get(1) +"]]></sale_order>");
xmlBuff.append("<site_code><![CDATA["+ hdrList.get(2) +"]]></site_code>");
xmlBuff.append("<site_code__ship><![CDATA["+ hdrList.get(2) +"]]></site_code__ship>");
xmlBuff.append("<chg_date><![CDATA["+sdf.format(sysDate)+"]]></chg_date>");
xmlBuff.append("<chg_term><![CDATA["+ chgTerm +"]]></chg_term>");
xmlBuff.append("<chg_user><![CDATA["+ chgUser +"]]></chg_user>");
xmlBuff.append("<add_date><![CDATA["+sdf.format(sysDate)+"]]></add_date>");
xmlBuff.append("<add_term><![CDATA["+ chgTerm +"]]></add_term>");
xmlBuff.append("<add_user><![CDATA["+ chgUser +"]]></add_user>");
xmlBuff.append("<alloc_source><![CDATA[P]]></alloc_source>");
xmlBuff.append("<active_pick_allow><![CDATA["+ activeAllow +"]]></active_pick_allow>");
xmlBuff.append("</Detail1>");
ArrayList<DetElement> detElem= detailMap.get(keyParam);
for(int i=0; i<detElem.size();i++)
{
DetElement detObj=detElem.get(i);
linenoDet++;
System.out.println("keyParam["+keyParam+"]");
System.out.println("detElemsize["+detElem.size()+"]");
xmlBuff.append("<Detail2 dbID='' domID=\"1\" objName=\"sorddealloc\" objContext=\"2\">");
xmlBuff.append("<attribute pkNames=\"\" selected=\"N\" updateFlag=\"A\" status=\"N\" />");
xmlBuff.append("<line_no><![CDATA["+linenoDet+"]]></line_no>");
//xmlBuff.append("<line_no><![CDATA[1]]></line_no>");
xmlBuff.append("<tran_id/>");
xmlBuff.append("<sale_order><![CDATA["+ keyParam +"]]></sale_order>");
xmlBuff.append("<line_no__sord><![CDATA["+detObj.getLineNo() +"]]></line_no__sord>");
xmlBuff.append("<item_code><![CDATA["+ detObj.getItemCode() +"]]></item_code>");
xmlBuff.append("<loc_code><![CDATA["+detObj.getLocCode()+"]]></loc_code>");
xmlBuff.append("<lot_no><![CDATA["+ detObj.getLotNo() +"]]></lot_no>");
xmlBuff.append("<lot_sl><![CDATA["+detObj.getLotSl()+"]]></lot_sl>");
xmlBuff.append("<quantity><![CDATA["+ detObj.getDeallocQty() +"]]></quantity>");
xmlBuff.append("<dealloc_qty><![CDATA[0]]></dealloc_qty>");
xmlBuff.append("<site_code><![CDATA["+ detObj.getSiteCode() +"]]></site_code>");
xmlBuff.append("<exp_lev><![CDATA["+ detObj.getExpLev() +"]]></exp_lev>");
xmlBuff.append("<pending_qty><![CDATA["+ detObj.getPendingQty() +"]]></pending_qty>");
xmlBuff.append("</Detail2>");
}
xmlBuff.append("</Header0>");
xmlBuff.append("</group0>");
xmlBuff.append("</DocumentRoot>");
xmlString = xmlBuff.toString();
System.out.println("@@@@@2: xmlString:"+xmlBuff.toString());
System.out.println("...............just before savdata()");
System.out.println("Getting site code value");
siteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
System.out.println("==site code =="+siteCode);
System.out.println("Printing xmlString"+xmlString);
System.out.println("conn::: "+conn);
retString = saveData(siteCode,xmlString,conn);
System.out.println("@@@@@2: retString11111111111:"+retString);
if (retString.indexOf("Success") > -1)
{
System.out.println("@@@@@@3: retString22222222222"+retString);
String[] arrayForTranId = retString.split("<TranID>");
int endIndex = arrayForTranId[1].indexOf("</TranID>");
System.out.println("***********going for confirmation************");
String tranIdForIssue = arrayForTranId[1].substring(0,endIndex);
System.out.println("tranIdForIssue"+ tranIdForIssue);
retString=confirmdealloc.confirm(tranIdForIssue, xtraParams, "",conn);
System.out.println("@@@@@@3: retString Confirm"+retString);
System.out.println("=====Its Confirmed=====");
System.out.println("retString from conf ::"+retString);
if(retString.indexOf("CONFSUCCES") > -1 )
{
conn.commit();
}
}
}//while
if (isFlag == false) if (isFlag == false)
{ {
/*if(allocqtyflag = true) /*if(allocqtyflag = true)
...@@ -1236,7 +1447,7 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat ...@@ -1236,7 +1447,7 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat
} }
private String sorderDeAllocate(String saleOrder,String siteCodeShip, String lineNo, String itemCode, double DeallocQty, String expLev,String custCode,String lotSl,String lotNo,String locCode,String tranId,String allocLineno ,String activeAllow,String xtraParams ) throws ITMException /*private String sorderDeAllocate(String saleOrder,String siteCodeShip, String lineNo, String itemCode, double DeallocQty, String expLev,String custCode,String lotSl,String lotNo,String locCode,String tranId,String allocLineno ,String activeAllow,String xtraParams ) throws ITMException
{ {
System.out.println("updateSOrder calling .............."); System.out.println("updateSOrder calling ..............");
String updateSorditem = null,updateSordAllocDet=null; String updateSorditem = null,updateSordAllocDet=null;
...@@ -1286,10 +1497,10 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat ...@@ -1286,10 +1497,10 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat
invallocTraceMap.put("chg_term",chgTerm); invallocTraceMap.put("chg_term",chgTerm);
invallocTraceMap.put("chg_win","W_SORD_DEALLOC"); invallocTraceMap.put("chg_win","W_SORD_DEALLOC");
/*generate new confirmed transaction while process the data from manual generate new confirmed transaction while process the data from manual
stock Deallocation process.Created new Transaction for deallocated quantity for StockAllocation. stock Deallocation process.Created new Transaction for deallocated quantity for StockAllocation.
It will save and confirm the Stock allocation transactionfor allocated quantity It will save and confirm the Stock allocation transactionfor allocated quantity
*/
//Start Added by Chandrashekar on 12-june-2014 //Start Added by Chandrashekar on 12-june-2014
invallocTraceMap.put("ref_id",saleOrder); invallocTraceMap.put("ref_id",saleOrder);
invallocTraceMap.put("ref_line",lineNo); invallocTraceMap.put("ref_line",lineNo);
...@@ -1416,7 +1627,7 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat ...@@ -1416,7 +1627,7 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat
} }
// End Added by Chandrashekar on 12-june-2014 // End Added by Chandrashekar on 12-june-2014
/*if (DeallocQty > 0 && saleOrder.trim().length()>0) if (DeallocQty > 0 && saleOrder.trim().length()>0)
{ {
invallocTraceMap.put("ref_id",saleOrder); invallocTraceMap.put("ref_id",saleOrder);
invallocTraceMap.put("ref_line",lineNo); invallocTraceMap.put("ref_line",lineNo);
...@@ -1499,7 +1710,7 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat ...@@ -1499,7 +1710,7 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat
} }
st.close(); st.close();
conn.commit();*/ conn.commit();
} }
catch(SQLException se) catch(SQLException se)
{ {
...@@ -1549,7 +1760,7 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat ...@@ -1549,7 +1760,7 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat
return errString; return errString;
} }
} }*/
void cleanup() void cleanup()
{ {
invallocTraceMap.clear(); invallocTraceMap.clear();
...@@ -1598,3 +1809,72 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat ...@@ -1598,3 +1809,72 @@ public class StockDeallocationPrc extends ProcessEJB implements StockDeallocat
} }
} }
class DetElement
{
private String lineNo;
private String itemCode;
private String locCode;
private String lotNo;
private String lotSl;
private double deallocQty;
private String siteCode;
private String expLev;
private double pendingQty;
public String getLineNo() {
return lineNo;
}
public void setLineNo(String lineNo) {
this.lineNo = lineNo;
}
public String getItemCode() {
return itemCode;
}
public void setItemCode(String itemCode) {
this.itemCode = itemCode;
}
public String getLocCode() {
return locCode;
}
public void setLocCode(String locCode) {
this.locCode = locCode;
}
public String getLotNo() {
return lotNo;
}
public void setLotNo(String lotNo) {
this.lotNo = lotNo;
}
public String getLotSl() {
return lotSl;
}
public void setLotSl(String lotSl) {
this.lotSl = lotSl;
}
public double getDeallocQty() {
return deallocQty;
}
public void setDeallocQty(double deallocQty) {
this.deallocQty = deallocQty;
}
public String getSiteCode() {
return siteCode;
}
public void setSiteCode(String siteCode) {
this.siteCode = siteCode;
}
public String getExpLev() {
return expLev;
}
public void setExpLev(String expLev) {
this.expLev = expLev;
}
public double getPendingQty() {
return pendingQty;
}
public void setPendingQty(double pendingQty) {
this.pendingQty = pendingQty;
}
}
\ No newline at end of file
...@@ -62,6 +62,7 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo ...@@ -62,6 +62,7 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo
double availQty =0.0; double availQty =0.0;
String sqlSorditem = ""; String sqlSorditem = "";
PreparedStatement psmtSord = null; PreparedStatement psmtSord = null;
boolean isLocal=false;
try try
{ {
if (conn==null) if (conn==null)
...@@ -69,6 +70,7 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo ...@@ -69,6 +70,7 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo
connDriver = new ConnDriver(); connDriver = new ConnDriver();
conn = connDriver.getConnectDB("Driver"); conn = connDriver.getConnectDB("Driver");
conn.setAutoCommit(false); conn.setAutoCommit(false);
isLocal=true;
} }
itmDBAccessEJB = new ITMDBAccessEJB(); itmDBAccessEJB = new ITMDBAccessEJB();
...@@ -146,7 +148,7 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo ...@@ -146,7 +148,7 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo
{ {
try try
{ {
if(errString != null && errString.trim().length() > 0) if(errString != null && errString.trim().length() > 0 && isLocal)
{ {
if(errString.indexOf("CONFSUCCES") > -1 ) if(errString.indexOf("CONFSUCCES") > -1 )
{ {
...@@ -156,6 +158,8 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo ...@@ -156,6 +158,8 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo
{ {
conn.rollback(); conn.rollback();
} }
conn.close();
conn = null;
} }
if(rs != null) if(rs != null)
{ {
...@@ -177,8 +181,7 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo ...@@ -177,8 +181,7 @@ public class StockDeAllocConf extends ActionHandlerEJB implements StockDeAllocCo
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
} }
conn.close();
conn = null;
} }
catch(Exception e) catch(Exception e)
{ {
......
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