Commit 89a8d9b4 authored by rtiwari's avatar rtiwari

UPDATED FOR LOCK SORDITEM


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@95016 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 5dcc57bd
......@@ -1590,6 +1590,30 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
if(checkLocation)
{
// ADDED BY RITESH ON 02/MAY/2014 START
String sqlSorditem = "";
PreparedStatement psmtSord = null;
if ("db2".equalsIgnoreCase(CommonConstants.DB_NAME ) || "mysql".equalsIgnoreCase(CommonConstants.DB_NAME ))
{
sqlSorditem = " select * from sorditem where sale_order = '"+saleOrder+"' and line_no = '"+lineNo+"' for update ";
}
else if ( "mssql".equalsIgnoreCase(CommonConstants.DB_NAME ))
{
sqlSorditem = " select * from sorditem (updlock) where sale_order = '"+saleOrder+"' and line_no = '"+lineNo+"' ";
}
else
{
sqlSorditem = " select * from sorditem where sale_order = '"+saleOrder+"' and line_no = '"+lineNo+"' for update nowait ";
}
psmtSord = conn.prepareStatement(sqlSorditem);
psmtSord.executeQuery();
if(psmtSord!=null)
psmtSord.close();
psmtSord= null;
// ADDED BY RITESH ON 02/MAY/2014 END
sql =" SELECT SORDER.CUST_CODE, CUSTOMER.CUST_NAME,SORDDET.LINE_NO, "
+"SORDER.SALE_ORDER,SORDER.DUE_DATE,SORDITEM.ITEM_CODE,"
+"ITEM.DESCR,SORDITEM.QUANTITY,"
......@@ -2010,6 +2034,7 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
pstmtStock.close();
System.out.println("manohar connection commited errString :::"+ errString );
System.out.println("manoj if Quantity is fuly allocated commiting transaction else rollbacking :::"+ allocQty );
if(allocQty==0)
{
conn.commit();
......@@ -2021,6 +2046,8 @@ public class StockAllocationPrc extends ProcessEJB implements StockAllocationPrc
//errString = "VSTQTYER";
conn.rollback();
}
}
catch(SQLException se)
{
......
......@@ -8,6 +8,7 @@
package ibase.webitm.ejb.dis.adv;
import ibase.system.config.ConnDriver;
import ibase.utility.CommonConstants;
import ibase.webitm.ejb.ActionHandlerEJB;
import ibase.webitm.ejb.ITMDBAccessEJB;
import ibase.webitm.ejb.dis.InvAllocTraceBean;
......@@ -44,6 +45,11 @@ public class StockAllocPrc extends ActionHandlerEJB implements StockAllocPrcLoca
ConnDriver connDriver = null;
ITMDBAccessEJB itmDBAccessEJB = null;
double availQty =0.0;//Added by sumit on 21/12/12
// ADDED ON 02/MAY/2014
String sqlSorditem = "";
PreparedStatement psmtSord = null;
try
{
itmDBAccessEJB = new ITMDBAccessEJB();
......@@ -72,6 +78,7 @@ public class StockAllocPrc extends ActionHandlerEJB implements StockAllocPrcLoca
}
else
{
//Changed by sumit on 21/12/12 checking sord_alloc_det quantity start.
//errString = this.sorderAllocate(tranId,xtraParams,conn);
sql = "SELECT SALE_ORDER, LINE_NO__SORD, SUM(QUANTITY) FROM SORD_ALLOC_DET WHERE TRAN_ID = ? " +
......@@ -80,12 +87,37 @@ public class StockAllocPrc extends ActionHandlerEJB implements StockAllocPrcLoca
pstmt.setString(1, tranId);
rs = pstmt.executeQuery();
sql = "SELECT (( QUANTITY * CONV__QTY_STDQTY ) - QTY_ALLOC) AS TOBEALLOC FROM SORDITEM WHERE SALE_ORDER = ? AND LINE_NO = ?"; // modify by cpatil on 29/06/13
//sql = "SELECT ( QUANTITY - QTY_ALLOC) AS TOBEALLOC FROM SORDITEM WHERE SALE_ORDER = ? AND LINE_NO = ?";
pstmt1 = conn.prepareStatement(sql);
while( rs.next())
{
// ADDED BY RITESH ON 02/MAY/2014 START
if ("db2".equalsIgnoreCase(CommonConstants.DB_NAME ) || "mysql".equalsIgnoreCase(CommonConstants.DB_NAME ))
{
sqlSorditem = " select * from sorditem where sale_order = ? and line_no = ? for update ";
}
else if ( "mssql".equalsIgnoreCase(CommonConstants.DB_NAME ))
{
sqlSorditem = " select * from sorditem (updlock) where sale_order = ? and line_no = ? ";
}
else
{
sqlSorditem = " select * from sorditem where sale_order = ? and line_no = ? for update nowait ";
}
psmtSord = conn.prepareStatement(sqlSorditem);
psmtSord.setString(1, rs.getString("SALE_ORDER"));
psmtSord.setString(2, rs.getString("LINE_NO__SORD"));
psmtSord.executeQuery();
if(psmtSord!=null)
psmtSord.close();
psmtSord= null;
// ADDED BY RITESH ON 02/MAY/2014 END
pstmt1.setString(1, rs.getString("SALE_ORDER"));
pstmt1.setString(2, rs.getString("LINE_NO__SORD"));
rs1 = pstmt1.executeQuery();
......
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