Commit cc2ec839 authored by dpawar's avatar dpawar

added sql for total login site code stock(MF3GSUN023)


git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@94113 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 195ea470
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
Menu Reference:Master-ProductStructure-BillOfMaterial(MFG) Menu Reference:Master-ProductStructure-BillOfMaterial(MFG)
Button:ViewAltBOM,Stock Button:ViewAltBOM,Stock
*/ */
package ibase.webitm.ejb.mfg.adv; package ibase.webitm.ejb.mfg.adv;
...@@ -17,6 +17,7 @@ import java.util.Date; ...@@ -17,6 +17,7 @@ import java.util.Date;
import java.sql.*; import java.sql.*;
import org.w3c.dom.*; import org.w3c.dom.*;
import javax.xml.parsers.*; import javax.xml.parsers.*;
import javax.ejb.*; import javax.ejb.*;
import javax.naming.InitialContext; import javax.naming.InitialContext;
...@@ -26,291 +27,317 @@ import ibase.webitm.ejb.*; ...@@ -26,291 +27,317 @@ import ibase.webitm.ejb.*;
//import ibase.webitm.ejb.mfg.adv.BOMStock.BOMStockDtlParams; //import ibase.webitm.ejb.mfg.adv.BOMStock.BOMStockDtlParams;
import ibase.webitm.utility.GenericUtility; import ibase.webitm.utility.GenericUtility;
import ibase.ejb.*; import ibase.ejb.*;
import javax.annotation.*; import javax.annotation.*;
import ibase.system.config.*; import ibase.system.config.*;
import ibase.utility.CommonConstants; import ibase.utility.CommonConstants;
import ibase.utility.UserInfoBean;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.text.DecimalFormat; import java.text.DecimalFormat;
import javax.ejb.Stateless; // added for ejb3
@Stateless // added for ejb3 import javax.ejb.Stateless; // added for ejb3
public class BOMAct extends ActionHandlerEJB implements BOMActLocal , BOMActRemote //SessionBean @Stateless
// added for ejb3
public class BOMAct extends ActionHandlerEJB implements BOMActLocal,
BOMActRemote // SessionBean
{ {
GenericUtility genericUtility = null; GenericUtility genericUtility = null;
CommonConstants commonConstants = new CommonConstants(); CommonConstants commonConstants = new CommonConstants();
/*@PostConstruct
public void ejbCreate() //throws RemoteException//, CreateException
{
System.out.println("Create Method Called[BOMActEJB].................");
try
{
}
catch(Exception e)
{
e.printStackTrace();
System.out.println("Exception in creating Connection");
}
}
public void ejbRemove()
{
}
public void ejbActivate()
{
}
public void ejbPassivate() /*
{ * @PostConstruct public void ejbCreate() //throws RemoteException//,
}*/ * CreateException {
* System.out.println("Create Method Called[BOMActEJB].................");
* try { } catch(Exception e) { e.printStackTrace();
* System.out.println("Exception in creating Connection"); } }
*
* public void ejbRemove() { }
*
* public void ejbActivate() { }
*
* public void ejbPassivate() { }
*/
public String actionHandler() throws RemoteException,ITMException public String actionHandler() throws RemoteException, ITMException {
{
System.out.println("actionHandler() Method Called...."); System.out.println("actionHandler() Method Called....");
return ""; return "";
} }
public String actionHandlerTransform(String actionType, String xmlString, String xmlString1, String objContext, String xtraParams, String selDataStr) throws RemoteException,ITMException
{ public String actionHandlerTransform(String actionType, String xmlString,
String xmlString1, String objContext, String xtraParams,
String selDataStr) throws RemoteException, ITMException {
Document dom = null; Document dom = null;
Document dom1 = null; Document dom1 = null;
Document selDataDom = null; Document selDataDom = null;
String retString = null; String retString = null;
try try {
{ if (xmlString != null && xmlString.trim().length() != 0) {
if(xmlString != null && xmlString.trim().length()!=0) dom = GenericUtility.getInstance().parseString(xmlString);
{
dom = GenericUtility.getInstance().parseString(xmlString);
dom1 = GenericUtility.getInstance().parseString(xmlString1); dom1 = GenericUtility.getInstance().parseString(xmlString1);
if(selDataStr != null && selDataStr.length() > 0) if (selDataStr != null && selDataStr.length() > 0) {
{ selDataDom = GenericUtility.getInstance().parseString(
selDataDom = GenericUtility.getInstance().parseString(selDataStr); selDataStr);
} }
} }
System.out.println("actionType:"+actionType+":"); System.out.println("actionType:" + actionType + ":");
if (actionType.equalsIgnoreCase("Stock")) if (actionType.equalsIgnoreCase("Stock")) {
{ retString = stockTransform(dom, dom1, objContext, xtraParams,
retString = stockTransform(dom, dom1, objContext, xtraParams, selDataDom); selDataDom);
} }
if (actionType.equalsIgnoreCase("ViewAltBOM")) if (actionType.equalsIgnoreCase("ViewAltBOM")) {
{ retString = viewAltBOMTransform(dom, dom1, objContext,
retString = viewAltBOMTransform(dom, dom1, objContext, xtraParams, selDataDom); xtraParams, selDataDom);
} }
// add for CopyBomDet on 28/08/09 ReguestId MF89GIM005 // add for CopyBomDet on 28/08/09 ReguestId MF89GIM005
if (actionType.equalsIgnoreCase("copyBomDet")) if (actionType.equalsIgnoreCase("copyBomDet")) {
{ retString = actionTransform(dom, dom1, objContext, xtraParams,
retString = actionTransform(dom, dom1, objContext, xtraParams, selDataDom); selDataDom);
} }
} catch (Exception e) {
System.out
} .println("Exception :Dispatch :actionHandlerTransform(String xmlString):"
catch(Exception e) + e.getMessage() + ":");
{
System.out.println("Exception :Dispatch :actionHandlerTransform(String xmlString):" + e.getMessage() + ":");
e.printStackTrace(); e.printStackTrace();
throw new ITMException(e); throw new ITMException(e);
} }
System.out.println("returning String from Despatch : actionHandlerTransform"+retString); System.out
return retString; .println("returning String from Despatch : actionHandlerTransform"
+ retString);
return retString;
} }
private String viewAltBOMTransform(Document dom,Document dom1, String objContext, String xtraParams, Document selDataDom)throws ITMException
{ private String viewAltBOMTransform(Document dom, Document dom1,
System.out.println("TransFomMation Called**************************************"); String objContext, String xtraParams, Document selDataDom)
StringBuffer valueXmlString = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root>\r\n"); throws ITMException {
System.out
valueXmlString.append("</Root>"); .println("TransFomMation Called**************************************");
StringBuffer valueXmlString = new StringBuffer(
"<?xml version=\"1.0\"?>\r\n<Root>\r\n");
valueXmlString.append("</Root>");
return valueXmlString.toString(); return valueXmlString.toString();
} }
private String stockTransform(Document dom,Document dom1, String objContext, String xtraParams, Document selDataDom)throws ITMException
{ private String stockTransform(Document dom, Document dom1,
System.out.println("TransFomMation Called**************************************"); String objContext, String xtraParams, Document selDataDom)
StringBuffer valueXmlString = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root>\r\n"); throws ITMException {
System.out
valueXmlString.append("</Root>"); .println("TransFomMation Called**************************************");
StringBuffer valueXmlString = new StringBuffer(
"<?xml version=\"1.0\"?>\r\n<Root>\r\n");
valueXmlString.append("</Root>");
return valueXmlString.toString(); return valueXmlString.toString();
} }
public String actionHandler(String actionType, String xmlString,String xmlString1, String objContext, String xtraParams) throws RemoteException,ITMException public String actionHandler(String actionType, String xmlString,
{ String xmlString1, String objContext, String xtraParams)
throws RemoteException, ITMException {
System.out.println("AdjIssEJB called"); System.out.println("AdjIssEJB called");
Document dom = null; Document dom = null;
Document dom1 = null; Document dom1 = null;
String resString = null; String resString = null;
try try {
{ GenericUtility genericUtility = GenericUtility.getInstance();
GenericUtility genericUtility = GenericUtility.getInstance(); if (xmlString != null && xmlString.trim().length() != 0) {
if(xmlString != null && xmlString.trim().length()!=0) System.out.println("XML String :" + xmlString);
{ dom = genericUtility.parseString(xmlString);
System.out.println("XML String :"+xmlString);
dom = genericUtility.parseString(xmlString);
}
if(xmlString1 != null && xmlString1.trim().length()!=0)
{
System.out.println("XML String1 :"+xmlString1);
dom1 = genericUtility.parseString(xmlString1);
} }
System.out.println("actionType:"+actionType); if (xmlString1 != null && xmlString1.trim().length() != 0) {
if (actionType.equalsIgnoreCase("Stock")) System.out.println("XML String1 :" + xmlString1);
{ dom1 = genericUtility.parseString(xmlString1);
resString = actionStock(dom,dom1,objContext,xtraParams);
} }
else if (actionType.equalsIgnoreCase("ViewAltBOM")) System.out.println("actionType:" + actionType);
{ if (actionType.equalsIgnoreCase("Stock")) {
resString = actionViewAltBOM(dom,dom1,objContext,xtraParams); resString = actionStock(dom, dom1, objContext, xtraParams);
} else if (actionType.equalsIgnoreCase("ViewAltBOM")) {
resString = actionViewAltBOM(dom, dom1, objContext, xtraParams);
} }
//add on 28/08/09 copyBomDet // add on 28/08/09 copyBomDet
else if (actionType.equalsIgnoreCase("Default")) else if (actionType.equalsIgnoreCase("Default")) {
{
resString = actionDefault(dom, dom1, objContext, xtraParams); resString = actionDefault(dom, dom1, objContext, xtraParams);
} }
// end of code on 28/08/09 for copyBomDet // end of code on 28/08/09 for copyBomDet
} } catch (Exception e) {
catch(Exception e) System.out
{ .println("Exception :AdjIssEJB :actionHandler(String xmlString):"
System.out.println("Exception :AdjIssEJB :actionHandler(String xmlString):" + e.getMessage() + ":"); + e.getMessage() + ":");
e.printStackTrace(); e.printStackTrace();
throw new ITMException(e); throw new ITMException(e);
} }
System.out.println("returning from action[Stock] actionHandler"+resString); System.out.println("returning from action[Stock] actionHandler"
return (resString); + resString);
return (resString);
} }
// add on 28/08/09 for CopyBomDet requestId MF89GIM005 // add on 28/08/09 for CopyBomDet requestId MF89GIM005
private String actionDefault(Document dom, Document dom1, String objContext, String xtraParams) throws RemoteException, ITMException private String actionDefault(Document dom, Document dom1,
{ String objContext, String xtraParams) throws RemoteException,
ITMException {
GenericUtility genericUtility = GenericUtility.getInstance(); GenericUtility genericUtility = GenericUtility.getInstance();
Connection conn = null; Connection conn = null;
StringBuffer valueXmlString = null; StringBuffer valueXmlString = null;
//valueXmlString = new StringBuffer("<?xml version=\"1.0\" encoding=\"UTF-8\"?> \r\n<Root>\r\n"); // valueXmlString = new
valueXmlString = new StringBuffer("<?xml version='1.0' encoding='"+commonConstants.ENCODING+"'?> \r\n<Root>\r\n"); // StringBuffer("<?xml version=\"1.0\" encoding=\"UTF-8\"?> \r\n<Root>\r\n");
int currentFormNo = 0,cnt = 0; valueXmlString = new StringBuffer("<?xml version='1.0' encoding='"
String sql="",sqlPreBom = "",bomCodeHeader=""; + commonConstants.ENCODING + "'?> \r\n<Root>\r\n");
ResultSet rs = null,rsDescr = null; int currentFormNo = 0, cnt = 0;
PreparedStatement pstmt = null,pstmtDescr = null; String sql = "", sqlPreBom = "", bomCodeHeader = "";
try ResultSet rs = null, rsDescr = null;
{ PreparedStatement pstmt = null, pstmtDescr = null;
String detCnt = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"detCnt"); try {
String siteCodeLogin = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginSiteCode"); String detCnt = genericUtility.getValueFromXTRA_PARAMS(xtraParams,
"detCnt");
if(conn==null) String siteCodeLogin = genericUtility.getValueFromXTRA_PARAMS(
{ xtraParams, "loginSiteCode");
if (conn == null) {
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM"); conn = connDriver.getConnectDB("DriverITM");
connDriver=null; connDriver = null;
} }
if(objContext != null && objContext.trim().length()>0) if (objContext != null && objContext.trim().length() > 0) {
{
currentFormNo = Integer.parseInt(objContext); currentFormNo = Integer.parseInt(objContext);
} }
bomCodeHeader = GenericUtility.getInstance().getColumnValue("bom_code",dom1); bomCodeHeader = GenericUtility.getInstance().getColumnValue(
sqlPreBom = "select count(*) from bomdet where bom_code = ? " ; "bom_code", dom1);
pstmtDescr = conn.prepareStatement(sqlPreBom); sqlPreBom = "select count(*) from bomdet where bom_code = ? ";
pstmtDescr.setString(1,bomCodeHeader); pstmtDescr = conn.prepareStatement(sqlPreBom);
pstmtDescr.setString(1, bomCodeHeader);
rsDescr = pstmtDescr.executeQuery(); rsDescr = pstmtDescr.executeQuery();
if (rsDescr.next()) if (rsDescr.next()) {
{
cnt = rsDescr.getInt(1); cnt = rsDescr.getInt(1);
} }
rsDescr.close(); rsDescr.close();
pstmtDescr.close(); pstmtDescr.close();
if(cnt ==0 ) if (cnt == 0) {
{
sql = " select bom_code,descr,item_code , " sql = " select bom_code,descr,item_code , "
+" batch_qty,unit from bom where site_code = ? order by bom_code " ; + " batch_qty,unit from bom where site_code = ? order by bom_code ";
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setString(1,siteCodeLogin); pstmt.setString(1, siteCodeLogin);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
while(rs.next()) while (rs.next()) {
{ valueXmlString.append("<Detail>");
valueXmlString.append("<Detail>"); valueXmlString
valueXmlString.append("<bom_code isSrvCallOnChg =\"0\" >").append("<![CDATA[").append(rs.getString(1)==null ?"":rs.getString(1)).append("]]>").append("</bom_code>"); .append("<bom_code isSrvCallOnChg =\"0\" >")
valueXmlString.append("<descr>").append("<![CDATA[").append(rs.getString(2)==null ?"":rs.getString(2)).append("]]>").append("</descr>"); .append("<![CDATA[")
valueXmlString.append("<item_code>").append("<![CDATA[").append(rs.getString(3)==null ?"":rs.getString(3)).append("]]>").append("</item_code>"); .append(rs.getString(1) == null ? "" : rs
valueXmlString.append("<batch_qty>").append("<![CDATA[").append(rs.getString(4)==null ?"":rs.getString(4)).append("]]>").append("</batch_qty>"); .getString(1)).append("]]>")
valueXmlString.append("<unit>").append("<![CDATA[").append(rs.getString(5)==null ?"":rs.getString(5)).append("]]>").append("</unit>"); .append("</bom_code>");
valueXmlString.append("</Detail>\r\n"); valueXmlString
.append("<descr>")
.append("<![CDATA[")
.append(rs.getString(2) == null ? "" : rs
.getString(2)).append("]]>")
.append("</descr>");
valueXmlString
.append("<item_code>")
.append("<![CDATA[")
.append(rs.getString(3) == null ? "" : rs
.getString(3)).append("]]>")
.append("</item_code>");
valueXmlString
.append("<batch_qty>")
.append("<![CDATA[")
.append(rs.getString(4) == null ? "" : rs
.getString(4)).append("]]>")
.append("</batch_qty>");
valueXmlString
.append("<unit>")
.append("<![CDATA[")
.append(rs.getString(5) == null ? "" : rs
.getString(5)).append("]]>")
.append("</unit>");
valueXmlString.append("</Detail>\r\n");
} }
rs.close(); rs.close();
rs = null; rs = null;
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
} }
valueXmlString.append("</Root>\r\n");
valueXmlString.append("</Root>\r\n"); }// tryBase1 greyd
}//tryBase1 greyd catch (SQLException sqx) {
catch(SQLException sqx) // System.out.println("The Exception caught from CopyBomDetEJB :"+sqx);
{
//System.out.println("The Exception caught from CopyBomDetEJB :"+sqx);
throw new ITMException(sqx); throw new ITMException(sqx);
} } catch (Exception e) {
catch(Exception e) // System.out.println("The Exception caught from CopyBomDetEJB :"+e);
{
//System.out.println("The Exception caught from CopyBomDetEJB :"+e);
throw new ITMException(e); throw new ITMException(e);
} } finally {
finally try {
{
try
{
conn.close(); conn.close();
conn = null; conn = null;
}catch(Exception e){} } catch (Exception e) {
}
} }
return valueXmlString.toString(); return valueXmlString.toString();
} }
// end of code on 28/08/09 for CopyBomDet // end of code on 28/08/09 for CopyBomDet
private String actionViewAltBOM(Document dom,Document dom1, String objContext, String xtraParams) throws RemoteException , ITMException private String actionViewAltBOM(Document dom, Document dom1,
{ String objContext, String xtraParams) throws RemoteException,
ITMException {
Connection conn = null; Connection conn = null;
PreparedStatement pstmt = null; PreparedStatement pstmt = null;
ResultSet rs = null; ResultSet rs = null;
String sql = null; String sql = null;
//StringBuffer valueXmlString = new StringBuffer("<?xml version=\"1.0\" encoding=\"UTF-8\"?> \r\n<Root>\r\n"); // StringBuffer valueXmlString = new
StringBuffer valueXmlString = new StringBuffer("<?xml version='1.0' encoding='"+commonConstants.ENCODING+"'?> \r\n<Root>\r\n"); // StringBuffer("<?xml version=\"1.0\" encoding=\"UTF-8\"?> \r\n<Root>\r\n");
StringBuffer valueXmlString = new StringBuffer(
"<?xml version='1.0' encoding='" + commonConstants.ENCODING
+ "'?> \r\n<Root>\r\n");
String bomCode = null; String bomCode = null;
GenericUtility genericUtility = GenericUtility.getInstance(); GenericUtility genericUtility = GenericUtility.getInstance();
try try {
{
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
if(conn==null) if (conn == null) {
{
conn = connDriver.getConnectDB("DriverITM"); conn = connDriver.getConnectDB("DriverITM");
} }
connDriver = null; connDriver = null;
bomCode = genericUtility.getColumnValue("bom_code",dom1); bomCode = genericUtility.getColumnValue("bom_code", dom1);
if(bomCode!=null) if (bomCode != null) {
{
sql = "SELECT ITEM_CODE, ITEM_REF, ITEM_CODE__ALT, QUANTITY, ITEM_CODE_ALT_SEQ "
sql = "SELECT ITEM_CODE, ITEM_REF, ITEM_CODE__ALT, QUANTITY, ITEM_CODE_ALT_SEQ " + "FROM BOM_ALT "
+ "FROM BOM_ALT " + "WHERE BOM_CODE = ?"
+ "WHERE BOM_CODE = ?" + "ORDER BY ITEM_CODE_ALT_SEQ";
+ "ORDER BY ITEM_CODE_ALT_SEQ"; System.out.println("Sql Query::::::" + sql);
System.out.println("Sql Query::::::"+sql); System.out.println("Setting Parameter:::" + bomCode);
System.out.println("Setting Parameter:::"+bomCode); pstmt = conn.prepareStatement(sql);
pstmt = conn.prepareStatement(sql); pstmt.setString(1, bomCode);
pstmt.setString(1,bomCode);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
while (rs.next()) while (rs.next()) {
{
valueXmlString.append("<Detail>\r\n"); valueXmlString.append("<Detail>\r\n");
valueXmlString.append("<item_code>").append("<![CDATA[").append(rs.getString(1).trim()).append("]]>").append("</item_code>\r\n"); valueXmlString.append("<item_code>").append("<![CDATA[")
valueXmlString.append("<item_ref>").append("<![CDATA[").append(rs.getString(2).trim()).append("]]>").append("</item_ref>\r\n"); .append(rs.getString(1).trim()).append("]]>")
valueXmlString.append("<item_code__alt>").append("<![CDATA[").append(rs.getString(3).trim()).append("]]>").append("</item_code__alt>\r\n"); .append("</item_code>\r\n");
valueXmlString.append("<quantity>").append("<![CDATA[").append(rs.getString(4).trim()).append("]]>").append("</quantity>\r\n"); valueXmlString.append("<item_ref>").append("<![CDATA[")
valueXmlString.append("<item_code_alt_seq>").append("<![CDATA[").append(rs.getString(5).trim()).append("]]>").append("</item_code_alt_seq>\r\n"); .append(rs.getString(2).trim()).append("]]>")
.append("</item_ref>\r\n");
valueXmlString.append("<item_code__alt>")
.append("<![CDATA[").append(rs.getString(3).trim())
.append("]]>").append("</item_code__alt>\r\n");
valueXmlString.append("<quantity>").append("<![CDATA[")
.append(rs.getString(4).trim()).append("]]>")
.append("</quantity>\r\n");
valueXmlString.append("<item_code_alt_seq>")
.append("<![CDATA[").append(rs.getString(5).trim())
.append("]]>").append("</item_code_alt_seq>\r\n");
valueXmlString.append("</Detail>\r\n"); valueXmlString.append("</Detail>\r\n");
} }
rs.close(); rs.close();
...@@ -319,517 +346,682 @@ public String actionHandler(String actionType, String xmlString,String xmlString ...@@ -319,517 +346,682 @@ public String actionHandler(String actionType, String xmlString,String xmlString
pstmt = null; pstmt = null;
} }
valueXmlString.append("</Root>\r\n"); valueXmlString.append("</Root>\r\n");
} } catch (SQLException se) {
catch (SQLException se) System.out.println("Exception : BOMActEJB : actionViewAltBOM "
{ + se.getMessage());
System.out.println("Exception : BOMActEJB : actionViewAltBOM " +se.getMessage());
se.printStackTrace(); se.printStackTrace();
System.out.println("SQL : " + sql); System.out.println("SQL : " + sql);
throw new ITMException(se); throw new ITMException(se);
} } catch (Exception e) {
catch(Exception e) System.out
{ .println("Exception : BOMActEJB : actionViewAltBOM :(Document dom)"
System.out.println("Exception : BOMActEJB : actionViewAltBOM :(Document dom)" +e.getMessage()); + e.getMessage());
e.printStackTrace(); e.printStackTrace();
throw new ITMException(e); throw new ITMException(e);
} } finally {
finally try {
{ if (conn != null) {
try{
if (conn != null)
{
conn.close(); conn.close();
conn = null; conn = null;
} }
if (pstmt != null) if (pstmt != null) {
{
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
} }
}catch(Exception e){} } catch (Exception e) {
}
} }
//stem.out.println("valueXmlString.toString() "+valueXmlString.toString()); // stem.out.println("valueXmlString.toString() "+valueXmlString.toString());
return valueXmlString.toString(); return valueXmlString.toString();
} }
private String actionStock(Document dom,Document dom1, String objContext, String xtraParams) throws RemoteException , ITMException
{ private String actionStock(Document dom, Document dom1, String objContext,
//atement stmt = null; String xtraParams) throws RemoteException, ITMException {
ResultSet rs = null; // atement stmt = null;
ResultSet rs = null;
Connection conn = null; Connection conn = null;
PreparedStatement pstmt = null; PreparedStatement pstmt = null;
String sql = null; String sql = null;
String bomCode=null; String bomCode = null;
String trackShelfLife = null; String trackShelfLife = null;
String itemCode = null; String itemCode = null;
String reqType = null; String reqType = null;
Timestamp currDate =null; Timestamp currDate = null;
double batchQtyD=0.0; double batchQtyD = 0.0;
double batchQty = 0.0; double batchQty = 0.0;
double qtyPar = 0.0; double qtyPar = 0.0;
double minQty = 0.0; double minQty = 0.0;
double reqQty =0.0; double reqQty = 0.0;
StringBuffer valueXmlString = new StringBuffer("<?xml version='1.0' encoding='"+commonConstants.ENCODING+"'?> \r\n<Root>\r\n"); //new StringBuffer("<?xml version=\"1.0\" encoding=\"UTF-8\"?> \r\n<Root>\r\n"); StringBuffer valueXmlString = new StringBuffer(
"<?xml version='1.0' encoding='" + commonConstants.ENCODING
+ "'?> \r\n<Root>\r\n"); // new
// StringBuffer("<?xml version=\"1.0\" encoding=\"UTF-8\"?> \r\n<Root>\r\n");
GenericUtility genericUtility = GenericUtility.getInstance(); GenericUtility genericUtility = GenericUtility.getInstance();
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
try try {
{ if (conn == null) {
if(conn==null)
{
conn = connDriver.getConnectDB("DriverITM"); conn = connDriver.getConnectDB("DriverITM");
} }
connDriver = null; connDriver = null;
bomCode = genericUtility.getColumnValue("bom_code",dom); bomCode = genericUtility.getColumnValue("bom_code", dom);
System.out.println("bomCode From Dom::::::"+bomCode); System.out.println("bomCode From Dom::::::" + bomCode);
batchQtyD= Double.parseDouble(genericUtility.getColumnValue("batch_qty",dom1)); batchQtyD = Double.parseDouble(genericUtility.getColumnValue(
System.out.println("batchQtyD From Dom::::::"+batchQtyD); "batch_qty", dom1));
System.out.println("batchQtyD From Dom::::::" + batchQtyD);
sql = "SELECT FN_SYSDATE() FROM DUAL"; sql = "SELECT FN_SYSDATE() FROM DUAL";
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
if(rs.next()) if (rs.next()) {
{
currDate = rs.getTimestamp(1); currDate = rs.getTimestamp(1);
} }
System.out.println("Current Date::::::"+currDate); System.out.println("Current Date::::::" + currDate);
rs.close(); rs.close();
pstmt.close(); pstmt.close();
if(bomCode!=null) if (bomCode != null) {
{ sql = "SELECT BOM.ITEM_CODE, BOM.BOM_CODE,BOMDET.ITEM_CODE,ITEM_A.DESCR,BOMDET.REQ_TYPE,"
sql = "SELECT BOM.ITEM_CODE, BOM.BOM_CODE,BOMDET.ITEM_CODE,ITEM_A.DESCR,BOMDET.REQ_TYPE," + "ITEM_B.DESCR,SUM(BOMDET.MIN_QTY) AS MIN_QTY,SUM(BOMDET.QTY_PER) AS QTY_PER, MAX(BOM.BATCH_QTY) AS BATCH_QTY,"
+"ITEM_B.DESCR,SUM(BOMDET.MIN_QTY) AS MIN_QTY,SUM(BOMDET.QTY_PER) AS QTY_PER, MAX(BOM.BATCH_QTY) AS BATCH_QTY," + "ITEM_B.DESCR,SUM(BOMDET.MIN_QTY) AS MIN_QTY,SUM(BOMDET.QTY_PER) AS QTY_PER, MAX(BOM.BATCH_QTY) BATCH_QTY,"
+"ITEM_B.DESCR,SUM(BOMDET.MIN_QTY) AS MIN_QTY,SUM(BOMDET.QTY_PER) AS QTY_PER, MAX(BOM.BATCH_QTY) BATCH_QTY," + "0.0 AS STK_QTY,0.0 AS NON_STK_QTY,0.0 AS REQ_QTY,0.0 AS ALLOC_QTY FROM BOM,BOMDET,ITEM ITEM_A,"
+"0.0 AS STK_QTY,0.0 AS NON_STK_QTY,0.0 AS REQ_QTY,0.0 AS ALLOC_QTY FROM BOM,BOMDET,ITEM ITEM_A," + "ITEM ITEM_B "
+"ITEM ITEM_B " + " WHERE ( BOM.BOM_CODE = BOMDET.BOM_CODE ) AND"
+" WHERE ( BOM.BOM_CODE = BOMDET.BOM_CODE ) AND" + "( BOM.ITEM_CODE = ITEM_A.ITEM_CODE ) AND"
+"( BOM.ITEM_CODE = ITEM_A.ITEM_CODE ) AND" + "( BOMDET.ITEM_CODE= ITEM_B.ITEM_CODE ) AND"
+"( BOMDET.ITEM_CODE= ITEM_B.ITEM_CODE ) AND" + "( ( BOM.BOM_CODE = ?) )"
+"( ( BOM.BOM_CODE = ?) )" + "GROUP BY BOM.BOM_CODE,BOM.ITEM_CODE,BOMDET.ITEM_CODE,BOMDET.REQ_TYPE,ITEM_A.DESCR,ITEM_B.DESCR";
+"GROUP BY BOM.BOM_CODE,BOM.ITEM_CODE,BOMDET.ITEM_CODE,BOMDET.REQ_TYPE,ITEM_A.DESCR,ITEM_B.DESCR" ; System.out.println("MainQuery:::" + sql);
System.out.println("MainQuery:::"+sql); pstmt = conn.prepareStatement(sql);
pstmt = conn.prepareStatement(sql); System.out.println("Setting BomCode as " + bomCode);
System.out.println("Setting BomCode as "+bomCode); pstmt.setString(1, bomCode);
pstmt.setString(1,bomCode); rs = pstmt.executeQuery();
rs = pstmt.executeQuery();
while (rs.next()) {
valueXmlString.append("<Detail>\r\n");
itemCode = rs.getString(3);// BOM.ITEM_CODE
while (rs.next()) reqType = rs.getString(5);// BOMDET.REQ_TYPE
{ minQty = rs.getDouble(7);// MIN_QTY
valueXmlString.append("<Detail>\r\n"); qtyPar = rs.getDouble(8);// QTY_PER;
itemCode = rs.getString(3);//BOM.ITEM_CODE batchQty = rs.getDouble(9);// BATCH_QTY;
reqType = rs.getString(5);//BOMDET.REQ_TYPE valueXmlString.append("<bom_code>").append("<![CDATA[")
minQty = rs.getDouble(7);//MIN_QTY .append(rs.getString(2).trim()).append("]]>")
qtyPar = rs.getDouble(8);//QTY_PER; .append("</bom_code>\r\n");
batchQty = rs.getDouble(9);//BATCH_QTY; valueXmlString.append("<item_code>").append("<![CDATA[")
valueXmlString.append("<bom_code>").append("<![CDATA[").append(rs.getString(2).trim()).append("]]>").append("</bom_code>\r\n"); .append(rs.getString(3).trim()).append("]]>")
valueXmlString.append("<item_code>").append("<![CDATA[").append(rs.getString(3).trim()).append("]]>").append("</item_code>\r\n"); .append("</item_code>\r\n");
valueXmlString.append("<descr>").append("<![CDATA[").append(rs.getString(6).trim()).append("]]>").append("</descr>\r\n"); valueXmlString.append("<descr>").append("<![CDATA[")
.append(rs.getString(6).trim()).append("]]>")
.append("</descr>\r\n");
if(reqType.equalsIgnoreCase("s"))
{ if (reqType.equalsIgnoreCase("s")) {
reqQty = (batchQtyD / batchQty) * qtyPar; reqQty = (batchQtyD / batchQty) * qtyPar;
} } else if (reqType.equalsIgnoreCase("P")) {
else if(reqType.equalsIgnoreCase("P"))
{
reqQty = (qtyPar / batchQty) * batchQtyD; reqQty = (qtyPar / batchQty) * batchQtyD;
} } else// f
else//f
{ {
reqQty = qtyPar; reqQty = qtyPar;
} }
if (reqQty < minQty) if (reqQty < minQty) {
{ reqQty = minQty;
reqQty = minQty;
} }
valueXmlString.append("<quantity>").append("<![CDATA[").append(reqQty).append("]]>").append("</quantity>\r\n"); valueXmlString.append("<quantity>").append("<![CDATA[")
.append(reqQty).append("]]>")
.append("</quantity>\r\n");
pstmt = null; pstmt = null;
pstmt = conn.prepareStatement("select nvl(track_shelf_life,'N') from item where item_code = ?") ; pstmt = conn
pstmt.setString(1,itemCode); .prepareStatement("select nvl(track_shelf_life,'N') from item where item_code = ?");
pstmt.setString(1, itemCode);
ResultSet rs1 = pstmt.executeQuery(); ResultSet rs1 = pstmt.executeQuery();
if(rs1.next()) if (rs1.next()) {
{
trackShelfLife = rs1.getString(1); trackShelfLife = rs1.getString(1);
} }
rs1.close(); rs1.close();
StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer();
sb.append(" select nvl(sum(a.quantity - a.alloc_qty),0), nvl(sum(a.alloc_qty),0) from stock a, invstat b " sb.append(" select nvl(sum(a.quantity - a.alloc_qty),0), nvl(sum(a.alloc_qty),0) from stock a, invstat b "
+" where a.inv_stat = b.inv_stat and a.item_code = ? and b.available = 'Y' and b.stat_type <> 'S' and (a.quantity - nvl(a.alloc_qty,0)) > 0 " ); + " where a.inv_stat = b.inv_stat and a.item_code = ? and b.available = 'Y' and b.stat_type <> 'S' and (a.quantity - nvl(a.alloc_qty,0)) > 0 ");
if(trackShelfLife.equalsIgnoreCase("Y")) if (trackShelfLife.equalsIgnoreCase("Y")) {
{
sb.append("and ( a.exp_date is null or a.exp_date >?)"); sb.append("and ( a.exp_date is null or a.exp_date >?)");
} }
pstmt = conn.prepareStatement(sb.toString()); pstmt = conn.prepareStatement(sb.toString());
pstmt.setString(1,itemCode); pstmt.setString(1, itemCode);
if(trackShelfLife.equalsIgnoreCase("Y")) if (trackShelfLife.equalsIgnoreCase("Y")) {
{
pstmt.setTimestamp(2, currDate);
pstmt.setTimestamp(2,currDate); }
}
rs1 = pstmt.executeQuery(); rs1 = pstmt.executeQuery();
while(rs1.next()) while (rs1.next()) {
{ valueXmlString.append("<stock>").append("<![CDATA[")
valueXmlString.append("<stock>").append("<![CDATA[").append(rs1.getDouble(1)).append("]]>").append("</stock>\r\n"); .append(rs1.getDouble(1)).append("]]>")
valueXmlString.append("<allock_qty>").append("<![CDATA[").append(rs1.getString(2).trim()).append("]]>").append("</allock_qty>\r\n"); .append("</stock>\r\n");
valueXmlString.append("<allock_qty>")
.append("<![CDATA[")
.append(rs1.getString(2).trim()).append("]]>")
.append("</allock_qty>\r\n");
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
valueXmlString.append("</Detail>\r\n"); valueXmlString.append("</Detail>\r\n");
} }
} }
valueXmlString.append("</Root>\r\n"); valueXmlString.append("</Root>\r\n");
} catch (SQLException se) {
} System.out.println("Exception : BOMActEJB : actionStock "
catch (SQLException se) + se.getMessage());
{
System.out.println("Exception : BOMActEJB : actionStock " +se.getMessage());
se.printStackTrace(); se.printStackTrace();
throw new ITMException(se); throw new ITMException(se);
} } catch (Exception e) {
catch(Exception e) System.out
{ .println("Exception : BOMActEJB : actionStock :(Document dom)"
System.out.println("Exception : BOMActEJB : actionStock :(Document dom)" +e.getMessage()); + e.getMessage());
e.printStackTrace(); e.printStackTrace();
throw new ITMException(e); throw new ITMException(e);
} } finally {
finally try {
{ if (conn != null) {
try{
if (conn != null)
{
conn.close(); conn.close();
conn = null; conn = null;
} }
if (pstmt != null) if (pstmt != null) {
{
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
} }
}catch(Exception e){} } catch (Exception e) {
}
} }
System.out.println("valueXmlString.toString() "+valueXmlString.toString()); System.out.println("valueXmlString.toString() "
return valueXmlString.toString(); + valueXmlString.toString());
return valueXmlString.toString();
} }
public double getReqDecimal(double actVal, int prec)
{ public double getReqDecimal(double actVal, int prec) {
String fmtStr = "############0"; String fmtStr = "############0";
String strValue = null; String strValue = null;
double retVal = 0; double retVal = 0;
if (prec > 0) if (prec > 0) {
{
fmtStr = fmtStr + "." + "000000000".substring(0, prec); fmtStr = fmtStr + "." + "000000000".substring(0, prec);
} }
DecimalFormat decFormat = new DecimalFormat(fmtStr); DecimalFormat decFormat = new DecimalFormat(fmtStr);
retVal = Double.parseDouble(decFormat.format(actVal)); retVal = Double.parseDouble(decFormat.format(actVal));
if (Math.abs(retVal) == 0) if (Math.abs(retVal) == 0) {
{
retVal = 0; retVal = 0;
} }
return retVal; return retVal;
} }
private String actionTransform(Document dom,Document dom1, String objContext, String xtraParams, Document selDataDom)throws ITMException
{ private String actionTransform(Document dom, Document dom1,
String objContext, String xtraParams, Document selDataDom)
throws ITMException {
String schemeCode = null; String schemeCode = null;
String returnString = ""; String returnString = "";
Connection conn = null; Connection conn = null;
ResultSet rs = null,rsDescr = null; ResultSet rs = null, rsDescr = null;
Statement stmt = null; Statement stmt = null;
PreparedStatement pstmt = null,pstmtDescr = null; PreparedStatement pstmt = null, pstmtDescr = null;
//application specific // application specific
String actionCode = null; String actionCode = null;
String roleCode = null; String roleCode = null;
String instr = null; String instr = null;
int cnt = 0; int cnt = 0;
NodeList detailList = null; NodeList detailList = null;
int detailListLength = 0; int detailListLength = 0;
StringBuffer valueXmlString = new StringBuffer("<?xml version='1.0' encoding='"+commonConstants.ENCODING+"'?> \r\n<Root>\r\n"); //new StringBuffer("<?xml version=\"1.0\" encoding=\"UTF-8\"?> \r\n<Root>\r\n"); StringBuffer valueXmlString = new StringBuffer(
"<?xml version='1.0' encoding='" + commonConstants.ENCODING
+ "'?> \r\n<Root>\r\n"); // new
// StringBuffer("<?xml version=\"1.0\" encoding=\"UTF-8\"?> \r\n<Root>\r\n");
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
ITMDBAccessEJB itmDbAccessEJB = new ITMDBAccessEJB(); ITMDBAccessEJB itmDbAccessEJB = new ITMDBAccessEJB();
String userId = null,descr; String userId = null, descr;
String bomCode = "",itemDescr = "",bomCodeHeader = ""; String bomCode = "", itemDescr = "", bomCodeHeader = "";
String sql1 = "",sqlSpec= "",sqlDescr = "",sqlPreBom =""; String sql1 = "", sqlSpec = "", sqlDescr = "", sqlPreBom = "";
String effFromStr = "",validUptoStr="",itemCode="",itemRef="",qtyPerStr="",reqType="",minQty="",operation="",reqlt="",critItem="",autoOrd="",appMinQty="",appMaxQty="",effCost="",nature="",matchPotency="",minPotencyPerc="",adjPotency="",round="",roundTo="",usageType="",allocateType="",considerPartialAltlocUsageType="",considerLotNoIssueuseInvstatus="",dimension="",minReqQty="",manualAlt="",potencyFormula="",remarks="",unit="",suppCodeMfg="",issVarienceType="",issVarience="",unitAlt="",convQtyStduom="",qtyPerAlt="",qtyPerUnit="",prntFlg="",backflushType="",locCodeWip="",rbfFormula="",pendStk="",potencyInput="",issVarValtype="",itemCodeOut="",storeCode="",specMetadata="",specDimension="",mfgRef="",itemCategory="",strengthValue="",strengthUnit="",itemType="", itemTypeValue="",dispContainerSizeitemCodeWip="",settingMethod="",qtyCalcFormula="",itemCodePreOp="",operationUsed="" ; String effFromStr = "", validUptoStr = "", itemCode = "", itemRef = "", qtyPerStr = "", reqType = "", minQty = "", operation = "", reqlt = "", critItem = "", autoOrd = "", appMinQty = "", appMaxQty = "", effCost = "", nature = "", matchPotency = "", minPotencyPerc = "", adjPotency = "", round = "", roundTo = "", usageType = "", allocateType = "", considerPartialAltlocUsageType = "", considerLotNoIssueuseInvstatus = "", dimension = "", minReqQty = "", manualAlt = "", potencyFormula = "", remarks = "", unit = "", suppCodeMfg = "", issVarienceType = "", issVarience = "", unitAlt = "", convQtyStduom = "", qtyPerAlt = "", qtyPerUnit = "", prntFlg = "", backflushType = "", locCodeWip = "", rbfFormula = "", pendStk = "", potencyInput = "", issVarValtype = "", itemCodeOut = "", storeCode = "", specMetadata = "", specDimension = "", mfgRef = "", itemCategory = "", strengthValue = "", strengthUnit = "", itemType = "", itemTypeValue = "", dispContainerSizeitemCodeWip = "", settingMethod = "", qtyCalcFormula = "", itemCodePreOp = "", operationUsed = "";
String considerPartialAlt = "",locUsageType="",considerLotNoIssue="",useInvstatus="",dispContainerSize="",itemCodeWip=""; String considerPartialAlt = "", locUsageType = "", considerLotNoIssue = "", useInvstatus = "", dispContainerSize = "", itemCodeWip = "";
Timestamp effFrom=null,validUpto= null; Timestamp effFrom = null, validUpto = null;
double oldBatchQty = 0, curBatchQty = 0, qtyPer = 0; // 14/03/12 manoharan double oldBatchQty = 0, curBatchQty = 0, qtyPer = 0; // 14/03/12
// manoharan
String batchQtyStr = ""; // 14/03/12 manoharan String batchQtyStr = ""; // 14/03/12 manoharan
try try {
{
conn = connDriver.getConnectDB("DriverITM"); conn = connDriver.getConnectDB("DriverITM");
stmt = conn.createStatement(); stmt = conn.createStatement();
detailList = selDataDom.getElementsByTagName("Detail"); detailList = selDataDom.getElementsByTagName("Detail");
detailListLength = detailList.getLength(); detailListLength = detailList.getLength();
bomCode = GenericUtility.getInstance().getColumnValueFromNode("bom_code",detailList.item(0)); bomCode = GenericUtility.getInstance().getColumnValueFromNode(
bomCodeHeader = GenericUtility.getInstance().getColumnValue("bom_code",dom1); "bom_code", detailList.item(0));
bomCodeHeader = GenericUtility.getInstance().getColumnValue(
"bom_code", dom1);
// 14/03/12 manoharan // 14/03/12 manoharan
batchQtyStr = GenericUtility.getInstance().getColumnValue("batch_qty",dom1); batchQtyStr = GenericUtility.getInstance().getColumnValue(
sqlPreBom = "select batch_qty from bom where bom_code = ? " ; "batch_qty", dom1);
pstmtDescr = conn.prepareStatement(sqlPreBom); sqlPreBom = "select batch_qty from bom where bom_code = ? ";
pstmtDescr.setString(1,bomCode); pstmtDescr = conn.prepareStatement(sqlPreBom);
pstmtDescr.setString(1, bomCode);
rsDescr = pstmtDescr.executeQuery(); rsDescr = pstmtDescr.executeQuery();
if (rsDescr.next()) if (rsDescr.next()) {
{
oldBatchQty = rsDescr.getDouble(1); oldBatchQty = rsDescr.getDouble(1);
} }
rsDescr.close(); rsDescr.close();
pstmtDescr.close(); pstmtDescr.close();
if (batchQtyStr == null || batchQtyStr.trim().length() == 0) if (batchQtyStr == null || batchQtyStr.trim().length() == 0) {
{
curBatchQty = oldBatchQty; curBatchQty = oldBatchQty;
} } else {
else
{
curBatchQty = Double.parseDouble(batchQtyStr); curBatchQty = Double.parseDouble(batchQtyStr);
} }
// end 14/03/12 manoharan // end 14/03/12 manoharan
sqlPreBom = "select count(*) from bomdet where bom_code = ? " ; sqlPreBom = "select count(*) from bomdet where bom_code = ? ";
pstmtDescr = conn.prepareStatement(sqlPreBom); pstmtDescr = conn.prepareStatement(sqlPreBom);
pstmtDescr.setString(1,bomCodeHeader); pstmtDescr.setString(1, bomCodeHeader);
rsDescr = pstmtDescr.executeQuery(); rsDescr = pstmtDescr.executeQuery();
if (rsDescr.next()) if (rsDescr.next()) {
{
cnt = rsDescr.getInt(1); cnt = rsDescr.getInt(1);
} }
rsDescr.close(); rsDescr.close();
pstmtDescr.close(); pstmtDescr.close();
// end 14/03/12/ manoharan // end 14/03/12/ manoharan
GenericUtility genericUtility = GenericUtility.getInstance(); GenericUtility genericUtility = GenericUtility.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat()); SimpleDateFormat sdf = new SimpleDateFormat(
genericUtility.getApplDateFormat());
if(cnt ==0 )
{ if (cnt == 0) {
sql1 = "SELECT " sql1 = "SELECT "
+" BOMDET.ITEM_CODE , BOMDET.ITEM_REF, BOMDET.QTY_PER , BOMDET.EFF_FROM, " + " BOMDET.ITEM_CODE , BOMDET.ITEM_REF, BOMDET.QTY_PER , BOMDET.EFF_FROM, "
+" BOMDET.VALID_UPTO, BOMDET.REQ_TYPE, BOMDET.MIN_QTY , BOMDET.OPERATION , BOMDET.REQ_LT," + " BOMDET.VALID_UPTO, BOMDET.REQ_TYPE, BOMDET.MIN_QTY , BOMDET.OPERATION , BOMDET.REQ_LT,"
+" BOMDET.CRIT_ITEM , BOMDET.AUTO_ORD ,ITEM.DESCR ," + " BOMDET.CRIT_ITEM , BOMDET.AUTO_ORD ,ITEM.DESCR ,"
+" BOMDET.NATURE, BOMDET.MATCH_POTENCY, BOMDET.MIN_POTENCY_PERC, BOMDET.ADJ_POTENCY, BOMDET.ROUND," + " BOMDET.NATURE, BOMDET.MATCH_POTENCY, BOMDET.MIN_POTENCY_PERC, BOMDET.ADJ_POTENCY, BOMDET.ROUND,"
+" BOMDET.ROUND_TO, BOMDET.USAGE_TYPE, BOMDET.ALLOCATE_TYPE, BOMDET.CONSIDER_PARTIAL_ALT, BOMDET.LOC_USAGE_TYPE ," + " BOMDET.ROUND_TO, BOMDET.USAGE_TYPE, BOMDET.ALLOCATE_TYPE, BOMDET.CONSIDER_PARTIAL_ALT, BOMDET.LOC_USAGE_TYPE ,"
+" BOMDET.CONSIDER_LOT_NO__ISSUE, BOMDET.USE_INVSTATUS, BOMDET.DIMENSION , BOMDET.MIN_REQ_QTY, BOMDET.MANUAL_ALT, " + " BOMDET.CONSIDER_LOT_NO__ISSUE, BOMDET.USE_INVSTATUS, BOMDET.DIMENSION , BOMDET.MIN_REQ_QTY, BOMDET.MANUAL_ALT, "
+" BOMDET.POTENCY_FORMULA, BOMDET.REMARKS , ITEM.UNIT , BOMDET.SUPP_CODE__MFG , BOMDET.ISS_VARIENCE_TYPE , " + " BOMDET.POTENCY_FORMULA, BOMDET.REMARKS , ITEM.UNIT , BOMDET.SUPP_CODE__MFG , BOMDET.ISS_VARIENCE_TYPE , "
+" BOMDET.ISS_VARIENCE , BOMDET.UNIT__ALT , BOMDET.CONV__QTY_STDUOM, BOMDET.QTY_PER__ALT , BOMDET.QTY_PER__UNIT, " + " BOMDET.ISS_VARIENCE , BOMDET.UNIT__ALT , BOMDET.CONV__QTY_STDUOM, BOMDET.QTY_PER__ALT , BOMDET.QTY_PER__UNIT, "
+" BOMDET.PRNT_FLG, BOMDET.BACKFLUSH_TYPE , BOMDET.LOC_CODE__WIP, BOMDET.RBF_FORMULA," + " BOMDET.PRNT_FLG, BOMDET.BACKFLUSH_TYPE , BOMDET.LOC_CODE__WIP, BOMDET.RBF_FORMULA,"
+" BOMDET.PEND_STK, BOMDET.POTENCY_INPUT, BOMDET.ISS_VAR_VALTYPE, " + " BOMDET.PEND_STK, BOMDET.POTENCY_INPUT, BOMDET.ISS_VAR_VALTYPE, "
+" BOMDET.SPEC_METADATA, BOMDET.SPEC_DIMENSION , BOMDET.MFG_REF , BOMDET.ITEM_CATEGORY, BOMDET.DISP_CONTAINER_SIZE, " + " BOMDET.SPEC_METADATA, BOMDET.SPEC_DIMENSION , BOMDET.MFG_REF , BOMDET.ITEM_CATEGORY, BOMDET.DISP_CONTAINER_SIZE, "
+" BOMDET.OPERATION_USED " + " BOMDET.OPERATION_USED "
+" FROM BOMDET ,ITEM WHERE ( BOMDET.ITEM_CODE = ITEM.ITEM_CODE ) AND " + " FROM BOMDET ,ITEM WHERE ( BOMDET.ITEM_CODE = ITEM.ITEM_CODE ) AND "
+" ( ( BOMDET.BOM_CODE = ? ) ) " ; + " ( ( BOMDET.BOM_CODE = ? ) ) ";
pstmt = conn.prepareStatement(sql1); pstmt = conn.prepareStatement(sql1);
pstmt.setString(1,bomCode); pstmt.setString(1, bomCode);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
while (rs.next()) while (rs.next()) {
{ itemCode = rs.getString("ITEM_CODE") == null ? "" : rs
itemCode= rs.getString("ITEM_CODE") == null ? "" :rs.getString("ITEM_CODE"); .getString("ITEM_CODE");
itemRef = rs.getString("ITEM_REF") == null ? "" :rs.getString("ITEM_REF"); itemRef = rs.getString("ITEM_REF") == null ? "" : rs
qtyPerStr = rs.getString("QTY_PER") == null ? "" :rs.getString("QTY_PER"); .getString("ITEM_REF");
// date value qtyPerStr = rs.getString("QTY_PER") == null ? "" : rs
effFrom = rs.getTimestamp("EFF_FROM") ; .getString("QTY_PER");
if (effFrom != null) // date value
{ effFrom = rs.getTimestamp("EFF_FROM");
effFromStr = new SimpleDateFormat(genericUtility.getApplDateFormat()).format(effFrom).toString(); if (effFrom != null) {
} effFromStr = new SimpleDateFormat(
else genericUtility.getApplDateFormat()).format(
{ effFrom).toString();
effFromStr = ""; } else {
} effFromStr = "";
validUpto = rs.getTimestamp("VALID_UPTO") ; }
if (validUpto != null) validUpto = rs.getTimestamp("VALID_UPTO");
{ if (validUpto != null) {
validUptoStr = new SimpleDateFormat(genericUtility.getApplDateFormat()).format(validUpto).toString(); validUptoStr = new SimpleDateFormat(
} genericUtility.getApplDateFormat()).format(
else validUpto).toString();
{ } else {
validUptoStr = ""; validUptoStr = "";
} }
// date value end // date value end
reqType = rs.getString("REQ_TYPE") == null ? "" :rs.getString("REQ_TYPE"); reqType = rs.getString("REQ_TYPE") == null ? "" : rs
// 14/03/12 manoharan .getString("REQ_TYPE");
if (qtyPerStr == null || qtyPerStr.trim().length() == 0) // 14/03/12 manoharan
{ if (qtyPerStr == null || qtyPerStr.trim().length() == 0) {
qtyPerStr = "0"; qtyPerStr = "0";
} }
qtyPer = Double.parseDouble(qtyPerStr); qtyPer = Double.parseDouble(qtyPerStr);
if (!"F".equals(reqType)) if (!"F".equals(reqType)) {
{ qtyPer = getReqDecimal(qtyPer / oldBatchQty
qtyPer = getReqDecimal(qtyPer / oldBatchQty * curBatchQty,3); * curBatchQty, 3);
}
// end 14/03/12 manoharan
minQty = rs.getString("MIN_QTY") == null ? "" : rs
.getString("MIN_QTY");
operation = rs.getString("OPERATION") == null ? "" : rs
.getString("OPERATION");
reqlt = rs.getString("REQ_LT") == null ? "" : rs
.getString("REQ_LT");
critItem = rs.getString("CRIT_ITEM") == null ? "" : rs
.getString("CRIT_ITEM");
autoOrd = rs.getString("AUTO_ORD") == null ? "" : rs
.getString("AUTO_ORD");
descr = rs.getString("DESCR") == null ? "" : rs
.getString("DESCR");
nature = rs.getString("NATURE") == null ? "" : rs
.getString("NATURE");
matchPotency = rs.getString("MATCH_POTENCY") == null ? ""
: rs.getString("MATCH_POTENCY");
minPotencyPerc = rs.getString("MIN_POTENCY_PERC") == null ? ""
: rs.getString("MIN_POTENCY_PERC");
adjPotency = rs.getString("ADJ_POTENCY") == null ? "" : rs
.getString("ADJ_POTENCY");
round = rs.getString("ROUND") == null ? "" : rs
.getString("ROUND");
roundTo = rs.getString("ROUND_TO") == null ? "" : rs
.getString("ROUND_TO");
usageType = rs.getString("USAGE_TYPE") == null ? "" : rs
.getString("USAGE_TYPE");
allocateType = rs.getString("ALLOCATE_TYPE") == null ? ""
: rs.getString("ALLOCATE_TYPE");
considerPartialAlt = rs.getString("CONSIDER_PARTIAL_ALT") == null ? ""
: rs.getString("CONSIDER_PARTIAL_ALT");
locUsageType = rs.getString("LOC_USAGE_TYPE") == null ? ""
: rs.getString("LOC_USAGE_TYPE");
considerLotNoIssue = rs.getString("CONSIDER_LOT_NO__ISSUE") == null ? ""
: rs.getString("CONSIDER_LOT_NO__ISSUE");
useInvstatus = rs.getString("USE_INVSTATUS") == null ? ""
: rs.getString("USE_INVSTATUS");
dimension = rs.getString("DIMENSION") == null ? "" : rs
.getString("DIMENSION");
minReqQty = rs.getString("MIN_REQ_QTY") == null ? "" : rs
.getString("MIN_REQ_QTY");
manualAlt = rs.getString("MANUAL_ALT") == null ? "" : rs
.getString("MANUAL_ALT");
potencyFormula = rs.getString("POTENCY_FORMULA") == null ? ""
: rs.getString("POTENCY_FORMULA");
remarks = rs.getString("REMARKS") == null ? "" : rs
.getString("REMARKS");
unit = rs.getString("UNIT") == null ? "" : rs
.getString("UNIT");
suppCodeMfg = rs.getString("SUPP_CODE__MFG") == null ? ""
: rs.getString("SUPP_CODE__MFG");
issVarienceType = rs.getString("ISS_VARIENCE_TYPE") == null ? ""
: rs.getString("ISS_VARIENCE_TYPE");
issVarience = rs.getString("ISS_VARIENCE") == null ? ""
: rs.getString("ISS_VARIENCE");
unitAlt = rs.getString("UNIT__ALT") == null ? "" : rs
.getString("UNIT__ALT");
convQtyStduom = rs.getString("CONV__QTY_STDUOM") == null ? ""
: rs.getString("CONV__QTY_STDUOM");
qtyPerAlt = rs.getString("QTY_PER__ALT") == null ? "" : rs
.getString("QTY_PER__ALT");
qtyPerUnit = rs.getString("QTY_PER__UNIT") == null ? ""
: rs.getString("QTY_PER__UNIT");
prntFlg = rs.getString("PRNT_FLG") == null ? "" : rs
.getString("PRNT_FLG");
backflushType = rs.getString("BACKFLUSH_TYPE") == null ? ""
: rs.getString("BACKFLUSH_TYPE");
locCodeWip = rs.getString("LOC_CODE__WIP") == null ? ""
: rs.getString("LOC_CODE__WIP");
rbfFormula = rs.getString("RBF_FORMULA") == null ? "" : rs
.getString("RBF_FORMULA");
pendStk = rs.getString("PEND_STK") == null ? "" : rs
.getString("PEND_STK");
potencyInput = rs.getString("POTENCY_INPUT") == null ? ""
: rs.getString("POTENCY_INPUT");
issVarValtype = rs.getString("ISS_VAR_VALTYPE") == null ? ""
: rs.getString("ISS_VAR_VALTYPE");
specMetadata = rs.getString("SPEC_METADATA") == null ? ""
: rs.getString("SPEC_METADATA");
specDimension = rs.getString("SPEC_DIMENSION") == null ? ""
: rs.getString("SPEC_DIMENSION");
mfgRef = rs.getString("MFG_REF") == null ? "" : rs
.getString("MFG_REF");
itemCategory = rs.getString("ITEM_CATEGORY") == null ? ""
: rs.getString("ITEM_CATEGORY");
// strengthValue = rs.getString("STRENGTH_VALUE") == null ?
// "" :rs.getString("STRENGTH_VALUE");
// strengthUnit = rs.getString("STRENGTH_UNIT") == null ? ""
// :rs.getString("STRENGTH_UNIT");
// itemType = rs.getString("ITEM_TYPE") == null ? ""
// :rs.getString("ITEM_TYPE");
// itemTypeValue = rs.getString("ITEM_TYPE_VALUE") == null ?
// "" :rs.getString("ITEM_TYPE_VALUE");
dispContainerSize = rs.getString("DISP_CONTAINER_SIZE") == null ? ""
: rs.getString("DISP_CONTAINER_SIZE");
operationUsed = rs.getString("OPERATION_USED") == null ? ""
: rs.getString("OPERATION_USED");
valueXmlString.append("<Detail>\r\n");
valueXmlString.append("<item_code isSrvCallOnChg =\"1\" >")
.append("<![CDATA[").append(itemCode.trim())
.append("]]>").append("</item_code>\r\n");
valueXmlString.append("<item_ref isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(itemRef).append("]]>")
.append("</item_ref>\r\n");
valueXmlString.append("<qty_per isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(qtyPer).append("]]>")
.append("</qty_per>\r\n");
valueXmlString.append("<eff_from isSrvCallOnChg =\"0\" >")
.append("<![CDATA[").append(effFromStr)
.append("]]>").append("</eff_from>\r\n");
valueXmlString.append("<valid_upto isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(validUptoStr)
.append("]]>").append("</valid_upto>\r\n");
valueXmlString.append("<req_type isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(reqType).append("]]>")
.append("</req_type>\r\n");
valueXmlString.append("<min_qty isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(minQty).append("]]>")
.append("</min_qty>\r\n");
valueXmlString.append("<operation isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(operation)
.append("]]>").append("</operation>\r\n");
valueXmlString.append("<req_lt isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(reqlt).append("]]>")
.append("</req_lt>\r\n");
valueXmlString.append("<crit_item isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(critItem).append("]]>")
.append("</crit_item>\r\n");
valueXmlString.append("<auto_ord isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(autoOrd).append("]]>")
.append("</auto_ord>\r\n");
valueXmlString.append("<nature isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(nature).append("]]>")
.append("</nature>\r\n");
valueXmlString
.append("<match_potency isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(matchPotency)
.append("]]>").append("</match_potency>\r\n");
valueXmlString
.append("<min_potency_perc isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(minPotencyPerc)
.append("]]>").append("</min_potency_perc>\r\n");
valueXmlString
.append("<adj_potency isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(adjPotency)
.append("]]>").append("</adj_potency>\r\n");
valueXmlString.append("<round isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(round).append("]]>")
.append("</round>\r\n");
valueXmlString.append("<round_to isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(roundTo).append("]]>")
.append("</round_to>\r\n");
valueXmlString.append("<usage_type isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(usageType)
.append("]]>").append("</usage_type>\r\n");
valueXmlString
.append("<allocate_type isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(allocateType)
.append("]]>").append("</allocate_type>\r\n");
valueXmlString
.append("<consider_partial_alt isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(considerPartialAlt)
.append("]]>")
.append("</consider_partial_alt>\r\n");
valueXmlString
.append("<loc_usage_type isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(locUsageType)
.append("]]>").append("</loc_usage_type>\r\n");
valueXmlString
.append("<consider_lot_no__issue isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(considerLotNoIssue)
.append("]]>")
.append("</consider_lot_no__issue>\r\n");
valueXmlString
.append("<use_invstatus isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(useInvstatus)
.append("]]>").append("</use_invstatus>\r\n");
valueXmlString.append("<dimension isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(dimension)
.append("]]>").append("</dimension>\r\n");
valueXmlString
.append("<min_req_qty isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(minReqQty)
.append("]]>").append("</min_req_qty>\r\n");
valueXmlString.append("<manual_alt isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(manualAlt)
.append("]]>").append("</manual_alt>\r\n");
valueXmlString
.append("<potency_formula isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(potencyFormula)
.append("]]>").append("</potency_formula>\r\n");
valueXmlString.append("<remarks isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(remarks).append("]]>")
.append("</remarks>\r\n");
valueXmlString.append("<unit isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(unit).append("]]>")
.append("</unit>\r\n");
valueXmlString
.append("<supp_code__mfg isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(suppCodeMfg)
.append("]]>").append("</supp_code__mfg>\r\n");
valueXmlString
.append("<iss_varience_type isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(issVarienceType)
.append("]]>").append("</iss_varience_type>\r\n");
valueXmlString
.append("<iss_varience isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(issVarience)
.append("]]>").append("</iss_varience>\r\n");
valueXmlString.append("<unit__alt isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(unitAlt).append("]]>")
.append("</unit__alt>\r\n");
valueXmlString
.append("<conv__qty_stduom isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(convQtyStduom)
.append("]]>").append("</conv__qty_stduom>\r\n");
valueXmlString
.append("<qty_per__alt isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(qtyPerAlt)
.append("]]>").append("</qty_per__alt>\r\n");
valueXmlString
.append("<qty_per__unit isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(qtyPerUnit)
.append("]]>").append("</qty_per__unit>\r\n");
valueXmlString.append("<prnt_flg isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(prntFlg).append("]]>")
.append("</prnt_flg>\r\n");
// valueXmlString.append("<iss_varience_type__o>").append("<![CDATA[").append(issVarienceType).append("]]>").append("</iss_varience_type__o>\r\n");
valueXmlString
.append("<backflush_type isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(backflushType)
.append("]]>").append("</backflush_type>\r\n");
valueXmlString
.append("<loc_code__wip isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(locCodeWip)
.append("]]>").append("</loc_code__wip>\r\n");
valueXmlString
.append("<rbf_formula isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(rbfFormula)
.append("]]>").append("</rbf_formula>\r\n");
valueXmlString.append("<pend_stk isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(pendStk).append("]]>")
.append("</pend_stk>\r\n");
valueXmlString
.append("<potency_input isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(potencyInput)
.append("]]>").append("</potency_input>\r\n");
valueXmlString
.append("<iss_var_valtype isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(issVarValtype)
.append("]]>").append("</iss_var_valtype>\r\n");
// valueXmlString.append("<item_code__out>").append("<![CDATA[").append(itemCodeOut).append("]]>").append("</item_code__out>\r\n");
// valueXmlString.append("<store_code>").append("<![CDATA[").append(storeCode).append("]]>").append("</store_code>\r\n");
valueXmlString
.append("<spec_metadata isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(specMetadata)
.append("]]>").append("</spec_metadata>\r\n");
valueXmlString
.append("<spec_dimension isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(specDimension)
.append("]]>").append("</spec_dimension>\r\n");
valueXmlString.append("<mfg_ref isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(mfgRef).append("]]>")
.append("</mfg_ref>\r\n");
valueXmlString
.append("<item_category isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(itemCategory)
.append("]]>").append("</item_category>\r\n");
// valueXmlString.append("<strength_value isSrvCallOnChg =\"0\">").append("<![CDATA[").append(strengthValue).append("]]>").append("</strength_value>\r\n");
// valueXmlString.append("<strength_unit isSrvCallOnChg =\"0\">").append("<![CDATA[").append(strengthUnit).append("]]>").append("</strength_unit>\r\n");
// valueXmlString.append("<item_type isSrvCallOnChg =\"0\">").append("<![CDATA[").append(itemType).append("]]>").append("</item_type>\r\n");
// valueXmlString.append("<item_type_value isSrvCallOnChg =\"0\">").append("<![CDATA[").append(itemTypeValue).append("]]>").append("</item_type_value>\r\n");
valueXmlString
.append("<disp_container_size isSrvCallOnChg =\"0\">")
.append("<![CDATA[")
.append(dispContainerSizeitemCodeWip).append("]]>")
.append("</disp_container_size>\r\n");
// valueXmlString.append("<item_code__wip>").append("<![CDATA[").append(itemCodeWip).append("]]>").append("</item_code__wip>\r\n");
// valueXmlString.append("<setting_method>").append("<![CDATA[").append(settingMethod).append("]]>").append("</setting_method>\r\n");
// valueXmlString.append("<qty_calc__formula>").append("<![CDATA[").append(qtyCalcFormula).append("]]>").append("</qty_calc__formula>\r\n");
// valueXmlString.append("<item_code__pre_op>").append("<![CDATA[").append(itemCodePreOp).append("]]>").append("</item_code__pre_op>\r\n");
valueXmlString
.append("<operation_used isSrvCallOnChg =\"0\">")
.append("<![CDATA[").append(operationUsed)
.append("]]>").append("</operation_used>\r\n");
valueXmlString.append("</Detail>\r\n");
} }
// end 14/03/12 manoharan rs.close();
minQty = rs.getString("MIN_QTY") == null ? "" :rs.getString("MIN_QTY"); rs = null;
operation = rs.getString("OPERATION") == null ? "" :rs.getString("OPERATION"); pstmt.close();
reqlt = rs.getString("REQ_LT") == null ? "" :rs.getString("REQ_LT"); pstmt = null;
} // end of Edit Mode Check
critItem = rs.getString("CRIT_ITEM") == null ? "" :rs.getString("CRIT_ITEM");
autoOrd = rs.getString("AUTO_ORD") == null ? "" :rs.getString("AUTO_ORD"); // }
descr = rs.getString("DESCR") == null ? "" :rs.getString("DESCR"); valueXmlString.append("</Root>\r\n");
} catch (Exception e) {
nature = rs.getString("NATURE") == null ? "" :rs.getString("NATURE"); // System.out.println("Exception CopyBomDetEJB "+e.getMessage());
matchPotency = rs.getString("MATCH_POTENCY") == null ? "" :rs.getString("MATCH_POTENCY");
minPotencyPerc = rs.getString("MIN_POTENCY_PERC") == null ? "" :rs.getString("MIN_POTENCY_PERC");
adjPotency = rs.getString("ADJ_POTENCY") == null ? "" :rs.getString("ADJ_POTENCY");
round = rs.getString("ROUND") == null ? "" :rs.getString("ROUND");
roundTo = rs.getString("ROUND_TO") == null ? "" :rs.getString("ROUND_TO");
usageType = rs.getString("USAGE_TYPE") == null ? "" :rs.getString("USAGE_TYPE");
allocateType = rs.getString("ALLOCATE_TYPE") == null ? "" :rs.getString("ALLOCATE_TYPE");
considerPartialAlt = rs.getString("CONSIDER_PARTIAL_ALT") == null ? "" :rs.getString("CONSIDER_PARTIAL_ALT");
locUsageType = rs.getString("LOC_USAGE_TYPE") == null ? "" :rs.getString("LOC_USAGE_TYPE");
considerLotNoIssue = rs.getString("CONSIDER_LOT_NO__ISSUE") == null ? "" :rs.getString("CONSIDER_LOT_NO__ISSUE");
useInvstatus = rs.getString("USE_INVSTATUS") == null ? "" :rs.getString("USE_INVSTATUS");
dimension = rs.getString("DIMENSION") == null ? "" :rs.getString("DIMENSION");
minReqQty = rs.getString("MIN_REQ_QTY") == null ? "" :rs.getString("MIN_REQ_QTY");
manualAlt = rs.getString("MANUAL_ALT") == null ? "" :rs.getString("MANUAL_ALT");
potencyFormula = rs.getString("POTENCY_FORMULA") == null ? "" :rs.getString("POTENCY_FORMULA");
remarks = rs.getString("REMARKS") == null ? "" :rs.getString("REMARKS");
unit = rs.getString("UNIT") == null ? "" :rs.getString("UNIT");
suppCodeMfg = rs.getString("SUPP_CODE__MFG") == null ? "" :rs.getString("SUPP_CODE__MFG");
issVarienceType = rs.getString("ISS_VARIENCE_TYPE") == null ? "" :rs.getString("ISS_VARIENCE_TYPE");
issVarience = rs.getString("ISS_VARIENCE") == null ? "" :rs.getString("ISS_VARIENCE");
unitAlt = rs.getString("UNIT__ALT") == null ? "" :rs.getString("UNIT__ALT");
convQtyStduom = rs.getString("CONV__QTY_STDUOM") == null ? "" :rs.getString("CONV__QTY_STDUOM");
qtyPerAlt = rs.getString("QTY_PER__ALT") == null ? "" :rs.getString("QTY_PER__ALT");
qtyPerUnit = rs.getString("QTY_PER__UNIT") == null ? "" :rs.getString("QTY_PER__UNIT");
prntFlg = rs.getString("PRNT_FLG") == null ? "" :rs.getString("PRNT_FLG");
backflushType = rs.getString("BACKFLUSH_TYPE") == null ? "" :rs.getString("BACKFLUSH_TYPE");
locCodeWip = rs.getString("LOC_CODE__WIP") == null ? "" :rs.getString("LOC_CODE__WIP");
rbfFormula = rs.getString("RBF_FORMULA") == null ? "" :rs.getString("RBF_FORMULA");
pendStk = rs.getString("PEND_STK") == null ? "" :rs.getString("PEND_STK");
potencyInput = rs.getString("POTENCY_INPUT") == null ? "" :rs.getString("POTENCY_INPUT");
issVarValtype = rs.getString("ISS_VAR_VALTYPE") == null ? "" :rs.getString("ISS_VAR_VALTYPE");
specMetadata = rs.getString("SPEC_METADATA") == null ? "" :rs.getString("SPEC_METADATA");
specDimension = rs.getString("SPEC_DIMENSION") == null ? "" :rs.getString("SPEC_DIMENSION");
mfgRef = rs.getString("MFG_REF") == null ? "" :rs.getString("MFG_REF");
itemCategory = rs.getString("ITEM_CATEGORY") == null ? "" :rs.getString("ITEM_CATEGORY");
//strengthValue = rs.getString("STRENGTH_VALUE") == null ? "" :rs.getString("STRENGTH_VALUE");
//strengthUnit = rs.getString("STRENGTH_UNIT") == null ? "" :rs.getString("STRENGTH_UNIT");
//itemType = rs.getString("ITEM_TYPE") == null ? "" :rs.getString("ITEM_TYPE");
//itemTypeValue = rs.getString("ITEM_TYPE_VALUE") == null ? "" :rs.getString("ITEM_TYPE_VALUE");
dispContainerSize = rs.getString("DISP_CONTAINER_SIZE") == null ? "" :rs.getString("DISP_CONTAINER_SIZE");
operationUsed = rs.getString("OPERATION_USED") == null ? "" :rs.getString("OPERATION_USED");
valueXmlString.append("<Detail>\r\n");
valueXmlString.append("<item_code isSrvCallOnChg =\"1\" >").append("<![CDATA[").append(itemCode.trim()).append("]]>").append("</item_code>\r\n");
valueXmlString.append("<item_ref isSrvCallOnChg =\"0\">").append("<![CDATA[").append(itemRef).append("]]>").append("</item_ref>\r\n");
valueXmlString.append("<qty_per isSrvCallOnChg =\"0\">").append("<![CDATA[").append(qtyPer).append("]]>").append("</qty_per>\r\n");
valueXmlString.append("<eff_from isSrvCallOnChg =\"0\" >").append("<![CDATA[").append(effFromStr).append("]]>").append("</eff_from>\r\n");
valueXmlString.append("<valid_upto isSrvCallOnChg =\"0\">").append("<![CDATA[").append(validUptoStr).append("]]>").append("</valid_upto>\r\n");
valueXmlString.append("<req_type isSrvCallOnChg =\"0\">").append("<![CDATA[").append(reqType).append("]]>").append("</req_type>\r\n");
valueXmlString.append("<min_qty isSrvCallOnChg =\"0\">").append("<![CDATA[").append(minQty).append("]]>").append("</min_qty>\r\n");
valueXmlString.append("<operation isSrvCallOnChg =\"0\">").append("<![CDATA[").append(operation).append("]]>").append("</operation>\r\n");
valueXmlString.append("<req_lt isSrvCallOnChg =\"0\">").append("<![CDATA[").append(reqlt).append("]]>").append("</req_lt>\r\n");
valueXmlString.append("<crit_item isSrvCallOnChg =\"0\">").append("<![CDATA[").append(critItem).append("]]>").append("</crit_item>\r\n");
valueXmlString.append("<auto_ord isSrvCallOnChg =\"0\">").append("<![CDATA[").append(autoOrd).append("]]>").append("</auto_ord>\r\n");
valueXmlString.append("<nature isSrvCallOnChg =\"0\">").append("<![CDATA[").append(nature).append("]]>").append("</nature>\r\n");
valueXmlString.append("<match_potency isSrvCallOnChg =\"0\">").append("<![CDATA[").append(matchPotency).append("]]>").append("</match_potency>\r\n");
valueXmlString.append("<min_potency_perc isSrvCallOnChg =\"0\">").append("<![CDATA[").append(minPotencyPerc).append("]]>").append("</min_potency_perc>\r\n");
valueXmlString.append("<adj_potency isSrvCallOnChg =\"0\">").append("<![CDATA[").append(adjPotency).append("]]>").append("</adj_potency>\r\n");
valueXmlString.append("<round isSrvCallOnChg =\"0\">").append("<![CDATA[").append(round).append("]]>").append("</round>\r\n");
valueXmlString.append("<round_to isSrvCallOnChg =\"0\">").append("<![CDATA[").append(roundTo).append("]]>").append("</round_to>\r\n");
valueXmlString.append("<usage_type isSrvCallOnChg =\"0\">").append("<![CDATA[").append(usageType).append("]]>").append("</usage_type>\r\n");
valueXmlString.append("<allocate_type isSrvCallOnChg =\"0\">").append("<![CDATA[").append(allocateType).append("]]>").append("</allocate_type>\r\n");
valueXmlString.append("<consider_partial_alt isSrvCallOnChg =\"0\">").append("<![CDATA[").append(considerPartialAlt).append("]]>").append("</consider_partial_alt>\r\n");
valueXmlString.append("<loc_usage_type isSrvCallOnChg =\"0\">").append("<![CDATA[").append(locUsageType).append("]]>").append("</loc_usage_type>\r\n");
valueXmlString.append("<consider_lot_no__issue isSrvCallOnChg =\"0\">").append("<![CDATA[").append(considerLotNoIssue).append("]]>").append("</consider_lot_no__issue>\r\n");
valueXmlString.append("<use_invstatus isSrvCallOnChg =\"0\">").append("<![CDATA[").append(useInvstatus).append("]]>").append("</use_invstatus>\r\n");
valueXmlString.append("<dimension isSrvCallOnChg =\"0\">").append("<![CDATA[").append(dimension).append("]]>").append("</dimension>\r\n");
valueXmlString.append("<min_req_qty isSrvCallOnChg =\"0\">").append("<![CDATA[").append(minReqQty).append("]]>").append("</min_req_qty>\r\n");
valueXmlString.append("<manual_alt isSrvCallOnChg =\"0\">").append("<![CDATA[").append(manualAlt).append("]]>").append("</manual_alt>\r\n");
valueXmlString.append("<potency_formula isSrvCallOnChg =\"0\">").append("<![CDATA[").append(potencyFormula).append("]]>").append("</potency_formula>\r\n");
valueXmlString.append("<remarks isSrvCallOnChg =\"0\">").append("<![CDATA[").append(remarks).append("]]>").append("</remarks>\r\n");
valueXmlString.append("<unit isSrvCallOnChg =\"0\">").append("<![CDATA[").append(unit).append("]]>").append("</unit>\r\n");
valueXmlString.append("<supp_code__mfg isSrvCallOnChg =\"0\">").append("<![CDATA[").append(suppCodeMfg).append("]]>").append("</supp_code__mfg>\r\n");
valueXmlString.append("<iss_varience_type isSrvCallOnChg =\"0\">").append("<![CDATA[").append(issVarienceType).append("]]>").append("</iss_varience_type>\r\n");
valueXmlString.append("<iss_varience isSrvCallOnChg =\"0\">").append("<![CDATA[").append(issVarience).append("]]>").append("</iss_varience>\r\n");
valueXmlString.append("<unit__alt isSrvCallOnChg =\"0\">").append("<![CDATA[").append(unitAlt).append("]]>").append("</unit__alt>\r\n");
valueXmlString.append("<conv__qty_stduom isSrvCallOnChg =\"0\">").append("<![CDATA[").append(convQtyStduom).append("]]>").append("</conv__qty_stduom>\r\n");
valueXmlString.append("<qty_per__alt isSrvCallOnChg =\"0\">").append("<![CDATA[").append(qtyPerAlt).append("]]>").append("</qty_per__alt>\r\n");
valueXmlString.append("<qty_per__unit isSrvCallOnChg =\"0\">").append("<![CDATA[").append(qtyPerUnit).append("]]>").append("</qty_per__unit>\r\n");
valueXmlString.append("<prnt_flg isSrvCallOnChg =\"0\">").append("<![CDATA[").append(prntFlg).append("]]>").append("</prnt_flg>\r\n");
//valueXmlString.append("<iss_varience_type__o>").append("<![CDATA[").append(issVarienceType).append("]]>").append("</iss_varience_type__o>\r\n");
valueXmlString.append("<backflush_type isSrvCallOnChg =\"0\">").append("<![CDATA[").append(backflushType).append("]]>").append("</backflush_type>\r\n");
valueXmlString.append("<loc_code__wip isSrvCallOnChg =\"0\">").append("<![CDATA[").append(locCodeWip).append("]]>").append("</loc_code__wip>\r\n");
valueXmlString.append("<rbf_formula isSrvCallOnChg =\"0\">").append("<![CDATA[").append(rbfFormula).append("]]>").append("</rbf_formula>\r\n");
valueXmlString.append("<pend_stk isSrvCallOnChg =\"0\">").append("<![CDATA[").append(pendStk).append("]]>").append("</pend_stk>\r\n");
valueXmlString.append("<potency_input isSrvCallOnChg =\"0\">").append("<![CDATA[").append(potencyInput).append("]]>").append("</potency_input>\r\n");
valueXmlString.append("<iss_var_valtype isSrvCallOnChg =\"0\">").append("<![CDATA[").append(issVarValtype).append("]]>").append("</iss_var_valtype>\r\n");
//valueXmlString.append("<item_code__out>").append("<![CDATA[").append(itemCodeOut).append("]]>").append("</item_code__out>\r\n");
//valueXmlString.append("<store_code>").append("<![CDATA[").append(storeCode).append("]]>").append("</store_code>\r\n");
valueXmlString.append("<spec_metadata isSrvCallOnChg =\"0\">").append("<![CDATA[").append(specMetadata).append("]]>").append("</spec_metadata>\r\n");
valueXmlString.append("<spec_dimension isSrvCallOnChg =\"0\">").append("<![CDATA[").append(specDimension).append("]]>").append("</spec_dimension>\r\n");
valueXmlString.append("<mfg_ref isSrvCallOnChg =\"0\">").append("<![CDATA[").append(mfgRef).append("]]>").append("</mfg_ref>\r\n");
valueXmlString.append("<item_category isSrvCallOnChg =\"0\">").append("<![CDATA[").append(itemCategory).append("]]>").append("</item_category>\r\n");
//valueXmlString.append("<strength_value isSrvCallOnChg =\"0\">").append("<![CDATA[").append(strengthValue).append("]]>").append("</strength_value>\r\n");
//valueXmlString.append("<strength_unit isSrvCallOnChg =\"0\">").append("<![CDATA[").append(strengthUnit).append("]]>").append("</strength_unit>\r\n");
//valueXmlString.append("<item_type isSrvCallOnChg =\"0\">").append("<![CDATA[").append(itemType).append("]]>").append("</item_type>\r\n");
//valueXmlString.append("<item_type_value isSrvCallOnChg =\"0\">").append("<![CDATA[").append(itemTypeValue).append("]]>").append("</item_type_value>\r\n");
valueXmlString.append("<disp_container_size isSrvCallOnChg =\"0\">").append("<![CDATA[").append(dispContainerSizeitemCodeWip).append("]]>").append("</disp_container_size>\r\n");
//valueXmlString.append("<item_code__wip>").append("<![CDATA[").append(itemCodeWip).append("]]>").append("</item_code__wip>\r\n");
//valueXmlString.append("<setting_method>").append("<![CDATA[").append(settingMethod).append("]]>").append("</setting_method>\r\n");
//valueXmlString.append("<qty_calc__formula>").append("<![CDATA[").append(qtyCalcFormula).append("]]>").append("</qty_calc__formula>\r\n");
//valueXmlString.append("<item_code__pre_op>").append("<![CDATA[").append(itemCodePreOp).append("]]>").append("</item_code__pre_op>\r\n");
valueXmlString.append("<operation_used isSrvCallOnChg =\"0\">").append("<![CDATA[").append(operationUsed).append("]]>").append("</operation_used>\r\n");
valueXmlString.append("</Detail>\r\n");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
} // end of Edit Mode Check
//}
valueXmlString.append("</Root>\r\n");
}
catch (Exception e)
{
//System.out.println("Exception CopyBomDetEJB "+e.getMessage());
e.printStackTrace(); e.printStackTrace();
throw new ITMException(e); throw new ITMException(e);
} } finally {
finally try {
{
try
{
conn.close(); conn.close();
conn = null; conn = null;
} catch (Exception se) {
} }
catch (Exception se){}
} }
return valueXmlString.toString(); return valueXmlString.toString();
} }
// added by chandni shah - 21-Dec-2011 // added by chandni shah - 21-Dec-2011
public ArrayList getDetails(String bomCode, String batchQtyD) throws ITMException public ArrayList getDetails(String bomCode, String batchQtyD)
{ throws ITMException {
PreparedStatement pstmt = null,pstmt1 = null; PreparedStatement pstmt = null, pstmt1 = null;
ResultSet rs = null; ResultSet rs = null;
Connection conn = null; Connection conn = null;
BOMStockDtlParams thisBean = null; BOMStockDtlParams thisBean = null;
...@@ -837,113 +1029,104 @@ public String actionHandler(String actionType, String xmlString,String xmlString ...@@ -837,113 +1029,104 @@ public String actionHandler(String actionType, String xmlString,String xmlString
String sql = null; String sql = null;
String trackShelfLife = null; String trackShelfLife = null;
String itemCode = null; String itemCode = null;
String reqType = null; String reqType = null;
String siteCode = null; String siteCode = null;
Timestamp currDate =null; Timestamp currDate = null;
double batchQty = 0.0; double batchQty = 0.0;
double qtyPar = 0.0; double qtyPar = 0.0;
double minQty = 0.0; double minQty = 0.0;
double reqQty =0.0; double reqQty = 0.0;
double stkQty = 0.0; double stkQty = 0.0;
double nonStkQty = 0.0; double nonStkQty = 0.0;
double allockQty = 0.0; double allockQty = 0.0;
try try {
{
ConnDriver connDriver = new ConnDriver(); ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM"); conn = connDriver.getConnectDB("DriverITM");
conn.setAutoCommit(false); conn.setAutoCommit(false);
connDriver = null; connDriver = null;
sql = "SELECT FN_SYSDATE() FROM DUAL"; sql = "SELECT FN_SYSDATE() FROM DUAL";
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
if(rs.next()) if (rs.next()) {
{
currDate = rs.getTimestamp(1); currDate = rs.getTimestamp(1);
}
System.out.println("Current Date::::::"+currDate);
rs.close();
pstmt.close();
/*sql = "SELECT s.GEO_LOC FROM siteitem i, site s where i.site_code = s.site_code "
+ " and i.bom_code = ? and case when i.active is null then 'Y' else i.active end = 'Y' ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,bomCode);
rs = pstmt.executeQuery();
if(rs.next())
{
siteCode = rs.getString(1);
} }
System.out.println("Current Date::::::"+currDate); System.out.println("Current Date::::::" + currDate);
rs.close(); rs.close();
pstmt.close(); pstmt.close();
*/
/*
if(bomCode!=null) * sql =
{ * "SELECT s.GEO_LOC FROM siteitem i, site s where i.site_code = s.site_code "
* +
* " and i.bom_code = ? and case when i.active is null then 'Y' else i.active end = 'Y' "
* ; pstmt = conn.prepareStatement(sql); pstmt.setString(1,bomCode);
* rs = pstmt.executeQuery(); if(rs.next()) { siteCode =
* rs.getString(1);
*
* } System.out.println("Current Date::::::"+currDate); rs.close();
* pstmt.close();
*/
if (bomCode != null) {
sql = "SELECT BOM.ITEM_CODE, BOM.BOM_CODE,BOMDET.ITEM_CODE,ITEM_A.DESCR,BOMDET.REQ_TYPE," sql = "SELECT BOM.ITEM_CODE, BOM.BOM_CODE,BOMDET.ITEM_CODE,ITEM_A.DESCR,BOMDET.REQ_TYPE,"
+"ITEM_B.DESCR,SUM(BOMDET.MIN_QTY) AS MIN_QTY,SUM(BOMDET.QTY_PER) AS QTY_PER, MAX(BOM.BATCH_QTY) AS BATCH_QTY," + "ITEM_B.DESCR,SUM(BOMDET.MIN_QTY) AS MIN_QTY,SUM(BOMDET.QTY_PER) AS QTY_PER, MAX(BOM.BATCH_QTY) AS BATCH_QTY,"
+"0.0 AS STK_QTY,0.0 AS NON_STK_QTY,0.0 AS REQ_QTY,0.0 AS ALLOC_QTY FROM BOM,BOMDET,ITEM ITEM_A," + "0.0 AS STK_QTY,0.0 AS NON_STK_QTY,0.0 AS REQ_QTY,0.0 AS ALLOC_QTY FROM BOM,BOMDET,ITEM ITEM_A,"
+"ITEM ITEM_B " + "ITEM ITEM_B "
+"WHERE (BOM.BOM_CODE = BOMDET.BOM_CODE ) AND" + "WHERE (BOM.BOM_CODE = BOMDET.BOM_CODE ) AND"
+"(BOM.ITEM_CODE = ITEM_A.ITEM_CODE ) AND" + "(BOM.ITEM_CODE = ITEM_A.ITEM_CODE ) AND"
+"(BOMDET.ITEM_CODE= ITEM_B.ITEM_CODE ) AND" + "(BOMDET.ITEM_CODE= ITEM_B.ITEM_CODE ) AND"
+"(( BOM.BOM_CODE = ?) )" + "(( BOM.BOM_CODE = ?) )"
+"GROUP BY BOM.BOM_CODE,BOM.ITEM_CODE,BOMDET.ITEM_CODE,BOMDET.REQ_TYPE,ITEM_A.DESCR,ITEM_B.DESCR" ; + "GROUP BY BOM.BOM_CODE,BOM.ITEM_CODE,BOMDET.ITEM_CODE,BOMDET.REQ_TYPE,ITEM_A.DESCR,ITEM_B.DESCR";
System.out.println("MainQuery:::"+sql); System.out.println("MainQuery:::" + sql);
pstmt = conn.prepareStatement(sql); pstmt = conn.prepareStatement(sql);
pstmt.setString(1,bomCode); pstmt.setString(1, bomCode);
rs = pstmt.executeQuery(); rs = pstmt.executeQuery();
while(rs.next()) while (rs.next()) {
{
itemCode = rs.getString(3); itemCode = rs.getString(3);
reqType = rs.getString(5); reqType = rs.getString(5);
minQty = rs.getDouble(7); minQty = rs.getDouble(7);
qtyPar = rs.getDouble(8); qtyPar = rs.getDouble(8);
batchQty = rs.getDouble(9); batchQty = rs.getDouble(9);
reqQty = rs.getDouble(13); reqQty = rs.getDouble(13);
thisBean = new BOMStockDtlParams(); thisBean = new BOMStockDtlParams();
thisBean.itemCode = rs.getString(3);//BOM.ITEM_CODE //change thisBean.itemCode = rs.getString(3);// BOM.ITEM_CODE
// //change
thisBean.bomCode = rs.getString(2); thisBean.bomCode = rs.getString(2);
thisBean.descr = rs.getString(6); thisBean.descr = rs.getString(6);
thisBean.reqType = rs.getString(5);//BOMDET.REQ_TYPE thisBean.reqType = rs.getString(5);// BOMDET.REQ_TYPE
thisBean.minQty = rs.getDouble(7);//MIN_QTY thisBean.minQty = rs.getDouble(7);// MIN_QTY
thisBean.qtyPar = rs.getDouble(8);//QTY_PER; thisBean.qtyPar = rs.getDouble(8);// QTY_PER;
thisBean.batchQty = rs.getDouble(9);//BATCH_QTY; thisBean.batchQty = rs.getDouble(9);// BATCH_QTY;
thisBean.stkQty = rs.getDouble(10); thisBean.stkQty = rs.getDouble(10);
thisBean.nonStkQty = rs.getDouble(11); thisBean.nonStkQty = rs.getDouble(11);
thisBean.nonStkQty = rs.getDouble(12); thisBean.nonStkQty = rs.getDouble(12);
thisBean.reqQty = rs.getDouble(13); thisBean.reqQty = rs.getDouble(13);
if(reqType != null && reqType.equalsIgnoreCase("S")) if (reqType != null && reqType.equalsIgnoreCase("S")) {
{ reqQty = (Double.parseDouble(batchQtyD) / batchQty)
reqQty = (Double.parseDouble(batchQtyD) / batchQty) * qtyPar; * qtyPar;
} } else if (reqType != null && reqType.equalsIgnoreCase("P")) {
else if(reqType != null && reqType.equalsIgnoreCase("P")) reqQty = (qtyPar / batchQty)
{ * Double.parseDouble(batchQtyD);
reqQty = (qtyPar / batchQty) * Double.parseDouble(batchQtyD); } else {
}
else
{
reqQty = qtyPar; reqQty = qtyPar;
} }
if (reqQty < minQty) if (reqQty < minQty) {
{ reqQty = minQty;
reqQty = minQty;
} }
thisBean.reqQty = reqQty; thisBean.reqQty = reqQty;
pstmt1 = conn.prepareStatement("select nvl(track_shelf_life,'N') from item where item_code = ?") ; pstmt1 = conn
pstmt1.setString(1,rs.getString(3)); .prepareStatement("select nvl(track_shelf_life,'N') from item where item_code = ?");
pstmt1.setString(1, rs.getString(3));
ResultSet rs1 = pstmt1.executeQuery(); ResultSet rs1 = pstmt1.executeQuery();
if(rs1.next()) if (rs1.next()) {
{
trackShelfLife = rs1.getString(1); trackShelfLife = rs1.getString(1);
} }
rs1.close(); rs1.close();
...@@ -952,23 +1135,22 @@ public String actionHandler(String actionType, String xmlString,String xmlString ...@@ -952,23 +1135,22 @@ public String actionHandler(String actionType, String xmlString,String xmlString
pstmt1 = null; pstmt1 = null;
StringBuffer sb = new StringBuffer(); StringBuffer sb = new StringBuffer();
sb.append("select nvl(sum(a.quantity - a.alloc_qty),0), nvl(sum(a.alloc_qty),0), nvl(sum(a.alloc_qty),0) from stock a, invstat b " sb.append("select nvl(sum(a.quantity - a.alloc_qty),0), nvl(sum(a.alloc_qty),0), nvl(sum(a.alloc_qty),0) from stock a, invstat b "
+ " where a.inv_stat = b.inv_stat and a.item_code = ? and b.available = 'Y' and b.plan_prod = 'Y' and b.stat_type <> 'S' and (a.quantity - nvl(a.alloc_qty,0)) > 0 " + " where a.inv_stat = b.inv_stat and a.item_code = ? and b.available = 'Y' and b.plan_prod = 'Y' and b.stat_type <> 'S' and (a.quantity - nvl(a.alloc_qty,0)) > 0 "
+ " and site_code in ( select site_code from site where geo_loc in (SELECT s.GEO_LOC FROM siteitem i, site s where i.site_code = s.site_code " + " and site_code in ( select site_code from site where geo_loc in (SELECT s.GEO_LOC FROM siteitem i, site s where i.site_code = s.site_code "
+ " and i.bom_code = ? and case when i.active is null then 'Y' else i.active end = 'Y' ) )" ); + " and i.bom_code = ? and case when i.active is null then 'Y' else i.active end = 'Y' ) )");
if(trackShelfLife != null && trackShelfLife.equalsIgnoreCase("Y")) if (trackShelfLife != null
{ && trackShelfLife.equalsIgnoreCase("Y")) {
sb.append("and ( a.exp_date is null or a.exp_date >?)"); sb.append("and ( a.exp_date is null or a.exp_date >?)");
} }
pstmt1 = conn.prepareStatement(sb.toString()); pstmt1 = conn.prepareStatement(sb.toString());
pstmt1.setString(1,rs.getString(3)); pstmt1.setString(1, rs.getString(3));
pstmt1.setString(2,bomCode); pstmt1.setString(2, bomCode);
if(trackShelfLife != null && trackShelfLife.equalsIgnoreCase("Y")) if (trackShelfLife != null
{ && trackShelfLife.equalsIgnoreCase("Y")) {
pstmt1.setTimestamp(3,currDate); pstmt1.setTimestamp(3, currDate);
} }
rs1 = pstmt1.executeQuery(); rs1 = pstmt1.executeQuery();
while(rs1.next()) while (rs1.next()) {
{
thisBean.stkQty = rs1.getDouble(1); thisBean.stkQty = rs1.getDouble(1);
thisBean.allockQty = rs1.getDouble(2); thisBean.allockQty = rs1.getDouble(2);
} }
...@@ -976,33 +1158,89 @@ public String actionHandler(String actionType, String xmlString,String xmlString ...@@ -976,33 +1158,89 @@ public String actionHandler(String actionType, String xmlString,String xmlString
rs1 = null; rs1 = null;
pstmt1.close(); pstmt1.close();
pstmt1 = null; pstmt1 = null;
StringBuffer sbn = new StringBuffer(); StringBuffer sbn = new StringBuffer();
sbn.append(" select nvl(sum(a.quantity - a.alloc_qty),0) from stock a, invstat b " sbn.append(" select nvl(sum(a.quantity - a.alloc_qty),0) from stock a, invstat b "
+" where a.inv_stat = b.inv_stat and a.item_code = ? and b.available = 'N' and b.stat_type <> 'S' and (a.quantity - nvl(a.alloc_qty,0)) > 0 " + " where a.inv_stat = b.inv_stat and a.item_code = ? and b.available = 'N' and b.stat_type <> 'S' and (a.quantity - nvl(a.alloc_qty,0)) > 0 "
+ " and site_code in ( select site_code from site where geo_loc in(SELECT s.GEO_LOC FROM siteitem i, site s where i.site_code = s.site_code " + " and site_code in ( select site_code from site where geo_loc in(SELECT s.GEO_LOC FROM siteitem i, site s where i.site_code = s.site_code "
+ " and i.bom_code = ? and case when i.active is null then 'Y' else i.active end = 'Y' ))" ); + " and i.bom_code = ? and case when i.active is null then 'Y' else i.active end = 'Y' ))");
if(trackShelfLife.equalsIgnoreCase("Y")) if (trackShelfLife.equalsIgnoreCase("Y")) {
{
sbn.append("and ( a.exp_date is null or a.exp_date >?)"); sbn.append("and ( a.exp_date is null or a.exp_date >?)");
} }
pstmt1 = conn.prepareStatement(sbn.toString()); pstmt1 = conn.prepareStatement(sbn.toString());
pstmt1.setString(1,rs.getString(3)); pstmt1.setString(1, rs.getString(3));
pstmt1.setString(2,bomCode); pstmt1.setString(2, bomCode);
if(trackShelfLife.equalsIgnoreCase("Y")) if (trackShelfLife.equalsIgnoreCase("Y")) {
{ pstmt1.setTimestamp(3, currDate);
pstmt1.setTimestamp(3,currDate); }
}
rs1 = pstmt1.executeQuery(); rs1 = pstmt1.executeQuery();
if(rs1.next()) if (rs1.next()) {
{
thisBean.nonStkQty = rs1.getDouble(1); thisBean.nonStkQty = rs1.getDouble(1);
//thisBean.allockQty = rs1.getDouble(2); // thisBean.allockQty = rs1.getDouble(2);
} }
rs1.close(); rs1.close();
rs1 = null; rs1 = null;
pstmt1.close(); pstmt1.close();
pstmt1 = null; pstmt1 = null;
// Added by Dadaso pawar [MF3GSUN023]
BOMStockBean bomStockBeanObj=new BOMStockBean();
UserInfoBean userInfoL=bomStockBeanObj.getUserInfo();
String siteCodeL=userInfoL.getSiteCode();
siteCodeL=siteCodeL== null ? "" :siteCodeL.trim();
System.out.println("Site code bom----->>>["+siteCodeL+"]");
StringBuffer sbnL = new StringBuffer();
sbnL.append(" select nvl(sum(a.quantity - a.alloc_qty),0) from stock a, invstat b "
+ " where a.inv_stat = b.inv_stat and a.item_code = ? and b.available = 'N' and b.stat_type <> 'S' and (a.quantity - nvl(a.alloc_qty,0)) > 0 "
+ " and site_code = ?");
if (trackShelfLife.equalsIgnoreCase("Y")) {
sbnL.append("and ( a.exp_date is null or a.exp_date >?)");
}
pstmt1 = conn.prepareStatement(sbnL.toString());
pstmt1.setString(1, rs.getString(3));
pstmt1.setString(2, siteCodeL);
if (trackShelfLife.equalsIgnoreCase("Y")) {
pstmt1.setTimestamp(3, currDate);
}
rs1 = pstmt1.executeQuery();
if (rs1.next()) {
thisBean.nonStkQtyL = rs1.getDouble(1);
// thisBean.allockQty = rs1.getDouble(2);
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
StringBuffer sbL = new StringBuffer();
sbL.append("select nvl(sum(a.quantity - a.alloc_qty),0), nvl(sum(a.alloc_qty),0), nvl(sum(a.alloc_qty),0) from stock a, invstat b "
+ " where a.inv_stat = b.inv_stat and a.item_code = ? and b.available = 'Y' and b.plan_prod = 'Y' and b.stat_type <> 'S' and (a.quantity - nvl(a.alloc_qty,0)) > 0 "
+ " and site_code = ? ");
if (trackShelfLife != null
&& trackShelfLife.equalsIgnoreCase("Y")) {
sbL.append("and ( a.exp_date is null or a.exp_date >?)");
}
pstmt1 = conn.prepareStatement(sbL.toString());
pstmt1.setString(1, rs.getString(3));
pstmt1.setString(2, siteCodeL);
if (trackShelfLife != null
&& trackShelfLife.equalsIgnoreCase("Y")) {
pstmt1.setTimestamp(3, currDate);
}
rs1 = pstmt1.executeQuery();
while (rs1.next()) {
thisBean.stkQtyL = rs1.getDouble(1);
thisBean.allockQtyL = rs1.getDouble(2);
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
// end dadaso pawar
stkBOMList.add(thisBean); stkBOMList.add(thisBean);
} }
rs.close(); rs.close();
...@@ -1010,57 +1248,55 @@ public String actionHandler(String actionType, String xmlString,String xmlString ...@@ -1010,57 +1248,55 @@ public String actionHandler(String actionType, String xmlString,String xmlString
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
} }
} } catch (SQLException se) {
catch (SQLException se) System.out.println("Exception : BOMStockEJB : actionStock "
{ + se.getMessage());
System.out.println("Exception : BOMStockEJB : actionStock " +se.getMessage());
se.printStackTrace(); se.printStackTrace();
throw new ITMException(se); throw new ITMException(se);
} } catch (Exception e) {
catch(Exception e) System.out
{ .println("Exception : BOMStockEJB : actionStock :(Document dom)"
System.out.println("Exception : BOMStockEJB : actionStock :(Document dom)" +e.getMessage()); + e.getMessage());
e.printStackTrace(); e.printStackTrace();
throw new ITMException(e); throw new ITMException(e);
} } finally {
finally try {
{ if (conn != null) {
try{
if (conn != null)
{
conn.close(); conn.close();
conn = null; conn = null;
} }
if (pstmt != null) if (pstmt != null) {
{
pstmt.close(); pstmt.close();
pstmt = null; pstmt = null;
} }
}catch(Exception e){} } catch (Exception e) {
}
} }
return stkBOMList; return stkBOMList;
} }
class BOMStockDtlParams implements Serializable class BOMStockDtlParams implements Serializable {
{
HashMap BOMStockMap = new HashMap(); HashMap BOMStockMap = new HashMap();
String bomCode=null; String bomCode = null;
String trackShelfLife = null; String trackShelfLife = null;
String itemCode = null; String itemCode = null;
String reqType = null; String reqType = null;
String batchQtyD = null; String batchQtyD = null;
String descr = null; String descr = null;
double allockQty = 0.0; double allockQty = 0.0;
double batchQty = 0.0; double batchQty = 0.0;
double qtyPar = 0.0; double qtyPar = 0.0;
double minQty = 0.0; double minQty = 0.0;
double reqQty =0.0; double reqQty = 0.0;
double stkQty = 0.0; double stkQty = 0.0;
double nonStkQty = 0.0; double nonStkQty = 0.0;
Timestamp currDate =null; Timestamp currDate = null;
// Added by Dadaso Pawar
double stkQtyL = 0, nonStkQtyL = 0, allockQtyL = 0;
} }
// Ended by chandni shah - 21-Dec-2011 // Ended by chandni shah - 21-Dec-2011
} }
\ No newline at end of file
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