Commit 382f29fe authored by msingh's avatar msingh

D15CKAT001, Changes for MS SQL Server on 07/10/2015 .


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@98665 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 3e253d58
......@@ -99,13 +99,17 @@ public class InvAllocTraceBean
+" and lot_no = ?"
+"and lot_sl = ? for update ";
}
//changed by manish add space before and lot_sl on 31/08/2015
else if (CommonConstants.DB_NAME.equalsIgnoreCase("MSSQL")){
sql =" select alloc_qty from stock (updlock) where item_code = ?"
+" and site_code = ?"
+" and loc_code = ?"
+" and lot_no = ?"
+"and lot_sl = ? ";
+" and lot_sl = ? ";
}
//changed by manish add space before and lot_sl on 31/08/2015
else
{
sql =" select alloc_qty from stock where item_code = ?"
......
......@@ -7,6 +7,7 @@ import java.sql.*;
import org.w3c.dom.*;
import ibase.utility.CommonConstants;
import ibase.webitm.utility.*;
import ibase.system.config.*;
import ibase.webitm.ejb.*;
......@@ -832,10 +833,25 @@ public class InvHoldIC extends ValidatorEJB implements InvHoldICLocal , InvHoldI
pStmt = conn.prepareStatement( sql );
rs = pStmt.executeQuery();
*/
// Changed by Manish on 29/09/15 for ms sql server [start]
String DB = CommonConstants.DB_NAME;
if("mssql".equalsIgnoreCase(DB))
{
sql = "select e.dept_code, d.descr dept_descr, s.descr site_descr from site s, employee e left outer join department d "
+" on e.dept_code = d.dept_code "
+" where e.emp_code = ? "
+" and s.site_code = ?" ;
}
else
{
sql = "select e.dept_code, d.descr dept_descr, s.descr site_descr from employee e, department d, site s "
+" where e.emp_code = ? "
+" and s.site_code = ?"
+" and e.dept_code = d.dept_code(+) ";
}
// Changed by Manish on 29/09/15 for ms sql server [end]
pStmt = conn.prepareStatement( sql );
pStmt.setString(1,loginEmpCode);
pStmt.setString(2,loginSiteCode);
......
......@@ -286,8 +286,9 @@ public class InvHoldRelIC extends ValidatorEJB implements InvHoldRelICLocal , In
rs = pstmt.executeQuery();
if( rs.next() )
{
siteCode1 = rs.getString(1)==null?"":rs.getString(1);
siteCode1 = rs.getString(1)==null?"":rs.getString(1).trim(); // trim() Added By Manish on 30/09/15
}
rs.close();
rs = null;
pstmt.close();
......
/*
authored by Pawan 10/7/2010 to confirm the transaction
*/
*/
package ibase.webitm.ejb.wms;
import ibase.utility.CommonConstants;
import ibase.webitm.utility.*;
import ibase.system.config.*;
import ibase.webitm.ejb.*;
......@@ -3005,6 +3006,8 @@ public class DeallocArtConf extends ActionHandlerEJB implements DeallocArtConfLo
pstmt.setString(2, pickOrder);
pstmt.setInt(3, pickLineNo);
update = pstmt.executeUpdate();
conn.commit(); //Added by manish on 29/09/15
if( update > 0 )
{
System.out.println(pickOrder+" pick_order OF PICK_ORD_DET updated successfully ");
......@@ -3328,6 +3331,7 @@ public class DeallocArtConf extends ActionHandlerEJB implements DeallocArtConfLo
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, refId);
update = pstmt.executeUpdate();
conn.commit(); //Added by manish on 29/09/15
if(update > 0)
{
......@@ -4116,11 +4120,26 @@ public class DeallocArtConf extends ActionHandlerEJB implements DeallocArtConfLo
System.out.println("==> MasterCarton "+masterCarton);
PreparedStatement pstmt = null;
ResultSet rSet = null ;
//Added by Manish on 29/09/15 for ms sql server.
String DB = CommonConstants.DB_NAME;
try
{
// Changed by Manish on 29/09/15 for ms sql server.
if("mssql".equalsIgnoreCase(DB))
{
sql=" SELECT isnull(FILLER_WEIGHT,0) FILLER_WEIGHT , isnull(TARE_WEIGHT,0) TARE_WEIGHT "
+" FROM CARTON_MASTER " //Changed sql 19-SEP-14 [W14FSUN003]
+" WHERE PTCN = ? AND STATUS = ? AND ( REF_SER = ? OR REF_SER = ?) AND CARTON_NO = ? ";
}
// Changed by Manish on 29/09/15 for ms sql server.
else
{
sql=" SELECT NVL(FILLER_WEIGHT,0) FILLER_WEIGHT , NVL(TARE_WEIGHT,0) TARE_WEIGHT "
+" FROM CARTON_MASTER " //Changed sql 19-SEP-14 [W14FSUN003]
+" WHERE PTCN = ? AND STATUS = ? AND ( REF_SER = ? OR REF_SER = ?) AND CARTON_NO = ? ";
}
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,ptcn);
pstmt.setString(2,"R");
......@@ -4452,7 +4471,7 @@ public class DeallocArtConf extends ActionHandlerEJB implements DeallocArtConfLo
{
sql = "UPDATE WAVE_TASK_DET SET WAVE_STATUS = 'V' WHERE REF_ID = ? ";
}
// Changed by Dhanraj 10-JUL-14 It should be return V(Original).
// Changed by Dhanraj 10-JUL-14 It should be return V(Original).
/*else
{
sql = "UPDATE WAVE_TASK_DET SET WAVE_STATUS = 'W' WHERE REF_ID = ? ";
......@@ -4460,12 +4479,28 @@ public class DeallocArtConf extends ActionHandlerEJB implements DeallocArtConfLo
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, refID);
updateCount = pstmt.executeUpdate();
//updateCount = pstmt.executeUpdate();
if(updateCount > 0)
/*Changed by Manish on 29/09/2015 for Ms Sql Server. Use result set otherwise
it gives error SQLServerException: A result set was generated for update*/
rs = pstmt.executeQuery();
// if(updateCount > 0)
// {
// System.out.println("Task Has been updated as ["+sql+"]");
// }
/*if(updateCount > 0)
{
System.out.println("Task Has been updated as ["+sql+"]");
}*/
if(rs.next())
{
System.out.println("Task Has been updated as ["+sql+"]");
}
//Changed by Manish on 29/09/2015 for Ms Sql Server [end]
else
{
System.out.println("sql Not been updated as created["+sql+"]");
......
......@@ -342,8 +342,16 @@ public class DeallocArtPrc extends ProcessEJB implements WaveGenerationPrcLocal,
" AND DESPATCH.WAVE_ID = WAVE_TASK.WAVE_ID " +
" AND DESPATCH.SORD_NO = WTD.SALE_ORDER " +
" AND DESPATCH.CONFIRMED <> 'Y' AND WAVE_TASK.CANCEL <> 'Y' " +
" AND CM.STATUS <> 'R' AND CM.CARTON_TYPE = 'S' " +
" ORDER BY WAVE_ID, PTCN, SALE_ORDER,LINE_NO__SORD, ITEM_CODE, CARTON_NO ";
" AND CM.STATUS <> 'R' AND CM.CARTON_TYPE = 'S' " ;
// " ORDER BY WAVE_ID, PTCN, SALE_ORDER,LINE_NO__SORD, ITEM_CODE, CARTON_NO ";
//changed by manish on 28/09/15 for Ms sql server databse
String DB = commonConstants.DB_NAME;
if("!mssql".equalsIgnoreCase(DB))
{
getDataSql = getDataSql + " ORDER BY WAVE_ID, PTCN, SALE_ORDER,LINE_NO__SORD, ITEM_CODE, CARTON_NO ";
}
//changed by manish on 28/09/15 for Ms sql server databse.
pstmt = conn.prepareStatement(getDataSql);
pstmt.setString(1, siteCode);
......@@ -680,6 +688,7 @@ public class DeallocArtPrc extends ProcessEJB implements WaveGenerationPrcLocal,
pstmt.setString(6, chgTerm );
if( pstmt.executeUpdate() > 0)
{
conn.commit(); //Added by manish on 29/09/15
System.out.println(" insertion in DEALLOC_ART successfully ");
}
pstmt.close();pstmt = null;
......@@ -991,6 +1000,7 @@ public class DeallocArtPrc extends ProcessEJB implements WaveGenerationPrcLocal,
pstmt.setString(15, pickType);
if( pstmt.executeUpdate() > 0 )
{
conn.commit(); //Added by manish on 29/09/15
System.out.println(" insert in DEALLOC_ART_DET succesfully done ");
}
else
......
......@@ -18,6 +18,7 @@ import org.w3c.dom.*;
import ibase.ejb.*;
import ibase.system.config.*;
import ibase.utility.BaseLogger;
import ibase.utility.CommonConstants;
import ibase.webitm.ejb.*;
import ibase.webitm.ejb.dis.DistCommon;
import ibase.webitm.utility.GenericUtility;
......@@ -659,7 +660,7 @@ public class MasterPackIC extends ValidatorEJB implements MasterPackICRemote, Ma
//Ended By Mahesh Patidar
}
}//outer_carton_no case
*/ }// for loop end
*/ }// for loop end
}//case 1 end
break;
case 2 : //for hdr win val....
......@@ -780,9 +781,26 @@ public class MasterPackIC extends ValidatorEJB implements MasterPackICRemote, Ma
pickOrder = genericUtility.getColumnValue("pick_order", currDom );
System.out.println("pick order from currdom:::::"+pickOrder);
/* */
//Changed by Manish on 22/09/15 for ms sql server (as TRIM is not compataible)
String DB = CommonConstants.DB_NAME;
if("mssql".equalsIgnoreCase(DB))
{
sql = " SELECT COUNT(*) AS HOLD_QTY FROM STOCK S, PICK_ISS_HDR PH, PICK_ISS_DET PD WHERE PH.PICK_ORDER = PD.PICK_ORDER " +
" AND PD.SITE_CODE = S.SITE_CODE AND PD.ITEM_CODE = S.ITEM_CODE AND PD.LOT_NO = S.LOT_NO AND PD.LOT_SL = S.LOT_SL " +
" AND PD.LOC_CODE = S.LOC_CODE AND RTRIM(LTRIM ( S.HOLD_QTY )) > 0 AND PD.DEALLOC_QTY IS NULL AND PD.PICK_ORDER = ? " ;
}
else
{
sql = " SELECT COUNT(*) AS HOLD_QTY FROM STOCK S, PICK_ISS_HDR PH, PICK_ISS_DET PD WHERE PH.PICK_ORDER = PD.PICK_ORDER " +
" AND PD.SITE_CODE = S.SITE_CODE AND PD.ITEM_CODE = S.ITEM_CODE AND PD.LOT_NO = S.LOT_NO AND PD.LOT_SL = S.LOT_SL " +
" AND PD.LOC_CODE = S.LOC_CODE AND TRIM ( S.HOLD_QTY ) > 0 AND PD.DEALLOC_QTY IS NULL AND PD.PICK_ORDER = ? " ;
}
//Changed by Manish on 22/09/15 for ms sql server for TRIM [end]
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, pickOrder);
rs = pstmt.executeQuery();
......
......@@ -5,6 +5,7 @@
package ibase.webitm.ejb.wms;
import ibase.utility.CommonConstants;
import ibase.webitm.ejb.*;
import ibase.webitm.utility.ITMException;
import ibase.webitm.utility.GenericUtility;
......@@ -110,9 +111,23 @@ public class MultiPickWizPrs extends ValidatorEJB implements MultiPickWizPrsLoca
if(ptcnList != null && ptcnList.size() > 0)
{
//Changed by Manish on 10/09/2015 for mssql database [START]
String DB = CommonConstants.DB_NAME;
if("mssql".equalsIgnoreCase(DB))
{
sql = "select count(*) from pack_det where RTRIM(LTRIM(carton_no)) in "
+ "(select RTRIM(LTRIM(carton_no)) from carton_master where ptcn = ?)";
}
else
{
sql = "select count(*) from pack_det where trim(carton_no) in "
+ "(select trim(carton_no) from carton_master where ptcn = ?)";
}
//Changed by Manish on 10/09/2015 for mssql database [END]
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, ptcnList.get(0));
......
......@@ -994,6 +994,12 @@ public class PoRcpIC extends ValidatorEJB implements PoRcpICRemote, PoRcpICLocal
}
rs.close(); rs = null;
pstmt.close(); pstmt = null;
// Changed by Manish on 29/07/15 (for trim loc_type)
locTypeItem = locTypeItem == null ? "" : locTypeItem.trim();
locTypeLocation = locTypeLocation == null ? "" : locTypeLocation.trim();
// Changed by Manish on 29/07/15
if( !locTypeLocation.equalsIgnoreCase(locTypeItem) )
{
errList.add( "VMLOCTYP1" );
......@@ -2150,7 +2156,9 @@ public class PoRcpIC extends ValidatorEJB implements PoRcpICRemote, PoRcpICLocal
valueXmlString.append( "<vouch_created><![CDATA[" ).append( checkNull(rs.getString("VOUCH_CREATED")) ).append( "]]></vouch_created>\r\n" );
valueXmlString.append( "<lr_no><![CDATA[" ).append( checkNull(rs.getString("LR_NO")) ).append( "]]></lr_no>\r\n" );
valueXmlString.append( "<lorry_no><![CDATA[" ).append( checkNull(rs.getString("LORRY_NO")) ).append( "]]></lorry_no>\r\n" );
valueXmlString.append( "<trans_mode><![CDATA[" ).append( transMode ).append( "]]></trans_mode>\r\n" );
//Added by manish on 27/07/15 (add checknull for trans_mode)
valueXmlString.append( "<trans_mode><![CDATA[" ).append( checkNull(transMode) ).append( "]]></trans_mode>\r\n" );
valueXmlString.append( "<item_ser><![CDATA[" ).append( checkNull(rs.getString("ITEM_SER")) ).append( "]]></item_ser>\r\n" );
//valueXmlString.append( "<frt_amt><![CDATA[" ).append( checkNull(rs.getString("FRT_AMT")) ).append( "]]></frt_amt>\r\n" );//Commented By Mahesh Patidar on 29/06/12
valueXmlString.append( "<frt_amt><![CDATA[0]]></frt_amt>\r\n" );//Added By Mahesh Patidar on 29/06/12
......@@ -2412,7 +2420,9 @@ public class PoRcpIC extends ValidatorEJB implements PoRcpICRemote, PoRcpICLocal
/* Added By Ashish Sonawane on 28/08/12 as per manoharan Sir [START] */
valueXmlString.append( "<frt_amt><![CDATA[0]]></frt_amt>\r\n" );
valueXmlString.append( "<insurance_amt><![CDATA[0]]></insurance_amt>\r\n" );
valueXmlString.append( "<trans_mode><![CDATA[" ).append( transMode ).append( "]]></trans_mode>\r\n" );
//Added by manish on 27/07/15 (add checknull for trans_mode)
valueXmlString.append( "<trans_mode><![CDATA[" ).append( checkNull(transMode) ).append( "]]></trans_mode>\r\n" );
valueXmlString.append( "<accept_criteria><![CDATA[" ).append( accptCriteria ).append( "]]></accept_criteria>\r\n" );
valueXmlString.append( "<reciept_type><![CDATA[" ).append( "F" ).append( "]]></reciept_type>\r\n" );
/* Added By Ashish Sonawane on 28/08/12 as per manoharan Sir [END] */
......
package ibase.webitm.ejb.wms;
import ibase.utility.CommonConstants;
import ibase.webitm.utility.*;
import ibase.webitm.ejb.*;
import ibase.webitm.ejb.dis.*;
......@@ -202,7 +203,20 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
pstmt.close();pstmt = null;*/
//sql = "SELECT CONFIRMED, REPL_ORDER FROM REPL_ISS_HDR WHERE TRAN_ID = ?";
//changed by manish on 16/09/15 for Ms sql server databse
String DB = CommonConstants.DB_NAME;
if("mssql".equalsIgnoreCase(DB))
{
sql = "SELECT CONFIRMED, REPL_ORDER FROM REPL_ISS_HDR(updlock, NOWAIT) WHERE TRAN_ID = ? ";
}
//changed by manish on 16/09/15 for Ms sql server databse
else
{
sql = "SELECT CONFIRMED, REPL_ORDER FROM REPL_ISS_HDR WHERE TRAN_ID = ? FOR UPDATE NOWAIT";
}
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranId);
rs = pstmt.executeQuery();
......@@ -302,7 +316,29 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
//if(!"".equalsIgnoreCase(orderType) && ("Q".equals(orderType) || "T".equals(orderType) || "P".equals(orderType) || "E".equals(orderType) || "I".equals(orderType) ))
if(!"".equalsIgnoreCase(orderType) && ("Q".equals(orderType) || "T".equals(orderType) || "P".equals(orderType) || "E".equals(orderType) || "I".equals(orderType) || "V".equals(orderType) || "U".equals(orderType)))
{
//changed by manish on 18/09/15 for Ms sql server database
if("mssql".equalsIgnoreCase(DB))
{
sql = " SELECT SUM(QUANTITY) AS QUANTITY FROM " +
" ( SELECT SUM(QUANTITY) AS QUANTITY FROM (SELECT SUM(QUANTITY - CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END) AS QUANTITY FROM PICK_ORD_DET P " +
" WHERE P.REPL_ORDER = ? AND P.LINE_NO__REPL = ? AND dbo.FN_IS_VALID_PICK_ORDER(P.PICK_ORDER) = 'Y' " +
" UNION ALL " +
" SELECT SUM(QUANTITY - CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END) FROM PICK_ORD_DET INNER JOIN " +
" (SELECT REPL_ORDER , LINE_NO FROM REPL_ORD_DET WHERE PICK_ORDER = ? AND LINE_NO__PICK = ? ) A " +
" on PICK_ORD_DET.REPL_ORDER = A.REPL_ORDER and PICK_ORD_DET.LINE_NO__REPL = A.LINE_NO " +
" AND dbo.FN_IS_VALID_PICK_ORDER(PICK_ORDER) = 'Y' " +
" UNION ALL " +
" SELECT SUM(QUANTITY - CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END) FROM PICK_ORD_DET INNER JOIN ( " +
" SELECT REPL_ORD_DET.REPL_ORDER, REPL_ORD_DET.LINE_NO FROM REPL_ORD_DET INNER JOIN ( " +
" (SELECT REPL_ORDER , LINE_NO FROM REPL_ORD_DET WHERE PICK_ORDER = ? AND LINE_NO__PICK = ? )) B " +
" on REPL_ORD_DET.PICK_ORDER = B.REPL_ORDER and REPL_ORD_DET.LINE_NO__PICK = B.LINE_NO ) C " +
" on PICK_ORD_DET.REPL_ORDER = C.REPL_ORDER and PICK_ORD_DET.LINE_NO__REPL = C.LINE_NO" +
" AND dbo.FN_IS_VALID_PICK_ORDER(PICK_ORDER) = 'Y' ) g) s";
}
//changed by manish on 18/09/15 for Ms sql server database
else
{
sql = " SELECT SUM(QUANTITY) AS QUANTITY FROM " +
" ( SELECT SUM(QUANTITY) AS QUANTITY FROM (SELECT SUM(QUANTITY - CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END) AS QUANTITY FROM PICK_ORD_DET P " +
" WHERE P.REPL_ORDER = ? AND P.LINE_NO__REPL = ? AND FN_IS_VALID_PICK_ORDER(P.PICK_ORDER) = 'Y' " +
......@@ -315,6 +351,7 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
" SELECT REPL_ORDER,LINE_NO FROM REPL_ORD_DET WHERE (PICK_ORDER,LINE_NO__PICK) IN ( " +
" (SELECT REPL_ORDER , LINE_NO FROM REPL_ORD_DET WHERE PICK_ORDER = ? AND LINE_NO__PICK = ? )))" +
" AND FN_IS_VALID_PICK_ORDER(PICK_ORDER) = 'Y' ))";
}
//Changed by sumit on 13/03/13 getting quantity as (quantity-dealloc_qty).end
pstmtPick = conn.prepareStatement(sql);
......@@ -634,6 +671,36 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
/*sql = " SELECT * FROM PICK_ORD_DET P WHERE P.REPL_ORDER = ? AND P.LINE_NO__REPL = ? " +
" AND FN_IS_VALID_PICK_ORDER(P.PICK_ORDER) = 'Y'";*/
//changed by manish on 18/09/15 for Ms sql server database
if("mssql".equalsIgnoreCase(DB))
{
sql = " SELECT * FROM PICK_ORD_DET P WHERE P.REPL_ORDER = ? AND P.LINE_NO__REPL =? "
+ " AND dbo.FN_IS_VALID_PICK_ORDER(P.PICK_ORDER) = 'Y' AND (QUANTITY -(CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END)) > 0 "
+ " UNION ALL "
+ " SELECT PICK_ORD_DET.* FROM PICK_ORD_DET INNER JOIN ( SELECT REPL_ORD_DET.REPL_ORDER , REPL_ORD_DET.LINE_NO FROM REPL_ORD_DET WHERE PICK_ORDER = ? AND LINE_NO__PICK = ? ) D "
+ " ON PICK_ORD_DET.REPL_ORDER = D.REPL_ORDER AND PICK_ORD_DET.LINE_NO__REPL = D.LINE_NO "
+ " AND dbo.FN_IS_VALID_PICK_ORDER(PICK_ORDER) = 'Y' AND (QUANTITY -(CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END)) > 0 "
+ " UNION ALL "
+ " SELECT PICK_ORD_DET.* FROM PICK_ORD_DET INNER JOIN ( SELECT REPL_ORD_DET.REPL_ORDER,REPL_ORD_DET.LINE_NO FROM REPL_ORD_DET "
+ " INNER JOIN ((SELECT REPL_ORDER , LINE_NO FROM REPL_ORD_DET WHERE PICK_ORDER = ? AND LINE_NO__PICK = ? )) B "
+ " ON REPL_ORD_DET.PICK_ORDER = B.REPL_ORDER AND REPL_ORD_DET.LINE_NO__PICK = B.LINE_NO ) C "
+ " ON PICK_ORD_DET.REPL_ORDER = C.REPL_ORDER AND PICK_ORD_DET.LINE_NO__REPL = C.LINE_NO "
+ " AND dbo.FN_IS_VALID_PICK_ORDER(PICK_ORDER) = 'Y' AND (QUANTITY -(CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END)) > 0"
+ " UNION ALL "
+ " SELECT PICK_ORD_DET.* FROM PICK_ORD_DET INNER JOIN ( SELECT REPL_ORD_DET.REPL_ORDER, REPL_ORD_DET.LINE_NO FROM REPL_ORD_DET "
+ " INNER JOIN ( SELECT REPL_ORD_DET.REPL_ORDER, REPL_ORD_DET.LINE_NO FROM REPL_ORD_DET "
+ " INNER JOIN ( SELECT REPL_ORD_DET.REPL_ORDER, REPL_ORD_DET.LINE_NO FROM REPL_ORD_DET WHERE REPL_ORD_DET.PICK_ORDER =? AND REPL_ORD_DET.LINE_NO__PICK = ? ) E "
+ " ON REPL_ORD_DET.PICK_ORDER = E.REPL_ORDER AND REPL_ORD_DET.LINE_NO__PICK = E.LINE_NO ) F "
+ " ON REPL_ORD_DET.PICK_ORDER = F.REPL_ORDER AND REPL_ORD_DET.LINE_NO__PICK = F.LINE_NO ) G "
+ " ON PICK_ORD_DET.REPL_ORDER = G.REPL_ORDER AND PICK_ORD_DET.LINE_NO__REPL = G.LINE_NO "
+ " AND dbo.FN_IS_VALID_PICK_ORDER(PICK_ORDER) = 'Y' AND "
+ " (QUANTITY -(CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END)) > 0";
}
//changed by manish on 18/09/15 for Ms sql server database
else
{
sql = " SELECT * FROM PICK_ORD_DET P WHERE P.REPL_ORDER = ? AND P.LINE_NO__REPL =? "
+ " AND FN_IS_VALID_PICK_ORDER(P.PICK_ORDER) = 'Y' AND (QUANTITY -(CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END)) > 0 "
+ " UNION ALL "
......@@ -652,7 +719,7 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
+ " SELECT REPL_ORDER , LINE_NO FROM REPL_ORD_DET WHERE PICK_ORDER =? AND LINE_NO__PICK = ? )))) "
+ " AND FN_IS_VALID_PICK_ORDER(PICK_ORDER) = 'Y' AND "
+ " (QUANTITY -(CASE WHEN DEALLOC_QTY IS NULL THEN 0 ELSE DEALLOC_QTY END)) > 0";
}
//Changed by sumit on 08/02/13 changed the sql ( Told Manoharan Sir) end
......@@ -671,8 +738,10 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
//Changed by sumit on 08/02/13 change to while
//if(rsPick.next())
int count = 0;
while(rsPick.next())
{
count++;
pickQty = rsPick.getDouble("QUANTITY");
deallocQty = rsPick.getDouble("DEALLOC_QTY");
System.out.println("19/03/13 pickQty [" + pickQty + "]deallocQty ["+deallocQty+"]");
......@@ -701,7 +770,7 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
pstmt1.setString(5, lotNo);
pstmt1.setString(6, lotSl);
rs1 = pstmt1.executeQuery();
System.out.println("count------------->>["+count+"]");
if( rs1.next())
{
......@@ -888,7 +957,7 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
pstmtUpd = null;
}
*/ }
*/ }
else
{
updateSql = "insert into sordalloc( SALE_ORDER, LINE_NO, EXP_LEV, ITEM_CODE__ORD, "
......@@ -1035,18 +1104,31 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
{
double remainQty = 0.0,spltblQty = 0.0;
String sordUpdNo = "",updLineNo = "";
//changed by manish on 18/09/15 for Ms sql server database [start]
if("mssql".equalsIgnoreCase(DB))
{
sql = " SELECT S.SALE_ORDER, S.LINE_NO,S.QTY_ALLOC, S.EXP_LEV, S.ITEM_CODE, S.LOT_NO, S.LOT_SL, S.LOC_CODE, " +
" S.ALLOC_MODE,S.QUANTITY FROM SORDALLOC S " +
" WHERE S.ITEM_CODE = ? AND S.LOT_NO = ? AND S.LOT_SL = ? AND S.LOC_CODE = ? AND CASE WHEN WAVE_FLAG IS NULL THEN 'N' ELSE WAVE_FLAG END <> 'Y' " +
" AND isnull((SELECT COUNT(1) FROM REPL_ORD_DET R WHERE R.SALE_ORDER = S.SALE_ORDER AND R.LINE_NO__SORD = S.LINE_NO ),0) = 0 " +
" AND S.QTY_ALLOC >0 ORDER BY QTY_ALLOC ";
}
else
{
sql = " SELECT S.SALE_ORDER, S.LINE_NO,S.QTY_ALLOC, S.EXP_LEV, S.ITEM_CODE, S.LOT_NO, S.LOT_SL, S.LOC_CODE, " +
" S.ALLOC_MODE,S.QUANTITY FROM SORDALLOC S " +
" WHERE S.ITEM_CODE = ? AND S.LOT_NO = ? AND S.LOT_SL = ? AND S.LOC_CODE = ? AND CASE WHEN WAVE_FLAG IS NULL THEN 'N' ELSE WAVE_FLAG END <> 'Y' " +
" AND NVL((SELECT COUNT(1) FROM REPL_ORD_DET R WHERE R.SALE_ORDER = S.SALE_ORDER AND R.LINE_NO__SORD = S.LINE_NO ),0) = 0 " +
" AND S.QTY_ALLOC >0 ORDER BY QTY_ALLOC ";
}
//changed by manish on 18/09/15 for Ms sql server database[end]
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1, itemCode);
pstmt1.setString(2, lotNo);
pstmt1.setString(3, lotSl);
pstmt1.setString(4, locCode);
rs1 = pstmt1.executeQuery();
remainQty = lastCaseUpdQty;
while( rs1.next())
......@@ -1305,8 +1387,19 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
System.out.println(replOrder+ " repl_order is updated successfully");
}
//changed by manish on 18/09/15 for Ms sql server database
if("mssql".equalsIgnoreCase(DB))
{
updateSql = "UPDATE PICK_ORD_DET SET LOC_CODE = ?, LOT_SL = ?, lot_sl__new = ? "
+ " WHERE REPL_ORDER = ? AND LINE_NO__REPL = ? AND dbo.FN_IS_VALID_PICK_ORDER(PICK_ORDER) = 'Y'";
}
//changed by manish on 18/09/15 for Ms sql server database
else
{
updateSql = "UPDATE PICK_ORD_DET SET LOC_CODE = ?, LOT_SL = ?, lot_sl__new = ? "
+ " WHERE REPL_ORDER = ? AND LINE_NO__REPL = ? AND FN_IS_VALID_PICK_ORDER(PICK_ORDER) = 'Y'";
}
pstmtUpd = conn.prepareStatement(updateSql);
pstmtUpd.setString(1, locCodeTo);
......@@ -1997,9 +2090,9 @@ public class ReplIssConf extends ActionHandlerEJB implements ReplIssConfRemote,
return status;
}
//Changed by sumit on 21/02/13 checking whether all repl is confirmed or not end.
*/
*/
//Changed by sumit on 21/02/13 checking whether all repl is confirmed or not start.
//Changed by sumit on 21/02/13 checking whether all repl is confirmed or not start.
private String isAllDependentTaskConf(String replOrder,String pickOrder , Connection conn) throws ITMException
{
String sql = "";
......
......@@ -25,6 +25,7 @@ import javax.ejb.*;
import javax.naming.InitialContext;
import ibase.system.config.*;
import ibase.utility.CommonConstants;
import ibase.webitm.ejb.*;
import ibase.webitm.ejb.dis.DistCommon;
import ibase.webitm.utility.GenericUtility;
......@@ -36,6 +37,10 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
/**
* The method is defined without any parameter and returns blank string
*/
//Added by Manish on 16/09/2015 for Ms Sql Server.
String DB = CommonConstants.DB_NAME;
public String wfValData() throws RemoteException, ITMException
{
return "";
......@@ -516,7 +521,7 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
}
//Changed by Rohan on 06-09-12 to check previous task finish or not.end
*/
*/
// cpatil start on 11-sept-12
......@@ -525,9 +530,25 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
//Changed By Pragyan 08-May-14 to check the cancel mode for hold stocks
/*sql = " select count (*) from stock where (item_code, site_code, loc_code, lot_no, lot_sl ) in " +
" ( select item_code, site_code, loc_code, lot_no, lot_sl from repl_ord_det where repl_order = ? ) and ( hold_qty > 0 ) ";*/
//Changed by Manish on 16/09/2015 for MS Sql Server
String DB = CommonConstants.DB_NAME;
if("mssql".equalsIgnoreCase(DB))
{
sql = " select count (*) from stock inner join " +
" ( select item_code, site_code, loc_code, lot_no, lot_sl from repl_ord_det where repl_order = ? " +
" and case when cancel_mode is null then 'N' else cancel_mode end <> 'Y') A on stock.item_code=A.item_code "+
" and stock.site_code = A.SITE_CODE and Stock.loc_code =A.LOC_CODE and stock.lot_no =A.LOT_NO and STOCK.LOT_SL =A.LOT_SL " +
" and ( hold_qty > 0 )";
}
else
{
sql = " select count (*) from stock where (item_code, site_code, loc_code, lot_no, lot_sl ) in " +
" ( select item_code, site_code, loc_code, lot_no, lot_sl from repl_ord_det where repl_order = ? " +
" and case when cancel_mode is null then 'N' else cancel_mode end <> 'Y') and ( hold_qty > 0 )";
}
//Changed by Manish on 16/09/2015 for MS Sql Server
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,replOrder);
rs = pstmt.executeQuery();
......@@ -679,8 +700,15 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
sql = " SELECT R.REPL_ORDER,R.ORDER_TYPE FROM REPL_ORD_HDR R, WAVE_TASK W, WAVE_TASK_DET WD, REPL_ORD_DET RT WHERE " +
" R.REPL_ORDER = WD.REF_ID AND R.REPL_ORDER = RT.REPL_ORDER AND R.WAVE_ID = W.WAVE_ID AND W.WAVE_ID = WD.WAVE_ID " +
" AND WD.STATUS ='N' AND W.CANCEL = 'N' AND ( RT.CANCEL_MODE='N' OR RT.CANCEL_MODE IS NULL ) " +
" AND RT.SITE_CODE = ? AND RT.ITEM_CODE = ? AND RT.LOC_CODE = ? AND RT.LOT_NO = ? AND RT.LOT_SL = ? " +
" ORDER BY REPL_ORDER ";
" AND RT.SITE_CODE = ? AND RT.ITEM_CODE = ? AND RT.LOC_CODE = ? AND RT.LOT_NO = ? AND RT.LOT_SL = ? " ;
//changed by manish on 16/09/15 for Ms sql server databse.[start]
if("!mssql".equalsIgnoreCase(DB))
{
sql = sql + " ORDER BY REPL_ORDER ";
}
//changed by manish on 16/09/15 for Ms sql server databse.[end]
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, siteCode );
pstmt.setString( 2, itemCode );
......@@ -3678,7 +3706,7 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
//" AND FN_VALID_REPL(H.REPL_ORDER) = 'Y' " +
" AND R.LOC_CODE = L.LOC_CODE AND L.INV_STAT = ? AND (H.ASSIGN_TO = ? OR H.ASSIGN_TO IS NULL) " +
//" AND FN_CHECK_REPL_ORD_USER(H.REPL_ORDER,?) = 1
" ) "+
" ) A "+ //Added A before order on 16/09/15 by manish for mssql
//End Changed by Dhanraj 11-Aug-14 this condition call by java function's.
"ORDER BY ASSIGN_TO,REPL_ORDER,LOC_CODE ";
}
......@@ -3704,7 +3732,7 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
//" AND FN_VALID_REPL(H.REPL_ORDER) = 'Y' " +
" AND R.LOC_CODE = L.LOC_CODE AND L.INV_STAT = ? AND (H.ASSIGN_TO = ? OR H.ASSIGN_TO IS NULL) " +
//" AND FN_CHECK_REPL_ORD_USER(H.REPL_ORDER,?) = 1
" ) "+
" ) A "+ //Added A before order on 16/09/15 by manish for mssql
//End Changed by Dhanraj 11-Aug-14 this condition call by java function's.
" ORDER BY ASSIGN_TO,REPL_ORDER,LOC_CODE ";
}
......@@ -3812,7 +3840,7 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
//" AND FN_VALID_REPL(H.REPL_ORDER) = 'Y' " +
" AND R.LOC_CODE = L.LOC_CODE AND (H.ASSIGN_TO = ? OR H.ASSIGN_TO IS NULL) " +
//" AND FN_CHECK_REPL_ORD_USER(H.REPL_ORDER,?) = 1
" ) "+
" ) A "+ //Added A before order on 16/09/15 by manish for mssql
" ORDER BY ASSIGN_TO,REPL_ORDER,LOC_CODE ";
//End Changed by Dhanraj 11-Aug-14 this condition call by java function's.
//changed by sankara on 28-11-13 for set repl order itm default end.
......@@ -3835,7 +3863,7 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
//" AND FN_VALID_REPL(H.REPL_ORDER) = 'Y' " +
" AND R.LOC_CODE = L.LOC_CODE AND (H.ASSIGN_TO = ? OR H.ASSIGN_TO IS NULL) " +
//" AND FN_CHECK_REPL_ORD_USER(H.REPL_ORDER,?) = 1
" ) "+
" ) A "+ //Added A before order on 16/09/15 by manish for mssql
//End Changed by Dhanraj 11-Aug-14 this condition call by java function's.
" ORDER BY ASSIGN_TO,REPL_ORDER,LOC_CODE ";
//changed by sankara on 28-11-13 for set repl order itm default end.
......@@ -4085,7 +4113,7 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
//Changed By Pragyan 15-sep-12 To add Carton No
valueXmlString.append( "<carton_no><![CDATA[" ).append( cartonNo ).append( "]]></carton_no>\r\n" );
System.out.println(" 07/07/14 carton_no_org IN CASE 2===>"+cartonNo);
// Changed By Dhanraj 11-JUL-14 To add Carton No org.
// Changed By Dhanraj 11-JUL-14 To add Carton No org.
valueXmlString.append( "<carton_no_org><![CDATA[" ).append( cartonNo ).append( "]]></carton_no_org>\r\n" );
//End changes by gulzar on 01/12/11
}
......@@ -4455,6 +4483,20 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
"AND REPL_ORD_DET.SITE_CODE = SITE.SITE_CODE(+) ";
pstmt = conn.prepareStatement( sql );
}*/
//changed by manish on 16/09/15 for Ms sql server databse [start]
if("mssql".equalsIgnoreCase(DB))
{
sql = " SELECT ROD.ITEM_CODE, ROD.SITE_CODE, ROD.LOC_CODE, ROD.LOT_NO, ROD.LOT_SL, I.DESCR AS ITEM_DESCR , I.UNIT, S.DESCR AS SITE_DESCR , " +
" ROD.LOC_CODE__TO , SUM(QUANTITY) AS QUANTITY , SUM(NO_ART) AS NO_ART FROM ITEM I , SITE S, REPL_ORD_DET ROD " +
" left join (SELECT REPL_ORDER, LINE_NO__ORD FROM REPL_ISS_DET WHERE REPL_ORDER = ? ) a on ROD.REPL_ORDER = a.REPL_ORDER and ROD.LINE_NO = a.LINE_NO__ORD " +
" WHERE ROD.REPL_ORDER = ? AND ROD.ITEM_CODE = I.ITEM_CODE AND ROD.SITE_CODE = S.SITE_CODE " +
" AND CASE WHEN ROD.CANCEL_MODE IS NULL THEN 'N' ELSE ROD.CANCEL_MODE END <> 'Y' " +
" GROUP BY ROD.ITEM_CODE,ROD.SITE_CODE, ROD.LOC_CODE, ROD.LOT_NO, ROD.LOT_SL, I.DESCR , I.UNIT, S.DESCR , ROD.LOC_CODE__TO " +
" ORDER BY ROD.LOC_CODE ";
}
else
{
sql = " SELECT ROD.ITEM_CODE, ROD.SITE_CODE, ROD.LOC_CODE, ROD.LOT_NO, ROD.LOT_SL, I.DESCR AS ITEM_DESCR , I.UNIT, S.DESCR AS SITE_DESCR , " +
" ROD.LOC_CODE__TO , SUM(QUANTITY) AS QUANTITY , SUM(NO_ART) AS NO_ART FROM REPL_ORD_DET ROD, ITEM I , SITE S " +
" WHERE ROD.REPL_ORDER = ? AND ROD.ITEM_CODE = I.ITEM_CODE AND ROD.SITE_CODE = S.SITE_CODE " +
......@@ -4463,6 +4505,8 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
" GROUP BY ROD.ITEM_CODE,ROD.SITE_CODE, ROD.LOC_CODE, ROD.LOT_NO, ROD.LOT_SL, I.DESCR , I.UNIT, S.DESCR , ROD.LOC_CODE__TO " +
//Changed by sumit on 22/05/13 ordering loc_code.
" ORDER BY ROD.LOC_CODE ";
}
//changed by manish on 16/09/15 for Ms sql server databse [end]
pstmt = conn.prepareStatement(sql);
replLine = "SELECT LINE_NO FROM REPL_ORD_DET WHERE ITEM_CODE = ? AND SITE_CODE = ? AND LOC_CODE = ? AND LOT_NO = ?" +
......@@ -4911,8 +4955,17 @@ public class ReplIssIC extends ValidatorEJB implements ReplIssICLocal, ReplIssIC
PreparedStatement pstmt = null;
ResultSet rs = null;
try
{
//changed by manish on 16/09/15 for Ms sql server databse [start]
if("mssql".equalsIgnoreCase(DB))
{
sql="SELECT dbo.FN_CHECK_REPL_ORD_USER( ? , ? ) as isPresent ";
}
else
{
sql="SELECT FN_CHECK_REPL_ORD_USER( ? , ? ) as isPresent from DUAL";
}
//changed by manish on 16/09/15 for Ms sql server databse [end]
pstmt = connObject.prepareStatement( sql );
pstmt.setString( 1, replOrder );
pstmt.setString( 2, logingCode );
......
......@@ -3732,7 +3732,18 @@ public class ShipmentConf extends ActionHandlerEJB implements ShipmentConfLocal,
//valueXmlString.append( "<lr_no><![CDATA[" ).append( getSSCC(prefix, pronoLast, conn) ).append( "]]></lr_no>\r\n" ); // added to generate SSCC18 complaint number //commented as per suggestion
sProno = ("" + pronoLast).trim();
System.out.println("manohar before prefix["+prefix+"]::::sProno["+sProno+"]");
//Changed by Manish on 25/09/2015 for ms sql server.[start]
String DB = CommonConstants.DB_NAME;
if("mssql".equalsIgnoreCase(DB))
{
sql = "SELECT dbo.fn_prono(?, ?)";
}
//Changed by Manish on 25/09/2015 for ms sql server.[end]
else
{
sql = "SELECT fn_prono(?,to_char(?)) FROM dual";
}
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranCode);
pstmt.setString(2, sProno);
......@@ -3800,7 +3811,18 @@ public class ShipmentConf extends ActionHandlerEJB implements ShipmentConfLocal,
{
lrNo = getLrNo(xtraParams,conn);
System.out.println("manohar before lr_no ["+lrNo+"]");
//Changed by Manish on 25/09/2015 for ms sql server.[start]
if("mssql".equalsIgnoreCase(DB))
{
sql = "SELECT dbo.fn_prono(?, ?)";
}
//Changed by Manish on 25/09/2015 for ms sql server.[end]
else
{
sql = "SELECT fn_prono(?,to_char(?)) FROM dual";
}
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, tranCode);
pstmt.setString(2, lrNo);
......
......@@ -2951,6 +2951,13 @@ private String checkNull( String input )
{
input = "";
}
//Changed By Manish for trim value on 23/09/15 [start]
else
{
input = input.trim();
}
//Changed By Manish for trim value on 23/09/15 [end]
return input;
}
// 02/08/12 manoharan following method added to generate SSCC18 complaint number
......
/**
* PURPOSE : Validation and Item Change implementation for Stock Transfer component .
* AUTHOR : Gulzar
* Date : 24/10/11
*
*/
* PURPOSE : Validation and Item Change implementation for Stock Transfer component .
* AUTHOR : Gulzar
* Date : 24/10/11
*
*/
package ibase.webitm.ejb.wms;
......@@ -22,6 +22,7 @@ import org.w3c.dom.*;
import ibase.ejb.*;
import ibase.system.config.*;
import ibase.utility.BaseLogger;
import ibase.utility.CommonConstants;
import ibase.webitm.ejb.*;
import ibase.webitm.ejb.dis.DistCommon;
import ibase.webitm.utility.GenericUtility;
......@@ -586,7 +587,7 @@ public class StockTransferGrlIC extends ValidatorEJB implements StockTransferGrl
rs.close(); rs = null;
pstmt.close(); pstmt = null;
// if ( !invStat.trim().equalsIgnoreCase(resrvLocInvstat.trim()) )
// if ( !invStat.trim().equalsIgnoreCase(resrvLocInvstat.trim()) )
if(!(invStatList.contains(invStat.trim())))//Changed By Mahesh Patidar on 23/06/12
{
errList.add( "VTLOCCODE8" );
......@@ -2037,6 +2038,22 @@ public class StockTransferGrlIC extends ValidatorEJB implements StockTransferGrl
+ " HAVING SUM (CASE WHEN QUANTITY IS NULL THEN 0 ELSE QUANTITY END) > 0) "
+ " ORDER BY ABS(A.LOC_ZONE - ?),A.LOC_CODE ) WHERE LOC_CHECK_COUNT > 0 AND ROWNUM < 5" ;*/
String DB = CommonConstants.DB_NAME;
System.out.println("DB=====>>>"+DB);
//changed by manish on 10/08/2015 for MS SQL SERVER database (replace nvl and add isnull in sql query)
if("mssql".equalsIgnoreCase(DB))
{
sql = "SELECT A.LOC_CODE, A.LOC_ZONE, A.LOC_TYPE FROM LOCATION A ,INVSTAT B ,SITE S WHERE A.INV_STAT = B.INV_STAT AND B.AVAILABLE = 'Y' " +
"AND A.LOC_TYPE = ? AND S.SITE_CODE = ? AND (S.FACILITY_CODE = A.FACILITY_CODE or isnull(s.facility_code ,'N') = 'N') " +
"AND A.INV_STAT IN ("+invStstPars+") AND (CASE WHEN B.STAT_TYPE IS NULL THEN ' ' ELSE B.STAT_TYPE END) <> 'S' "+
"and isnull((SELECT sum(quantity) FROM STOCK WHERE SITE_CODE = ? AND stock.loc_code = a.loc_code),0) = 0 " +
"ORDER BY ABS(A.LOC_ZONE - ? ),A.LOC_CODE" ;
}
//changed by manish on 10/08/2015 for MS SQL SERVER database
else
{
sql = " SELECT A.LOC_CODE, A.LOC_ZONE, A.LOC_TYPE FROM LOCATION A ,INVSTAT B ,SITE S WHERE A.INV_STAT = B.INV_STAT AND B.AVAILABLE = 'Y' " +
" AND A.LOC_TYPE = ? AND S.SITE_CODE = ? AND (S.FACILITY_CODE = A.FACILITY_CODE or nvl(s.facility_code ,'N') = 'N') " +
" AND A.INV_STAT IN ("+invStstPars+") AND (CASE WHEN B.STAT_TYPE IS NULL THEN ' ' ELSE B.STAT_TYPE END) <> 'S' " +
......@@ -2045,7 +2062,7 @@ public class StockTransferGrlIC extends ValidatorEJB implements StockTransferGrl
" and nvl((SELECT sum(quantity) FROM STOCK WHERE SITE_CODE = ? AND stock.loc_code = a.loc_code),0) = 0 " +
" AND ROWNUM < 5 "+
" ORDER BY ABS(A.LOC_ZONE - ? ),A.LOC_CODE ";
}
// Changed by sankara on 27/08/13 for optimized the sql end.
pstmt = conn.prepareStatement(sql);
......
/**
* PURPOSE : Validation and Item Change implementation for Stock Transfer component .
* AUTHOR : BALU
* Date : 19/09/2011
*
*/
* PURPOSE : Validation and Item Change implementation for Stock Transfer component .
* AUTHOR : BALU
* Date : 19/09/2011
*
*/
package ibase.webitm.ejb.wms;
......@@ -21,6 +21,7 @@ import org.w3c.dom.*;
import ibase.ejb.*;
import ibase.system.config.*;
import ibase.utility.BaseLogger;
import ibase.utility.CommonConstants;
import ibase.webitm.ejb.*;
import ibase.webitm.ejb.dis.DistCommon;
import ibase.webitm.utility.GenericUtility;
......@@ -532,8 +533,20 @@ public class StockTransferIC extends ValidatorEJB implements StockTransferICRemo
}
//Changed By Pragyan 11-AUG-14 To check and Facility Master implementation.end
// Changed by Manish on 21/09/15 for Ms Sql Server [start]
String DB = CommonConstants.DB_NAME;
if("mssql".equalsIgnoreCase(DB))
{
sql ="SELECT COUNT(*) AS LOCCOUNT FROM STOCK WHERE ITEM_CODE = ? AND SITE_CODE = ? AND LOC_CODE = ? " +
" AND LOT_NO = ? AND LOT_SL = ? AND EXP_DATE <= getdate()";
}
// Changed by Manish on 21/09/15 for Ms Sql Server[End]
else
{
sql ="SELECT COUNT(*) AS LOCCOUNT FROM STOCK WHERE ITEM_CODE = ? AND SITE_CODE = ? AND LOC_CODE = ? " +
" AND LOT_NO = ? AND LOT_SL = ? AND EXP_DATE <= fn_sysdate()";
}
pstmt = conn.prepareStatement( sql );
pstmt.setString( 1, itemCode );
pstmt.setString( 2, siteCode );
......
/*
Window Name : w_wavegen
*/
*/
package ibase.webitm.ejb.wms;
......@@ -223,7 +223,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
boolean isRemotePrintRptSrvCofigur = false;
//Changed by Pragyan 10/Mar/15 D14ISUN007 Consolidated Replenishment
boolean isConsolidatedRepl = false;
//added by Manish on 08/09/2015
String DB = commonConstants.DB_NAME;
public String process() throws RemoteException,ITMException
{
......@@ -510,14 +511,25 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
batchID = checkNull(genericUtility.getColumnValue("batch_id",headerDom));
System.out.println("batchID is ****:::"+batchID);
getDataSql =" SELECT SORDER.CUST_CODE, CUSTOMER.CUST_NAME,SORDDET.LINE_NO, "
+"SORDER.SALE_ORDER,SORDER.DUE_DATE,SORDITEM.ITEM_CODE,"
+"ITEM.DESCR,SORDITEM.QUANTITY,"
+"ITEM.DESCR,SORDITEM.QUANTITY, ";
//Changed By Pragyan 13-nov-13 to get pending qty
//+"(SORDITEM.QUANTITY - SORDITEM.QTY_DESP - SORDITEM.QTY_ALLOC) PENDING_QUANTITY,"
+" FN_GET_CONV_QTY(SORDER.SALE_ORDER, SORDDET.LINE_NO) PENDING_QUANTITY,"
+" SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR, "
//changed by manish on 02/09/15 for Ms sql server databse (add dbo. in function name).
if("mssql".equalsIgnoreCase(DB))
{
getDataSql = getDataSql + " dbo.FN_GET_CONV_QTY(SORDER.SALE_ORDER, SORDDET.LINE_NO) PENDING_QUANTITY,";
}
else
{
getDataSql = getDataSql + " FN_GET_CONV_QTY(SORDER.SALE_ORDER, SORDDET.LINE_NO) PENDING_QUANTITY,";
}
//changed by manish on 02/09/15 for Ms sql server databse.
getDataSql = getDataSql +" SORDITEM.QTY_ALLOC,SORDDET.PACK_INSTR, "
+" SORDITEM.SITE_CODE,SORDITEM.EXP_LEV, "
//Changed by sankara on 01/08/13 single_lot also available in sales order
// +"SORDER.PART_QTY AS PART_QTY, CUSTOMER.SINGLE_LOT AS SINGLE_LOT, SORDITEM.MIN_SHELF_LIFE AS MIN_SHELF_LIFE "//Gulzar 5/13/2012
......@@ -528,8 +540,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
+" ,ITEM.UNIT AS UNIT_STD ,SORDDET.UNIT ORDER_UNIT,SORDDET.UNIT__STD AS UNIT__STD, SORDDET.CONV__QTY_STDUOM "
//chnaged by pragyan on 15/10/14 for cold chain
//+" , SORDER.CUST_CODE__DLV, C.CUST_NAME AS CUST_DLV_NAME "
+" , SORDER.CUST_CODE__DLV, C.CUST_NAME AS CUST_DLV_NAME ,ITEM.LOC_TYPE__PARENT "
+"FROM SORDDET,SORDER,SORDITEM,CUSTOMER,ITEM , WAVE_TYPE,CUSTOMER C "
+" , SORDER.CUST_CODE__DLV, C.CUST_NAME AS CUST_DLV_NAME ,ITEM.LOC_TYPE__PARENT " ;
/* +"FROM SORDDET,SORDER,SORDITEM,CUSTOMER,ITEM , WAVE_TYPE,CUSTOMER C "
+"WHERE ( SORDER.SALE_ORDER = SORDDET.SALE_ORDER ) AND "
+"( SORDITEM.SALE_ORDER = SORDER.SALE_ORDER ) AND "
+"( SORDDET.LINE_NO = SORDITEM.LINE_NO ) AND "
......@@ -542,11 +555,34 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
+" SORDITEM.SITE_CODE = ? AND "
+" ITEM.ITEM_SER >=? AND "
+" ITEM.ITEM_SER <=? AND "
+" ITEM.ITEM_CODE >=? AND "
+" ITEM.ITEM_CODE <=? AND "
+" CUSTOMER.CUST_CODE >=? AND "
// Changed by Megha on 22/01/2015 :D14JSUN007 batch_id for back order processing..start
+" ITEM.ITEM_CODE <=? ";*/
//changed by manish on 02/09/15 for Ms sql server databse (add left outer join in query in place of (+)).
getDataSql = getDataSql +"FROM SORDDET,SORDER,SORDITEM,ITEM ,CUSTOMER C, "
+"CUSTOMER LEFT OUTER JOIN WAVE_TYPE WAVE_TYPE ON(CUSTOMER.WAVE_TYPE = WAVE_TYPE.WAVE_TYPE) "
+"WHERE ( SORDER.SALE_ORDER = SORDDET.SALE_ORDER ) AND "
+"( SORDITEM.SALE_ORDER = SORDER.SALE_ORDER ) AND "
+"( SORDDET.LINE_NO = SORDITEM.LINE_NO ) AND "
+"( SORDITEM.ITEM_CODE = ITEM.ITEM_CODE ) AND "
+"( SORDER.CUST_CODE = CUSTOMER.CUST_CODE ) AND "
+"( SORDDET.SITE_CODE = SORDITEM.SITE_CODE ) AND "
//Changed By Pragyan 17-SEP-13 To join the wave type with cust_code__dlv
//+"( CUSTOMER.WAVE_TYPE = WAVE_TYPE.WAVE_TYPE(+)) AND "
//+"( C.WAVE_TYPE = WAVE_TYPE.WAVE_TYPE(+)) AND "
+" SORDITEM.SITE_CODE = ? AND "
+" ITEM.ITEM_SER >=? AND "
+" ITEM.ITEM_SER <=? AND "
+" ITEM.ITEM_CODE >=? AND "
/* +" ITEM.ITEM_CODE <=? AND "
+" CUSTOMER.CUST_CODE >=? AND "*/
// Changed by Megha on 22/01/2015 :D14JSUN007 batch_id for back order processing..start
+" ITEM.ITEM_CODE <=? ";
//changed by manish on 02/09/15 for Ms sql server databse[end]
System.out.println("new batch id is ---"+ batchID);
if(batchID.trim().length() > 0)
{
......@@ -569,13 +605,25 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
+" AND SORDER.CUST_CODE__DLV = C.CUST_CODE "
+" AND CASE WHEN SORDDET.STATUS IS NULL THEN 'P' ELSE SORDDET.STATUS end <> 'C' "
+" AND CASE WHEN SORDER.STATUS IS NULL THEN 'P' ELSE SORDER.STATUS end = 'P' "
+" AND CASE WHEN SORDDET.HOLD_FLAG IS NULL THEN 'N' ELSE SORDDET.HOLD_FLAG end <> 'Y'"
+" AND CASE WHEN SORDDET.HOLD_FLAG IS NULL THEN 'N' ELSE SORDDET.HOLD_FLAG end <> 'Y' ";
//Changed By Pragyan 13-nov-13 to get pending qty
// +" AND ((SORDITEM.QUANTITY - SORDITEM.QTY_DESP - SORDITEM.QTY_ALLOC > 0 ) "
+" AND ((FN_GET_CONV_QTY(SORDER.SALE_ORDER, SORDDET.LINE_NO) > 0 ) "
//changed by manish on 02/09/15 for Ms sql server databse.(add dbo. in function name)
if("mssql".equalsIgnoreCase(DB))
{
getDataSql = getDataSql+" AND ((dbo.FN_GET_CONV_QTY(SORDER.SALE_ORDER, SORDDET.LINE_NO) > 0 ) "
+" OR (dbo.FN_CHECK_MANUAL_STOCK_ALLOC(SORDER.SALE_ORDER, SORDDET.LINE_NO) = 0 ) )"
+" AND SORDITEM.LINE_TYPE = 'I'";
}
//changed by manish on 02/09/15 for Ms sql server databse [end]
else
{
getDataSql = getDataSql + " AND ((FN_GET_CONV_QTY(SORDER.SALE_ORDER, SORDDET.LINE_NO) > 0 ) "
//FN_GET_CONV_QTY(SORDER.SALE_ORDER, SORDDET.LINE_NO)
+" OR (FN_CHECK_MANUAL_STOCK_ALLOC(SORDER.SALE_ORDER, SORDDET.LINE_NO) = 0 ) )"
+" AND SORDITEM.LINE_TYPE = 'I'";
}
//changed by sankara on 04/02/14 for getting sale order type start.
//+" ORDER BY SORDER.CUST_CODE,SORDER.SALE_ORDER,SORDITEM.ITEM_CODE__ORD";
......@@ -588,8 +636,9 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
if( saleOrdertype != null && saleOrdertype.trim().length() > 0 )
{
//changed by manish on 02/09/15 for Ms sql server databse.(remove TRIM() and added RTRIM(LTRIM ())
System.out.println("ordtypeGetData::::::::"+saleOrdertype);
getDataSql = getDataSql + " AND TRIM ( SORDER.ORDER_TYPE ) = ? ORDER BY SORDER.CUST_CODE,SORDER.SALE_ORDER,SORDITEM.ITEM_CODE__ORD ";
getDataSql = getDataSql + " AND RTRIM(LTRIM ( SORDER.ORDER_TYPE )) = ? ORDER BY SORDER.CUST_CODE,SORDER.SALE_ORDER,SORDITEM.ITEM_CODE__ORD ";
}
else
{
......@@ -711,7 +760,17 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
ResultSet rsStock = null;
double pendingQty = 0d;
boolean isActives = false;
//changed by manish on 02/09/15 for Ms sql server databse.
if("mssql".equalsIgnoreCase(DB))
{
sqlFnManual = " SELECT dbo.FN_MANUAL_STOCK_FOR_EACHITEM(?,?) AS ALLOC_FLAG ";
}
//changed by manish on 02/09/15 for Ms sql server databse.
else
{
sqlFnManual = " SELECT FN_MANUAL_STOCK_FOR_EACHITEM(?,?) AS ALLOC_FLAG FROM DUAL";
}
pstmtManul = conn.prepareStatement(sqlFnManual);
sqlTotHoldQty = "SELECT SUM(HOLD_QTY) AS HOLD_QTY FROM STOCK WHERE ITEM_CODE = ? AND SITE_CODE = ?";
pstmtHold = conn.prepareStatement(sqlTotHoldQty);
......@@ -800,15 +859,35 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
if(maxSelfLife > 0)
{
//changed by Manish for ms sql server query on 04/09/2015
if("mssql".equalsIgnoreCase(DB))
{
minMaxSql = " AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) > BETWEEN ? AND ? ";
minMaxSqlLot = " AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) > BETWEEN ? AND ? ) ";
}
//changed by Manish for ms sql server query on 04/09/2015
else
{
minMaxSql = " AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) BETWEEN ? AND ? ) ";
minMaxSqlLot = " AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) BETWEEN ? AND ? ) ";
}
}
else
{
//changed by Manish for ms sql server query on 04/09/2015
if("mssql".equalsIgnoreCase(DB))
{
minMaxSql = "AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) > ? ) ";
minMaxSqlLot = "AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) > ? ) ";
}
//changed by Manish for ms sql server query on 04/09/2015
else
{
minMaxSql = "AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) > ? ) ";
minMaxSqlLot = "AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) > ? ) ";
}
}
System.out.println("pendingQty =["+pendingQty+"]");
System.out.println("partQty =["+partQty+"]");
......@@ -935,6 +1014,22 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
singleLot = globalSingleLot;
}
//Changed by Manish on 07/09/2015 for ms sql server.[start]
if("mssql".equalsIgnoreCase(DB))
{
if(directPickLoc != null && directPickLoc.length() > 0)
{
orderByStkStr = "AND LOCATION.LOC_CODE IN(?) ";
}
else
{
orderByStkStr = "AND LOCATION.INV_STAT IN(?,?,?,?,?) ";
}
}
//Changed by Manish on 07/09/2015 for ms sql server.[end]
else
{
if(directPickLoc != null && directPickLoc.length() > 0)
{
orderByStkStr = "AND LOCATION.LOC_CODE IN(?) ORDER BY STOCK.EXP_DATE,LOCATION.INV_STAT, STOCK.LOC_CODE ";
......@@ -943,7 +1038,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
{
orderByStkStr = "AND LOCATION.INV_STAT IN(?,?,?,?,?) ORDER BY STOCK.EXP_DATE,LOCATION.INV_STAT, STOCK.LOC_CODE ";
}
}
if ( partQty.trim().length() > 0 )
{
......@@ -5141,6 +5236,22 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
+ orderByStkStr;*/
//+" ORDER BY STOCK.EXP_DATE,INVSTAT.ALLOC_PREF, STOCK.LOC_CODE ";
//changed by manish on 08/09/2015 for ms sql server
if("mssql".equalsIgnoreCase(DB))
{
if(maxShelfLife > 0)
{
getDataSql = getDataSql +" AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) BETWEEN ? AND ? ) ";
}
else
{
getDataSql = getDataSql + " AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) > ? ) ";
}
}
//changed by manish on 08/09/2015 for ms sql server
else
{
if(maxShelfLife > 0)
{
getDataSql = getDataSql + " AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) BETWEEN ? AND ? ) ";
......@@ -5149,6 +5260,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
{
getDataSql = getDataSql + "AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) > ? ) ";
}
}
pstmtStock = conn.prepareStatement(getDataSql + orderByStkStr);
......@@ -5204,6 +5316,23 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
/* //+"ORDER BY STOCK.EXP_DATE, STOCK.LOC_CODE";
+ orderByStkStr;*/
//+" ORDER BY STOCK.EXP_DATE,INVSTAT.ALLOC_PREF, STOCK.LOC_CODE ";
//changed by manish on 08/09/2015 for ms sql server
if("mssql".equalsIgnoreCase(DB))
{
if(maxShelfLife > 0)
{
getDataSql = getDataSql +" AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) BETWEEN ? AND ? ) ";
}
else
{
getDataSql = getDataSql + " AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) > ? ) ";
}
}
//changed by manish on 08/09/2015 for ms sql server
else
{
if(maxShelfLife > 0)
{
getDataSql = getDataSql +" AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) BETWEEN ? AND ? ) ";
......@@ -5212,6 +5341,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
{
getDataSql = getDataSql + "AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) > ? ) ";
}
}
pstmtStock = conn.prepareStatement(getDataSql + orderByStkStr);
pstmtStock.setString(1,itemCode);
pstmtStock.setString(2,siteCode);
......@@ -5342,6 +5472,22 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
// +"ORDER BY STOCK.EXP_DATE, STOCK.LOC_CODE";//Pragyan on 14/08/2012
+ orderByStkStr;*/
//+" ORDER BY STOCK.EXP_DATE,INVSTAT.ALLOC_PREF, STOCK.LOC_CODE ";
//changed by manish on 08/09/2015 for ms sql server
if("mssql".equalsIgnoreCase(DB))
{
if(maxShelfLife > 0)
{
getDataSql = getDataSql +" AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) BETWEEN ? AND ? ) ";
}
else
{
getDataSql = getDataSql + "AND (CEILING(DATEDIFF(mm,GETDATE(),CONVERT(DATETIME, STOCK.EXP_DATE))) > ? ) ";
}
}
//changed by manish on 08/09/2015 for ms sql server
else
{
if(maxShelfLife > 0)
{
getDataSql = getDataSql +" AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) BETWEEN ? AND ? ) ";
......@@ -5350,6 +5496,7 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
{
getDataSql = getDataSql + "AND (CEIL(MONTHS_BETWEEN(TO_DATE(STOCK.EXP_DATE),SYSDATE)) > ? ) ";
}
}
pstmtStock = conn.prepareStatement(getDataSql + orderByStkStr);
pstmtStock.setString(1,itemCode);
......@@ -17172,9 +17319,20 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
PreparedStatement pstmt = null;
ResultSet rSet = null ;
try
{
//Changed by Manish on 08/09/2015 for mssql.
if ("mssql".equalsIgnoreCase(DB))
{
sql = " SELECT SUM(isnull(FILLER_WEIGHT,0)) FILLER_WEIGHT , SUM(isnull(TARE_WEIGHT,0)) TARE_WEIGHT FROM CARTON_MASTER "
+" WHERE PTCN = ? AND (CARTON_TYPE = ? OR CARTON_TYPE = ? ) ";
}
//Changed by Manish on 08/09/2015 for mssql.
else
{
sql = " SELECT SUM(NVL(FILLER_WEIGHT,0)) FILLER_WEIGHT , SUM(NVL(TARE_WEIGHT,0)) TARE_WEIGHT FROM CARTON_MASTER "
+" WHERE PTCN = ? AND (CARTON_TYPE = ? OR CARTON_TYPE = ? ) ";
}
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,ptcn);
pstmt.setString(2,"M");
......@@ -17887,12 +18045,27 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
//orderSql = "SELECT COUNT(*) AS COUNT FROM REPL_ORD_DET O WHERE O.LOC_CODE__TO = ? AND NOT EXISTS (SELECT 1 FROM REPL_ISS_HDR I WHERE I.REPL_ORDER = O.REPL_ORDER AND I.CONFIRMED = 'Y') "; //changes done by Ashish Sonawane on 10-jul-12
System.out.println("PickType----->>["+pickType+"]");
sql = "SELECT A.SINGLE_LOT_SL,A.LOC_CODE, A.LOC_ZONE, A.LOC_TYPE FROM LOCATION A ,INVSTAT B ,SITE S "
+ "WHERE A.INV_STAT = B.INV_STAT AND B.AVAILABLE = 'Y' AND A.LOC_TYPE = 'N' AND S.SITE_CODE = ? "
+ "AND (S.FACILITY_CODE = A.FACILITY_CODE or nvl(s.facility_code ,'N') = 'N') "
+ "WHERE A.INV_STAT = B.INV_STAT AND B.AVAILABLE = 'Y' AND A.LOC_TYPE = 'N' AND S.SITE_CODE = ? ";
//Changed by Manish on 05/10/2015 for mssql for adding isnull in place of nvl [start]
if("mssql".equalsIgnoreCase(DB))
{
sql = sql + "AND (S.FACILITY_CODE = A.FACILITY_CODE or isnull(s.facility_code ,'N') = 'N') "
+ "AND A.INV_STAT IN (?) AND (CASE WHEN B.STAT_TYPE IS NULL THEN ' ' ELSE B.STAT_TYPE END) <> 'S' "
+ "and isnull((SELECT sum(quantity) FROM STOCK WHERE SITE_CODE = ? AND stock.loc_code = a.loc_code and a.SINGLE_LOT_SL ='Y'),0) = 0 "
+ "and isnull((SELECT sum(quantity) FROM STOCK WHERE (ITEM_CODE <> ? OR LOT_NO <> ?) and a.SINGLE_LOT_SL ='N' and SITE_CODE = ? AND stock.loc_code = a.loc_code and a.ITEM_LOT_OPT = 0),0) = 0 "
+ "and isnull((SELECT sum(quantity) FROM STOCK WHERE ITEM_CODE <> ? and SITE_CODE = ? and a.SINGLE_LOT_SL ='N' AND stock.loc_code = a.loc_code and a.ITEM_LOT_OPT = 1),0) = 0 ";
}
else
{
sql = sql + "AND (S.FACILITY_CODE = A.FACILITY_CODE or nvl(s.facility_code ,'N') = 'N') "
+ "AND A.INV_STAT IN (?) AND (CASE WHEN B.STAT_TYPE IS NULL THEN ' ' ELSE B.STAT_TYPE END) <> 'S' "
+ "and nvl((SELECT sum(quantity) FROM STOCK WHERE SITE_CODE = ? AND stock.loc_code = a.loc_code and a.SINGLE_LOT_SL ='Y'),0) = 0 "
+ "and nvl((SELECT sum(quantity) FROM STOCK WHERE (ITEM_CODE <> ? OR LOT_NO <> ?) and a.SINGLE_LOT_SL ='N' and SITE_CODE = ? AND stock.loc_code = a.loc_code and a.ITEM_LOT_OPT = 0),0) = 0 "
+ "and nvl((SELECT sum(quantity) FROM STOCK WHERE ITEM_CODE <> ? and SITE_CODE = ? and a.SINGLE_LOT_SL ='N' AND stock.loc_code = a.loc_code and a.ITEM_LOT_OPT = 1),0) = 0 ";
}
//Changed by Manish on 05/10/2015 for mssql.[end]
////Uncomment for Replenishments having same case pick location.
orderSql = "SELECT COUNT(*) AS COUNT FROM REPL_ORD_DET O WHERE O.LOC_CODE__TO = ? "
......@@ -18439,12 +18612,26 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
+" AND CASE WHEN CANCEL_MODE IS NULL THEN 'N' ELSE CANCEL_MODE END <> 'Y' "
+" AND NOT EXISTS (SELECT 1 FROM REPL_ISS_HDR I WHERE I.REPL_ORDER = O.REPL_ORDER AND I.CONFIRMED = 'Y') ";
sql = "SELECT A.SINGLE_LOT_SL,A.LOC_CODE, A.LOC_ZONE, A.LOC_TYPE FROM LOCATION A ,INVSTAT B ,SITE S "
+ "WHERE A.INV_STAT = B.INV_STAT AND B.AVAILABLE = 'Y' AND A.LOC_TYPE = 'N' AND S.SITE_CODE = ? "
+ "AND (S.FACILITY_CODE = A.FACILITY_CODE or nvl(s.facility_code ,'N') = 'N') "
+ "WHERE A.INV_STAT = B.INV_STAT AND B.AVAILABLE = 'Y' AND A.LOC_TYPE = 'N' AND S.SITE_CODE = ? ";
//Changed by Manish on 05/10/2015 for mssql for adding isnull in place of nvl [start]
if ("mssql".equalsIgnoreCase(DB))
{
sql = sql + "AND (S.FACILITY_CODE = A.FACILITY_CODE or isnull(s.facility_code ,'N') = 'N') "
+ "AND A.INV_STAT IN (?) AND (CASE WHEN B.STAT_TYPE IS NULL THEN ' ' ELSE B.STAT_TYPE END) <> 'S' "
+ "and isnull((SELECT sum(quantity) FROM STOCK WHERE SITE_CODE = ? AND stock.loc_code = a.loc_code and a.SINGLE_LOT_SL ='Y'),0) = 0 "
+ "and isnull((SELECT sum(quantity) FROM STOCK WHERE (ITEM_CODE <> ? OR LOT_NO <> ?) and a.SINGLE_LOT_SL ='N' and SITE_CODE = ? AND stock.loc_code = a.loc_code and a.ITEM_LOT_OPT = 0),0) = 0 "
+ "and isnull((SELECT sum(quantity) FROM STOCK WHERE ITEM_CODE <> ? and SITE_CODE = ? and a.SINGLE_LOT_SL ='N' AND stock.loc_code = a.loc_code and a.ITEM_LOT_OPT = 1),0) = 0 ";
}
else
{
sql = sql + "AND (S.FACILITY_CODE = A.FACILITY_CODE or nvl(s.facility_code ,'N') = 'N') "
+ "AND A.INV_STAT IN (?) AND (CASE WHEN B.STAT_TYPE IS NULL THEN ' ' ELSE B.STAT_TYPE END) <> 'S' "
+ "and nvl((SELECT sum(quantity) FROM STOCK WHERE SITE_CODE = ? AND stock.loc_code = a.loc_code and a.SINGLE_LOT_SL ='Y'),0) = 0 "
+ "and nvl((SELECT sum(quantity) FROM STOCK WHERE (ITEM_CODE <> ? OR LOT_NO <> ?) and a.SINGLE_LOT_SL ='N' and SITE_CODE = ? AND stock.loc_code = a.loc_code and a.ITEM_LOT_OPT = 0),0) = 0 "
+ "and nvl((SELECT sum(quantity) FROM STOCK WHERE ITEM_CODE <> ? and SITE_CODE = ? and a.SINGLE_LOT_SL ='N' AND stock.loc_code = a.loc_code and a.ITEM_LOT_OPT = 1),0) = 0 ";
}
//Changed by Manish on 05/10/2015 for mssql [end]
// ORDER BY ABS(A.LOC_ZONE - ? ),A.LOC_CODE";
if ( "A".equalsIgnoreCase(pickType.trim()) )
......@@ -23973,7 +24160,22 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
System.out.println("case2");
pstmt = conn.prepareStatement(sqlPnd);
pstmt.setString(1, replOrder);
//changed by manish on 18/09/15 for Ms sql server database .[start]
if("mssql".equalsIgnoreCase(DB))
{
replLineNo = replLineNo.trim().length() == 0 ? "0" : replLineNo.trim();
int linenopick = Integer.parseInt(replLineNo);
pstmt.setInt(2, linenopick);
}
//changed by manish on 18/09/15 for Ms sql server database .[end]
else
{
pstmt.setString(2, replLineNo);
}
rs = pstmt.executeQuery();
if(rs.next())
{
......@@ -24405,8 +24607,8 @@ public class WaveGenerationPrc extends ProcessEJB implements WaveGenerationPrcLo
//Chnged by Rohan on 09/03/12 to get Volume & weight form pack code.end
//Changed by Rohan on 13-09-12 to generate only one Repalnishmement Header
//public int updateReplOrdDet(String replType,String itemCode,String siteCode,String locCode,String lotNo,String lotSl,String locCodeTo ,double reqQuantity,String replOrder,Connection conn) throws Exception
public int updateReplOrdDet(String replType,String itemCode,String siteCode,String locCode,String lotNo,String lotSl,String locCodeTo ,double reqQuantity,String replOrder,String replLineNo,Connection conn) throws Exception
{
public int updateReplOrdDet(String replType,String itemCode,String siteCode,String locCode,String lotNo,String lotSl,String locCodeTo ,double reqQuantity,String replOrder,String replLineNo,Connection conn) throws Exception
{
PreparedStatement pstmt = null;
ResultSet rs = null;
......@@ -24486,13 +24688,13 @@ public int updateReplOrdDet(String replType,String itemCode,String siteCode,Stri
}
}
return updatedRecordCount;
}
//Chnged by Rohan on 09/03/12 to get Volume & weight form pack code.start
return updatedRecordCount;
}
//Chnged by Rohan on 09/03/12 to get Volume & weight form pack code.start
//Chnged by sumit on 24/11/12 to get label print start
private String generatedLabelPrint(String waveId, String printer, Connection conn) throws ITMException
{
//Chnged by sumit on 24/11/12 to get label print start
private String generatedLabelPrint(String waveId, String printer, Connection conn) throws ITMException
{
String errString ="";
String printMode = "";
......@@ -24585,12 +24787,12 @@ private String generatedLabelPrint(String waveId, String printer, Connection con
throw new ITMException(e);
}
return errString;
}
//Chnged by sumit on 24/11/12 to get label print end.
//Changed by sumit on 10/12/12 suggesting active location for same item code and lot No. start.
//Changed by sumit on 09/02/13 adding site code method parameter
private String getPickLocForSameItemLotNo(String invStat, String pickType, String itemCode, String lotNo, String lotSl, String suggLocCode, String siteCode, Connection conn) throws ITMException
{
}
//Chnged by sumit on 24/11/12 to get label print end.
//Changed by sumit on 10/12/12 suggesting active location for same item code and lot No. start.
//Changed by sumit on 09/02/13 adding site code method parameter
private String getPickLocForSameItemLotNo(String invStat, String pickType, String itemCode, String lotNo, String lotSl, String suggLocCode, String siteCode, Connection conn) throws ITMException
{
String itemCodeTemp = "";
String lotNoTemp = "";
......@@ -24887,12 +25089,12 @@ private String getPickLocForSameItemLotNo(String invStat, String pickType, Strin
}
}
return locCodeTo;
}
//Changed by sumit on 10/12/12 suggesting active location for same item code and lot No. end.
}
//Changed by sumit on 10/12/12 suggesting active location for same item code and lot No. end.
//Changed by sumit on 31/01/12 convert qty as per unit start
private double getStockQtyAfterConvert(String saleOrder, String lineNo,String itemCode,double quantity,int check, Connection conn) throws ITMException
{
//Changed by sumit on 31/01/12 convert qty as per unit start
private double getStockQtyAfterConvert(String saleOrder, String lineNo,String itemCode,double quantity,int check, Connection conn) throws ITMException
{
String sql = "";
String itemUnit = "";
String orderUnit = "";
......@@ -24969,10 +25171,10 @@ private double getStockQtyAfterConvert(String saleOrder, String lineNo,String it
}
return newQty;
}
//Changed by sumit on 31/01/12 convert qty as per unit end
//Changed By Pragyan 26/02/13 For Master/Parcel convert.Start
private String getPalletNo(String siteCode,String lotNo, String lotSl,String itemCode,String oldPtcn , Connection conn) throws ITMException
{
//Changed by sumit on 31/01/12 convert qty as per unit end
//Changed By Pragyan 26/02/13 For Master/Parcel convert.Start
private String getPalletNo(String siteCode,String lotNo, String lotSl,String itemCode,String oldPtcn , Connection conn) throws ITMException
{
String sql = "";
String palletNo = "";
PreparedStatement pstmt = null;
......@@ -25011,8 +25213,8 @@ private String getPalletNo(String siteCode,String lotNo, String lotSl,String ite
return palletNo;
}
private double getRateStdoum(String saleOrder,String itemCode,Connection conn) throws ITMException
{
private double getRateStdoum(String saleOrder,String itemCode,Connection conn) throws ITMException
{
String sql = "";
double rateStdOum = 0.0;
PreparedStatement pstmt = null;
......@@ -25045,8 +25247,8 @@ private double getRateStdoum(String saleOrder,String itemCode,Connection conn) t
}
return rateStdOum;
}
private void updatePalletNo(String PTCN,String palletNo , Connection conn) throws ITMException
{
private void updatePalletNo(String PTCN,String palletNo , Connection conn) throws ITMException
{
String sql = "",sql1 = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
......@@ -25088,11 +25290,11 @@ private void updatePalletNo(String PTCN,String palletNo , Connection conn) throw
}
}
//Changed By Pragyan 26/02/13 For Master/Parcel convert.end
//Changed By Pragyan 26/02/13 For Master/Parcel convert.end
//Changed By Pragyan 14/03/13 For Active Transfer/update craton no in pack oder detail.start
private void updateActivePackingCarton(String pickOrder ,int pickLineNo,String activeCartonNo,String packCode, Connection conn) throws ITMException
{
//Changed By Pragyan 14/03/13 For Active Transfer/update craton no in pack oder detail.start
private void updateActivePackingCarton(String pickOrder ,int pickLineNo,String activeCartonNo,String packCode, Connection conn) throws ITMException
{
String sql = "",sql1 = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
......@@ -25141,10 +25343,10 @@ private void updateActivePackingCarton(String pickOrder ,int pickLineNo,String a
}
}
//Changed By Pragyan 14/03/13 For Active Transfer/ no in pack oder detail.end
//changed by sankara on 21/08/13 for bug fixing start..
private String printExceptionMessage( String Code, Connection conn, String errString) throws ITMException
{
//Changed By Pragyan 14/03/13 For Active Transfer/ no in pack oder detail.end
//changed by sankara on 21/08/13 for bug fixing start..
private String printExceptionMessage( String Code, Connection conn, String errString) throws ITMException
{
String mainStr = "";
String errMessage = "";
String endDesc = "";
......@@ -25178,11 +25380,11 @@ private String printExceptionMessage( String Code, Connection conn, String errSt
throw new ITMException(e);
}
return mainStr;
}
//changed by sankara on 21/08/13 for bug fixing end..
//changed by sankara on 24/09/13 for update status in sorddet start.
public void updateBackOrderStatus (String salesOrder, Connection conn) throws ITMException
{
}
//changed by sankara on 21/08/13 for bug fixing end..
//changed by sankara on 24/09/13 for update status in sorddet start.
public void updateBackOrderStatus (String salesOrder, Connection conn) throws ITMException
{
String sql = "";
String soreItemsql = "";
......@@ -25211,7 +25413,8 @@ public void updateBackOrderStatus (String salesOrder, Connection conn) throws IT
rs = pstmt.executeQuery();
while( rs.next())
{
pendingOrder = rs.getString(1);
//Added checkNull by Manish on 07/09/2015 for pending order.
pendingOrder = checkNull(rs.getString(1));
LineNo = rs.getString(2);
orderQuantity = rs.getInt(3);
allocQuantity = rs.getInt(4);
......@@ -25271,12 +25474,12 @@ public void updateBackOrderStatus (String salesOrder, Connection conn) throws IT
throw new ITMException(ex);
}
}
}
//changed by sankara on 24/09/13 for update status in sorddet end.
}
//changed by sankara on 24/09/13 for update status in sorddet end.
//changed by Pragyan on 28/FEB/14 for update repl qty in stock.start
public void updateStkReplQty(String locCode,String itemCode,String lotNo,String lotSl,double replQty, Connection conn) throws ITMException
{
//changed by Pragyan on 28/FEB/14 for update repl qty in stock.start
public void updateStkReplQty(String locCode,String itemCode,String lotNo,String lotSl,double replQty, Connection conn) throws ITMException
{
String sql = "";
int upddateStatus = 0;
......@@ -25318,10 +25521,10 @@ public void updateStkReplQty(String locCode,String itemCode,String lotNo,String
throw new ITMException(ex);
}
}
}
//changed by Pragyan on 28/FEB/14 for update repl qty in stock.end
private String getInventoryStatus(String locCode,Connection conn) throws ITMException
{
}
//changed by Pragyan on 28/FEB/14 for update repl qty in stock.end
private String getInventoryStatus(String locCode,Connection conn) throws ITMException
{
String sql = "",invStat = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
......@@ -25353,8 +25556,8 @@ private String getInventoryStatus(String locCode,Connection conn) throws ITMExce
return invStat;
}
private boolean isRemotePrintSrvCofigured(String propertyName , Connection conn) throws ITMException
{
private boolean isRemotePrintSrvCofigured(String propertyName , Connection conn) throws ITMException
{
String sql = "";
String flagRemoteRptSrvltCofigured = "N";
PreparedStatement pstmt = null;
......@@ -25391,10 +25594,10 @@ private boolean isRemotePrintSrvCofigured(String propertyName , Connection conn)
throw new ITMException(ex);
}
}
}
//Changed By Pragyan 14/08/14 for tran_code argument and loc type parent start.
private HashMap getArgTransporterInfoMap(String saleOrder, double perShipWeight ,double noArt,String pickType , String shipType ,String transporterCode, Connection conn) throws ITMException
{
}
//Changed By Pragyan 14/08/14 for tran_code argument and loc type parent start.
private HashMap getArgTransporterInfoMap(String saleOrder, double perShipWeight ,double noArt,String pickType , String shipType ,String transporterCode, Connection conn) throws ITMException
{
String sql = "";
String sql1 = "";
String sqlShipStanCode = "";
......@@ -25513,11 +25716,11 @@ private HashMap getArgTransporterInfoMap(String saleOrder, double perShipWeight
}
}
return transInfoMap;
}
//Merge code on 19-SEP-14 [W14FSUN003]
//Changed By Pragyan 14/08/14 for tran_code argument and loc type parent end.
private double getFillerWeight(String packCode,String locTypeParent,double weight,double volume, Connection conn) throws ITMException
{
}
//Merge code on 19-SEP-14 [W14FSUN003]
//Changed By Pragyan 14/08/14 for tran_code argument and loc type parent end.
private double getFillerWeight(String packCode,String locTypeParent,double weight,double volume, Connection conn) throws ITMException
{
String sql = "";
double fillerWeight = 0.0;
PreparedStatement pstmt = null;
......@@ -25552,9 +25755,9 @@ private double getFillerWeight(String packCode,String locTypeParent,double weigh
}
return fillerWeight;
}
//Changed By Pragyan 14/08/14 for tran_code argument and loc type parent end.
private void updatePacketWeigfhts(String masterPackTranId ,String packCode,double tareWeight,double fillerweight,double caseWeight,String masterCartonNo, Connection conn) throws ITMException
{
//Changed By Pragyan 14/08/14 for tran_code argument and loc type parent end.
private void updatePacketWeigfhts(String masterPackTranId ,String packCode,double tareWeight,double fillerweight,double caseWeight,String masterCartonNo, Connection conn) throws ITMException
{
String sql = "";
int updateCount = 0;
PreparedStatement pstmt = null;
......@@ -25605,9 +25808,9 @@ private void updatePacketWeigfhts(String masterPackTranId ,String packCode,doubl
}
}
//Added by Dadaso pawar on 06/04/15 [Start]
private java.sql.Timestamp getCurrtDate() throws RemoteException,ITMException
{
//Added by Dadaso pawar on 06/04/15 [Start]
private java.sql.Timestamp getCurrtDate() throws RemoteException,ITMException
{
String currAppdate = "";
java.sql.Timestamp currDate = null;
try
......@@ -25624,6 +25827,6 @@ private java.sql.Timestamp getCurrtDate() throws RemoteException,ITMException
throw new ITMException(e);
}
return (currDate);
}
//Added by Dadaso pawar on 06/04/15 [End]
}
//Added by Dadaso pawar on 06/04/15 [End]
}
package ibase.webitm.utility.wms;
import ibase.utility.CommonConstants;
import ibase.webitm.utility.ITMException;
import java.sql.Connection;
......@@ -26,9 +27,21 @@ public class CommonWmsUtil {
double packSize=0.0;
boolean isValidLocation = false;
int count = 0;
// Added By Manish on 27/07/15
String sql = "";
String DB = CommonConstants.DB_NAME;
System.out.println("DB=====>>>"+DB);
try {
String sql ="SELECT FN_CHECK_VALID_LOC(?,?) FROM DUAL";
//changed by manish for database MS SQL server on 27/07/15
if("mssql".equalsIgnoreCase(DB))
{
sql ="SELECT dbo.FN_CHECK_VALID_LOC(?,?)";
}
else
{
sql ="SELECT FN_CHECK_VALID_LOC(?,?) FROM DUAL";
}
pstmt =conn.prepareStatement(sql);
pstmt.setString(1, siteCode);
pstmt.setString(2, locCode);
......
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