Commit 13de7abb authored by ajadhav's avatar ajadhav

copy CVS to SVN material transfer

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@177889 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 93f94f42
This source diff could not be displayed because it is too large. You can view the blob instead.
// Name of Developer : Nisar
package ibase.webitm.ejb.dis;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import org.xml.sax.InputSource;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerConfigurationException;
import java.rmi.RemoteException;
import java.util.*;
import java.util.Date;
import java.sql.*;
import java.io.*;
import org.omg.CORBA.ORB;
import org.w3c.dom.*;
import java.util.Properties;
import javax.xml.parsers.*;
import javax.ejb.*;
import javax.naming.InitialContext;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
//import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.*;
import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility;
import ibase.ejb.*;
import ibase.system.config.*;
import java.text.SimpleDateFormat;
import java.util.*;
public class CreateDistOrder
{
CommonConstants commonConstants = new CommonConstants();
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
HashMap tagChkMapForDetail1 = new HashMap();
HashMap tagChkMapForDetail2 = new HashMap();
MaterialtransferBean materialtransferobj = new MaterialtransferBean();
Connection conn = null;
String currCode = null;
String tranDate = null;
StringBuffer msgString = null;
public CreateDistOrder()
{
}
//public String createDistributionOrder(String siteCode,HashMap siteCodeSuppList,ArrayList arList,String xtraParams, Connection conn)throws RemoteException,ITMException
public String createDistributionOrder(String siteCode,Vector siteCodeSuppList,ArrayList arList,String xtraParams,String workorder, Connection conn)throws Exception,ITMException
{//TO CREATE DIST ORDER FOR EACH SUPPLIER SITE
//arList contains collection of materialtransferobject of type MaterialtransferBean
String retString = null;
String siteCodeSupp = null;
System.out.println("[CreateDistOrder] ----------createDistributionOrder() method is invocked------------");
MaterialtransferBean materialtransferobj = null;
msgString = new StringBuffer( "" );
try
{
if (conn == null)
{
ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM");
connDriver = null;
}
//Iterator iter = (siteCodeSuppList.keySet()).iterator();
for (int tCtr = 0 ; tCtr < siteCodeSuppList.size() ; tCtr++ )
{
System.out.println("[manohar] tCtr--------->[" + tCtr + "][" + siteCodeSuppList.get(tCtr) + "]");
}
//while(iter.hasNext())
for (int siteCtr =0 ; siteCtr < siteCodeSuppList.size() ; siteCtr++ )
{
//siteCodeSupp = iter.next().toString();
siteCodeSupp = (String) siteCodeSuppList.get(siteCtr);
System.out.println("[CreateDistOrder] Distribution order created for site--------->[" + siteCtr + "][" +siteCodeSupp + "]");
HashMap itemDetailMap = new HashMap();
for(int ctr = 0; ctr < arList.size(); ctr++)
{
materialtransferobj = (MaterialtransferBean)arList.get(ctr);
HashMap siteQtyMap = materialtransferobj.getSiteQtyMap();
if(siteQtyMap.containsKey(siteCodeSupp))
{
itemDetailMap.put(materialtransferobj.getItemCode(),siteQtyMap.get(siteCodeSupp));
System.out.println("Item [" + materialtransferobj.getItemCode() + "]["+ siteQtyMap.get(siteCodeSupp) + "]");
//break;
}
}//end of for
retString = createDistributionOrder(siteCode,siteCodeSupp,itemDetailMap,conn,workorder,xtraParams);
if (retString == null || retString.trim().length() ==0 || retString.indexOf("Success") > -1 )
{
System.out.println("Distribution order Generated Successfully");
}
else
{
System.out.println("Distribution order NOT Generated");
retString="ERROR";
}
}//end of while(iter.hasNext())
// Changes made to show in message which distribution order nos are generated.--- start
retString = retString + msgString.toString();
// Changes made to show in message which distribution order nos are generated.--- end
}
catch(Exception e)
{
e.printStackTrace();
retString="ERROR";
//throw new ITMException(e);
}
finally
{
try
{
if (tagChkMapForDetail1 != null)
{
tagChkMapForDetail1 = null;
}
if (tagChkMapForDetail2 != null)
{
tagChkMapForDetail2 = null;
}
}
catch(Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
}
return retString;
}
public String createDistributionOrder(String siteCode,String siteCodeSupp,HashMap hmap,Connection conn,String workorder, String xtraParams)throws RemoteException,ITMException
{
StringBuffer xmlBuff = new StringBuffer();
String fileName = null;
String xmlString = null,retString = null,transMode = null;
String saleOrder = "",taxEnv= "",taxChap="",taxClass="",itemCode = "",autoReceipt ="";
String sundryType = "",sundryCode = "",orderType = "",status = "",distRoute="",priceList = "";
String descr = "",unit="",sql = null,locCodeGit ="",locCodeGitbf ="",avaliableYN ="";
double demandQty= 0,supplyQty = 0,balQty = 0;
double rate = 0;
PreparedStatement pstmt = null;
ResultSet rs = null;
try
{
System.out.println("-------------------------createDistributionOrder() method called-----------------------------");
//SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
//tranDate = sdf.format(new Timestamp(System.currentTimeMillis()).toString());
tranDate = getCurrdateAppFormat() ;
fileName = commonConstants.JBOSSHOME+"\\resource\\MATERIAL_TRANSFER_TEMPLATE\\dist_order.xml";
DocumentBuilder documentBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder();
Document document = documentBuilder.parse(fileName);
retString = setToCheckTagExistance(document,"1");//this method is used to check default value is defined for field or not for detail1
retString = setToCheckTagExistance(document,"2");//this method is used to check default value is defined for field or not for detail2
System.out.println("tagChkMapForDetail1..........."+tagChkMapForDetail1);
if("ERROR".equals(retString))
{
return retString;
}
xmlBuff.append("<?xml version='1.0' encoding='ISO-8859-1'?>\n");
xmlBuff.append("<DocumentRoot>");
xmlBuff.append("<description>").append("Datawindow Root").append("</description>");
xmlBuff.append("<group0>");
xmlBuff.append("<description>").append("Group0 description").append("</description>");
xmlBuff.append("<Header0>");
xmlBuff.append("<objName><![CDATA[").append("dist_order").append("]]></objName>");
xmlBuff.append("<pageContext><![CDATA[").append("1").append("]]></pageContext>");
xmlBuff.append("<objContext><![CDATA[").append("1").append("]]></objContext>");
xmlBuff.append("<editFlag><![CDATA[").append("A").append("]]></editFlag>");
xmlBuff.append("<focusedColumn><![CDATA[").append("").append("]]></focusedColumn>");
xmlBuff.append("<action><![CDATA[").append("SAVE").append("]]></action>");
xmlBuff.append("<elementName><![CDATA[").append("").append("]]></elementName>");
xmlBuff.append("<keyValue><![CDATA[").append("1").append("]]></keyValue>");
xmlBuff.append("<taxKeyValue><![CDATA[").append("").append("]]></taxKeyValue>");
xmlBuff.append("<saveLevel><![CDATA[").append("1").append("]]></saveLevel>");
xmlBuff.append("<forcedSave><![CDATA[").append(true).append("]]></forcedSave>");
xmlBuff.append("<taxInFocus><![CDATA[").append(false).append("]]></taxInFocus>");
xmlBuff.append("<description>").append("Header0 members").append("</description>");
orderType = (String)tagChkMapForDetail1.get("order_type");
sql = "select loc_code__git,loc_code__gitbf,AVALIABLE_YN ,AUTO_RECEIPT from distorder_type where tran_type = '"+orderType+"' ";
//System.out.println("sql ------------------"+sql);
//pstmt = new BasePreparedStatement(conn,sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,orderType);
rs = pstmt.executeQuery();
if(rs.next())
{
locCodeGit = rs.getString("loc_code__git")==null?"":rs.getString("loc_code__git").trim();
locCodeGitbf = rs.getString("loc_code__gitbf")==null?"":rs.getString("loc_code__gitbf").trim();
avaliableYN = rs.getString("AVALIABLE_YN")==null?"N":rs.getString("AVALIABLE_YN").trim();
autoReceipt = rs.getString("AUTO_RECEIPT")==null?"N":rs.getString("AUTO_RECEIPT").trim();
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
/////////////////////////////////////////////////////////////
// 13/05/08 manoharan to get curr_code from site
sql = "select a.curr_code from finent a, site b where a.fin_entity = b.fin_entity and b.site_code = '"+siteCodeSupp+"' ";
//System.out.println("sql ------------------"+sql);
//pstmt = new BasePreparedStatement(conn,sql);
pstmt= conn.prepareStatement(sql);
// pstmt.setString(1,siteCodeSupp);
rs = pstmt.executeQuery();
if(rs.next())
{
this.currCode = rs.getString(1);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
/////////////////////////////////////////////////////////////
orderType = orderType == null ? "" :orderType;
xmlBuff.append("<Detail1 dbID=\"\" domID=\"1\" objName=\"dist_order\" objContext=\"1\">");
xmlBuff.append("<attribute selected=\"N\" updateFlag=\"A\" status=\"N\" pkNames=\"\"/>");
xmlBuff.append("<dist_order/>");
xmlBuff.append("<order_date><![CDATA["+tranDate+"]]></order_date>");
xmlBuff.append("<site_code__ship><![CDATA[").append((tagChkMapForDetail1.containsKey("site_code__ship")?tagChkMapForDetail1.get("site_code__ship"):siteCodeSupp)).append("]]></site_code__ship>");
xmlBuff.append("<site_code__dlv><![CDATA[").append((tagChkMapForDetail1.containsKey("site_code__dlv")?tagChkMapForDetail1.get("site_code__dlv"):siteCode)).append("]]></site_code__dlv>");
xmlBuff.append("<ship_date><![CDATA["+tranDate+"]]></ship_date>");
xmlBuff.append("<due_date><![CDATA["+tranDate+"]]></due_date>");
xmlBuff.append("<remarks/>");
xmlBuff.append("<dist_route><![CDATA[").append((tagChkMapForDetail1.containsKey("dist_route")?tagChkMapForDetail1.get("dist_route"):distRoute)).append("]]></dist_route>");
xmlBuff.append("<price_list><![CDATA[").append((tagChkMapForDetail1.containsKey("price_list")?tagChkMapForDetail1.get("price_list"):priceList)).append("]]></price_list>");
xmlBuff.append("<confirmed><![CDATA[N]]></confirmed>");
xmlBuff.append("<chg_user><![CDATA[BASE ]]></chg_user>");
xmlBuff.append("<chg_term><![CDATA[07BASE221 ]]></chg_term>");
xmlBuff.append("<target_wgt><![CDATA[0]]></target_wgt>");
xmlBuff.append("<target_vol><![CDATA[0]]></target_vol>");
xmlBuff.append("<loc_code__git><![CDATA[").append((tagChkMapForDetail1.containsKey("loc_code__git")?tagChkMapForDetail1.get("loc_code__git"):locCodeGit)).append("]]></loc_code__git>");
//xmlBuff.append("<loc_code__git/>");
xmlBuff.append("<chg_date><![CDATA["+tranDate+"]]></chg_date>");
xmlBuff.append("<site_from_descr/>");
xmlBuff.append("<site_to_descr/>");
xmlBuff.append("<location_descr/>");
xmlBuff.append("<conf_date><![CDATA["+tranDate+"]]></conf_date>");
xmlBuff.append("<site_code><![CDATA["+siteCode+"]]></site_code>");
xmlBuff.append("<status><![CDATA[").append((tagChkMapForDetail1.containsKey("status")?tagChkMapForDetail1.get("status"):priceList)).append("]]></status>");
xmlBuff.append("<sale_order><![CDATA[").append((tagChkMapForDetail1.containsKey("sale_order")?tagChkMapForDetail1.get("sale_order"):saleOrder)).append("]]></sale_order>");
xmlBuff.append("<remarks1/>");
xmlBuff.append("<remarks2/>");
xmlBuff.append("<order_type><![CDATA[").append((tagChkMapForDetail1.containsKey("order_type")?tagChkMapForDetail1.get("order_type"):orderType)).append("]]></order_type>");
xmlBuff.append("<a_site_add1/>");
xmlBuff.append("<a_site_add2/>");
xmlBuff.append("<a_site_city/>");
xmlBuff.append("<a_site_pin/>");
xmlBuff.append("<a_site_state_code/>");
xmlBuff.append("<b_site_add1/>");
xmlBuff.append("<b_site_add2/>");
xmlBuff.append("<b_site_city/>");
xmlBuff.append("<b_site_pin/>");
xmlBuff.append("<b_site_state_code/>");
xmlBuff.append("<loc_code__cons/>");
xmlBuff.append("<sundry_type><![CDATA[").append((tagChkMapForDetail1.containsKey("sundry_type")?tagChkMapForDetail1.get("sundry_type"):sundryType)).append("]]></sundry_type>");
xmlBuff.append("<sundry_code><![CDATA[").append((tagChkMapForDetail1.containsKey("sundry_code")?tagChkMapForDetail1.get("sundry_code"):sundryCode)).append("]]></sundry_code>");
//xmlBuff.append("<auto_receipt><![CDATA[Y]]></auto_receipt>");
xmlBuff.append("<auto_receipt><![CDATA[").append(autoReceipt).append("]]></auto_receipt>");
xmlBuff.append("<tran_type><![CDATA[IT]]></tran_type>");
xmlBuff.append("<curr_code><![CDATA[" + this.currCode + "]]></curr_code>");
xmlBuff.append("<exch_rate><![CDATA[1]]></exch_rate>");
xmlBuff.append("<sales_pers><![CDATA[]]></sales_pers>");
xmlBuff.append("<sales_pers_sp_name><![CDATA[]]></sales_pers_sp_name>");
xmlBuff.append("<loc_code__gitbf><![CDATA[").append((tagChkMapForDetail1.containsKey("loc_code__gitbf")?tagChkMapForDetail1.get("loc_code__gitbf"):locCodeGitbf)).append("]]></loc_code__gitbf>");
//xmlBuff.append("<loc_code__gitbf><![CDATA[]]></loc_code__gitbf>");
xmlBuff.append("<cust_code__dlv><![CDATA[]]></cust_code__dlv>");
xmlBuff.append("<dlv_to></dlv_to>");
xmlBuff.append("<dlv_add1><![CDATA[]]></dlv_add1>");
xmlBuff.append("<dlv_add2><![CDATA[]]></dlv_add2>");
xmlBuff.append("<dlv_add3><![CDATA[]]></dlv_add3>");
xmlBuff.append("<dlv_city><![CDATA[]]></dlv_city>");
xmlBuff.append("<state_code__dlv><![CDATA[]]></state_code__dlv>");
xmlBuff.append("<count_code__dlv><![CDATA[]]></count_code__dlv>");
xmlBuff.append("<dlv_pin><![CDATA[]]></dlv_pin>");
xmlBuff.append("<stan_code><![CDATA[]]></stan_code>");
xmlBuff.append("<tel1__dlv><![CDATA[]]></tel1__dlv>");
xmlBuff.append("<tel2__dlv><![CDATA[]]></tel2__dlv>");
xmlBuff.append("<tel3__dlv><![CDATA[]]></tel3__dlv>");
xmlBuff.append("<fax__dlv><![CDATA[]]></fax__dlv>");
xmlBuff.append("<avaliable_yn><![CDATA[").append(avaliableYN).append("]]></avaliable_yn>");
//xmlBuff.append("<avaliable_yn><![CDATA[Y]]></avaliable_yn>");
xmlBuff.append("<purc_order><![CDATA[]]></purc_order>");
xmlBuff.append("<tot_amt><![CDATA[0]]></tot_amt>");
xmlBuff.append("<tax_amt><![CDATA[0]]></tax_amt>");
xmlBuff.append("<net_amt><![CDATA[0]]></net_amt>");
xmlBuff.append("<tran_ser><![CDATA[]]></tran_ser>");
xmlBuff.append("<price_list__clg><![CDATA[]]></price_list__clg>");
xmlBuff.append("<loc><![CDATA[ ]]></loc>");
xmlBuff.append("<sundry_name><![CDATA[]]></sundry_name>");
xmlBuff.append("<proj_code><![CDATA[]]></proj_code>");
xmlBuff.append("<descr/>");
xmlBuff.append("<policy_no><![CDATA[]]></policy_no>");
xmlBuff.append("<loc_code__damaged><![CDATA[]]></loc_code__damaged>");
xmlBuff.append("<site_code__bil><![CDATA[]]></site_code__bil>");
xmlBuff.append("<d_site_descr><![CDATA[]]></d_site_descr>");
xmlBuff.append("<d_site_add1><![CDATA[]]></d_site_add1>");
xmlBuff.append("<d_site_add2><![CDATA[]]></d_site_add2>");
xmlBuff.append("<d_site_city><![CDATA[]]></d_site_city>");
xmlBuff.append("<d_site_pin><![CDATA[]]></d_site_pin>");
xmlBuff.append("<d_site_state_code><![CDATA[]]></d_site_state_code>");
xmlBuff.append("<trans_mode><![CDATA[").append((tagChkMapForDetail1.containsKey("trans_mode")?tagChkMapForDetail1.get("trans_mode"):transMode)).append("]]></trans_mode>");
Set sethdr =tagChkMapForDetail1.entrySet();
Iterator iterator = sethdr.iterator() ;
while(iterator.hasNext())
{
Map.Entry me = (Map.Entry)iterator.next();
xmlBuff.append("<"+me.getKey()+"><![CDATA["+me.getValue()+"]]></"+me.getKey()+">");
}
xmlBuff.append("</Detail1>");
Iterator iter = (hmap.keySet()).iterator();
int ctr = 0;
while(iter.hasNext())
{
ctr ++;
itemCode = iter.next().toString();
balQty = Double.parseDouble(hmap.get(itemCode).toString());
System.out.println("balQty......................."+balQty);
sql="SELECT ITEM_CODE , DESCR, UNIT , SALE_RATE , TAX_CHAP , TAX_CLASS FROM ITEM where item_code= '"+itemCode+"' ";
//System.out.println("========sql=>"+sql);
//pstmt = new BasePreparedStatement(conn,sql);
pstmt= conn.prepareStatement(sql);
//pstmt.setString(1,itemCode);
rs = pstmt.executeQuery();
if(rs.next())
{
descr = rs.getString("DESCR")==null?"":rs.getString("DESCR").trim();
unit = rs.getString("UNIT")==null?"":rs.getString("UNIT");
rate = rs.getDouble("SALE_RATE");
taxChap = rs.getString("TAX_CHAP")==null?"":rs.getString("TAX_CHAP");
taxClass = rs.getString("TAX_CLASS")==null?"":rs.getString("TAX_CLASS");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
xmlBuff.append("<Detail2 dbID='' domID=\"1\" objName=\"dist_order\" objContext=\"2\">");
xmlBuff.append("<attribute pkNames=\"\" selected=\"N\" updateFlag=\"A\" status=\"N\" />");
xmlBuff.append("<dist_order/>");
xmlBuff.append("<line_no>"+(ctr)+"</line_no>");
xmlBuff.append("<tran_id__demand><![CDATA[]]></tran_id__demand>");
xmlBuff.append("<item_code><![CDATA[").append((tagChkMapForDetail2.containsKey("item_code")?tagChkMapForDetail1.get("item_code"):itemCode)).append("]]></item_code>");
xmlBuff.append("<qty_order><![CDATA["+balQty+"]]></qty_order>");
xmlBuff.append("<qty_confirm><![CDATA["+balQty+"]]></qty_confirm>");
xmlBuff.append("<qty_received><![CDATA["+0+"]]></qty_received>");
xmlBuff.append("<qty_shipped><![CDATA["+0+"]]></qty_shipped>");
xmlBuff.append("<due_date><![CDATA["+tranDate+"]]></due_date>");
xmlBuff.append("<tax_class><![CDATA[").append((tagChkMapForDetail2.containsKey("tax_class")?tagChkMapForDetail1.get("tax_class"):taxClass)).append("]]></tax_class>");
xmlBuff.append("<tax_chap><![CDATA[").append((tagChkMapForDetail2.containsKey("tax_chap")?tagChkMapForDetail1.get("tax_chap"):taxChap)).append("]]></tax_chap>");
xmlBuff.append("<tax_env><![CDATA[").append((tagChkMapForDetail2.containsKey("tax_env")?tagChkMapForDetail1.get("tax_env"):taxEnv)).append("]]></tax_env>");
xmlBuff.append("<unit><![CDATA["+unit+"]]></unit>");
xmlBuff.append("<item_descr><![CDATA["+descr+"]]></item_descr>");
xmlBuff.append("<sale_order><![CDATA[").append((tagChkMapForDetail2.containsKey("sale_order")?tagChkMapForDetail1.get("sale_order"):saleOrder)).append("]]></sale_order>");
xmlBuff.append("<line_no__sord/>");
xmlBuff.append("<rate><![CDATA["+rate+"]]></rate>");
xmlBuff.append("<qty_return><![CDATA[0]]></qty_return>");
xmlBuff.append("<rate__clg><![CDATA[0]]></rate__clg>");
xmlBuff.append("<discount><![CDATA[0]]></discount>");
xmlBuff.append("<remarks><![CDATA[]]></remarks>");
xmlBuff.append("<tot_amt><![CDATA[0]]></tot_amt>");
xmlBuff.append("<tax_amt><![CDATA[0]]></tax_amt>");
xmlBuff.append("<net_amt><![CDATA[0]]></net_amt>");
xmlBuff.append("<rate__clg><![CDATA[0]]></rate__clg>");
xmlBuff.append("<qty_alloc><![CDATA[0]]></qty_alloc>");
xmlBuff.append("<over_ship_perc><![CDATA[0]]></over_ship_perc>");
//xmlBuff.append("<qty_details><![CDATA[]]></qty_details>");
xmlBuff.append("<unit__alt><![CDATA["+unit+"]]></unit__alt>");
xmlBuff.append("<conv__qty__alt><![CDATA[0]]></conv__qty__alt>");
xmlBuff.append("<qty_order__alt><![CDATA[0]]></qty_order__alt>");
xmlBuff.append("<ship_date><![CDATA["+tranDate+"]]></ship_date>");
xmlBuff.append("<work_order><![CDATA["+workorder+"]]></work_order>");
xmlBuff.append("<pack_instr><![CDATA[]]></pack_instr>");
iterator = null;
Set setdet =tagChkMapForDetail2.entrySet();
iterator = setdet.iterator() ;
while(iterator.hasNext())
{
Map.Entry medet = (Map.Entry)iterator.next();
xmlBuff.append("<"+medet.getKey()+"><![CDATA["+( medet.getValue() == null ? "" : medet.getValue() )+"]]></"+medet.getKey()+">");
}
xmlBuff.append("</Detail2>");
// Changes done due to multiple ditribution orders creation on pressing of
//Process button multiple times.(transfer_status column has been added in workorder table)
//START
sql = "update workorder set transfer_status = 'Y' where work_order = ? ";
pstmt= conn.prepareStatement(sql);
pstmt.setString(1, workorder);
int wrkOrdupd =0;
wrkOrdupd = pstmt.executeUpdate();
pstmt.close();
pstmt = null;
// Changes done due to multiple ditribution orders creation on pressing of
//Process button multiple times.(transfer_status column has been added in workorder table)
//END
}//end of while loop
xmlBuff.append("</Header0>");
xmlBuff.append("</group0>");
xmlBuff.append("</DocumentRoot>");
xmlString = xmlBuff.toString();
retString = saveData(siteCode,xmlString,conn);
if (retString.indexOf("Success") > -1)
{
int d =retString.indexOf("<TranID>");
int f = retString.indexOf("</TranID>");
String distOrder = retString.substring(d+8,f);
System.out.println("distOrder......... "+distOrder);
String empCodeAprv = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginEmpCode");
sql = "update distorder set confirmed = 'Y',conf_date = ? ,emp_code__aprv = ? where dist_order = '"+distOrder+"' ";
//System.out.println("SQL : "+sql);
//pstmt = new BasePreparedStatement(conn,sql);
pstmt= conn.prepareStatement(sql);
pstmt.setTimestamp(1,new Timestamp(System.currentTimeMillis()));
pstmt.setString(2,empCodeAprv);
// pstmt.setString(3,distOrder);
int upd =0;
upd = pstmt.executeUpdate();
pstmt.close();
pstmt = null;
System.out.println("distorder Confirm :: "+upd);
System.out.println("Distribution order Generated Successfully");
// Changes made to show in message which distribution order nos are generated.--- start
msgString.append( "Distribution order No -->"+distOrder+" For Workorder No -->"+workorder+"\n" );
// Changes made to show in message which distribution order nos are generated.--- end
retString = (new CreateDistIssue()).createDistIssue(siteCode,retString,xtraParams,conn);
}
else
{
System.out.println("Distribution order not Generated ..... ");
//throw new Exception ("Distribution order not Generated ");
}
}
catch(Exception e)
{
e.printStackTrace();
retString="ERROR";
//throw new ITMException(e);
}
System.out.println("retString create dist order :: "+retString);
return retString;
}
public String setToCheckTagExistance(Document dom,String formNo)throws RemoteException,ITMException
{
int ctr = 0;
String retString=null;
String childNodeName = null,columnValue=null;
NodeList parentNodeList = null,childNodeList = null;
Node parentNode = null,childNode = null;
try
{
parentNodeList = dom.getElementsByTagName("Detail"+formNo);
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
ctr = 0;
int childListLength = childNodeList.getLength();
do
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(!childNodeName.equals("#text"))
{
if("1".equals(formNo))
{
if (childNode.getFirstChild() != null)
{
columnValue=childNode.getFirstChild().getNodeValue();
}
tagChkMapForDetail1.put(childNodeName,columnValue);
}
else if("2".equals(formNo))
{
if (childNode.getFirstChild() != null)
{
columnValue=childNode.getFirstChild().getNodeValue();
}
tagChkMapForDetail2.put(childNodeName,columnValue);
}
}
ctr++;
}while(ctr < childListLength);
}
catch(Exception e)
{
retString="ERROR";
e.printStackTrace();
throw new ITMException(e);
}
return retString;
}
public String saveData(String siteCode,String xmlString, Connection conn) throws ITMException
{
System.out.println("saving data...........");
InitialContext ctx = null;
String retString = null;
MasterStatefulLocal masterStateful = null; // for ejb3
try
{
AppConnectParm appConnect = new AppConnectParm();
ctx = new InitialContext(appConnect.getProperty());
masterStateful = (MasterStatefulLocal)ctx.lookup("ibase/MasterStatefulEJB/local");
// MasterStateful masterStateful = masterStatefulHome.create();
String [] authencate = new String[2];
authencate[0] = "";
authencate[1] = "";
System.out.println("xmlString :::: " + xmlString);
retString = masterStateful.processRequest(authencate, siteCode, true, xmlString,true,conn);
}
catch(ITMException itme)
{
System.out.println("ITMException :CreateDistOrder :saveData :==>");
throw itme;
}
catch(Exception e)
{
System.out.println("Exception :CreateDistOrder :saveData :==>");
throw new ITMException(e);
}
return retString;
}
private String createDistIssue()
{
StringBuffer xmlBuff = new StringBuffer();
try
{
xmlBuff.append("<?xml version='1.0' encoding='ISO-8859-1'?>\n");
xmlBuff.append("<DocumentRoot>");
xmlBuff.append("<description>").append("Datawindow Root").append("</description>");
xmlBuff.append("<group0>");
xmlBuff.append("<description>").append("Group0 description").append("</description>");
xmlBuff.append("<Header0>");
xmlBuff.append("<objName><![CDATA[").append("dist_issue").append("]]></objName>");
xmlBuff.append("<pageContext><![CDATA[").append("1").append("]]></pageContext>");
xmlBuff.append("<objContext><![CDATA[").append("1").append("]]></objContext>");
xmlBuff.append("<editFlag><![CDATA[").append("A").append("]]></editFlag>");
xmlBuff.append("<focusedColumn><![CDATA[").append("").append("]]></focusedColumn>");
xmlBuff.append("<action><![CDATA[").append("SAVE").append("]]></action>");
xmlBuff.append("<elementName><![CDATA[").append("").append("]]></elementName>");
xmlBuff.append("<keyValue><![CDATA[").append("1").append("]]></keyValue>");
xmlBuff.append("<taxKeyValue><![CDATA[").append("").append("]]></taxKeyValue>");
xmlBuff.append("<saveLevel><![CDATA[").append("1").append("]]></saveLevel>");
xmlBuff.append("<forcedSave><![CDATA[").append(true).append("]]></forcedSave>");
xmlBuff.append("<taxInFocus><![CDATA[").append(false).append("]]></taxInFocus>");
xmlBuff.append("<description>").append("Header0 members").append("</description>");
xmlBuff.append("<Detail1 dbID=\"\" domID=\"1\" objName=\"dist_issue\" objContext=\"1\">");
xmlBuff.append("<attribute selected=\"N\" updateFlag=\"A\" status=\"N\" pkNames=\"\"/>");
xmlBuff.append("<tran_id/>");
xmlBuff.append("<tran_date><![CDATA[12/03/08]]></tran_date>");
xmlBuff.append("<eff_date><![CDATA[12/03/08]]></eff_date>");
xmlBuff.append("<dist_order><![CDATA[000623 ]]></dist_order>");
xmlBuff.append("<site_code><![CDATA[SP612]]></site_code>");
xmlBuff.append("<site_code__dlv><![CDATA[SP612]]></site_code__dlv>");
xmlBuff.append("<dist_route><![CDATA[]]></dist_route>");
xmlBuff.append("<tran_code><![CDATA[]]></tran_code>");
xmlBuff.append("<lr_no><![CDATA[]]></lr_no>");
xmlBuff.append("<lr_date><![CDATA[]]></lr_date>");
xmlBuff.append("<lorry_no><![CDATA[]]></lorry_no>");
xmlBuff.append("<gross_weight><![CDATA[0]]></gross_weight>");
xmlBuff.append("<tare_weight><![CDATA[0]]></tare_weight>");
xmlBuff.append("<net_weight><![CDATA[0]]></net_weight>");
xmlBuff.append("<frt_amt><![CDATA[0]]></frt_amt>");
xmlBuff.append("<amount><![CDATA[0]]></amount>");
xmlBuff.append("<tax_amt><![CDATA[0]]></tax_amt>");
xmlBuff.append("<net_amt><![CDATA[0]]></net_amt>");
xmlBuff.append("<remarks><![CDATA[]]></remarks>");
xmlBuff.append("<frt_type><![CDATA[T]]></frt_type>");
xmlBuff.append("<chg_user><![CDATA[BASE ]]></chg_user>");
xmlBuff.append("<chg_term><![CDATA[01BASE228 ]]></chg_term>");
xmlBuff.append("<curr_code><![CDATA[" + this.currCode + "]]></curr_code>");
xmlBuff.append("<chg_date><![CDATA[12/03/08 15:48:40]]></chg_date>");
xmlBuff.append("<site_descr><![CDATA[TEST INDUSTRIES ]]></site_descr>");
xmlBuff.append("<site_to_descr><![CDATA[TEST INDUSTRIES ]]></site_to_descr>");
xmlBuff.append("<location_descr><![CDATA[GOODS IN TRANSIT]]></location_descr>");
xmlBuff.append("<tran_name><![CDATA[]]></tran_name>");
xmlBuff.append("<currency_descr><![CDATA[INDIAN RUPEE]]></currency_descr>");
xmlBuff.append("<confirmed><![CDATA[N]]></confirmed>");
xmlBuff.append("<loc_code__git><![CDATA[INTR ]]></loc_code__git>");
xmlBuff.append("<conf_date><![CDATA[]]></conf_date>");
xmlBuff.append("<no_art><![CDATA[0]]></no_art>");
xmlBuff.append("<trans_mode><![CDATA[D]]></trans_mode>");
xmlBuff.append("<gp_no><![CDATA[]]></gp_no>");
xmlBuff.append("<gp_date><![CDATA[12/03/08 15:43:38]]></gp_date>");
xmlBuff.append("<conf_passwd><![CDATA[2413]]></conf_passwd>");
xmlBuff.append("<order_type><![CDATA[F ]]></order_type>");
xmlBuff.append("<gp_ser><![CDATA[I ]]></gp_ser>");
xmlBuff.append("<ref_no><![CDATA[]]></ref_no>");
xmlBuff.append("<ref_date><![CDATA[]]></ref_date>");
xmlBuff.append("<available_yn><![CDATA[N]]></available_yn>");
xmlBuff.append("<site_add1><![CDATA[E-200, FIRST FLOOR,]]></site_add1>");
xmlBuff.append("<site_add2><![CDATA[TRANSPORT NAGAR,]]></site_add2>");
xmlBuff.append("<site_city><![CDATA[LUCKNOW]]></site_city>");
xmlBuff.append("<site_pin><![CDATA[ ]]></site_pin>");
xmlBuff.append("<site_state_code><![CDATA[UP ]]></site_state_code>");
xmlBuff.append("<exch_rate><![CDATA[1]]></exch_rate>");
xmlBuff.append("<tran_type><![CDATA[IT]]></tran_type>");
xmlBuff.append("<emp_code__aprv><![CDATA[]]></emp_code__aprv>");
xmlBuff.append("<discount><![CDATA[]]></discount>");
xmlBuff.append("<permit_no><![CDATA[]]></permit_no>");
xmlBuff.append("<shipment_id><![CDATA[]]></shipment_id>");
xmlBuff.append("<curr_code__frt><![CDATA[" + this.currCode + "]]></curr_code__frt>");
xmlBuff.append("<exch_rate__frt><![CDATA[]]></exch_rate__frt>");
xmlBuff.append("<currency_descr__frt><![CDATA[]]></currency_descr__frt>");
xmlBuff.append("<rd_permit_no><![CDATA[]]></rd_permit_no>");
xmlBuff.append("<dc_no><![CDATA[]]></dc_no>");
xmlBuff.append("<tran_ser><![CDATA[D-ISS ]]></tran_ser>");
xmlBuff.append("<part_qty><![CDATA[A]]></part_qty>");
xmlBuff.append("<sundry_details><![CDATA[]]></sundry_details>");
xmlBuff.append("<sundry_name><![CDATA[]]></sundry_name>");
xmlBuff.append("<proj_code><![CDATA[]]></proj_code>");
xmlBuff.append("<site_tele1><![CDATA[]]></site_tele1>");
xmlBuff.append("<site_tele2><![CDATA[]]></site_tele2>");
xmlBuff.append("<site_tele3><![CDATA[]]></site_tele3>");
xmlBuff.append("<site_code__bil><![CDATA[]]></site_code__bil>");
xmlBuff.append("<site_descr_bill><![CDATA[]]></site_descr_bill>");
xmlBuff.append("<site_add1_bill><![CDATA[]]></site_add1_bill>");
xmlBuff.append("<site_add2_bill><![CDATA[]]></site_add2_bill>");
xmlBuff.append("<site_city_bill><![CDATA[]]></site_city_bill>");
xmlBuff.append("<site_pin_bill><![CDATA[]]></site_pin_bill>");
xmlBuff.append("<site_state_code_bill><![CDATA[]]></site_state_code_bill>");
xmlBuff.append("<pallet_wt><![CDATA[]]></pallet_wt>");
xmlBuff.append("<auto_receipt><![CDATA[N]]></auto_receipt>");
xmlBuff.append("</Detail1>");
xmlBuff.append("</Header0>");
xmlBuff.append("</group0>");
xmlBuff.append("</DocumentRoot>");
}
catch(Exception e)
{
e.printStackTrace();
}
return "";
}
private void createDistReceipt()
{
StringBuffer xmlBuff = new StringBuffer();
try
{
xmlBuff.append("<?xml version='1.0' encoding='ISO-8859-1'?>\n");
xmlBuff.append("<DocumentRoot>");
xmlBuff.append("<description>").append("Datawindow Root").append("</description>");
xmlBuff.append("<group0>");
xmlBuff.append("<description>").append("Group0 description").append("</description>");
xmlBuff.append("<Header0>");
xmlBuff.append("<objName><![CDATA[").append("dist_issue").append("]]></objName>");
xmlBuff.append("<pageContext><![CDATA[").append("1").append("]]></pageContext>");
xmlBuff.append("<objContext><![CDATA[").append("1").append("]]></objContext>");
xmlBuff.append("<editFlag><![CDATA[").append("A").append("]]></editFlag>");
xmlBuff.append("<focusedColumn><![CDATA[").append("").append("]]></focusedColumn>");
xmlBuff.append("<action><![CDATA[").append("SAVE").append("]]></action>");
xmlBuff.append("<elementName><![CDATA[").append("").append("]]></elementName>");
xmlBuff.append("<keyValue><![CDATA[").append("1").append("]]></keyValue>");
xmlBuff.append("<taxKeyValue><![CDATA[").append("").append("]]></taxKeyValue>");
xmlBuff.append("<saveLevel><![CDATA[").append("1").append("]]></saveLevel>");
xmlBuff.append("<forcedSave><![CDATA[").append(true).append("]]></forcedSave>");
xmlBuff.append("<taxInFocus><![CDATA[").append(false).append("]]></taxInFocus>");
xmlBuff.append("<description>").append("Header0 members").append("</description>");
xmlBuff.append("<Detail1 dbID=\"\" domID=\"1\" objName=\"dist_receipt\" objContext=\"1\">");
xmlBuff.append("<attribute selected=\"N\" updateFlag=\"A\" status=\"N\" pkNames=\"\"/>");
xmlBuff.append("<tran_id/>");
xmlBuff.append("<tran_date><![CDATA[27/10/06]]></tran_date>");
xmlBuff.append("<eff_date><![CDATA[27/10/06]]></eff_date>");
xmlBuff.append("<dist_order><![CDATA[000026 ]]></dist_order>");
xmlBuff.append("<tran_id__iss><![CDATA[000000031 ]]></tran_id__iss>");
xmlBuff.append("<dist_route><![CDATA[]]></dist_route>");
xmlBuff.append("<site_code><![CDATA[SP612]]></site_code>");
xmlBuff.append("<site_code__ship><![CDATA[SP612]]></site_code__ship>");
xmlBuff.append("<tran_code><![CDATA[]]></tran_code>");
xmlBuff.append("<lr_no><![CDATA[]]></lr_no>");
xmlBuff.append("<lr_date><![CDATA[]]></lr_date>");
xmlBuff.append("<lorry_no><![CDATA[]]></lorry_no>");
xmlBuff.append("<gross_weight><![CDATA[0]]></gross_weight>");
xmlBuff.append("<tare_weight><![CDATA[0]]></tare_weight>");
xmlBuff.append("<net_weight><![CDATA[0]]></net_weight>");
xmlBuff.append("<frt_amt><![CDATA[0]]></frt_amt>");
xmlBuff.append("<amount><![CDATA[62.94]]></amount>");
xmlBuff.append("<tax_amt><![CDATA[5.715]]></tax_amt>");
xmlBuff.append("<net_amt><![CDATA[68.655]]></net_amt>");
xmlBuff.append("<remarks><![CDATA[]]></remarks>");
xmlBuff.append("<frt_type><![CDATA[T]]></frt_type>");
xmlBuff.append("<chg_user><![CDATA[BASE ]]></chg_user>");
xmlBuff.append("<chg_term><![CDATA[07BASE227 ]]></chg_term>");
xmlBuff.append("<curr_code><![CDATA[" + this.currCode + "]]></curr_code>");
xmlBuff.append("<chg_date><![CDATA[10/01/07 17:12:28]]></chg_date>");
xmlBuff.append("<site_descr><![CDATA[TEST INDUSTRIES ]]></site_descr>");
xmlBuff.append("<site_to_descr><![CDATA[TEST INDUSTRIES ]]></site_to_descr>");
xmlBuff.append("<location_descr><![CDATA[GOODS IN TRANSIT]]></location_descr>");
xmlBuff.append("<tran_name><![CDATA[]]></tran_name>");
xmlBuff.append("<currency_descr><![CDATA[INDIAN RUPEE]]></currency_descr>");
xmlBuff.append("<confirmed><![CDATA[N]]></confirmed>");
xmlBuff.append("<loc_code__git><![CDATA[INTR ]]></loc_code__git>");
xmlBuff.append("<volume><![CDATA[0]]></volume>");
xmlBuff.append("<conf_date><![CDATA[]]></conf_date>");
xmlBuff.append("<no_art><![CDATA[0]]></no_art>");
xmlBuff.append("<trans_mode><![CDATA[R]]></trans_mode>");
xmlBuff.append("<conf_passwd><![CDATA[]]></conf_passwd>");
xmlBuff.append("<order_type><![CDATA[F ]]></order_type>");
xmlBuff.append("<exch_rate><![CDATA[1]]></exch_rate>");
xmlBuff.append("<tran_type><![CDATA[IT]]></tran_type>");
xmlBuff.append("<emp_code__aprv><![CDATA[]]></emp_code__aprv>");
xmlBuff.append("<qc_reqd><![CDATA[N]]></qc_reqd>");
xmlBuff.append("<gp_no><![CDATA[00002]]></gp_no>");
xmlBuff.append("<gp_date><![CDATA[27/10/06]]></gp_date>");
xmlBuff.append("<loc_code__gitbf><![CDATA[INTR ]]></loc_code__gitbf>");
xmlBuff.append("<location_descr_gitbf><![CDATA[GOODS IN TRANSIT]]></location_descr_gitbf>");
xmlBuff.append("<issue_ref><![CDATA[]]></issue_ref>");
xmlBuff.append("<proj_code><![CDATA[]]></proj_code>");
xmlBuff.append("<site_code__bil><![CDATA[SP612]]></site_code__bil>");
xmlBuff.append("<site_descr_bill><![CDATA[TEST INDUSTRIES ]]></site_descr_bill>");
xmlBuff.append("<site_add1><![CDATA[E-200, FIRST FLOOR,]]></site_add1>");
xmlBuff.append("<site_add2><![CDATA[TRANSPORT NAGAR,]]></site_add2>");
xmlBuff.append("<site_city><![CDATA[LUCKNOW]]></site_city>");
xmlBuff.append("<site_pin><![CDATA[ ]]></site_pin>");
xmlBuff.append("<site_state_code><![CDATA[UP ]]></site_state_code>");
xmlBuff.append("<pallet_wt><![CDATA[]]></pallet_wt>");
xmlBuff.append("</Detail1>");
xmlBuff.append("</Header0>");
xmlBuff.append("</group0>");
xmlBuff.append("</DocumentRoot>");
}
catch(Exception e)
{
e.printStackTrace();
}
}
private String getCurrdateAppFormat()
{
String s = "";
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
try
{
java.util.Date date = null;
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
System.out.println(genericUtility.getDBDateFormat());
SimpleDateFormat simpledateformat = new SimpleDateFormat(genericUtility.getDBDateFormat());
date = simpledateformat.parse(timestamp.toString());
timestamp = Timestamp.valueOf(simpledateformat.format(date).toString() + " 00:00:00.0");
s = (new SimpleDateFormat(genericUtility.getApplDateFormat())).format(timestamp).toString();
}
catch(Exception exception)
{
System.out.println("Exception in [MPSOrder] getCurrdateAppFormat " + exception.getMessage());
}
return s;
}
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import org.xml.sax.InputSource;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.stream.StreamSource;
import javax.xml.transform.stream.StreamResult;
import javax.xml.transform.TransformerException;
import javax.xml.transform.TransformerConfigurationException;
import java.rmi.RemoteException;
import java.util.*;
import java.util.Date;
import java.sql.*;
import java.io.*;
import org.omg.CORBA.ORB;
import org.w3c.dom.*;
import java.util.Properties;
import javax.xml.parsers.*;
import javax.ejb.*;
import javax.naming.InitialContext;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
//import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.*;
import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility;
import ibase.ejb.*;
import ibase.system.config.*;
import java.text.SimpleDateFormat;
import java.util.*;
//import ibase.webitm.ejb.dis.adv.DistOrderRcpConf;
import ibase.webitm.ejb.dis.DistOrderRcpConf;
public class CreateDistReceipt
{
public String createDistributionReceipt(String xmlString,String xtraParams, Connection conn)throws RemoteException,ITMException
{
Document dom = null;
String errString = "";
try
{
ByteArrayInputStream bais = new ByteArrayInputStream(xmlString.getBytes());
dom = (DocumentBuilderFactory.newInstance()).newDocumentBuilder().parse(bais);
errString = createDistributionReceipt(dom,xtraParams, conn);
}
catch(Exception e)
{
System.out.println("Exception : CreateDistReceipt : "+e.getMessage());
}
return (errString);
}
public String createDistributionReceipt(Document dom,String xtraParams,Connection conn)throws RemoteException,ITMException
{
//Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
StringBuffer xmlBuff = new StringBuffer();
String sql = "",valType = "",fldMin ="" , modName = "";
String distOrder = "",siteCodeTo ="",siteCodeFr ="";
String distRoute ="",tranCode ="",lrDateStr ="",lorryNo ="",gpNo ="";
String gpDateStr ="",frtType ="",currCode ="",locCodeGit ="";
String remarks = "", physicalStatus = "", grade = "", batchNo = "", suppCodeMfg = "";
String dimension = "",tranIdIss = "";
String tranDate = "",tranCodeIss = "",lrNo = "",itemCode = "",unit = "",taxEnv = "";
String taxClass ="", taxChap = "",locCode = "",lotNo = "", lotSl ="",packCode = "";
String siteCodeMfg = "",expDate = "",packInstr = "",mfgDate = "";
String xmlString ="",projCode = "",tranType ="",qcReqd ="",confPasswd = "",transMode = "";
String locCodeCons = "",orderType = "",retString ="",sitetype = "",chgTerm ="",chgUser = "";
String tranTypeParent = "",autoReceipt = "";
double palletWt = 0,actualQty = 0, discount = 0,costRate = 0,grossWeight = 0,tareWeight = 0,frtAmt =0;
double netWeight = 0, rate =0,amount = 0, taxAmt = 0, netAmt = 0, quantity = 0,potencyPerc =0;
double rateClg =0, exchRate =0;
long noArt = 0L,ctr =0;
int lineNoDistOrder = 0 ;
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
String childNodeName = null;
try
{ if (conn == null)
{
ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB("DriverITM");
connDriver = null;
}
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
for(int i=0; i<childNodeList.getLength(); i++)
{
childNode = childNodeList.item(i);
childNodeName = childNode.getNodeName();
if(childNode.getNodeName().equalsIgnoreCase("tran_id"))
{
if (childNode.getFirstChild() != null)
{
tranIdIss = childNode.getFirstChild().getNodeValue();
System.out.println("tran_id : " + tranIdIss);
}
}
if(childNode.getNodeName().equalsIgnoreCase("dist_order"))
{
if (childNode.getFirstChild() != null)
{
distOrder = childNode.getFirstChild().getNodeValue();
System.out.println("dist_order : " + distOrder);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tran_date"))
{
if (childNode.getFirstChild() != null)
{
tranDate = childNode.getFirstChild().getNodeValue();
System.out.println("tran_date : " + tranDate);
}
}
if(childNode.getNodeName().equalsIgnoreCase("site_code"))
{
if (childNode.getFirstChild() != null)
{
siteCodeFr = childNode.getFirstChild().getNodeValue();
System.out.println("Node Value1 : " + siteCodeFr);
}
}
if(childNode.getNodeName().equalsIgnoreCase("site_code__dlv"))
{
if (childNode.getFirstChild() != null)
{
siteCodeTo = childNode.getFirstChild().getNodeValue();
System.out.println("siteCodeTo : " + siteCodeTo);
}
}
if(childNode.getNodeName().equalsIgnoreCase("dist_route"))
{
if (childNode.getFirstChild() != null)
{
distRoute = childNode.getFirstChild().getNodeValue();
System.out.println("distRoute : " + distRoute);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tran_code"))
{
if (childNode.getFirstChild() != null)
{
tranCodeIss = childNode.getFirstChild().getNodeValue();
System.out.println("tranCodeIss : " + tranCodeIss);
}
}
if(childNode.getNodeName().equalsIgnoreCase("lr_no"))
{
if (childNode.getFirstChild() != null)
{
lrNo = childNode.getFirstChild().getNodeValue();
System.out.println("lrNo : " + lrNo);
}
}
if(childNode.getNodeName().equalsIgnoreCase("lr_date"))
{
if (childNode.getFirstChild() != null)
{
lrDateStr = childNode.getFirstChild().getNodeValue();
System.out.println("lrDateStr : " + lrDateStr);
}
}
if(childNode.getNodeName().equalsIgnoreCase("lorry_no"))
{
if (childNode.getFirstChild() != null)
{
lorryNo = childNode.getFirstChild().getNodeValue();
System.out.println("lorryNo : " + lorryNo);
}
}
if(childNode.getNodeName().equalsIgnoreCase("gp_no"))
{
if (childNode.getFirstChild() != null)
{
gpNo = childNode.getFirstChild().getNodeValue();
System.out.println("gp_no : " + gpNo);
}
}
if(childNode.getNodeName().equalsIgnoreCase("gp_date"))
{
{
gpDateStr = childNode.getFirstChild().getNodeValue();
System.out.println("gp_date : " + gpDateStr);
} }
if(childNode.getNodeName().equalsIgnoreCase("gross_weight"))
{
if (childNode.getFirstChild() != null)
{
grossWeight = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("gross_weight : " + grossWeight);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tare_weight"))
{
if (childNode.getFirstChild() != null)
{
tareWeight =Double.parseDouble( childNode.getFirstChild().getNodeValue());
System.out.println("tare_weight " + tareWeight);
}
}
if(childNode.getNodeName().equalsIgnoreCase("net_weight"))
{
if (childNode.getFirstChild() != null)
{
netWeight = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("net_weight : " + netWeight);
}
}
if(childNode.getNodeName().equalsIgnoreCase("pallet_wt"))
{
if (childNode.getFirstChild() != null)
{
palletWt = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("pallet_wt : " + palletWt);
}
}
if(childNode.getNodeName().equalsIgnoreCase("frt_amt"))
{
if (childNode.getFirstChild() != null)
{
frtAmt = Double.parseDouble( childNode.getFirstChild().getNodeValue());
System.out.println("frt_amt : " + frtAmt);
}
}
if(childNode.getNodeName().equalsIgnoreCase("amount"))
{
if (childNode.getFirstChild() != null)
{
amount = Double.parseDouble( childNode.getFirstChild().getNodeValue());
System.out.println("amount : " + amount);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tax_amt"))
{
if (childNode.getFirstChild() != null)
{
taxAmt = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("tax_amt : " + taxAmt);
}
}
if(childNode.getNodeName().equalsIgnoreCase("remarks"))
{
if (childNode.getFirstChild() != null)
{
remarks = childNode.getFirstChild().getNodeValue();
System.out.println("remarks : " + remarks);
}
}
if(childNode.getNodeName().equalsIgnoreCase("frt_type"))
{
if (childNode.getFirstChild() != null)
{
frtType = childNode.getFirstChild().getNodeValue();
System.out.println("frt_type : " + frtType);
}
}
if(childNode.getNodeName().equalsIgnoreCase("curr_code"))
{
if (childNode.getFirstChild() != null)
{
currCode = childNode.getFirstChild().getNodeValue();
System.out.println("curr_code : " + currCode);
}
}
if(childNode.getNodeName().equalsIgnoreCase("loc_code__git"))
{
if (childNode.getFirstChild() != null)
{
locCodeGit = childNode.getFirstChild().getNodeValue();
System.out.println("locCodeGit : " + locCodeGit);
}
}
if(childNode.getNodeName().equalsIgnoreCase("no_art"))
{
if (childNode.getFirstChild() != null)
{
noArt = Long.parseLong(childNode.getFirstChild().getNodeValue());
System.out.println("no_art : " + noArt);
}
}
if(childNode.getNodeName().equalsIgnoreCase("trans_mode"))
{
if (childNode.getFirstChild() != null)
{
transMode = childNode.getFirstChild().getNodeValue();
System.out.println("transMode : " + transMode);
}
}
if(childNode.getNodeName().equalsIgnoreCase("order_type"))
{
if (childNode.getFirstChild() != null)
{
orderType = childNode.getFirstChild().getNodeValue();
System.out.println("order_type : " + orderType);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tran_type"))
{
if (childNode.getFirstChild() != null)
{
tranType = childNode.getFirstChild().getNodeValue();
//tranType = tranType == null ? "":tranType.trim();
System.out.println("tranType : " + tranType);
}
}
if(childNode.getNodeName().equalsIgnoreCase("exch_rate"))
{
if (childNode.getFirstChild() != null)
{
exchRate = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("exch_rate : " + exchRate);
}
}
if(childNode.getNodeName().equalsIgnoreCase("conf_passwd"))
{
if (childNode.getFirstChild() != null)
{
confPasswd = childNode.getFirstChild().getNodeValue();
System.out.println("confPasswd : " + confPasswd);
}
}
if(childNode.getNodeName().equalsIgnoreCase("proj_code"))
{
if (childNode.getFirstChild() != null)
{
projCode = childNode.getFirstChild().getNodeValue();
System.out.println("proj_code : " + projCode);
}
}
if(childNode.getNodeName().equalsIgnoreCase("net_amt"))
{
if (childNode.getFirstChild() != null)
{
netAmt = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("net_amt : " + projCode);
}
}
if(childNode.getNodeName().equalsIgnoreCase("chg_user"))
{
if (childNode.getFirstChild() != null)
{
chgUser = childNode.getFirstChild().getNodeValue();
System.out.println("chgUser : " + chgUser);
}
}
if(childNode.getNodeName().equalsIgnoreCase("chg_term"))
{
if (childNode.getFirstChild() != null)
{
chgTerm = childNode.getFirstChild().getNodeValue();
System.out.println("chgTerm : " + chgTerm);
}
}
}
sql="SELECT tran_type__parent FROM distorder_type "
+" where tran_type= ?";
//System.out.println("Sql................"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranType);
rs = pstmt.executeQuery();
if(rs.next())
{
tranTypeParent = rs.getString("tran_type__parent");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(! tranTypeParent.trim().equalsIgnoreCase(tranType))
{
sql="SELECT loc_code__cons FROM distorder_type "
+" where tran_type= ? ";
//System.out.println("Sql................"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranType);
rs = pstmt.executeQuery();
if(rs.next())
{
locCodeCons = rs.getString("loc_code__cons");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
else
{
sql="SELECT loc_code__cons FROM distorder "
+" where dist_order = ?";
//System.out.println("Sql................"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,distOrder);
rs = pstmt.executeQuery();
if(rs.next())
{
locCodeCons = rs.getString("loc_code__cons");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
sql="select qc_reqd FROM distorder_type "
+" where tran_type = ? ";
//System.out.println("Sql................"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranType);
rs = pstmt.executeQuery();
if(rs.next())
{
qcReqd = rs.getString("qc_reqd");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(qcReqd == null ||qcReqd.trim().length() ==0)
{
sql="select case when site_type is null then ' ' else site_type end "
+" from site where site_code = ?";
//System.out.println("Sql................"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,siteCodeTo);
rs = pstmt.executeQuery();
if(rs.next())
{
sitetype = rs.getString(1);
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if("F".equalsIgnoreCase(sitetype.trim()) || "L".equalsIgnoreCase(sitetype.trim()) || "T".equalsIgnoreCase(sitetype.trim()))
{
qcReqd ="Y";
}
else
{
qcReqd ="N";
}
}
xmlBuff.append("<?xml version='1.0' encoding='ISO-8859-1'?>\n");
xmlBuff.append("<DocumentRoot>");
xmlBuff.append("<description>").append("Datawindow Root").append("</description>");
xmlBuff.append("<group0>");
xmlBuff.append("<description>").append("Group0 description").append("</description>");
xmlBuff.append("<Header0>");
xmlBuff.append("<objName><![CDATA[").append("dist_receipt").append("]]></objName>");
xmlBuff.append("<pageContext><![CDATA[").append("1").append("]]></pageContext>");
xmlBuff.append("<objContext><![CDATA[").append("1").append("]]></objContext>");
xmlBuff.append("<editFlag><![CDATA[").append("A").append("]]></editFlag>");
xmlBuff.append("<focusedColumn><![CDATA[").append("").append("]]></focusedColumn>");
xmlBuff.append("<action><![CDATA[").append("SAVE").append("]]></action>");
xmlBuff.append("<elementName><![CDATA[").append("").append("]]></elementName>");
xmlBuff.append("<keyValue><![CDATA[").append("1").append("]]></keyValue>");
xmlBuff.append("<taxKeyValue><![CDATA[").append("").append("]]></taxKeyValue>");
xmlBuff.append("<saveLevel><![CDATA[").append("1").append("]]></saveLevel>");
xmlBuff.append("<forcedSave><![CDATA[").append(true).append("]]></forcedSave>");
xmlBuff.append("<taxInFocus><![CDATA[").append(false).append("]]></taxInFocus>");
xmlBuff.append("<description>").append("Header0 members").append("</description>");
xmlBuff.append("<Detail1 dbID=\"\" domID=\"1\" objName=\"dist_receipt\" objContext=\"1\">");
xmlBuff.append("<attribute selected=\"N\" updateFlag=\"A\" status=\"N\" pkNames=\"\"/>");
xmlBuff.append("<tran_id/>");
xmlBuff.append("<tran_date><![CDATA["+tranDate+"]]></tran_date>");
xmlBuff.append("<eff_date><![CDATA["+tranDate+"]]></eff_date>");
xmlBuff.append("<dist_order><![CDATA["+distOrder+"]]></dist_order>");
xmlBuff.append("<tran_id__iss><![CDATA["+tranIdIss+"]]></tran_id__iss>");
xmlBuff.append("<dist_route><![CDATA["+distRoute+"]]></dist_route>");
xmlBuff.append("<site_code><![CDATA["+siteCodeTo+"]]></site_code>");
xmlBuff.append("<site_code__ship><![CDATA["+siteCodeFr+"]]></site_code__ship>");
xmlBuff.append("<tran_code><![CDATA["+tranCodeIss+"]]></tran_code>");
xmlBuff.append("<lr_no><![CDATA["+lrNo+"]]></lr_no>");
xmlBuff.append("<lr_date><![CDATA["+lrDateStr+"]]></lr_date>");
xmlBuff.append("<lorry_no><![CDATA["+lorryNo+"]]></lorry_no>");
xmlBuff.append("<gross_weight><![CDATA["+grossWeight+"]]></gross_weight>");
xmlBuff.append("<tare_weight><![CDATA["+tareWeight+"]]></tare_weight>");
xmlBuff.append("<net_weight><![CDATA["+netWeight+"]]></net_weight>");
xmlBuff.append("<frt_amt><![CDATA["+frtAmt+"]]></frt_amt>");
xmlBuff.append("<amount><![CDATA["+amount+"]]></amount>");
xmlBuff.append("<tax_amt><![CDATA["+taxAmt+"]]></tax_amt>");
xmlBuff.append("<net_amt><![CDATA["+netAmt+"]]></net_amt>");
xmlBuff.append("<remarks><![CDATA["+remarks+"]]></remarks>");
xmlBuff.append("<frt_type><![CDATA["+frtType+"]]></frt_type>");
xmlBuff.append("<chg_user><![CDATA["+chgUser+"]]></chg_user>");
xmlBuff.append("<chg_term><![CDATA["+chgTerm+"]]></chg_term>");
xmlBuff.append("<curr_code><![CDATA["+currCode+"]]></curr_code>");
xmlBuff.append("<chg_date><![CDATA["+getCurrdateAppFormat()+"]]></chg_date>");
xmlBuff.append("<site_descr><![CDATA[]]></site_descr>");//??
xmlBuff.append("<site_to_descr><![CDATA[]]></site_to_descr>"); //??
xmlBuff.append("<location_descr><![CDATA[]]></location_descr>");//??
xmlBuff.append("<tran_name><![CDATA[]]></tran_name>");
xmlBuff.append("<currency_descr><![CDATA[INDIAN RUPEE]]></currency_descr>");
xmlBuff.append("<confirmed><![CDATA[N]]></confirmed>");
xmlBuff.append("<loc_code__git><![CDATA["+locCodeGit+"]]></loc_code__git>");
xmlBuff.append("<volume><![CDATA[0]]></volume>");
xmlBuff.append("<conf_date><![CDATA[]]></conf_date>");
xmlBuff.append("<no_art><![CDATA["+noArt+"]]></no_art>");
xmlBuff.append("<trans_mode><![CDATA["+transMode+"]]></trans_mode>");
xmlBuff.append("<conf_passwd><![CDATA["+confPasswd+"]]></conf_passwd>");
orderType = orderType == null ? "" :orderType.trim();
xmlBuff.append("<order_type><![CDATA["+orderType+"]]></order_type>");
xmlBuff.append("<exch_rate><![CDATA["+exchRate+"]]></exch_rate>");
xmlBuff.append("<tran_type><![CDATA["+tranType.trim()+"]]></tran_type>");
xmlBuff.append("<emp_code__aprv><![CDATA[]]></emp_code__aprv>"); //???
xmlBuff.append("<qc_reqd><![CDATA["+qcReqd+"]]></qc_reqd>");
xmlBuff.append("<gp_no><![CDATA["+gpNo+"]]></gp_no>");
xmlBuff.append("<gp_date><![CDATA["+gpDateStr+"]]></gp_date>");
xmlBuff.append("<loc_code__gitbf><![CDATA[]]></loc_code__gitbf>");
xmlBuff.append("<location_descr_gitbf><![CDATA[]]></location_descr_gitbf>");
xmlBuff.append("<issue_ref><![CDATA[]]></issue_ref>");
xmlBuff.append("<proj_code><![CDATA["+projCode+"]]></proj_code>");
xmlBuff.append("<site_code__bil><![CDATA[]]></site_code__bil>");
xmlBuff.append("<site_descr_bill><![CDATA[]]></site_descr_bill>");
xmlBuff.append("<site_add1><![CDATA[]]></site_add1>");
xmlBuff.append("<site_add2><![CDATA[]]></site_add2>");
xmlBuff.append("<site_city><![CDATA[]]></site_city>");
xmlBuff.append("<site_pin><![CDATA[ ]]></site_pin>");
xmlBuff.append("<site_state_code><![CDATA[]]></site_state_code>");
xmlBuff.append("<pallet_wt><![CDATA["+palletWt+"]]></pallet_wt>");
xmlBuff.append("</Detail1>");
parentNodeList = dom.getElementsByTagName("Detail2");
int detlen = parentNodeList.getLength();
for (int detctr =0;detctr < detlen;detctr++)
{
System.out.println("detctr : " + detctr);
parentNode = parentNodeList.item(detctr);
childNodeList = parentNode.getChildNodes();
for(int i=0; i<childNodeList.getLength(); i++)
{
childNode = childNodeList.item(i);
childNodeName = childNode.getNodeName();
if(childNode.getNodeName().equalsIgnoreCase("dist_order"))
{
if (childNode.getFirstChild() != null)
{
distOrder = childNode.getFirstChild().getNodeValue();
System.out.println("distOrder : " + distOrder);
}
}
if(childNode.getNodeName().equalsIgnoreCase("line_no_dist_order"))
{
if (childNode.getFirstChild() != null)
{
lineNoDistOrder =Integer.parseInt( childNode.getFirstChild().getNodeValue());
System.out.println("lineNoDistOrder : " + lineNoDistOrder);
}
}
if(childNode.getNodeName().equalsIgnoreCase("item_code"))
{
if (childNode.getFirstChild() != null)
{
itemCode = childNode.getFirstChild().getNodeValue();
System.out.println("item_code : " + itemCode);
}
}
if(childNode.getNodeName().equalsIgnoreCase("quantity"))
{
if (childNode.getFirstChild() != null)
{
quantity = Double.parseDouble( childNode.getFirstChild().getNodeValue());
System.out.println("quantity : " + quantity);
}
}
if(childNode.getNodeName().equalsIgnoreCase("unit"))
{
if (childNode.getFirstChild() != null)
{
unit = childNode.getFirstChild().getNodeValue();
System.out.println("unit : " + unit);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tax_class"))
{
if (childNode.getFirstChild() != null)
{
taxClass = childNode.getFirstChild().getNodeValue();
System.out.println("tax_class : " + taxClass);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tax_chap"))
{
if (childNode.getFirstChild() != null)
{
taxChap = childNode.getFirstChild().getNodeValue();
System.out.println("tax_chap : " + taxChap);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tax_env"))
{
if (childNode.getFirstChild() != null)
{
taxEnv = childNode.getFirstChild().getNodeValue();
System.out.println("tax_env : " + taxEnv);
}
}
if(childNode.getNodeName().equalsIgnoreCase("loc_code"))
{
if (childNode.getFirstChild() != null)
{
locCode = childNode.getFirstChild().getNodeValue();
System.out.println("loc_code : " + locCode);
}
}
if(childNode.getNodeName().equalsIgnoreCase("lot_no"))
{
if (childNode.getFirstChild() != null)
{
lotNo = childNode.getFirstChild().getNodeValue();
System.out.println("lot_no : " + lotNo);
}
}
if(childNode.getNodeName().equalsIgnoreCase("lot_sl"))
{
if (childNode.getFirstChild() != null)
{
lotSl = childNode.getFirstChild().getNodeValue();
System.out.println("lot_sl : " + lotSl);
}
}
if(childNode.getNodeName().equalsIgnoreCase("pack_code"))
{
if (childNode.getFirstChild() != null)
{
packCode = childNode.getFirstChild().getNodeValue();
System.out.println("pack_code : " + packCode);
}
}
if(childNode.getNodeName().equalsIgnoreCase("rate"))
{
if (childNode.getFirstChild() != null)
{
rate = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("rate : " + rate);
}
}
if(childNode.getNodeName().equalsIgnoreCase("rate__clg"))
{
if (childNode.getFirstChild() != null)
{
rateClg = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("rate__clg : " + rateClg);
}
}
if(childNode.getNodeName().equalsIgnoreCase("amount"))
{
if (childNode.getFirstChild() != null)
{
amount = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("amount : " + amount);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tax_amt"))
{
if (childNode.getFirstChild() != null)
{
taxAmt = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("tax_amt : " + taxAmt);
}
}
if(childNode.getNodeName().equalsIgnoreCase("net_amt"))
{
if (childNode.getFirstChild() != null)
{
netAmt = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("net_amt : " + netAmt);
}
}
if(childNode.getNodeName().equalsIgnoreCase("site_code__mfg"))
{
if (childNode.getFirstChild() != null)
{
siteCodeMfg = childNode.getFirstChild().getNodeValue();
System.out.println("site_code__mfg : " + siteCodeMfg);
}
}
if(childNode.getNodeName().equalsIgnoreCase("mfg_date"))
{
if (childNode.getFirstChild() != null)
{
mfgDate = childNode.getFirstChild().getNodeValue();
System.out.println("mfg_date : " + mfgDate);
}
}
if(childNode.getNodeName().equalsIgnoreCase("exp_date"))
{
if (childNode.getFirstChild() != null)
{
expDate = childNode.getFirstChild().getNodeValue();
System.out.println("exp_date : " + expDate);
}
}
if(childNode.getNodeName().equalsIgnoreCase("potency_perc"))
{
if (childNode.getFirstChild() != null)
{
potencyPerc = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("potency_perc : " + potencyPerc);
}
}
if(childNode.getNodeName().equalsIgnoreCase("no_art"))
{
if (childNode.getFirstChild() != null)
{
noArt = Long.parseLong(childNode.getFirstChild().getNodeValue());
System.out.println("no_art : " + noArt);
}
}
if(childNode.getNodeName().equalsIgnoreCase("gross_weight"))
{
if (childNode.getFirstChild() != null)
{
grossWeight = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("gross_weight : " + grossWeight);
}
}
if(childNode.getNodeName().equalsIgnoreCase("tare_weight"))
{
if (childNode.getFirstChild() != null)
{
tareWeight = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("tare_weight : " + tareWeight);
}
}
if(childNode.getNodeName().equalsIgnoreCase("net_weight"))
{
if (childNode.getFirstChild() != null)
{
netWeight = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("net_weight : " + netWeight);
}
}
if(childNode.getNodeName().equalsIgnoreCase("pallet_wt"))
{
if (childNode.getFirstChild() != null)
{
palletWt = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("pallet_wt : " + palletWt);
}
}
if(childNode.getNodeName().equalsIgnoreCase("pack_instr"))
{
if (childNode.getFirstChild() != null)
{
packInstr = childNode.getFirstChild().getNodeValue();
System.out.println("pack_instr : " + packInstr);
}
}
if(childNode.getNodeName().equalsIgnoreCase("dimension"))
{
if (childNode.getFirstChild() != null)
{
dimension = childNode.getFirstChild().getNodeValue();
System.out.println("dimension : " + dimension);
}
}
if(childNode.getNodeName().equalsIgnoreCase("supp_code__mfg"))
{
if (childNode.getFirstChild() != null)
{
suppCodeMfg = childNode.getFirstChild().getNodeValue();
System.out.println("supp_code__mfg : " + suppCodeMfg);
}
}
if(childNode.getNodeName().equalsIgnoreCase("batch_no"))
{
if (childNode.getFirstChild() != null)
{
batchNo = childNode.getFirstChild().getNodeValue();
System.out.println("batch_no : " + batchNo);
}
}
if(childNode.getNodeName().equalsIgnoreCase("grade"))
{
if (childNode.getFirstChild() != null)
{
grade = childNode.getFirstChild().getNodeValue();
System.out.println("grade : " + grade);
}
}
if(childNode.getNodeName().equalsIgnoreCase("cost_rate"))
{
if (childNode.getFirstChild() != null)
{
costRate = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("cost_rate : " + costRate);
}
}
if(childNode.getNodeName().equalsIgnoreCase("discount"))
{
if (childNode.getFirstChild() != null)
{
discount = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("discount : " + discount);
}
}
if(childNode.getNodeName().equalsIgnoreCase("physical_status"))
{
if (childNode.getFirstChild() != null)
{
physicalStatus = childNode.getFirstChild().getNodeValue();
System.out.println("physical_status : " + physicalStatus);
}
}
if(childNode.getNodeName().equalsIgnoreCase("actual_qty"))
{
if (childNode.getFirstChild() != null)
{
actualQty = Double.parseDouble(childNode.getFirstChild().getNodeValue());
System.out.println("actual_qty : " + actualQty);
}
}
if(childNode.getNodeName().equalsIgnoreCase("remarks"))
{
if (childNode.getFirstChild() != null)
{
remarks = childNode.getFirstChild().getNodeValue();
System.out.println("remarks : " + remarks);
}
}
}
xmlBuff.append("<Detail2 dbID='' domID=\"1\" objName=\"dist_receipt\" objContext=\"2\">");
xmlBuff.append("<attribute pkNames=\"\" selected=\"N\" updateFlag=\"A\" status=\"N\" />");
xmlBuff.append("<tran_id/>");
xmlBuff.append("<line_no>"+(detctr+1)+"</line_no>");
xmlBuff.append("<dist_order><![CDATA["+distOrder+"]]></dist_order>");
xmlBuff.append("<line_no_dist_order><![CDATA["+lineNoDistOrder+"]]></line_no_dist_order>");
xmlBuff.append("<item_code><![CDATA["+itemCode+"]]></item_code>");
xmlBuff.append("<quantity><![CDATA["+quantity+"]]></quantity>");
xmlBuff.append("<unit><![CDATA["+unit+"]]></unit>");
xmlBuff.append("<tax_class><![CDATA["+taxClass+"]]></tax_class>");
xmlBuff.append("<tax_chap><![CDATA["+taxChap+"]]></tax_chap>");
xmlBuff.append("<tax_env><![CDATA["+taxEnv+"]]></tax_env>");
xmlBuff.append("<loc_code><![CDATA["+locCode+"]]></loc_code>");
xmlBuff.append("<lot_no><![CDATA["+lotNo+"]]></lot_no>");
xmlBuff.append("<lot_sl><![CDATA["+lotSl+"]]></lot_sl>");
xmlBuff.append("<pack_code><![CDATA["+packCode+"]]></pack_code>");
xmlBuff.append("<rate><![CDATA["+rate+"]]></rate>");
xmlBuff.append("<amount><![CDATA["+amount+"]]></amount>");
xmlBuff.append("<tax_amt><![CDATA["+taxAmt+"]]></tax_amt>");
xmlBuff.append("<net_amt><![CDATA["+netAmt+"]]></net_amt>");
xmlBuff.append("<item_descr><![CDATA["+amount+"]]></item_descr>");
xmlBuff.append("<location_descr><![CDATA[]]></location_descr>");
xmlBuff.append("<site_code__mfg><![CDATA["+siteCodeMfg+"]]></site_code__mfg>");
xmlBuff.append("<mfg_date><![CDATA["+mfgDate+"]]></mfg_date>");
System.out.println("manohar exp_date [" + expDate + "]");
xmlBuff.append("<exp_date><![CDATA["+expDate+"]]></exp_date>");
xmlBuff.append("<potency_perc><![CDATA["+potencyPerc+"]]></potency_perc>");
xmlBuff.append("<no_art><![CDATA["+noArt+"]]></no_art>");
xmlBuff.append("<gross_weight><![CDATA["+grossWeight+"]]></gross_weight>");
xmlBuff.append("<tare_weight><![CDATA["+tareWeight+"]]></tare_weight>");
xmlBuff.append("<net_weight><![CDATA["+netWeight+"]]></net_weight>");
xmlBuff.append("<pack_instr><![CDATA["+packInstr+"]]></pack_instr>");
xmlBuff.append("<dimension><![CDATA["+dimension+"]]></dimension>");
xmlBuff.append("<supp_code__mfg><![CDATA["+suppCodeMfg+"]]></supp_code__mfg>");
xmlBuff.append("<batch_no><![CDATA["+batchNo+"]]></batch_no>");
xmlBuff.append("<grade><![CDATA["+grade+"]]></grade>");
xmlBuff.append("<rate__clg><![CDATA["+rateClg+"]]></rate__clg>");
xmlBuff.append("<cost_rate><![CDATA["+costRate+"]]></cost_rate>");
xmlBuff.append("<discount><![CDATA["+discount+"]]></discount>");
xmlBuff.append("<physical_status><![CDATA["+physicalStatus+"]]></physical_status>");
xmlBuff.append("<actual_qty><![CDATA["+actualQty+"]]></actual_qty>");
xmlBuff.append("<remarks><![CDATA["+remarks+"]]></remarks>");
xmlBuff.append("<pallet_wt><![CDATA["+palletWt+"]]></pallet_wt>");
xmlBuff.append("</Detail2>");
}
xmlBuff.append("</Header0>");
xmlBuff.append("</group0>");
xmlBuff.append("</DocumentRoot>");
xmlString = xmlBuff.toString();
retString = saveData(siteCodeFr,xmlString,conn);
if (retString.indexOf("Success") != -1)
{
//<Root><Detail>Success</Detail><TranID>0028</TranID></Root>:
int d =retString.indexOf("<TranID>");
int f = retString.indexOf("</TranID>");
String TranIDRCP = retString.substring(d+8,f);
System.out.println("TranIDRCP......... "+TranIDRCP);
System.out.println("Distribution Receipt Generated Successfully");
sql="select auto_receipt FROM distorder "
+" where dist_order = ? ";
//System.out.println("Sql................"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,distOrder);
rs = pstmt.executeQuery();
if(rs.next())
{
autoReceipt = rs.getString("auto_receipt");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if("C".equalsIgnoreCase(autoReceipt))
{
DistOrderRcpConf distOrderRcpConfEJB =new DistOrderRcpConf();
retString = distOrderRcpConfEJB.actionConfirm(TranIDRCP,xtraParams,"", conn);
distOrderRcpConfEJB = null;
}
}
else
{
System.out.println("Distribution Receipt not Generated ");
}
}
catch (Exception e)
{
e.printStackTrace();
System.out.println(" Error calling getXMLdata");
}
return retString;
}
public String saveData(String siteCode,String xmlString, Connection conn) throws ITMException
{
System.out.println("saving data...........");
InitialContext ctx = null;
String retString = null;
MasterStatefulLocal masterStateful = null;
try
{
AppConnectParm appConnect = new AppConnectParm();
ctx = new InitialContext(appConnect.getProperty());
masterStateful = (MasterStatefulLocal)ctx.lookup("MasterStateful");
//MasterStateful masterStateful = masterStatefulHome.create();
String [] authencate = new String[2];
authencate[0] = "";
authencate[1] = "";
System.out.println("xmlString :::: " + xmlString);
retString = masterStateful.processRequest(authencate, siteCode, true, xmlString, true, conn);
}
catch(ITMException itme)
{
System.out.println("ITMException :CreateDistOrder :saveData :==>");
throw itme;
}
catch(Exception e)
{
System.out.println("Exception :CreateDistOrder :saveData :==>");
throw new ITMException(e);
}
return retString;
}
private String getCurrdateAppFormat()
{
String s = "";
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
try
{
java.util.Date date = null;
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
System.out.println(genericUtility.getDBDateFormat());
SimpleDateFormat simpledateformat = new SimpleDateFormat(genericUtility.getDBDateFormat());
date = simpledateformat.parse(timestamp.toString());
timestamp = Timestamp.valueOf(simpledateformat.format(date).toString() + " 00:00:00.0");
s = (new SimpleDateFormat(genericUtility.getApplDateFormat())).format(timestamp).toString();
}
catch(Exception exception)
{
System.out.println("Exception in getCurrdateAppFormat " + exception.getMessage());
}
return s;
}
}
\ No newline at end of file
/* Name of Developer : Nisar S. Khatib */
package ibase.webitm.ejb.dis;
import ibase.utility.E12GenericUtility;
import ibase.webitm.utility.*;
import ibase.webitm.ejb.*;
import ibase.system.config.*;
import ibase.webitm.ejb.dis.CreateDistReceipt;
import ibase.webitm.ejb.dis.StockUpdate;
import ibase.webitm.ejb.fin.FinCommon;
import ibase.webitm.ejb.dis.DistCommon;
import ibase.webitm.ejb.fin.InsuranceUpdate;
import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.PreparedStatement;
import java.sql.Statement;
import java.text.SimpleDateFormat;
import javax.ejb.*;
import org.w3c.dom.*;
import java.sql.Timestamp;
import java.util.HashMap;
import javax.ejb.Stateless; // added for ejb3
@Stateless // added for ejb3
public class DistIssueConfirmAct extends ActionHandlerEJB
{
FinCommon fcom = new FinCommon();
//GenericUtility genericUtility = null;
E12GenericUtility genericUtility = new E12GenericUtility();
/*public void ejbCreate() throws RemoteException, CreateException
{
System.out.println("INSIDE DistIssueConfirmActEJB CREATE ");
}
public void ejbRemove()
{
}
public void ejbActivate()
{
}
public void ejbPassivate()
{
}*/
public String actionHandler(String custCode, String xtraParams, String forcedFlag) throws RemoteException,ITMException
{
String retString = null;
try
{
retString = actionConfirm(custCode, xtraParams, forcedFlag);
}
catch(Exception e)
{
System.out.println("Exception :DistIssueConfirmActEJB :actionHandler :" + e.getMessage() + ":");
e.printStackTrace();
throw new ITMException(e);
}
return retString;
}
public String actionConfirm(String tranId, String xtraParams, String forcedFlag) throws Exception,ITMException
{
Connection conn= null;
String errString = "";
try
{
if (conn == null)
{
ConnDriver connDriver = new ConnDriver();
//Changed by Poonam Gole for changing connection object :Start
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection() ;
//Changed by Poonam Gole for changing connection object :End
connDriver = null;
errString = actionConfirm(tranId, xtraParams, forcedFlag, conn);
}
}
catch (Exception e1)
{
e1.printStackTrace();
System.out.println("The Exception occure in DistIssueConfirmActEJB :"+e1);
}
return errString;
}
public String actionConfirm(String tranId, String xtraParams, String forcedFlag, Connection conn) throws RemoteException,ITMException
{
String sql="";
String updFlag = null;
String countCode= null,stateCode = null;
String city = null,stanCode = "";
String custCode = null;
String errString = "";
String prvPolicyNo = "";
String asAvailable = null;
String mLocCodeGit = null,lsTranType=null,lsSiteCode = null;
String lsRdPermitNo = null;
String mDistOrder = null,distOrder = null,policyNo=null;
Timestamp mTranDate = null,ldtRetestDate=null;
//Connection conn= null;
PreparedStatement pstmt = null,pstmtForInsert = null,pstmtForUpdate = null,pstmt1=null;
ResultSet rs = null,rs1=null;
int no = 0,i=0,counter=0,mLineNo = 0,mLineDist = 0,llNoArt=0;
String mItemCode = null,mUnit = null,mLocCode = null,mPackCode=null;
String mLotNoDist= null,mLotSlDist=null,lsBatchNo=null,lsGrade=null;
double mQuantity = 0,mRate=0,lcGrossWeight=0,lcTareWeight=0,lcNetWeight=0;
double mTotStk = 0;
String mLotNo=null,mLotSl=null,mQtyStk;
String mItemSer=null,mSiteCdMfg=null,mGrade=null;
Timestamp mmfgDate=null,mlTranDate=null,mExpDate=null;
String tranDate = null;
String mRemarks=null,mInvStat=null;
String lcAcctCodeInv=null,lsCctrCodeInv=null,lsAcctCodeOh=null,lsCctrCodeOh=null;
String lsUnitAlt=null,lsPackInstr=null;
String lsTranTypeParent=null,lsIssCriteria=null,mSiteCode=null,lsAcctCodeInv=null;
String lsTranStat = null,lsStdPost=null,lsInvAcct=null;
String lsPriceListCost = null;
String lsPriceList = null;
String lsPolicyNo = null,lsCurrCd = null,errcode = null;
String lsTranId = null,lsAgentCode=null,lsTranSer=null;
String errCode = null,lsAutoRcp=null,siteCodeISS ="";
String xmlString = null;
//genericUtility = GenericUtility.getInstance();
double ldNetAmt = 0;
double lcExch = 0;
double mPotencyPerc=0;
double lcQtyConfirm = 0,lcOverShip=0,lcQtyShipped=0,lcBalQty=0;
double mQtyStock = 0,lcRate=0;
double lcCounQtyStduom=0,lcCostRate=0;
int mcnt = 0;
//GenericUtility genericUtility = GenericUtility.getInstance();
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
try
{
String empCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginEmpCode");
String chgUser = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginCode");
System.out.println("loginCode.............."+chgUser);
String chgTerm = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "chgTerm");
String siteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
System.out.println("Xtra Params \n " +xtraParams );
if (conn == null)
{
ConnDriver connDriver = new ConnDriver();
//Changed by Poonam Gole for changing connection object :Start
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection() ;
//Changed by Poonam Gole for changing connection object :End
connDriver = null;
}
sql="SELECT SITE_CODE,LOC_CODE__GIT, TRAN_DATE, TRAN_TYPE, SITE_CODE__DLV , RD_PERMIT_NO,AVAILABLE_YN "
+" FROM DISTORD_ISS WHERE TRAN_ID = '" + tranId + "'";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
if(rs.next())
{
siteCodeISS = rs.getString("SITE_CODE");
mLocCodeGit = rs.getString("LOC_CODE__GIT");
mTranDate = rs.getTimestamp("TRAN_DATE");
lsTranType = rs.getString("TRAN_TYPE");
lsSiteCode = rs.getString("SITE_CODE__DLV");
lsRdPermitNo = rs.getString("RD_PERMIT_NO");
asAvailable = rs.getString("AVAILABLE_YN");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql=" SELECT COUNT(DISTINCT DIST_ORDER)AS COUNTER FROM DISTORD_ISSDET "
+" WHERE TRAN_ID = '" + tranId + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
if(rs.next())
{
counter = rs.getInt("COUNTER");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
System.out.println("[DistIssueConfirmActEJB] counter=>"+counter);
if(counter > 1)
{
sql="SELECT COUNT(1)AS COUNTER FROM DISTORDER "
+" WHERE DIST_ORDER IN (SELECT DISTINCT DIST_ORDER FROM DISTORD_ISSDET "
+" WHERE TRAN_ID = '" + tranId + "' ) AND POLICY_NO IS NOT NULL ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
if(rs.next())
{
counter = rs.getInt("COUNTER");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(counter > 0)
{
sql=" SELECT DISTINCT DIST_ORDER FROM DISTORD_ISSDET "
+" WHERE TRAN_ID = '" + tranId + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
while(rs.next())
{
distOrder = rs.getString("DIST_ORDER");
sql="SELECT POLICY_NO FROM DISTORDER WHERE DIST_ORDER = '" + distOrder + "'";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
//pstmt1.setString(1,distOrder);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
policyNo = rs1.getString("POLICY_NO")==null?"":rs1.getString("POLICY_NO");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
if(prvPolicyNo.trim().length() == 0)
{
prvPolicyNo = policyNo;
}
if(!prvPolicyNo.equalsIgnoreCase(policyNo))
{
System.out.println("[DistIssueConfirmActEJB]Policy No. not Same(VTPONOSAME)");
errString = itmDBAccessEJB.getErrorString("","VTPONOSAME",chgUser);
break ;
}
}//end of while(rs.next())
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}//end of if(counter > 0)
}//END OF IF(counter > 1)
sql="SELECT LINE_NO, DIST_ORDER, LINE_NO_DIST_ORDER, ITEM_CODE, QUANTITY,"
+" UNIT, LOC_CODE, PACK_CODE, RATE, LOT_NO, LOT_SL, BATCH_NO, GRADE,"
+" RETEST_DATE,GROSS_WEIGHT,TARE_WEIGHT,NET_WEIGHT,NO_ART "
+" FROM DISTORD_ISSDET "
+" WHERE trim(TRAN_ID) = '" + tranId.trim() + "' "
+" ORDER BY LINE_NO";
System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
while(rs.next())
{
HashMap stkUpdMap = new HashMap();
mLineNo = rs.getInt("LINE_NO");
mDistOrder = rs.getString("DIST_ORDER");
mLineDist = rs.getInt("LINE_NO_DIST_ORDER");
mItemCode = rs.getString("ITEM_CODE");
mQuantity = rs.getDouble("QUANTITY");
mUnit = rs.getString("UNIT");
mLocCode = rs.getString("LOC_CODE");
mPackCode = rs.getString("PACK_CODE");
mRate = rs.getDouble("RATE");
mLotNoDist= rs.getString("LOT_NO");
mLotSlDist = rs.getString("LOT_SL");
System.out.println( "mLotNoDist :: " + mLotNoDist );
System.out.println( "mLotSlDist :: " + mLotSlDist );
lsBatchNo = rs.getString("BATCH_NO");
lsGrade = rs.getString("GRADE");
ldtRetestDate = rs.getTimestamp("RETEST_DATE");
lcGrossWeight = rs.getDouble("GROSS_WEIGHT");
lcTareWeight = rs.getDouble("TARE_WEIGHT");
lcNetWeight = rs.getDouble("NET_WEIGHT");
llNoArt = rs.getInt("NO_ART");
sql="SELECT QTY_CONFIRM , OVER_SHIP_PERC , QTY_SHIPPED "
+" FROM DISTORDER_DET "
+" WHERE DIST_ORDER = '" + mDistOrder + "' "
+" AND LINE_NO = ? ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
//pstmt1.setString(1,mDistOrder);
pstmt1.setInt( 1, mLineDist );
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
lcQtyConfirm = rs1.getDouble("QTY_CONFIRM");
lcOverShip = rs1.getDouble("OVER_SHIP_PERC");
lcQtyShipped = rs1.getDouble("QTY_SHIPPED");
lcBalQty =(lcQtyConfirm+(lcQtyConfirm * (lcOverShip/100)))-lcQtyShipped;
System.out.println("lcBalQty=======>"+lcBalQty);
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
sql="SELECT TRAN_TYPE__PARENT FROM DISTORDER_TYPE "
+" WHERE TRAN_TYPE = '" + lsTranType + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
//pstmt1.setString(1,lsTranType);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
lsTranTypeParent = rs1.getString("TRAN_TYPE__PARENT");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
sql="SELECT ISS_CRITERIA FROM ITEM "
+" WHERE ITEM_CODE = '" + mItemCode + "'";
System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
//pstmt1.setString(1,mItemCode);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
lsIssCriteria = rs1.getString("ISS_CRITERIA");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
if((mQuantity > lcBalQty) && (lsTranType!=null && lsTranType.equals(lsTranTypeParent)) && !lsIssCriteria.equalsIgnoreCase("W"))
{
System.out.println("[DistIssueConfirmActEJB]Error(VTDIST19)");
errString = itmDBAccessEJB.getErrorString("","VTDIST19",chgUser);
break ;
}
sql="SELECT COUNT(A.ITEM_CODE) as MCNT FROM STOCK A, INVSTAT B, LOCATION C "
+" WHERE B.INV_STAT = C.INV_STAT "
+" AND C.LOC_CODE = A.LOC_CODE "
+" AND A.ITEM_CODE = '" + mItemCode + "' "
+" AND A.SITE_CODE = '" + siteCodeISS + "' "
+" AND A.LOC_CODE = '" + mLocCode + "' "
+" AND A.LOT_NO = '" + mLotNoDist + "' "
+" AND A.LOT_SL = '" + mLotSlDist + "' "
+" AND B.AVAILABLE = '" + asAvailable + "'"
+" AND B.USABLE = '" + asAvailable + "'";
System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
//pstmt1.setString(1,mItemCode);
//pstmt1.setString(2,siteCodeISS);
//pstmt1.setString(3,mLocCode);
//pstmt1.setString(4,mLotNoDist);
//pstmt1.setString(5,mLotSlDist);
//pstmt1.setString(1,asAvailable);
//pstmt1.setString(2,asAvailable);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
mcnt = rs1.getInt("MCNT");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
if(mcnt == 0)
{
System.out.println("( Rajendra VTDIST16)");
//errString = itmDBAccessEJB.getErrorString("","VTDIST16",chgUser);
errString = itmDBAccessEJB.getErrorString("","VTDIST16","BASE");
return errString;
}
/* sql="SELECT QUANTITY,RATE FROM STOCK "
+" WHERE ITEM_CODE = '"+mItemCode+"'"
+" AND SITE_CODE = '"+siteCodeISS+"'"
+" AND LOC_CODE = '"+mLocCode+"'"
+" AND LOT_NO = '"+mLotNoDist+"'"
+" AND LOT_SL = '"+mLotSlDist+"'";
System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
mQtyStock = rs1.getDouble("QUANTITY");
lcRate = rs1.getDouble("RATE");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
*/
sql=" SELECT A.LOT_NO, A.LOT_SL, A.QUANTITY, A.EXP_DATE, "
+" A.UNIT, A.ITEM_SER,A.MFG_DATE, A.SITE_CODE__MFG, A.GRADE,"
+" A.LTRAN_DATE, A.REMARKS,A.INV_STAT, A.POTENCY_PERC ,"
+" A.ACCT_CODE__INV, A.CCTR_CODE__INV,A.ACCT_CODE__OH,"
+" A.CCTR_CODE__OH, A.UNIT__ALT, A.PACK_INSTR,"
+" A.CONV__QTY_STDUOM,A.QUANTITY,A.RATE "
+" FROM STOCK A, INVSTAT B "
+" WHERE A.INV_STAT = B.INV_STAT "
+" AND A.ITEM_CODE = '" + mItemCode + "' "
+" AND A.SITE_CODE = '" + siteCodeISS + "' "
+" AND A.LOC_CODE = '" + mLocCode + "' "
+" AND A.LOT_NO = '" + mLotNoDist + "' "
+" AND A.LOT_SL = '" + mLotSlDist + "' ";
System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
//pstmt1.setString(1,mItemCode);
//pstmt1.setString(2,siteCodeISS);
//pstmt1.setString(3,mLocCode);
//pstmt1.setString(4,mLotNoDist);
//pstmt1.setString(5,mLotSlDist);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
mQtyStock = rs1.getDouble("QUANTITY");
lcRate = rs1.getDouble("RATE");
mLotNo = rs1.getString("LOT_NO");
mLotSl= rs1.getString("LOT_SL");
mQtyStk= rs1.getString("QUANTITY");
mExpDate= rs1.getTimestamp("EXP_DATE");
mUnit= rs1.getString("UNIT");
mItemSer= rs1.getString("ITEM_SER");
mmfgDate= rs1.getTimestamp("MFG_DATE");
mSiteCdMfg= rs1.getString("SITE_CODE__MFG");
mGrade= rs1.getString("GRADE");
mlTranDate= rs1.getTimestamp("LTRAN_DATE");
mRemarks= rs1.getString("REMARKS");
mInvStat= rs1.getString("INV_STAT");
mPotencyPerc= rs1.getDouble("POTENCY_PERC");
lsAcctCodeInv= rs1.getString("ACCT_CODE__INV");
lsCctrCodeInv= rs1.getString("CCTR_CODE__INV");
lsAcctCodeOh= rs1.getString("ACCT_CODE__OH");
lsCctrCodeOh= rs1.getString("CCTR_CODE__OH");
lsUnitAlt= rs1.getString("UNIT__ALT");
lsPackInstr= rs1.getString("PACK_INSTR");
lcCounQtyStduom = rs1.getDouble("CONV__QTY_STDUOM");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
System.out.println("Manohar Stock Line no=>"+mLineNo+"Site : "+lsSiteCode+" Item : "+mItemCode+" Loc : "+mLocCode+"~r~n"+" Lot No : "+mLotNoDist+" Lot Sl : "+mLotSlDist+"~r~n"+" Available Stk : "+mQtyStock+" Issue Qty : "+mQuantity);
//if(mTotStk < mQuantity)
if(mQtyStock < mQuantity)
{
System.out.println("Less Stock Line no=>"+mLineNo+"Site : "+lsSiteCode+" Item : "+mItemCode+" Loc : "+mLocCode+"~r~n"+" Lot No : "+mLotNoDist+" Lot Sl : "+mLotSlDist+"~r~n"+" Available Stk : "+mQtyStock+" Issue Qty : "+mQuantity);
errString = itmDBAccessEJB.getErrorString("","VTDIST4",chgUser);
break ;
}
stkUpdMap.put("site_code",siteCodeISS);
stkUpdMap.put("item_code",mItemCode);
stkUpdMap.put("loc_code",mLocCode);
stkUpdMap.put("lot_no",mLotNo);
stkUpdMap.put("lot_sl",mLotSl);
stkUpdMap.put("unit",mUnit);
stkUpdMap.put("quantity",Double.toString(mQuantity));
if(lcCounQtyStduom == 0)
{
lcCounQtyStduom = 1;
}
stkUpdMap.put("qty_stduom",Double.toString(lcCounQtyStduom * mQuantity));
stkUpdMap.put("tran_type","ID");
stkUpdMap.put("tran_date",mTranDate);
stkUpdMap.put("tran_ser","D-ISS");
stkUpdMap.put("tran_id",tranId);
stkUpdMap.put("line_no",new Integer(mLineNo));
stkUpdMap.put("rate",Double.toString(0));
stkUpdMap.put("gross_rate",Double.toString(0));
stkUpdMap.put("sitecode_mfg",mSiteCdMfg);
stkUpdMap.put("potency_perc",Double.toString(0));
stkUpdMap.put("mfg_date",mmfgDate);
stkUpdMap.put("acct_code_inv",lsAcctCodeInv);
stkUpdMap.put("cctr_code_inv",lsCctrCodeInv);
stkUpdMap.put("rate_oh",Double.toString(0));
stkUpdMap.put("acct_code_oh",lsAcctCodeOh);
stkUpdMap.put("cctr_code_oh",lsCctrCodeOh);
stkUpdMap.put("dimension"," ");
stkUpdMap.put("no_art",Double.toString(1));
stkUpdMap.put("grade",mGrade);
stkUpdMap.put("batch_no",lsBatchNo);
StockUpdate stkUpd = new StockUpdate();
errString = stkUpd.updateStock(stkUpdMap,xtraParams,conn);
System.out.println("Returning Result "+errString);
stkUpd = null;
stkUpdMap.clear();
if(errString.trim().length()>0 && errString.indexOf("Error") != -1)
{
return errString;
}
else
{
sql=" SELECT INV_STAT FROM LOCATION "
+" WHERE LOC_CODE = '" + mLocCodeGit + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
//pstmt1.setString(1,mLocCodeGit);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
lsTranStat = rs1.getString("INV_STAT");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
lsStdPost = fcom.getFinparams("999999","DIST_ISS_RCP_POST",conn);
if(lsStdPost.equals("NULLFOUND"))
{
lsStdPost="A";
}
lsInvAcct = fcom.getFinparams("999999","INV_ACCT_DISS",conn);
if(lsInvAcct.trim().length()==0)
{
lsInvAcct="N";
}
if(lsStdPost.equals("S") && lsInvAcct.equals("Y"))
{
sql="SELECT B.PRICE_LIST__COST "
+" FROM ITEM A , ITEMSER B "
+" WHERE A.ITEM_SER = B.ITEM_SER "
+" AND A.ITEM_CODE = '" + mItemCode + "' ";
System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
//pstmt1.setString(1,mItemCode);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
lsPriceListCost = rs1.getString("PRICE_LIST__COST")==null?"":rs1.getString("PRICE_LIST__COST");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
if(lsPriceListCost.trim().length()==0)
{
lsPriceList = fcom.getFinparams("999999","STD_COST_PRICE",conn);
}
else
{
lsPriceList = lsPriceListCost;
}
if(lsInvAcct.equals("NULLFOUND"))
{
System.out.println("'VTFINPARM~tVariabe STD_COST_PRICE not defined under Financial Variables'");
}
if(lsPriceList.trim().length() > 0)
{
String trDateSrt = genericUtility.getValidDateString(mTranDate.toString(), genericUtility.getDBDateFormat(), genericUtility.getApplDateFormat() );
lcCostRate = new DistCommon().pickRate(lsPriceList,trDateSrt,mItemCode,"NULL","L",mQuantity,conn);
}
}//end of if(lsStdPost.equals("S") && lsInvAcct.equals("Y"))
else if(lsStdPost.equals("S") && lsInvAcct.equals("N"))
{
lcCostRate = 0.00;
}
else if(lsStdPost.equals("A"))
{
lcCostRate = lcRate;
}
sql="UPDATE DISTORD_ISSDET "
+" SET COST_RATE = ? "
+" WHERE TRAN_ID = '" + tranId + "' "
+" AND LINE_NO = ? "
+" AND ITEM_CODE = '" + mItemCode + "' "
+" AND LOC_CODE = '" + mLocCode + "' "
+" AND LOT_NO = '" + mLotNo + "' "
+" AND LOT_SL = '" + mLotSl + "' ";
System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
pstmt1.setDouble(1,lcCostRate);
//pstmt1.setString(2,tranId);
pstmt1.setInt(2,mLineNo);
//pstmt1.setString(4,mItemCode);
//pstmt1.setString(5,mLocCode);
//pstmt1.setString(6,mLotNo);
//pstmt1.setString(7,mLotSl);
no = pstmt1.executeUpdate();
pstmt1 = null;
}
if(!lsTranType.equals(lsTranTypeParent))
{
sql="UPDATE DISTORD_ISSDET "
+" SET QTY_RETURN = CASE WHEN QTY_RETURN IS NULL THEN 0 "
+" ELSE QTY_RETURN END + ?"
+" WHERE DIST_ORDER = '" + mDistOrder + "' "
+" AND LINE_NO = ? ";
}//end of if(!lsTranType.equals(lsTranTypeParent))
else
{
sql=" UPDATE DISTORDER_DET "
+" SET QTY_SHIPPED = CASE WHEN QTY_SHIPPED IS NULL THEN 0 "
+" ELSE QTY_SHIPPED END + ? "
+" WHERE DIST_ORDER = '" + mDistOrder + "' "
+" AND LINE_NO = ? ";
}
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
pstmt1.setDouble(1,mQuantity);
//pstmt1.setString(2,mDistOrder);
pstmt1.setInt(2,mLineDist);
no = pstmt1.executeUpdate();
pstmt1 = null;
}//end of while(rs.next())
rs.close();
rs = null;
pstmt.close();
pstmt = null;
HashMap insUpdHMap = new HashMap();
sql="SELECT POLICY_NO , CURR_CODE , EXCH_RATE "
+" FROM DISTORDER WHERE DIST_ORDER = '" + mDistOrder + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,mDistOrder);
rs = pstmt.executeQuery();
if(rs.next())
{
lsPolicyNo = rs.getString("POLICY_NO");
lsCurrCd = rs.getString("CURR_CODE");
lcExch = rs.getDouble("EXCH_RATE");
sql="SELECT TRAN_ID ,AGENT_CODE "
+" FROM INSURANCE WHERE POLICY_NO = ? ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString(1,lsPolicyNo);
rs1 = pstmt1.executeQuery();
if(rs1.next())
{
lsTranId = rs1.getString("TRAN_ID") == null ? " " :rs1.getString("TRAN_ID");
lsAgentCode = rs1.getString("AGENT_CODE");
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
}//end of if(rs.next())
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql="SELECT NET_AMT FROM DISTORD_ISS WHERE TRAN_ID = '" + tranId + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
if(rs.next())
{
ldNetAmt = rs.getDouble("NET_AMT");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
lsTranId = lsTranId == null ? "" :lsTranId ;
if(lsTranId.trim().length() > 0)
{
insUpdHMap.put("tran_id__ins",lsTranId);
insUpdHMap.put("doc_no",tranId);
insUpdHMap.put("doc_date",mTranDate);
insUpdHMap.put("ref_ser",lsTranSer);
insUpdHMap.put("doc_value",new Double(ldNetAmt));
insUpdHMap.put("curr_code",lsCurrCd);
if(lsCurrCd==null)
{
errString = itmDBAccessEJB.getErrorString("","VTCURRCD1",chgUser);
return errString;
}
insUpdHMap.put("exch_rate",lsCurrCd);
if(lsCurrCd.trim().length()==0)
{
errString = itmDBAccessEJB.getErrorString("","VTEXCH1",chgUser);
return errString;
}
insUpdHMap.put("doc_type","I");
insUpdHMap.put("cert_no",lsPolicyNo);
insUpdHMap.put("bulk","Y");
String docNo = null,certNo = null;
int llCnt = 0;
sql=" SELECT COUNT(*)as COUNTER FROM INSURANCE_DET "
+" WHERE TRAN_ID__INS = '" + lsTranId + "' AND "
+" REF_SER = '" + lsTranSer + "' AND "
+" REF_ID = '" + docNo + "' AND "
+" CERT_NO = '" + certNo + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,lsTranId);
//pstmt.setString(2,lsTranSer);
//pstmt.setString(3,docNo);
//pstmt.setString(4,certNo);
rs = pstmt.executeQuery();
if(rs.next())
{
llCnt = rs.getInt("NET_AMT");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(llCnt > 0)
{
errCode="VTINSNF1";
errString = itmDBAccessEJB.getErrorString("","VTINSNF1",chgUser);
return errString;
}
else
{
errString = new InsuranceUpdate().gf_ins_upd(insUpdHMap,ldNetAmt,conn);
}
}//end of if(lsTranId.trim().length() > 0)
sql="UPDATE DISTORD_ISS SET CONFIRMED = 'Y',CONF_DATE = sysdate "
+" WHERE TRAN_ID = '" + tranId + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,tranId);
no = pstmt.executeUpdate();
pstmt = null;
sql="UPDATE ROADPERMIT SET STATUS = 'C' "
+" WHERE RD_PERMIT_NO = ? ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,lsRdPermitNo);
no = pstmt.executeUpdate();
pstmt = null;
sql="SELECT DIST_ORDER FROM DISTORD_ISS "
+" WHERE TRAN_ID = ? ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
if(rs.next())
{
mDistOrder = rs.getString("DIST_ORDER");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql="SELECT AUTO_RECEIPT FROM DISTORDER "
+" WHERE DIST_ORDER = '" + mDistOrder + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql=>"+sql);
pstmt = conn.prepareStatement(sql); //added by rajendra on 31/3/08
//pstmt.setString(1,mDistOrder);
rs = pstmt.executeQuery();
if(rs.next())
{
lsAutoRcp = rs.getString("AUTO_RECEIPT")== null ? "":rs.getString("AUTO_RECEIPT").trim();
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
System.out.println("lsAutoRcp..................["+lsAutoRcp+"]");
System.out.println("errString..................["+errString+"]");
if( errString.trim().length() == 0 &&("Y".equals(lsAutoRcp) || "C".equals(lsAutoRcp) ) )
{
xmlString = createXmlForIssue(tranId,conn);
System.out.println("xmlString.................."+xmlString);
CreateDistReceipt distRcpt = new CreateDistReceipt();
errString = distRcpt.createDistributionReceipt(xmlString,xtraParams, conn);
distRcpt = null;
}
}
catch (SQLException e1)
{
errString = "ERROR";
e1.printStackTrace();
System.out.println("The Exception occure in DistIssueConfirmActEJB :"+e1);
}
catch (Exception e)
{
errString = "ERROR";
e.printStackTrace();
System.out.println("The Exception occure in DistIssueConfirmActEJB :"+e);
}
finally
{
pstmt = null;
rs = null;
//conn = null;
}
return errString;
}
public String createXmlForIssue(String tranId,Connection conn)throws RemoteException,ITMException
{
String xmlString = null;
StringBuffer xmlBuff = new StringBuffer();
PreparedStatement pstmt = null;
ResultSet rs = null;
String sql = null;
try
{
System.out.println("[DistIssueConfirmActEJB] createXmlForIssue() method called.........");
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
//System.out.println("[DistIssueConfirmActEJB]createXmlForIssue() method called..............");
sql=" SELECT D.TRAN_ID,D.TRAN_DATE,D.EFF_DATE,D.DIST_ORDER,D.SITE_CODE,"
+" D.SITE_CODE__DLV,"
+" D.DIST_ROUTE,D.TRAN_CODE,D.LR_NO,D.LR_DATE,D.LORRY_NO,D.GROSS_WEIGHT,"
+" D.TARE_WEIGHT,D.NET_WEIGHT,D.FRT_AMT,D.AMOUNT,D.TAX_AMT,D.NET_AMT,"
+" D.REMARKS,D.FRT_TYPE,D.CHG_USER,D.CHG_TERM,D.CURR_CODE,D.CHG_DATE,"
+" SITE_A.DESCR ADESCR,SITE_B.DESCR BDESCR,LOCATION.DESCR locdescr,TRANSPORTER.TRAN_NAME,CURRENCY_A.DESCR CURRADESCR,"
+" D.CONFIRMED,D.LOC_CODE__GIT,D.CONF_DATE,D.NO_ART,D.TRANS_MODE,D.GP_NO,"
+" D.GP_DATE,D.CONF_PASSWD,D.ORDER_TYPE,D.GP_SER,D.REF_NO,D.REF_DATE,"
+" D.AVAILABLE_YN,SITE_B.ADD1 BADD1,SITE_B.ADD2 BADD2,SITE_B.CITY BCITY,SITE_B.PIN BPIN,SITE_B.STATE_CODE BSTATE_CODE,"
+" D.EXCH_RATE,D.TRAN_TYPE,D.EMP_CODE__APRV,D.DISCOUNT,D.PERMIT_NO,D.SHIPMENT_ID,"
+" D.CURR_CODE__FRT,D.EXCH_RATE__FRT,CURRENCY_B.DESCR CURRBDESCR,D.RD_PERMIT_NO,D.DC_NO,"
+" D.TRAN_SER,D.PART_QTY,SPACE(100) AS SUNDRY_DETAILS,SPACE(100) AS SUNDRY_NAME,"
+" D.PROJ_CODE,SITE_B.TELE1 BTELE1,SITE_B.TELE2 BTELE2,SITE_B.TELE3 BTELE3,D.SITE_CODE__BIL,SITE_C.DESCR CDESCR,"
+" SITE_C.ADD1 CADD1,SITE_C.ADD2 CADD2,SITE_C.CITY CCITY,SITE_C.PIN CPIN,SITE_C.STATE_CODE CSTATE_CODE,D.PALLET_WT,"
+" DISTORDER.AUTO_RECEIPT AUTO_RECEIPT"
+" FROM DISTORD_ISS D,SITE SITE_A,SITE SITE_B,LOCATION LOCATION, "
+" TRANSPORTER TRANSPORTER,CURRENCY CURRENCY_A,CURRENCY CURRENCY_B, "
+" SITE SITE_C,DISTORDER DISTORDER "
+" WHERE ( D.SITE_CODE = SITE_A.SITE_CODE ) AND "
+" ( D.SITE_CODE__DLV = SITE_B.SITE_CODE ) AND "
+" ( D.LOC_CODE__GIT = LOCATION.LOC_CODE (+) ) AND "
+" ( D.CURR_CODE = CURRENCY_A.CURR_CODE ) AND "
+" ( D.DIST_ORDER = DISTORDER.DIST_ORDER ) AND "
+" ( D.TRAN_CODE=TRANSPORTER.TRAN_CODE(+)) AND "
+" ( D.CURR_CODE__FRT=CURRENCY_B.CURR_CODE(+)) AND "
+" ( D.SITE_CODE__BIL=SITE_C.SITE_CODE(+))"
+" AND D.TRAN_ID = '" + tranId + "' ";
//System.out.println("[DistIssueConfirmActEJB] sql for header=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
xmlBuff.append("<Root>");
if(rs.next())
{
xmlBuff.append("<Detail1>");
xmlBuff.append("<tran_id>"+rs.getString("TRAN_ID")+"</tran_id>");
xmlBuff.append("<tran_date>"+sdf.format(rs.getTimestamp("TRAN_DATE"))+"</tran_date>");
xmlBuff.append("<eff_date>"+sdf.format(rs.getTimestamp("EFF_DATE"))+"</eff_date>");
xmlBuff.append("<dist_order><![CDATA["+rs.getString("DIST_ORDER")+"]]></dist_order>");
xmlBuff.append("<site_code><![CDATA["+(rs.getString("SITE_CODE")==null?"":rs.getString("SITE_CODE"))+"]]></site_code>");
xmlBuff.append("<site_code__dlv><![CDATA["+(rs.getString("SITE_CODE__DLV")==null?"":rs.getString("SITE_CODE__DLV"))+"]]></site_code__dlv>");
xmlBuff.append("<dist_route><![CDATA["+(rs.getString("DIST_ROUTE")==null?"":rs.getString("DIST_ROUTE"))+"]]></dist_route>");
xmlBuff.append("<tran_code><![CDATA["+(rs.getString("TRAN_CODE")==null?"":rs.getString("TRAN_CODE"))+"]]></tran_code>");
xmlBuff.append("<lr_no><![CDATA["+(rs.getString("LR_NO")==null?"":rs.getString("LR_NO"))+"]]></lr_no>");
xmlBuff.append("<lr_date><![CDATA[]]></lr_date>");
xmlBuff.append("<lorry_no><![CDATA["+(rs.getString("LORRY_NO")==null?"":rs.getString("LORRY_NO"))+"]]></lorry_no>");
xmlBuff.append("<gross_weight><![CDATA["+rs.getDouble("GROSS_WEIGHT")+"]]></gross_weight>");
xmlBuff.append("<tare_weight><![CDATA["+rs.getDouble("TARE_WEIGHT")+"]]></tare_weight>");
xmlBuff.append("<net_weight><![CDATA["+rs.getDouble("NET_WEIGHT")+"]]></net_weight>");
xmlBuff.append("<frt_amt><![CDATA["+rs.getDouble("FRT_AMT")+"]]></frt_amt>");
xmlBuff.append("<amount><![CDATA["+rs.getDouble("AMOUNT")+"]]></amount>");
xmlBuff.append("<tax_amt><![CDATA["+rs.getDouble("TAX_AMT")+"]]></tax_amt>");
xmlBuff.append("<net_amt><![CDATA["+rs.getDouble("NET_AMT")+"]]></net_amt>");
xmlBuff.append("<remarks><![CDATA["+(rs.getString("REMARKS")==null?"":rs.getString("REMARKS"))+"]]></remarks>");
xmlBuff.append("<frt_type><![CDATA["+(rs.getString("FRT_TYPE")==null?"":rs.getString("FRT_TYPE"))+"]]></frt_type>");
xmlBuff.append("<chg_user><![CDATA["+(rs.getString("CHG_USER")==null?"":rs.getString("CHG_USER"))+"]]></chg_user>");
xmlBuff.append("<chg_term><![CDATA["+(rs.getString("CHG_TERM")==null?"":rs.getString("CHG_TERM"))+"]]></chg_term>");
xmlBuff.append("<curr_code><![CDATA["+(rs.getString("CURR_CODE")==null?"":rs.getString("CURR_CODE"))+"]]></curr_code>");
xmlBuff.append("<chg_date><![CDATA["+sdf.format(rs.getTimestamp("CHG_DATE"))+"]]></chg_date>");
xmlBuff.append("<site_descr><![CDATA["+(rs.getString("ADESCR")==null?"":rs.getString("ADESCR"))+"]]></site_descr>");
xmlBuff.append("<site_to_descr><![CDATA["+(rs.getString("BDESCR")==null?"":rs.getString("BDESCR"))+"]]></site_to_descr>");
xmlBuff.append("<location_descr><![CDATA["+(rs.getString("locdescr")==null?"":rs.getString("locdescr"))+"]]></location_descr>");
xmlBuff.append("<tran_name><![CDATA["+(rs.getString("TRAN_NAME")==null?"":rs.getString("TRAN_NAME"))+"]]></tran_name>");
xmlBuff.append("<currency_descr><![CDATA["+(rs.getString("CURRADESCR")==null?"":rs.getString("CURRADESCR"))+"]]></currency_descr>");
xmlBuff.append("<confirmed><![CDATA[Y]]></confirmed>");
xmlBuff.append("<loc_code__git><![CDATA["+(rs.getString("LOC_CODE__GIT")==null?"":rs.getString("LOC_CODE__GIT"))+"]]></loc_code__git>");
xmlBuff.append("<conf_date><![CDATA["+sdf.format(rs.getTimestamp("CONF_DATE"))+"]]></conf_date>");
xmlBuff.append("<no_art><![CDATA["+rs.getInt("NO_ART")+"]]></no_art>");
xmlBuff.append("<trans_mode><![CDATA["+(rs.getString("TRANS_MODE")==null?"":rs.getString("TRANS_MODE"))+"]]></trans_mode>");
xmlBuff.append("<gp_no><![CDATA["+(rs.getString("GP_NO")==null?"":rs.getString("GP_NO"))+"]]></gp_no>");
xmlBuff.append("<gp_date><![CDATA["+(rs.getTimestamp("GP_DATE") ==null?"":sdf.format(rs.getTimestamp("GP_DATE")))+"]]></gp_date>");
xmlBuff.append("<conf_passwd/>");
xmlBuff.append("<order_type><![CDATA["+(rs.getString("ORDER_TYPE")==null?"":rs.getString("ORDER_TYPE"))+" ]]></order_type>");
xmlBuff.append("<gp_ser><![CDATA["+(rs.getString("ORDER_TYPE")==null?"":rs.getString("ORDER_TYPE"))+"]]></gp_ser>");
xmlBuff.append("<ref_no><![CDATA["+(rs.getString("REF_NO")==null?"":rs.getString("REF_NO"))+"]]></ref_no>");
xmlBuff.append("<ref_date><![CDATA["+(rs.getTimestamp("REF_DATE") == null?"":sdf.format(rs.getTimestamp("REF_DATE")))+"]]></ref_date>");
xmlBuff.append("<available_yn><![CDATA["+(rs.getString("AVAILABLE_YN")==null?"":rs.getString("AVAILABLE_YN"))+"]]></available_yn>");
xmlBuff.append("<site_add1><![CDATA["+(rs.getString("BADD1")==null?"":rs.getString("BADD1"))+" ]]></site_add1>");
xmlBuff.append("<site_add2><![CDATA["+(rs.getString("BADD2")==null?"":rs.getString("BADD2"))+" ]]></site_add2>");
xmlBuff.append("<site_city><![CDATA["+(rs.getString("BCITY")==null?"":rs.getString("BCITY"))+" ]]></site_city>");
xmlBuff.append("<site_pin><![CDATA["+(rs.getString("BPIN")==null?"":rs.getString("BPIN"))+" ]]></site_pin>");
xmlBuff.append("<site_state_code><![CDATA["+(rs.getString("BSTATE_CODE")==null?"":rs.getString("BSTATE_CODE"))+" ]]></site_state_code>");
xmlBuff.append("<exch_rate><![CDATA["+(rs.getDouble("EXCH_RATE"))+" ]]></exch_rate>");
xmlBuff.append("<tran_type><![CDATA["+(rs.getString("TRAN_TYPE")==null?"":rs.getString("TRAN_TYPE"))+" ]]></tran_type>");
xmlBuff.append("<emp_code__aprv><![CDATA["+(rs.getString("EMP_CODE__APRV")==null?"":rs.getString("EMP_CODE__APRV"))+"]]></emp_code__aprv>");
xmlBuff.append("<discount><![CDATA["+rs.getDouble("DISCOUNT")+"]]></discount>");
xmlBuff.append("<permit_no><![CDATA["+(rs.getString("PERMIT_NO")==null?"":rs.getString("PERMIT_NO"))+"]]></permit_no>");
xmlBuff.append("<shipment_id><![CDATA["+(rs.getString("SHIPMENT_ID")==null?"":rs.getString("SHIPMENT_ID"))+"]]></shipment_id>");
xmlBuff.append("<curr_code__frt><![CDATA["+(rs.getString("CURR_CODE__FRT")==null?"":rs.getString("CURR_CODE__FRT"))+"]]></curr_code__frt>");
xmlBuff.append("<exch_rate__frt><![CDATA["+rs.getDouble("EXCH_RATE__FRT")+"]]></exch_rate__frt>");
xmlBuff.append("<currency_descr__frt><![CDATA[]]></currency_descr__frt>");
xmlBuff.append("<rd_permit_no><![CDATA["+(rs.getString("RD_PERMIT_NO")==null?"":rs.getString("RD_PERMIT_NO"))+"]]></rd_permit_no>");
xmlBuff.append("<dc_no><![CDATA["+(rs.getString("DC_NO")==null?"":rs.getString("DC_NO"))+"]]></dc_no>");
xmlBuff.append("<tran_ser><![CDATA["+(rs.getString("TRAN_SER")==null?"":rs.getString("TRAN_SER"))+"]]></tran_ser>");
xmlBuff.append("<part_qty><![CDATA["+(rs.getString("PART_QTY")==null?"":rs.getString("PART_QTY"))+"]]></part_qty>");
xmlBuff.append("<sundry_details><![CDATA[]]></sundry_details>");
xmlBuff.append("<sundry_name><![CDATA["+(rs.getString("SUNDRY_NAME")==null?"":rs.getString("SUNDRY_NAME"))+"]]></sundry_name>");
xmlBuff.append("<proj_code><![CDATA["+(rs.getString("PROJ_CODE")==null?"":rs.getString("PROJ_CODE"))+" ]]></proj_code>");
xmlBuff.append("<site_tele1><![CDATA["+(rs.getString("BTELE1")==null?"":rs.getString("BTELE1"))+"]]></site_tele1>");
xmlBuff.append("<site_tele2><![CDATA["+(rs.getString("BTELE2")==null?"":rs.getString("BTELE2"))+"]]></site_tele2>");
xmlBuff.append("<site_tele3><![CDATA["+(rs.getString("BTELE3")==null?"":rs.getString("BTELE3"))+"]]></site_tele3>");
xmlBuff.append("<site_code__bil><![CDATA["+(rs.getString("SITE_CODE__BIL")==null?"":rs.getString("SITE_CODE__BIL"))+"]]></site_code__bil>");
xmlBuff.append("<site_descr_bill><![CDATA[]]></site_descr_bill>");
xmlBuff.append("<site_add1_bill><![CDATA["+(rs.getString("CADD1")==null?"":rs.getString("CADD1"))+"]]></site_add1_bill>");
xmlBuff.append("<site_add2_bill><![CDATA["+(rs.getString("CADD2")==null?"":rs.getString("CADD2"))+"]]></site_add2_bill>");
xmlBuff.append("<site_city_bill><![CDATA["+(rs.getString("CCITY")==null?"":rs.getString("CCITY"))+"]]></site_city_bill>");
xmlBuff.append("<site_pin_bill><![CDATA["+(rs.getString("CPIN")==null?"":rs.getString("CPIN"))+"]]></site_pin_bill>");
xmlBuff.append("<site_state_code_bill><![CDATA["+(rs.getString("CSTATE_CODE")==null?"":rs.getString("CSTATE_CODE"))+"]]></site_state_code_bill>");
xmlBuff.append("<pallet_wt><![CDATA["+rs.getDouble("PALLET_WT")+"]]></pallet_wt>");
xmlBuff.append("<auto_receipt><![CDATA["+(rs.getString("AUTO_RECEIPT")==null?"":rs.getString("AUTO_RECEIPT"))+"]]></auto_receipt>");
xmlBuff.append("</Detail1>");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql="SELECT D.TRAN_ID TRAN_ID,D.LINE_NO LINE_NO,D.DIST_ORDER DIST_ORDER,D.LINE_NO_DIST_ORDER LINE_NO_DIST_ORDER,"
+" D.ITEM_CODE ITEM_CODE,D.QUANTITY QUANTITY,D.UNIT UNIT,D.TAX_CLASS TAX_CLASS,D.TAX_CHAP TAX_CHAP,D.TAX_ENV TAX_ENV,"
+" D.LOC_CODE LOC_CODE,D.LOT_NO LOT_NO,D.LOT_SL LOT_SL,D.PACK_CODE PACK_CODE,D.RATE RATE,D.AMOUNT AMOUNT,D.TAX_AMT TAX_AMT,"
+" D.NET_AMT NET_AMT,ITEM.DESCR ITEMDESCR,LOCATION.DESCR LOCDESCR,D.SITE_CODE__MFG SITE_CODE__MFG,D.MFG_DATE MFG_DATE,"
+" D.EXP_DATE EXP_DATE,D.POTENCY_PERC POTENCY_PERC,D.NO_ART NO_ART,D.GROSS_WEIGHT GROSS_WEIGHT,D.TARE_WEIGHT TARE_WEIGHT,"
+" D.NET_WEIGHT NET_WEIGHT,D.PACK_INSTR PACK_INSTR,D.DIMENSION DIMENSION,D.SUPP_CODE__MFG SUPP_CODE__MFG,D.BATCH_NO BATCH_NO,"
+" D.GRADE GRADE,D.RETEST_DATE RETEST_DATE,D.RATE__CLG RATE__CLG,D.DISCOUNT DISCOUNT,D.DISC_AMT DISC_AMT,D.REMARKS REMARKS,"
+" D.COST_RATE COST_RATE,SPACE(300) AS QTY_DETAILS,D.UNIT__ALT UNIT__ALT,D.CONV__QTY__ALT CONV__QTY__ALT,"
+" D.QTY_ORDER__ALT QTY_ORDER__ALT,D.PALLET_WT PALLET_WT"
+" FROM DISTORD_ISSDET D,ITEM ITEM,LOCATION LOCATION "
+" WHERE ( D.ITEM_CODE = ITEM.ITEM_CODE ) AND "
+" ( D.LOC_CODE = LOCATION.LOC_CODE )"
+" AND ( ( D.TRAN_ID = '" + tranId + "') ) "
+" ORDER BY D.LINE_NO ASC ";
//System.out.println("[DistIssueConfirmActEJB] sql for detail=>"+sql);
pstmt = conn.prepareStatement(sql);
//pstmt.setString(1,tranId);
rs = pstmt.executeQuery();
while(rs.next())
{
xmlBuff.append("<Detail2 dbID=\"\" domID=\"1\" objName=\"dist_issue\" objContext=\"2\">");
xmlBuff.append("<attribute selected=\"N\" updateFlag=\"A\" status=\"N\" pkNames=\"\"/>");
xmlBuff.append("<tran_id/>");
//xmlBuff.append("<tran_id>"+(rs.getString("TRAN_ID"))+"</tran_id>");
xmlBuff.append("<line_no><![CDATA["+(rs.getInt("LINE_NO"))+"]]></line_no>");
xmlBuff.append("<dist_order><![CDATA["+rs.getString("DIST_ORDER")+"]]></dist_order>");
//next line changed for lin_no to LINE_NO_DIST_ORDER on 020309
xmlBuff.append("<line_no_dist_order><![CDATA["+rs.getInt("LINE_NO_DIST_ORDER")+"]]></line_no_dist_order>");
//xmlBuff.append("<line_no_dist_order><![CDATA["+rs.getInt("LINE_NO")+"]]></line_no_dist_order>");
xmlBuff.append("<item_code><![CDATA["+(rs.getString("ITEM_CODE"))+"]]></item_code>");
xmlBuff.append("<quantity><![CDATA["+rs.getDouble("QUANTITY")+"]]></quantity>");
xmlBuff.append("<unit><![CDATA["+(rs.getString("UNIT")==null?"":rs.getString("UNIT"))+"]]></unit>");
xmlBuff.append("<tax_class><![CDATA["+(rs.getString("TAX_CLASS")==null?"":rs.getString("TAX_CLASS"))+"]]></tax_class>");
xmlBuff.append("<tax_chap><![CDATA["+(rs.getString("TAX_CHAP")==null?"":rs.getString("TAX_CHAP"))+"]]></tax_chap>");
xmlBuff.append("<tax_env><![CDATA["+(rs.getString("TAX_ENV")==null?"":rs.getString("TAX_ENV"))+"]]></tax_env>");
xmlBuff.append("<loc_code><![CDATA["+(rs.getString("LOC_CODE")==null?"":rs.getString("LOC_CODE"))+"]]></loc_code>");
xmlBuff.append("<lot_no><![CDATA["+(rs.getString("LOT_NO")==null?"":rs.getString("LOT_NO"))+"]]></lot_no>");
xmlBuff.append("<lot_sl><![CDATA["+(rs.getString("LOT_SL")==null?"":rs.getString("LOT_SL"))+"]]></lot_sl>");
xmlBuff.append("<pack_code><![CDATA["+(rs.getString("PACK_CODE")==null?"":rs.getString("PACK_CODE"))+"]]></pack_code>");
xmlBuff.append("<rate><![CDATA["+rs.getDouble("RATE")+"]]></rate>");
xmlBuff.append("<amount><![CDATA["+rs.getDouble("AMOUNT")+"]]></amount>");
xmlBuff.append("<tax_amt><![CDATA["+rs.getDouble("TAX_AMT")+"]]></tax_amt>");
xmlBuff.append("<net_amt><![CDATA["+rs.getDouble("NET_AMT")+"]]></net_amt>");
xmlBuff.append("<item_descr><![CDATA["+(rs.getString("ITEMDESCR")==null?"":rs.getString("ITEMDESCR"))+"]]></item_descr>");
xmlBuff.append("<location_desc/>");
xmlBuff.append("<site_code__mfg/>");
SimpleDateFormat sdf1 = new SimpleDateFormat(genericUtility.getApplDateFormat());
String mfgdateStr ="" , expdateStr ="";
Timestamp mfgDate =null,expDate =null;
mfgDate = rs.getTimestamp("MFG_DATE");
if(mfgDate != null)
{
mfgdateStr = sdf1.format(mfgDate);
}
expDate = rs.getTimestamp("EXP_DATE");
if(mfgDate != null)
{
expdateStr = sdf1.format(expDate);
}
xmlBuff.append("<mfg_date><![CDATA["+mfgdateStr+"]]></mfg_date>");
xmlBuff.append("<exp_date><![CDATA["+expdateStr+"]]></exp_date>");
xmlBuff.append("<potency_perc><![CDATA["+rs.getDouble("POTENCY_PERC")+"]]></potency_perc>");
xmlBuff.append("<no_art><![CDATA["+rs.getInt("NO_ART")+"]]></no_art>");
xmlBuff.append("<gross_weight><![CDATA["+rs.getDouble("GROSS_WEIGHT")+"]]></gross_weight>");
xmlBuff.append("<tare_weight><![CDATA["+rs.getDouble("TARE_WEIGHT")+"]]></tare_weight>");
xmlBuff.append("<net_weight><![CDATA["+rs.getDouble("NET_WEIGHT")+"]]></net_weight>");
xmlBuff.append("<pack_instr><![CDATA["+(rs.getString("PACK_INSTR")==null?"":rs.getString("PACK_INSTR"))+"]]></pack_instr>");
xmlBuff.append("<dimension><![CDATA["+(rs.getString("DIMENSION")==null?"":rs.getString("DIMENSION"))+"]]></dimension>");
xmlBuff.append("<supp_code__mfg><![CDATA["+(rs.getString("SUPP_CODE__MFG")==null?"":rs.getString("SUPP_CODE__MFG"))+"]]></supp_code__mfg>");
xmlBuff.append("<batch_no><![CDATA["+(rs.getString("BATCH_NO")==null?"":rs.getString("BATCH_NO"))+"]]></batch_no>");
xmlBuff.append("<grade><![CDATA["+(rs.getString("GRADE")==null?"":rs.getString("GRADE"))+"]]></grade>");
xmlBuff.append("<retest_date><![CDATA[]]></retest_date>");
xmlBuff.append("<rate__clg><![CDATA["+rs.getDouble("RATE__CLG")+"]]></rate__clg>");
xmlBuff.append("<discount><![CDATA["+rs.getDouble("DISCOUNT")+"]]></discount>");
xmlBuff.append("<disc_amt><![CDATA["+rs.getDouble("DISC_AMT")+"]]></disc_amt>");
xmlBuff.append("<remarks><![CDATA["+(rs.getString("REMARKS")==null?"":rs.getString("REMARKS"))+"]]></remarks>");
xmlBuff.append("<cost_rate><![CDATA["+rs.getDouble("COST_RATE")+"]]></cost_rate>");
xmlBuff.append("<qty_details><![CDATA[]]></qty_details>");
xmlBuff.append("<unit__alt><![CDATA["+(rs.getString("UNIT__ALT")==null?"":rs.getString("UNIT__ALT"))+"]]></unit__alt>");
xmlBuff.append("<conv__qty__alt><![CDATA["+rs.getDouble("CONV__QTY__ALT")+"]]></conv__qty__alt>");
xmlBuff.append("<qty_order__alt><![CDATA["+rs.getDouble("QTY_ORDER__ALT")+"]]></qty_order__alt>");
xmlBuff.append("<pallet_wt><![CDATA["+rs.getDouble("PALLET_WT")+"]]></pallet_wt>");
xmlBuff.append("</Detail2>");
}//end of while(rs.next())
rs.close();
rs = null;
pstmt.close();
pstmt = null;
xmlBuff.append("</Root>");
xmlString = xmlBuff.toString();
}
catch(Exception e)
{
e.printStackTrace();
throw new ITMException(e);
}
return xmlString;
}
private String getCurrdateAppFormat()
{
String s = "";
//GenericUtility genericUtility = GenericUtility.getInstance();
try
{
java.util.Date date = null;
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
System.out.println(genericUtility.getDBDateFormat());
SimpleDateFormat simpledateformat = new SimpleDateFormat(genericUtility.getDBDateFormat());
date = simpledateformat.parse(timestamp.toString());
timestamp = Timestamp.valueOf(simpledateformat.format(date).toString() + " 00:00:00.0");
s = (new SimpleDateFormat(genericUtility.getApplDateFormat())).format(timestamp).toString();
}
catch(Exception exception)
{
System.out.println("Exception in [MPSOrder] getCurrdateAppFormat " + exception.getMessage());
}
return s;
}
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
//import javax.ejb.EJBObject;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.ActionHandlerLocal;
import javax.ejb.Local; // added for ejb3
@Local // added for ejb3
public interface DistIssueConfirmActLocal extends ActionHandlerLocal//,EJBObject
{
public String actionHandler() throws RemoteException,ITMException;
public String actionHandler(String tranIDIns, String xtraParams, String forcedFlag) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import javax.ejb.EJBObject;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.ActionHandlerRemote;
import javax.ejb.Remote; // added for ejb3
@Remote // added for ejb3
public interface DistIssueConfirmActRemote extends ActionHandlerRemote//,EJBObject
{
public String actionHandler() throws RemoteException,ITMException;
public String actionHandler(String tranIDIns, String xtraParams, String forcedFlag) throws RemoteException,ITMException;
}
/********************************************************
Title : Distribution Order
Date : 20/09/07
Author: Mohammad Shoaib
********************************************************/
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.sql.DriverManager;
import java.sql.Timestamp;
import java.sql.PreparedStatement;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.ResultSet;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.w3c.dom.Node;
//import javax.ejb.SessionBean;
import javax.ejb.CreateException;
import ibase.webitm.utility.ITMException;
//import ibase.webitm.utility.GenericUtility;
import ibase.system.config.ConnDriver;
import ibase.webitm.ejb.ValidatorEJB;
import ibase.system.config.*;
import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility;
import javax.naming.InitialContext;
import java.util.Properties;
import ibase.webitm.ejb.*;
import ibase.webitm.ejb.sys.SysCommon;
import javax.ejb.Stateless; // added for ejb3
@Stateless // added for ejb3
public class DistOrder extends ValidatorEJB //implements SessionBean
{
/*public void ejbCreate() throws RemoteException, CreateException
{
System.out.println("<======= Dist Order EJB IS IN PROCESS ========>");
}
public void ejbRemove()
{
}
public void ejbActivate()
{
}
public void ejbPassivate()
{
}*/
public String wfValData() throws RemoteException,ITMException
{
return "";
}
public String itemChanged() throws RemoteException,ITMException
{
return "";
}
public String updateStatus()throws RemoteException,ITMException
{
return "";
}
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
Document dom1 = null;
Document dom2 = null;
Document dom3 = null;
String errString = "";
System.out.println("<====== VALIDATION START =====>");
try
{
System.out.println( "xmlString:::" + xmlString );
System.out.println( "xmlString1:::" + xmlString1 );
System.out.println( "xmlString2:::" + xmlString2 );
dom = parseString(xmlString);
dom1 = parseString(xmlString1);
if (xmlString2.trim().length() > 0 )
{
dom2 = parseString("<Root>" + xmlString2+ "</Root>");
}
errString = wfValData(dom,dom1,dom2,objContext,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : DistOrderEJB : wfValData(String xmlString) : ==>\n"+e.getMessage());
}
return (errString);
}
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
int ctr = 0;
String startDate = null,endDate = null;
String columnValue = null;
String childNodeName = null;
String errString = "";
String errCode = null;
String userId = null,loginSite = null;
//field from pb
int cc, xx, initialField = 1, lastField = 1, fldcase = 0, madvperc, llCount;
String fldname = "", errcode = " ";
String lsSundryCode = null;
String mVal = null, mVal1 = null, fldnm = null, itemLocty = null, LocTy = null, lsDlvsite = null, lsSource = null, lsSuppsite = null;
String lsLoccode = null, lsLotno = null, lsLotsl = null, lsBackflushtype = null, lsPparentHdr = null, lsParentDet = null;
String mitemcode = null, mcustcode = null, mstan = null, mstan1 = null,lsEtatus = null, lsEntfrom = null, lsEntto = null, lsItemCode = null;
String mcode = null, mcustCode = null, msiteCode = null, mactive = null, mitem_ser = null, mitemSerHdr = null, lsCurrCode = null;
String mothSer = null, mschemeCd = null, msiteCd = null, mstateCd = null, mtype = null, lsConf = null, lsSaleOrder = null,lsTranType = null;
String lsLocCodeCons = null , lsTrantype = null, lsSundry_code = null, lsSundryType = null, lsGrpCode = null, lsSalesPers = null;
String lsChgSite = null, lsProjcode = null;
String lsOrderType, mslabOn, sFieldNo = "0";
String lsCheckIntegralQty, lsCurrCodeBase, lsSiteCodeBil;
Timestamp mdate1 = null;
java.util.Date mdate11 =null ,mdate2 = null, mtrandate = null, morderDate1 = null;
java.util.Date mdueDate = null, morderDate = null, mshipDate = null;
String lsDistOrder = null;
int llLineno;
String lsSiteCode = null, lsPolicyNo = null, lsDlvTerm = null, lsPolNo = null;
double mqty = 0.0, mintQty = 0.0, lcQtyConfirm = 0.0, lcQtyOrder = 0.0, lcOldqty = 0.0, lcOoqty = 0.0, lcDsqty = 0.0;
double ldExchRate, lcIntQty;
String lsStatus = null;
double lcSoqty = 0.0;
String mVAL = null;
String mval1 = null;
long cnt = 0, mcount, mitemCnt, mcnt, lcCnt;
String mval = null;
String lsDdlvsite = null;
String appDateFormat = null;
int currentFormNo = 0;
int childNodeListLength;
Connection conn = null;
PreparedStatement pstmt=null;
ResultSet rs = null;
String sql = null;
ITMDBAccessLocal dbAccessRemote = null; // for ejb dbAccessRemote var is used every where so not chage is varname
try
{
ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB( "DriverITM" );
connDriver = null;
userId = getValueFromXTRA_PARAMS( xtraParams, "loginCode" );
loginSite = getValueFromXTRA_PARAMS( xtraParams, "loginSiteCode" );
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
if(objContext != null && objContext.trim().length()>0)
{
currentFormNo = Integer.parseInt(objContext);
}
//getting jndi look for ITMDBAccess object
AppConnectParm appConnect = new AppConnectParm();
Properties props = appConnect.getProperty();
InitialContext ctx = new InitialContext( props );
System.out.println("Looking Up for DBAccess EJB with Properties ==>\n"+props);
dbAccessRemote = (ITMDBAccessLocal)ctx.lookup( "ibase/ITMDBAccessEJB/local" );
//ITMDBAccess dbAccessRemote = dbAccessHome.create();
//end getting jndi look for ITMDBAccess object
//making object of DistCommon
DistCommon distCommon = new DistCommon();
//
appDateFormat = genericUtility.getApplDateFormat();
switch( currentFormNo )
{
case 1 :
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr++)
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if ( childNodeName.equalsIgnoreCase( "sale_order" ))
{
mval = genericUtility.getColumnValue( "sale_order", dom );
System.out.println( "mval ::[" + mval + "]" );
if ( mval != null && mval.trim().length() > 0 )
{
sql = "select confirmed, status from sorder where sale_order = '" + mval.trim() + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsConf = rs.getString( "confirmed" );
lsStatus = rs.getString( "status" );
}
else
{
errcode = "VTSORD1";
errString = getErrorString( "sale_order", errcode, userId );
break;
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( lsConf == null || "N".equalsIgnoreCase( lsConf.trim() ) )
{
errcode = "VTSORD1";
errString = getErrorString( "sale_order", errcode, userId );
break;
}
else if( "C".equalsIgnoreCase( lsStatus.trim() ) || "X".equalsIgnoreCase( lsStatus.trim() ) )
{
errcode = "VTSORDCX";
errString = getErrorString( "sale_order", errcode, userId );
break;
}
}
}
if (childNodeName.equalsIgnoreCase("order_date"))
{
String mdate1Str = genericUtility.getColumnValue( "order_date", dom, "1" );
mdate1 = getDateInForamt( mdate1Str, appDateFormat );
String msiteCodeStr = genericUtility.getColumnValue( "site_code", dom, "1" );
System.out.println( "mdate1 ::[" + mdate1 + "] msiteCode::[" + msiteCodeStr + "]" );
//errcode = dbAccessRemote.nfCheckPeriod( "DIS", mdate1, msiteCodeStr, conn );
errcode = SysCommon.nfCheckPeriod( "DIS", mdate1, msiteCodeStr, conn );
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "order_date", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "site_code__ship" ))
{
mVal = genericUtility.getColumnValue( "site_code__ship", dom );
sql = "Select Count(*) cnt from site where site_code = '" + mVal.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
rs = null;
/*
if get_sqlcode() = -1 then
errcode = 'DS000'+TRIM(STRING(SQLCA.SQLDBCODE))
*/
if( cnt == 0 )
{
errcode = "VTSITE1";
errString = getErrorString( "site_code__ship", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "site_code__dlv" ) )
{
mVal = genericUtility.getColumnValue( "site_code__dlv", dom );
mVal1 = genericUtility.getColumnValue( "site_code__ship", dom );
lsTranType = genericUtility.getColumnValue( "tran_type", dom );
sql = "Select Count(*) cnt from site where site_code = '" + mVal + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
/*
if get_sqlcode() = -1 then
errcode = 'DS000'+TRIM(STRING(SQLCA.SQLDBCODE))
else
*/
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTSITE1";
sql = "select chg_site lsChgSite from distorder_type where tran_type = '" + lsTranType + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsChgSite = rs.getString( "lsChgSite" ) == null ? "" :rs.getString( "lsChgSite" ).trim();
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
errString = getErrorString( "site_code__dlv", errcode, userId );
break;
}
else if( "Y".equalsIgnoreCase( lsChgSite ) )
{
errcode = "VTSITE2";
errString = getErrorString( "site_code__dlv", errcode, userId );
break;
}
else if( "N".equalsIgnoreCase( lsChgSite ) )
{
errcode = "VTSITE6";
errString = getErrorString( "site_code__dlv", errcode, userId );
break;
}
lsSaleOrder = genericUtility.getColumnValue( "sale_order", dom );
if( lsSaleOrder != null && lsSaleOrder.trim().length() > 0 )
{
sql = "select count(*) cnt from sorddet where sale_order = '" + lsSaleOrder + "' and site_code = '" + mval + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTDETSITE";
errString = getErrorString( "site_code__dlv", errcode, userId );
break;
}
}
}
if (childNodeName.equalsIgnoreCase( "purc_order" ) )
{
mVal = genericUtility.getColumnValue( "purc_order", dom );
if ( mVal != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from porder where purc_order = '" + mVal + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTPONF";
errString = getErrorString( "purc_order", errcode, userId );
break;
}
}
}
if (childNodeName.equalsIgnoreCase( "dist_route" ) )
{
mVal = genericUtility.getColumnValue( "dist_route", dom );
if( mVal != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from distroute where dist_route = '" + mVal.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTDISTRT1";
errString = getErrorString( "dist_route", errcode, userId );
break;
}
}
}
if ( childNodeName.equalsIgnoreCase( "loc_code__git" ) )
{
mVal = genericUtility.getColumnValue( "loc_code__git", dom );
if( mVal != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from location where loc_code = '" + mVal.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTLOC1";
errString = getErrorString( "loc_code__git", errcode, userId );
break;
}
}
}
if (childNodeName.equalsIgnoreCase( "due_date" ) )
{
String mdueDateStr = genericUtility.getColumnValue( "due_date", dom );
String morderDateStr = genericUtility.getColumnValue( "order_date", dom );
String mshipDateStr = genericUtility.getColumnValue( "ship_date", dom );
mdueDate = getDateInForamt( mdueDateStr, appDateFormat );
morderDate = getDateInForamt( morderDateStr, appDateFormat );
mshipDate = getDateInForamt( morderDateStr, appDateFormat );
if( mdueDate.compareTo( morderDate ) < 0 )
{
errcode = "VTDATE8";
errString = getErrorString( "due_date", errcode, userId );
break;
}
else if( mdueDate.compareTo( mshipDate ) < 0 )
{
errcode = "VTDATE13";
errString = getErrorString( "due_date", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "ship_date" ) )
{
String mdueDateStr = genericUtility.getColumnValue( "due_date", dom );
String morderDateStr = genericUtility.getColumnValue( "order_date", dom );
String mshipDateStr = genericUtility.getColumnValue( "ship_date", dom );
mdueDate = getDateInForamt( mdueDateStr, appDateFormat );
morderDate = getDateInForamt( morderDateStr.trim(), appDateFormat );
mshipDate = getDateInForamt( mshipDateStr.trim(), appDateFormat );
if( mshipDate.compareTo( morderDate ) < 0 )
{
errcode = "VTDATE8";
errString = getErrorString( "ship_date", errcode, userId );
break;
}
else if( mdueDate.compareTo( mshipDate ) < 0 )
{
errcode = "VTDATE13";
errString = getErrorString( "ship_date", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "curr_code" ) )
{
lsCurrCode = genericUtility.getColumnValue( "curr_code", dom );
if( lsCurrCode != null && lsCurrCode.trim().length() > 0 )
{
sql = "select count(*) cnt from currency where curr_code = '" + lsCurrCode.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VMCUR1";
}
}
else
{
errcode = "VECUR2";
errString = getErrorString( "curr_code", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "loc_code__cons" ) )
{
lsLocCodeCons = genericUtility.getColumnValue( "loc_code__cons", dom );
lsTrantype = genericUtility.getColumnValue( "tran_type", dom );
if( lsLocCodeCons != null && lsLocCodeCons.trim().length() > 0 )
{
sql = "select loc_group__cons ls_grp_code from distorder_type where tran_type = '" + lsTrantype.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsGrpCode = rs.getString( "ls_grp_code" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( ( lsGrpCode != null && lsGrpCode.trim().length() > 0 ) && ( lsLocCodeCons != null && lsLocCodeCons.trim().length() > 0 ) )
{
sql = " select count(*) cnt from location "
+" where loc_code = '" + lsLocCodeCons + "'"
+" and loc_group = '" + lsGrpCode + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VMLOC5";
errString = getErrorString( "loc_code__cons", errcode, userId );
break;
}
}
}
}
if ( childNodeName.equalsIgnoreCase( "sundry_code" ) )
{
lsSundryCode = genericUtility.getColumnValue( "sundry_code", dom );
lsSundryType = genericUtility.getColumnValue( "sundry_type", dom );
if( lsSundryCode != null && lsSundryCode.trim().length() > 0 )
{
if( "C".equalsIgnoreCase( lsSundryType.trim() ) )
{
sql = "select count(*) cnt from customer where cust_code = '" + lsSundryCode.trim() + "'";
System.out.println("sql................"+ sql);
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( lsSundryCode == null || lsSundryCode.trim().length() == 0 )
{
errcode = "VECUST2";
}
else if( cnt == 0 )
{
errcode = "VMCUST1";
}
else if( "S".equalsIgnoreCase( lsSundryType.trim() ) )
{
sql = "select count(*) cnt from supplier where supp_code = '" + lsSundryCode.trim() + "'";
System.out.println("sql................"+ sql);
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( lsSundryCode == null || lsSundryCode.trim().length() == 0 )
{
errcode = "VESUPP2";
}
else if ( cnt == 0 )
{
errcode = "VMSUPP1";
}
}
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "sundry_code", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "sales_pers" ) )
{
lsSalesPers = genericUtility.getColumnValue( "sales_pers", dom );
if( lsSalesPers != null && lsSalesPers.trim().length() > 0 )
{
sql = "select count(*) cnt from sales_pers where sales_pers = '" + lsSalesPers + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if ( cnt == 0 )
{
errcode = "VMSLPERS1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "sales_pers", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "proj_code" ) )
{
lsProjcode = genericUtility.getColumnValue( "proj_code", dom );
if( lsProjcode != null && lsProjcode.trim().length() > 0 )
{
sql = "select ( case when proj_status is null then ' ' else proj_status end ) ls_status from project where proj_code = '" + lsProjcode + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsStatus = rs.getString( "ls_status" );
}
else
{
errcode = "VMPROJCDX";
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( !( "A".equalsIgnoreCase( lsStatus.trim() ) ) )
{
errcode = "VTPROJ2";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "proj_code", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "policy_no" ) )
{
lsPolicyNo = genericUtility.getColumnValue( "policy_no", dom );
String morderDate1Str = genericUtility.getColumnValue( "order_date", dom );
morderDate1 = getDateInForamt( morderDate1Str.trim(), appDateFormat );
lsOrderType = genericUtility.getColumnValue( "order_type", dom );
if ( lsPolicyNo != null && lsPolicyNo.trim().length() > 0 )
{
String dlvTemSql = "select dlv_term ls_dlv_term from distorder_type where tran_type = '" + lsTranType + "'";
pstmt = conn.prepareStatement( dlvTemSql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsDlvTerm = rs.getString( "ls_dlv_term" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
String policyNoSql = null;
policyNoSql = "select policy_no ls_pol_no from delivery_term where dlv_term = '" + lsDlvTerm.trim() + "'";
pstmt = conn.prepareStatement( policyNoSql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsPolNo = rs.getString( "ls_pol_no" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = "select count(*) cnt from insurance where policy_no = '" + lsPolNo + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTPOLI1";
}
sql ="select status ls_status, from_date mdate1, valid_upto mdate2 "
+"from insurance where policy_no = '" + lsPolNo.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsStatus = rs.getString( "ls_status" );
mdate11 = rs.getDate( "mdate1" );
mdate2 = rs.getDate( "mdate2" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( "C".equalsIgnoreCase( lsStatus ) || "X".equalsIgnoreCase( lsStatus ) )
{
errcode = "VTCX";
}
else if( mdate11.compareTo( morderDate1 ) > 0 || mdate2.compareTo( morderDate1 ) < 0 )
{
errcode = "VTPOLEXP";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "policy_no", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "site_code__bil" ) )
{
lsSiteCodeBil = genericUtility.getColumnValue( "site_code__bil", dom );
if( lsSiteCodeBil != null && lsSiteCodeBil.trim().length() > 0 )
{
sql ="select count(1) ll_count from site where site_code = '" + lsSiteCodeBil.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "ll_count" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTBILSITE";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "site_code__bil", errcode, userId );
break;
}
}
} //END OF CASE1
break;
case 2 :
System.out.println("VALIDATION FOR DETAIL [ DOM2 ]..........");
parentNodeList = dom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr++)
{
cnt = 0;
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if (childNodeName.equalsIgnoreCase("line_no__sord"))
{
mval1 = genericUtility.getColumnValue( "sale_order", dom, "2" );
if( mval1 != null && mval1.trim().length() > 0 )
{
mval = genericUtility.getColumnValue( "line_no__sord", dom, "2" );
mval = mval.trim(); //right(' ' + mval , 3 );
//what to do for next line
//dw_detedit[ii_currformno].setitem(dw_detedit[ii_currformno].GetRow(),fldname,mval)
if ( mval!= null && mval.trim().length() > 0 )
{
sql = "select count(*) cnt from sorddet "
+"where sale_order = '" + mval1.trim() + "' and line_no = '" + mval.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTSORD2";
}
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "line_no__sord", errcode, userId );
break;
}
}
if (childNodeName.equalsIgnoreCase("item_code"))
{
mval1 = genericUtility.getColumnValue( "item_code", dom2, "2" );
msiteCode = genericUtility.getColumnValue( "site_code__ship", dom1 );
lsDlvsite = genericUtility.getColumnValue( "site_code__dlv", dom1 );
String mTranDateStr = genericUtility.getColumnValue( "order_date", dom1 );
mtrandate = getDateInForamt( mTranDateStr.trim(), appDateFormat );
//what to do for following line
//errcode = i_nvo_gbf_func.gbf_item(msite_code,mVal,transer)
String transer = "D-ORD";
errcode = dbAccessRemote.isItem( msiteCode, mval1, transer, conn );
sql = "select supp_sour ls_source, site_code__supp ls_suppsite from siteitem "
+" where site_code = '" + lsDlvsite.trim() + "' and item_code = '" + mval1.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsSource = rs.getString( "ls_source" );
lsSuppsite = rs.getString( "ls_suppsite" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( errcode.length() == 0 )
{
if( !( "D".equalsIgnoreCase( lsSource.trim() ) ) || !( lsSuppsite.trim().equalsIgnoreCase( msiteCode.trim() ) ) )
{
sql = "select supp_sour ls_source, site_code__supp ls_suppsite from siteitem "
+" where site_code = '" + lsDlvsite.trim() + "' and item_code = '" + mval1.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsSource = rs.getString( "ls_source" );
lsSuppsite = rs.getString( "ls_suppsite" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = "select fin_entity ls_entfrom from site where site_code = '" + msiteCode + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsEntfrom = rs.getString( "ls_entfrom" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = "select fin_entity ls_entto from site where site_code = '" + lsDlvsite + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsEntto = rs.getString( "ls_entto" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( lsEntto.equalsIgnoreCase( lsEntto ) )
{
errcode = "VTDISTCH";
}
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "item_code", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "tax_class" ) )
{
mVal = genericUtility.getColumnValue( "tax_class", dom, "2" );
if( mVAL != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from taxclass where tax_class = '" + mVal + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTTCLASS1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tax_class", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "tax_chap") )
{
mVal = genericUtility.getColumnValue( "tax_chap", dom, "2" );
if( mVAL != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from taxchap where tax_chap = '" + mVal + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTTCHAP1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tax_chap", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "tax_env" ) )
{
mVal = genericUtility.getColumnValue( "tax_env", dom, "2" );
String mDate1Str = genericUtility.getColumnValue( "order_date", dom, "2" );
mdate1 = getDateInForamt( mDate1Str.trim(), appDateFormat );
if( mVAL != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from taxenv where tax_env = '" + mVal + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTTENV1";
}
else
{
//what to do for this
errcode = distCommon.getCheckTaxEnvStatus( mVAL, mdate1, conn );
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tax_env", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "qty_order" ) )
{
lcQtyOrder = Double.parseDouble( genericUtility.getColumnValue( "qty_order", dom, "2" ) );
lsItemCode = genericUtility.getColumnValue( "item_code", dom, "2" );
lsTranType = genericUtility.getColumnValue( "tran_type", dom, "2" );
lsDdlvsite = genericUtility.getColumnValue( "site_code__dlv", dom, "1" );
if( lcQtyOrder <= 0 )
{
errcode = "VTQTY18";
}
else
{
mval1 = genericUtility.getColumnValue( "sale_order", dom, "2" );
mval = genericUtility.getColumnValue( "line_no__sord", dom, "2" );
if( mval != null && mval.trim().length() > 0 )
{
//mval = right(' '+mval,3)
lsDistOrder = genericUtility.getColumnValue( "dist_order", dom, "1" );
llLineno = Integer.parseInt( genericUtility.getColumnValue( "line_no", dom, "2" ) );
sql = " select qty_order lc_oldqty from DISTORDER_DET "
+" where dist_order = '" + lsDistOrder + "'"
+" and line_no = '" + llLineno + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next( ) )
{
lcOldqty = rs.getDouble( "lc_oldqty" );
}
else
{
lcOldqty = 0;
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = "select sum(quantity) lc_soqty from sorddet "
+" where sale_order = '" + mval1.trim() + "' and line_no = '" + mval.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next( ) )
{
lcSoqty = rs.getDouble( "lc_soqty" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql ="select sum(b.qty_order) lc_dsqty "
+" from distorder a, distorder_det b "
+" where a.dist_order = b.dist_order and "
+" a.status <> 'X' and "
+" b.sale_order = '" + mval1.trim() + "' and "
+" b.line_no__sord = '" + mval.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next( ) )
{
lcDsqty = rs.getDouble( "lc_dsqty" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if ( (lcDsqty - lcOldqty) + lcQtyOrder > lcSoqty )
{
errcode = "VTSOQTY";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
lsSiteCode = genericUtility.getColumnValue( "site_code__ship", dom, "2" );
errcode = distCommon.gbfSetIntegralQty( lsItemCode, lsTranType, lcQtyOrder, lsSiteCode, conn );
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "qty_order", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "qty_confirm" ) )
{
lcQtyConfirm = Double.parseDouble( genericUtility.getColumnValue("qty_confirm", dom, "2") );
lcQtyOrder = Double.parseDouble( genericUtility.getColumnValue("qty_order", dom, "2") );
if( lcQtyConfirm > lcQtyOrder )
{
errcode = "VTDIST18";
}
else
{
lsTranType = genericUtility.getColumnValue("tran_type", dom, "2"); //dw_edit.getitemstring(1,"tran_type")
lsItemCode = genericUtility.getColumnValue("item_code", dom, "2");
lsSiteCode = genericUtility.getColumnValue("site_code__ship", dom, "2");
errcode = distCommon.gbfSetIntegralQty( lsItemCode, lsTranType, lcQtyConfirm, lsSiteCode, conn );
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "qty_confirm", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "ship_date" ) )
{
String mshipDateStr = genericUtility.getColumnValue("ship_date", dom, "2");
mshipDate = getDateInForamt( mshipDateStr.trim(), appDateFormat );
String morderDateStr = genericUtility.getColumnValue("order_date", dom, "2");
morderDate = getDateInForamt( morderDateStr.trim(), appDateFormat );
String mdueDateStr = genericUtility.getColumnValue( "due_date", dom, "2" );
mdueDate = getDateInForamt( mdueDateStr.trim(), appDateFormat );
if( mshipDate.compareTo( morderDate ) < 0 )
{
errcode = "VTDATE8";
}
else
if( mshipDate.compareTo( mdueDate ) > 0 )
{
errcode = "VTDATE13";
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "ship_date", errcode, userId );
break;
}
}
}//END FOR OF CASE2
break;
}//END SWITCH
}//END TRY
catch(Exception e)
{
System.out.println("Exception ::" +e);
e.printStackTrace();
errString = e.getMessage();
}
finally
{
try
{
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
if( rs != null )
{
rs.close();
rs = null;
}
if(conn != null)
{
conn.close();
conn = null;
}
}
catch(Exception d)
{
d.printStackTrace();
}
System.out.println(" < DistOrderEJB > CONNECTION IS CLOSED");
}
System.out.println("ErrString ::" + errString);
return errString;
}//END OF VALIDATION
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
Document dom1 = null;
Document dom2 = null;
Document dom3 = null;
String valueXmlString = null;
try
{
dom = parseString(xmlString);
System.out.println("xmlString" + xmlString);
dom1 = parseString(xmlString1);
if( xmlString2.trim().length() > 0 )
{
dom2 = parseString(xmlString2);
}
valueXmlString = itemChanged(dom,dom1,dom2,objContext,currentColumn,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : [DistOrderEJB][itemChanged(String,String)] :==>\n"+e.getMessage());
}
return valueXmlString;
}
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
StringBuffer valueXmlString = new StringBuffer();
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
int ctr = 0;
String tranDate = null;
String childNodeName = null;
String columnValue = null;
String loginCode = null;
String loginCodeName = null;
String flag = null;
String sorgCode = null ,sorgName = null,userCode = null ,userName = null ;
String prdtCode = null ,crTerm = null ,compCode = null ,compDesc = null ,crDesc = null ,prdtDesc = null;
String stermCode = null ,stermDesc = null ,stkCode = null ,stkName = null ,stkCode2 = null ,stkName2 = null ,productPack = null;
String state1 = null;
String state2 = null;
String sorgType = null;
int crDays = 0;
int currentFormNo = 0;
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
String sql = null;
String errString = "";
String loginSite = null;
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
ConnDriver connDriver = new ConnDriver();
String empCodePrm = getValueFromXTRA_PARAMS(xtraParams,"loginEmpCode");
String tranFrFlag = null;
try
{
//Changes and Commented By Poonam on 08-06-2016 :START
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
//Changes and Commented By Poonam on 08-06-2016 :END
loginSite = getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode" );
if(objContext != null && objContext.trim().length() > 0)
{
currentFormNo = Integer.parseInt(objContext);
}
System.out.println("FORM NO:::"+currentFormNo);
valueXmlString = new StringBuffer("<?xml version=\"1.0\"?><Root><header><editFlag>");
valueXmlString.append(editFlag).append("</editFlag></header>");
switch(currentFormNo)
{
case 1 :
valueXmlString.append("<Detail1>\r\n");
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
ctr = 0;
int childNodeListLength = childNodeList.getLength();
do
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equals(currentColumn))
{
if (childNode.getFirstChild() != null)
{
columnValue = childNode.getFirstChild().getNodeValue().trim();
}
}
ctr++;
}
while(ctr < childNodeListLength && !childNodeName.equals(currentColumn));
System.out.println(" Column Value=>" + columnValue);
/*
if (currentColumn.trim().equals("itm_defaultedit"))
{
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
tranDate = sdf.format(new Timestamp(System.currentTimeMillis()));
loginCode = getValueFromXTRA_PARAMS(xtraParams, "loginCode");
sql = "SELECT NAME FROM USERS WHERE CODE = '" + loginCode +"'";
System.out.println("SQL FOR USER'S NAME ====>" + sql);
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
loginCodeName = rs.getString(1) == null ? "":rs.getString(1);
}
pstmt.close(); pstmt = null;
rs.close(); rs = null;
valueXmlString.append("<user_code>").append("<![CDATA[" + loginCode + "]]>").append("</user_code>");
valueXmlString.append("<name>").append("<![CDATA[" + loginCodeName + "]]>").append("</name>");
valueXmlString.append("<tran_date>").append("<![CDATA[" + tranDate + "]]>").append("</tran_date>");
String instituteClass = null;
instituteClass = genericUtility.genericUtility.getColumnValue( "sorg_type", dom1 );
if ("P".equalsIgnoreCase( instituteClass ))
{
valueXmlString.append("<tran_id__ref isVisible=\"0\">").append("<![CDATA[" + " " + "]]>").append("</tran_id__ref>");
}
else
{
valueXmlString.append("<tran_id__ref isVisible=\"1\">").append("<![CDATA[" + " " + "]]>").append("</tran_id__ref>");
}
}
//itmdefault edit
valueXmlString.append("</Detail1>\r\n");
//valueXmlString.append("</Detail>");
break;
*/
}//end of switch
valueXmlString.append("</Root>");
}//END OF TRY
catch(Exception e)
{
e.printStackTrace();
System.out.println("Exception ::"+ e.getMessage());
throw new ITMException(e);
}
finally
{
try
{
if(rs != null)
{
rs.close();
rs = null;
}
if(pstmt!= null)
{
pstmt.close();
pstmt = null;
}
if( conn != null )
{
conn.close();
conn = null;
}
}
catch(Exception d)
{
d.printStackTrace();
}
System.out.println("[DistOrderEJB] Connection is Closed");
}
System.out.println("valueXmlString:::::" + valueXmlString.toString());
return valueXmlString.toString();
}//END OF ITEMCHANGE
private java.util.Date getDateInForamt1( String dateStr, String format ) throws Exception
{
SimpleDateFormat sdf = new SimpleDateFormat( format );//new SimpleDateFormat(genericUtility.getApplDateFormat());
System.out.println( "dateStr[" + dateStr + "]" );
java.util.Date frDate = null;
frDate = sdf.parse( dateStr );
return frDate;
}
private Timestamp getDateInForamt( String dateStr, String format ) throws Exception
{
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
Timestamp timestamp = null;
SimpleDateFormat sdf = new SimpleDateFormat( format );//new SimpleDateFormat(genericUtility.getApplDateFormat());
System.out.println( "dateStr[" + dateStr + "]" );
java.util.Date frDate = null;
frDate = sdf.parse( dateStr );
SimpleDateFormat sdf1 = new SimpleDateFormat(genericUtility.getDBDateFormat());
timestamp = Timestamp.valueOf(sdf1.format(frDate).toString() + " 00:00:00.0");
return timestamp;
}
}// END OF MAIN CLASS
/********************************************************
Title : DistOrderClubBean
Date : 27/03/12
Author: Chandni Shah
********************************************************/
package ibase.webitm.ejb.dis;
import java.io.Serializable;
public class DistOrderClubBean{
//private static final long serialVersionUID = 42L;
private String siteCode;
private String tranType;
private String availableYn;
private String deptCode;
private int lineNo;
private String unit;
private String unitAlt;
private String itemCode;
private double qtyConfirm;
private double qtyShipped;
private double discount;
private String distOrdNo;
private String rateFmDistOrd;
private String rateClgFmDistOrd;
//private Class javaType;
public String getSiteCode() {
return siteCode;
}
public void setSiteCode(String siteCode) {
this.siteCode = siteCode;
}
public String getTranType() {
return tranType;
}
public void setTranType(String tranType) {
this.tranType = tranType;
}
public String getAvailableYn() {
return availableYn;
}
public void setAvailableYn(String availableYn) {
this.availableYn = availableYn;
}
public String getDeptCode() {
return deptCode;
}
public void setDeptCode(String deptCode) {
this.deptCode = deptCode;
}
public int getLineNo() {
return lineNo;
}
public void setLineNo(int lineNo) {
this.lineNo = lineNo;
}
public String getUnit() {
return unit;
}
public void setUnit(String unit) {
this.unit = unit;
}
public String getUnitAlt() {
return unitAlt;
}
public void setUnitAlt(String unitAlt) {
this.unitAlt = unitAlt;
}
public String getItemCode() {
return itemCode;
}
public void setItemCode(String itemCode) {
this.itemCode = itemCode;
}
public double getQtyConfirm() {
return qtyConfirm;
}
public void setQtyConfirm(double qtyConfirm) {
this.qtyConfirm = qtyConfirm;
}
public double getQtyShipped() {
return qtyShipped;
}
public void setQtyShipped(double qtyShipped) {
this.qtyShipped = qtyShipped;
}
public double getDiscount() {
return discount;
}
public void setDiscount(double discount) {
this.discount = discount;
}
public String getDistOrdNo() {
return distOrdNo;
}
public void setDistOrdNo(String distOrdNo) {
this.distOrdNo = distOrdNo;
}
public String getRateFmDistOrd() {
return rateFmDistOrd;
}
public void setRateFmDistOrd(String rateFmDistOrd) {
this.rateFmDistOrd = rateFmDistOrd;
}
//private String rateClgFmDistOrd;
public String getRateClgFmDistOrd() {
return rateClgFmDistOrd;
}
public void setRateClgFmDistOrd(String rateClgFmDistOrd) {
this.rateClgFmDistOrd = rateClgFmDistOrd;
}
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import org.w3c.dom.Document;
//import javax.ejb.EJBObject;
import ibase.webitm.ejb.ValidatorLocal;
import ibase.webitm.utility.ITMException;
import javax.ejb.Local; // added for ejb3
@Local // added for ejb3
public interface DistOrderLocal extends ValidatorLocal//,EJBObject
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged() throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
This source diff could not be displayed because it is too large. You can view the blob instead.
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import java.sql.Connection;
//import javax.ejb.EJBObject;
import ibase.webitm.ejb.ActionHandlerLocal;
import ibase.webitm.utility.ITMException;
import javax.ejb.Local; // added for ejb3
@Local // added for ejb3
public interface DistOrderRcpConfLocal extends ActionHandlerLocal//,EJBObject
{
public String confirm(String tranID, String xtraParams, String forcedFlag) throws RemoteException,ITMException;
public String confirm(String tranID, String xtraParams, String forcedFlag,Connection conn) throws RemoteException,ITMException;
public String actionHandler(String tranID, String xtraParams, String forcedFlag) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import java.sql.Connection;
import javax.ejb.EJBObject;
import ibase.webitm.ejb.ActionHandlerRemote;
import ibase.webitm.utility.ITMException;
import javax.ejb.Remote; // added for ejb3
@Remote // added for ejb3
public interface DistOrderRcpConfRemote extends ActionHandlerRemote//,EJBObject
{
public String confirm(String tranID, String xtraParams, String forcedFlag) throws RemoteException,ITMException;
public String confirm(String tranID, String xtraParams, String forcedFlag,Connection conn) throws RemoteException,ITMException;
public String actionHandler(String tranID, String xtraParams, String forcedFlag) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import org.w3c.dom.Document;
import javax.ejb.EJBObject;
import ibase.webitm.ejb.ValidatorRemote;
import ibase.webitm.utility.ITMException;
import javax.ejb.Remote; // added for ejb3
@Remote // added for ejb3
public interface DistOrderRemote extends ValidatorRemote//,EJBObject
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged() throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
/********************************************************
Title : Distribution Order
Date : 20/09/07
Author: Mohammad Shoaib
********************************************************/
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.sql.DriverManager;
import java.sql.Timestamp;
import java.sql.PreparedStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import org.w3c.dom.Document;
import org.w3c.dom.NodeList;
import org.w3c.dom.Node;
//import javax.ejb.SessionBean;
import javax.ejb.CreateException;
import ibase.webitm.utility.ITMException;
//import ibase.webitm.utility.GenericUtility;
import ibase.system.config.ConnDriver;
import ibase.webitm.ejb.ValidatorEJB;
import ibase.system.config.*;
import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility;
import javax.naming.InitialContext;
import java.util.Properties;
import ibase.webitm.ejb.*;
import ibase.webitm.ejb.sys.SysCommon;
import javax.ejb.Stateless; // added for ejb3
@Stateless // added for ejb3
public class DistReceipt extends ValidatorEJB //implements SessionBean
{
/*public void ejbCreate() throws RemoteException, CreateException
{
System.out.println("<======= Dist Order EJB IS IN PROCESS ========>");
}
public void ejbRemove()
{
}
public void ejbActivate()
{
}
public void ejbPassivate()
{
}*/
public String wfValData() throws RemoteException,ITMException
{
return "";
}
public String itemChanged() throws RemoteException,ITMException
{
return "";
}
public String updateStatus()throws RemoteException,ITMException
{
return "";
}
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
Document dom1 = null;
Document dom2 = null;
Document dom3 = null;
String errString = "";
System.out.println("<====== VALIDATION START =====>");
try
{
System.out.println("xmlString:::" + xmlString);
dom = parseString(xmlString);
dom1 = parseString(xmlString1);
if (xmlString2.trim().length() > 0 )
{
dom2 = parseString("<Root>" + xmlString2+ "</Root>");
}
errString = wfValData(dom,dom1,dom2,objContext,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : DistOrderEJB : wfValData(String xmlString) : ==>\n"+e.getMessage());
}
return (errString);
}
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
int ctr = 0;
String startDate = null,endDate = null;
String columnValue = null;
String childNodeName = null;
String errString = "";
String errCode = null;
String userId = null,loginSite = null;
String errcode = null;
//field from pb
int cc, xx, initialField = 1, lastField = 1, fldcase = 0, madvperc = 0, liCnt = 0;
String fldname = "", Errcode = "", mval="", mVal = "", mVAL = "", mVal1 = "", fldnm = "", ItemLocty = "", LocTy = "", lsSiteCodeShip = "";
String mitemcode = "", mcustcode = "", mstan = "", mstan1 = "", mtranIdIss = "", lsTranIdIss = "", lsDistOrder = "";
String mcode = "", mcustCode = "", msiteCode = "", mactive = "", mitemSer = "", mitemSerHdr = "", lsSiteCode = "";
String mothSer = "", mschemeCd = "", msiteCd = "", mstateCd = "", mtype = "", mtranCode = "", mcurrCode = "";
String mconfirm = "", mlotNo = "", mshipSite = "", mdistIss = "", msiteCodeMfg = "", lsStatus = "", lsLoctype = "";
String lsItemCode = "", lsSuppSour = "", lsTrack = "", lsQcreqd = "",lsQcreqdHdr = "", lsTranId = "", sFieldNo = "0";
java.util.Date mdate2 = null, mtrandate = null, morderDt = null, mdate = null;
double mqty = 0.0, mintQty = 0.0, ldQty = 0.0, ldQtyConfirm = 0.0, ldQtyRcp = 0.0, ldRemQty = 0.0, ldOrigQty = 0.0, ldOverShip = 0.0;
int cnt = 0, mcount = 0, mitemCnt = 0, mcnt = 0, llQcreqdCtr = 0, llLineNo = 0, llCount = 0;
String lsGrade = "", lsLotNo = "", lsLotSl = "", lsLocCode = "", lsStkgrade = "", lsMfgparmgrade = "", lsSite = "";
String lsCurrCodeBase = "", lsProjcode = "", lsProjcodeord = "", lsDistOrd = "", lsDist = "", lsDistRcp = "", lsSiteCodeBil = "";
String mval1 = null;
String appDateFormat = null;
String saveflag = "2";
int currentFormNo = 0;
int childNodeListLength;
Connection conn = null;
PreparedStatement pstmt=null;
ResultSet rs = null;
String sql = null;
Timestamp mdate1 =null;
ITMDBAccessLocal dbAccessRemote =null; // for ejb dbAccessRemote var is used every where so not change its varname
try
{
ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB( "DriverITM" );
connDriver = null;
userId = getValueFromXTRA_PARAMS( xtraParams, "loginCode" );
loginSite = getValueFromXTRA_PARAMS( xtraParams, "loginSiteCode" );
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
if(objContext != null && objContext.trim().length()>0)
{
currentFormNo = Integer.parseInt(objContext);
}
//getting jndi look for ITMDBAccess object
AppConnectParm appConnect = new AppConnectParm();
Properties props = appConnect.getProperty();
InitialContext ctx = new InitialContext( props );
System.out.println("Looking Up for DBAccess EJB with Properties ==>\n"+props);
dbAccessRemote = (ITMDBAccessLocal)ctx.lookup( "ibase/ITMDBAccessEJB/local" );
//ITMDBAccess dbAccessRemote = dbAccessHome.create();
//end getting jndi look for ITMDBAccess object
//making object of DistCommon
DistCommon distCommon = new DistCommon();
//
appDateFormat = genericUtility.getApplDateFormat();
switch( currentFormNo )
{
case 1 :
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr++)
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if ( childNodeName.equalsIgnoreCase( "dist_order" ) )
{
mcode = genericUtility.getColumnValue( "dist_order", dom );
lsDistRcp = genericUtility.getColumnValue( "tran_id", dom );
sql = "select count(*) cnt from distorder where dist_order = '" + mcode.trim() + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTDIST2";
}
else
{
sql = "select confirmed mconfirm, status ls_status from distorder where dist_order = '" + mcode + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
mconfirm = rs.getString( "mconfirm" );
lsStatus = rs.getString( "ls_status" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( !( "Y".equalsIgnoreCase( mconfirm ) ) )
{
errcode = "VTDIST3";
}
else if( !( "P".equalsIgnoreCase( lsStatus ) ) )
{
errcode = "VTDIST20";
}
}
if( errcode == null || errcode.trim().length() == 0 )
{
if( lsDistRcp == null )
{
lsDistRcp = " ";
}
sql = "Select count(*) cnt From distord_rcp "
+" Where dist_order = '" + mcode.trim() + "'"
+" and tran_id <> '" + lsDistRcp.trim() + "'"
+" and confirmed = 'N' ";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt > 0 )
{
errcode = "VTINVDO1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "dist_order", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "tran_date" ) )
{
String mdate1Str = null;
mdate1Str = genericUtility.getColumnValue( "tran_date", dom );
mdate1 = getDateInForamt( mdate1Str, appDateFormat );
msiteCode = genericUtility.getColumnValue( "site_code", dom );
//to be migrated msalam
//errcode = nvo_functions_adv.nf_check_period( 'DIS', mdate1, msite_code)
errcode = SysCommon.nfCheckPeriod( "DIS", mdate1, msiteCode, conn );
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tran_date", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "tran_id__iss" ) )
{
mtranIdIss = genericUtility.getColumnValue( "tran_id__iss", dom );
if( mtranIdIss != null && mtranIdIss.trim().length() > 0 )
{
sql = "select count(*) cnt from distord_iss where tran_id = '" + mtranIdIss.trim() + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt > 0 )
{
errcode = "VTDIST11";
}
else
{
sql = "select confirmed mconfirm from distord_iss where tran_id = '" + mtranIdIss + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
mconfirm = rs.getString( "mconfirm" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( !( "Y".equalsIgnoreCase( mconfirm ) ) )
{
errcode = "VTDIST12";
}
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tran_id__iss", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "site_code" ) )
{
mVal = genericUtility.getColumnValue( "site_code", dom );
sql = "Select Count(*) cnt from site where site_code = '" + mVal.trim() + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTSITE1";
}
else
{
mdistIss = genericUtility.getColumnValue( "tran_id__iss", dom );
mcode = "";
mcode = genericUtility.getColumnValue( "dist_order", dom );
if( mdistIss == null || mdistIss.trim().length() == 0 )
{
sql = "select site_code__dlv mship_site from distorder where dist_order = '" + mcode.trim() + "'" ;
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
mshipSite = rs.getString( "mship_site" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( !( mshipSite.trim().equalsIgnoreCase( mVal.trim() ) ) )
{
errcode = "VTDIST10";
}
}
else
{
sql = "select site_code__dlv mship_site from distord_iss where tran_id = '" + mdistIss.trim() + "'"; System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
mshipSite = rs.getString( "mship_site" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( !( mshipSite.trim().equalsIgnoreCase( mVal.trim() ) ) )
{
errcode = "VTDIST13";
}
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "site_code", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "dist_route" ) )
{
mVal = genericUtility.getColumnValue( "dist_route", dom );
if( mVal != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from distroute where dist_route ='" + mVal.trim() + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTDISTRT1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "dist_route", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "site_code__ship" ) )
{
mVal = genericUtility.getColumnValue( "site_code__ship", dom );
lsSiteCode = genericUtility.getColumnValue( "site_code", dom );
lsDistOrder = genericUtility.getColumnValue( "dist_order", dom );
sql = "Select Count(*) cnt from site where site_code ='" + mVal + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTSITE1";
}
else
{
//to migrate by msalam
//errcode = i_nvo_gbf_dissue.gbf_dist_order_site(ls_dist_order,mval,ls_site_code);
errcode = gbfDistOrderSite( lsDistOrder, mval, lsSiteCode, conn );
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "site_code__ship", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "tran_code" ) )
{
mtranCode = genericUtility.getColumnValue( "tran_code", dom );
lsSiteCode = genericUtility.getColumnValue( "site_code", dom );
lsDistOrder = genericUtility.getColumnValue( "dist_order", dom );
sql = "select count(*) cnt from transporter where tran_code = '" + mtranCode + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTTRANCD1";
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tran_code", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "loc_code__git" ) )
{
mVal = genericUtility.getColumnValue( "loc_code__git", dom );
sql = "Select Count(*) cnt from location where loc_code = '" + mVal + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTLOC1";
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tran_code", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "curr_code" ) )
{
mcurrCode = genericUtility.getColumnValue( "curr_code", dom );
sql = "select count(*) cnt from currency where curr_code = '" + mcurrCode + "'";
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTCURRCD1";
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "curr_code", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "qc_reqd" ) )
{
lsQcreqdHdr = genericUtility.getColumnValue( "qc_reqd", dom );
lsTranId = genericUtility.getColumnValue( "tran_id", dom );
sql = "select count(1) ll_qcreqd_ctr "
+" from distord_rcpdet a, item b "
+" where a.item_code = b.item_code "
+" and a.tran_id = '" + lsTranId + "'"
+" and b.qc_reqd = 'Y' " ;
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
llQcreqdCtr = rs.getInt( "ll_qcreqd_ctr" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( !( "Y".equalsIgnoreCase( lsQcreqdHdr ) ) && llQcreqdCtr > 0 )
{
errcode = "VTQCREQD";
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "qc_reqd", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "proj_code" ) )
{
lsProjcode = genericUtility.getColumnValue( "proj_code", dom );
if( lsProjcode != null && lsProjcode.trim().length() > 0 ){
lsDistOrd = genericUtility.getColumnValue( "dist_order", dom );
sql = "select ( case when proj_code is null then ' ' else proj_code end ) ls_projcodeord "
+" from distorder where dist_order = '" + lsDistOrd;
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsProjcodeord = rs.getString( "ls_projcodeord" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( lsProjcodeord != null && lsProjcodeord.trim().length() > 0 )
{
if( !( lsProjcodeord.trim().equalsIgnoreCase( lsProjcode.trim() ) ) )
{
errcode = "VTPROMISMT";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
sql = "select ( case when proj_status is null then ' ' else proj_status end ) ls_status from project where proj_code = '" + lsProjcode + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery( );
if( rs.next() )
{
lsStatus = rs.getString( "ls_status" );
}
else
{
errcode = "VMPROJCDX";
}
if( !( "A".equalsIgnoreCase( lsStatus ) ) )
{
errcode = "VTPROJ2";
}
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "proj_code", errcode, userId );
break;
}
}
if ( childNodeName.equalsIgnoreCase( "site_code__bil" ) )
{
lsSiteCodeBil = genericUtility.getColumnValue( "site_code__bil", dom );
if ( lsSiteCodeBil != null && lsSiteCodeBil.trim().length() > 0 )
{
sql = "select count(1) ll_count from site where site_code = '" + lsSiteCodeBil + "'" ;
System.out.println( "sql ::[" + sql + "]" );
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( llCount == 0 )
{
errcode = "VTBILSITE";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "site_code__bil", errcode, userId );
break;
}
}
}
break;
case 2 :
System.out.println("VALIDATION FOR DETAIL [ DOM2 ]..........");
parentNodeList = dom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr++)
{
cnt = 0;
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if (childNodeName.equalsIgnoreCase("line_no__sord"))
{
lsDistOrder = genericUtility.getColumnValue( "line_no__sord", dom, "2" );
lsDist = genericUtility.getColumnValue( "dist_order", dom, "2" );
lsDistRcp = genericUtility.getColumnValue( "tran_id", dom, "2" );
sql = "select count(*) cnt from distorder where dist_order = '" + lsDistOrder + "'"
+" and confirmed = 'Y' "
+" and status = 'P'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTDIST2";
}
else
{
lsSiteCode = genericUtility.getColumnValue( "site_code", dom, "1" );
lsSiteCodeShip = genericUtility.getColumnValue( "site_code__ship", dom, "1" );
//to migrate by msalam
//errcode = i_nvo_gbf_dissue.gbf_dist_order_site(ls_dist_order,ls_site_code__ship,ls_site_code);
errcode = gbfDistOrderSite( lsDistOrder, lsSiteCodeShip, lsSiteCode, conn );
}
if( errcode != null || errcode.trim().length() > 0 )
{
if( lsDistRcp == null )
{
lsDistRcp = "";
}
sql = " Select count(*) cnt "
+" From distord_rcp "
+" Where dist_order = '" + lsDistOrder + "'"
+" and tran_id <> " + lsDistRcp.trim() + "'"
+" and confirmed = 'N' ";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt > 0 )
{
errcode = "VTINVDO1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "line_no__sord", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "item_code" ) )
{
mVal = genericUtility.getColumnValue( "item_code", dom, "2" );
msiteCode = "";
String mtrandateStr = null;
mtrandateStr = genericUtility.getColumnValue( "tran_date", dom, "1" );
mtrandate = getDateInForamt( mtrandateStr, appDateFormat );
//to be migrated by msalam
//errcode = i_nvo_gbf_func.gbf_item(msite_code,mVal,transer);
String transer =null;
transer = "D-RCP";
errcode = dbAccessRemote.isItem( msiteCode, mVal, transer, conn );
lsQcreqdHdr = genericUtility.getColumnValue( "qc_reqd", dom, "1" );
sql = "select count(1) ll_qcreqd_ctr "
+" from item "
+" where item_code = '" + mVal + "'"
+" and qc_reqd = 'Y'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
llQcreqdCtr = rs.getInt( "ll_qcreqd_ctr" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( !( "Y".equalsIgnoreCase( lsQcreqdHdr ) ) && llQcreqdCtr > 0 )
{
errcode = "VTQCREQD";
}
if( "Y".equalsIgnoreCase( lsQcreqdHdr ) && ( errcode == null || errcode.trim().length() == 0 ) )
{
lsSiteCode = genericUtility.getColumnValue( "site_code", dom, "1" );
sql = "select count(*) cnt from siteitem "
+" where site_code = '" + lsSiteCode + "' and item_code = '" + mVal + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTITEM3";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "item_code", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "quantity" ) )
{
ldQty = Double.parseDouble( genericUtility.getColumnValue( "quantity", dom, "2" ) );
lsItemCode = genericUtility.getColumnValue( "item_code", dom, "2" );
llLineNo = Integer.parseInt( genericUtility.getColumnValue( "line_no_dist_order", dom, "2" ) ); //dw_detedit[ii_currformno].GetItemnumber(dw_detedit[ii_currformno].GetRow(),"line_no_dist_order")
sql = "select qty_confirm ld_qty_confirm, over_ship_perc ld_over_ship "
+" from distorder_det "
+" where dist_order = '" + lsDistOrder + "'"
+" and item_code = '" + lsItemCode + "'"
+" and line_no = " + llLineNo;
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
ldQtyConfirm = rs.getDouble( "ld_qty_confirm" );
ldOverShip = rs.getDouble( "ld_over_ship" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
ldQtyConfirm = ldQtyConfirm + ( ldQtyConfirm * ( ldOverShip/100 ) );
sql = " Select sum(quantity) ld_qty_rcp "
+" From distord_rcpdet,distord_rcp "
+" where distord_rcpdet.dist_order = '" + lsDistOrder + "' and "
+" distord_rcpdet.item_code = '" + lsItemCode + "' and and "
+" distord_rcp.tran_id = distord_rcpdet.tran_id and "
+" distord_rcpdet.line_no_dist_order = " + llLineNo;
//If dw_detbrow[ii_currformno].rowcount() > 0 Then
// if dw_detbrow[ii_currformno].GetSelectedRow(0) > 0 and saveflag = '2' Then
// ld_orig_qty = dw_detbrow[ii_currformno].GetItemNumber(dw_detbrow[ii_currformno].GetSelectedRow(0), 'quantity')
// End If
//End If
if( saveflag.equalsIgnoreCase( "2" ) )
{
ldOrigQty = Double.parseDouble( genericUtility.getColumnValue( "quantity", dom, "2" ) );
}
//if Isnull(ld_qty_rcp) then ld_qty_rcp = 0
//if IsNull(ld_orig_qty) then ld_orig_qty = 0
//end how to do by msalam
ldQtyRcp = ldQtyRcp - ldOrigQty;
ldRemQty = ldQtyConfirm - ldQtyRcp;
if( ldQty > ldRemQty )
{
errcode = "VTIQRCP";
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "quantity", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "loc_code" ) )
{
mVal = genericUtility.getColumnValue( "loc_code", dom, "2" );
if( mVal != null && mVal.trim().length() > 0 )
{
sql = "Select count(1) cnt "
+" From Location "
+" Where loc_code = '" + mVal.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTLOC1";
}
if( errcode == null || errcode.trim().length() == 0 )
{
cnt = 0;
lsItemCode = genericUtility.getColumnValue( "item_code", dom, "2" );
sql = " select loc_type ls_loctype "
+" from item where item_code = '" + lsItemCode + "'" ;
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsLoctype = rs.getString( "ls_loctype" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = "select count(*) cnt "
+" from location "
+" where loc_type = '" + lsLoctype + "'"
+" and loc_code = '" + mval + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
//how to migrate by msalam
if( cnt == 0 )
{
errcode = "VMLOCTYP1";
}
//how to migrate by msalam end
}
cnt =0;
}
else
{
errcode = "VTLOC1";
}
cnt =0;
if( errcode == null || errcode.trim().length() == 0 )
{
lsQcreqd = genericUtility.getColumnValue( "qc_reqd", dom, "1" );
if( lsQcreqd == null || lsQcreqd.trim().length() == 0 )
{
lsQcreqd = "Y";
}
if( "Y".equalsIgnoreCase( lsQcreqd.trim() ) )
{
mval1 = genericUtility.getColumnValue( "item_code", dom, "2" );
lsSite = genericUtility.getColumnValue( "site_code", dom, "1" );
//to be migrated by msalam
//lsQcreqd = gf_qc_reqd(lsSite,mval1);
lsQcreqd = gfQcReqd( lsSite, mval1, conn );
if( "Y".equalsIgnoreCase( lsQcreqd ) )
{
cnt = 0;
sql = " select count(*) cnt "
+" from location a, invstat b "
+" where a.inv_stat = b.inv_stat "
+" and b.available = 'N' "
+" and a.loc_code = '" + mVal + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 && ( errcode == null || errcode.trim().length() == 0 ) )
{
errcode = "VTLOCSL";
}
}
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "loc_code", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "lot_sl" ) )
{
mVal = genericUtility.getColumnValue( "lot_sl", dom, "2" );
if( mVal == null || mVal.trim().length() == 0 )
{
errcode = "VTLOTSL001";
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "lot_sl", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "tax_class" ) )
{
mVal = genericUtility.getColumnValue( "tax_class", dom, "2" );
if( mVal != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from taxclass where tax_class = '" + mVal.trim() + "'" ;
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTTCLASS1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tax_class", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "tax_chap" ) )
{
mVal = genericUtility.getColumnValue( "tax_chap", dom, "2" );
if( mVal != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from taxchap where tax_chap = '" + mVal.trim() + "'" ;
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTTCHAP1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tax_chap", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "tax_env" ) )
{
mVal = genericUtility.getColumnValue( "tax_env", dom, "2" );
String mdate1Str = genericUtility.getColumnValue( "tran_date", dom, "2" );
mdate1 = getDateInForamt( mdate1Str, appDateFormat );
if( mVal != null && mVal.trim().length() > 0 )
{
sql = "Select Count(*) cnt from taxenv where tax_env = '" + mVal.trim() + "'" ;
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTTENV1";
}
else
{
//to be migrated by msalam
//errcode = gf_check_taxenv_status(mVAL,mdate1);
errcode = distCommon.getCheckTaxEnvStatus( mVAL, mdate1, conn );
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "tax_env", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "lot_no" ) )
{
mlotNo = genericUtility.getColumnValue( "lot_no", dom, "2" );
lsTranIdIss = genericUtility.getColumnValue( "tran_id__iss", dom, "2" );//dw_header.getitemstring(1,"")
if( mlotNo == null || mlotNo.trim().length() == 0 )
{
errcode = "VTDIST9";
}
else
{
if( lsTranIdIss != null && lsTranIdIss.trim().length() > 0 )
{
cnt = 0;
sql = "select count(*) cnt from distord_issdet "
+" where tran_id = '" + lsTranIdIss.trim() + "'"
+" and lot_no = '" + mlotNo.trim() + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
cnt = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( cnt == 0 )
{
errcode = "VTLOT01";
}
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "lot_no", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "site_code__mfg" ) )
{
msiteCodeMfg = genericUtility.getColumnValue( "site_code__mfg", dom, "2" );
mitemcode = genericUtility.getColumnValue( "item_code", dom, "2" ); //dw_detedit[ii_currformno].GetItemString(dw_detedit[ii_currformno].GetRow(),"")
sql = "Select (case when supp_sour is null then 'M' else supp_sour end) ls_supp_sour "
+" From item Where item_code = '" + mitemcode + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsSuppSour = rs.getString( "ls_supp_sour" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( "M".equalsIgnoreCase( lsSuppSour ) )
{
if( msiteCodeMfg == null || msiteCodeMfg.trim().length() == 0 )
{
errcode = "VTSITEMFG1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "site_code__mfg", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "mfg_date" ) )
{
//setnull(mdate)
String mdateStr = null;
mdateStr = genericUtility.getColumnValue( "mfg_date", dom, "2" );
mdate = getDateInForamt( mdateStr, appDateFormat );
mitemcode = genericUtility.getColumnValue( "item_code", dom, "2" );//dw_detedit[ii_currformno].GetItemString(dw_detedit[ii_currformno].GetRow(),"item_code")
sql = "Select (case when track_shelf_life is null then 'N' else track_shelf_life end) ls_track "
+" From item Where item_code = '" + mitemcode + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsTrack = rs.getString( "ls_track" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
//End change Gautam
if( "Y".equalsIgnoreCase( lsTrack.trim() ) )
{
//how to migrate, whereas i have done the following
//if isnull(mdate) then
// errcode = 'VTMFGDATE3'
//}
if( mdateStr == null || mdateStr.trim().length() == 0 )
{
errcode = "VTMFGDATE3";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "mfg_date", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "exp_date" ) )
{
//setnull(mdate)
String mdateStr = null;
mdateStr = genericUtility.getColumnValue( "exp_date", dom, "2" );
sql = "Select (case when track_shelf_life is null then 'N' else track_shelf_life end) ls_track "
+" From item Where item_code = '" + mitemcode + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsTrack = rs.getString( "ls_track" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( "Y".equalsIgnoreCase( lsTrack.trim() ) )
{
//how to migrate, whereas i have done the following
//if isnull(mdate) then
// errcode = 'VTEXPDATE1'
//}
if( mdateStr == null || mdateStr.trim().length() == 0 )
{
errcode = "VTEXPDATE1";
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "exp_date", errcode, userId );
break;
}
}
if( childNodeName.equalsIgnoreCase( "grade" ) )
{
lsGrade = genericUtility.getColumnValue( "grade", dom, "2" );// dw_detedit[ii_currformno].GetItemString(1,"grade")
lsItemCode = genericUtility.getColumnValue( "item_code", dom, "2" );//dw_detedit[ii_currformno].getitemstring(1,"item_code")
lsSiteCode = genericUtility.getColumnValue( "site_code", dom, "2" );//dw_header.getitemstring(1,"site_code")
lsLotNo = genericUtility.getColumnValue( "lot_no", dom, "2" );//dw_detedit[ii_currformno].getitemstring(1,"lot_no")
lsLotSl = genericUtility.getColumnValue( "lot_sl", dom, "2" );//dw_detedit[ii_currformno].getitemstring(1,"lot_sl")
lsLocCode = genericUtility.getColumnValue( "loc_code", dom, "2" );//dw_detedit[ii_currformno].getitemstring(1,"loc_code")
sql = "select count(*) li_cnt "
+" from stock where item_code = '" + lsItemCode + "' and "
+" site_code = '" + lsSiteCode + "' and "
+" loc_code = '" + lsLocCode + "' and "
+" lot_no = '" + lsLotNo + "' and "
+" lot_sl = '" + lsLotSl + "'" ;
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
liCnt = rs.getInt( "li_cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( liCnt != 0 )
{
sql = "select grade ls_stkgrade "
+" from stock where item_code = '" + lsItemCode + "' and "
+" site_code = '" + lsSiteCode + "' and "
+" loc_code = '" + lsLocCode + "' and "
+" lot_no = '" + lsLotNo + "' and "
+" lot_sl = '" + lsLotSl + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsStkgrade = rs.getString( "ls_stkgrade" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( lsGrade == null )
{
lsGrade = " ";
}
if( lsStkgrade == null )
{
lsStkgrade = " ";
}
if( !( lsGrade.equalsIgnoreCase( lsStkgrade ) ) )
{
//how to do this by mslam
//errcode = "VTGRVLD~t Grade mismatch! Stock for this lot already exists with grade " + ls_stkgrade
errcode = "VTGRVLD";
}
else if( ( lsGrade != null && lsGrade.trim().length() > 0 ) && liCnt == 0 )
{
sql = "select var_value ls_mfgparmgrade "
+" from mfgparm where prd_code = '999999' "
+" and var_name = 'MFG_GRADE' ";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsMfgparmgrade = rs.getString( "ls_mfgparmgrade" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( lsMfgparmgrade == null )
{
lsMfgparmgrade = " ";
}
if( !( lsGrade.equalsIgnoreCase( lsMfgparmgrade ) ) )
{ //how to do it
//errcode = "VTGRVLD~t Grade mismatch With Grade Defined In MFGPARM with var name MFG_GRADE"
errcode = "VTGRVLD";
}
}
}
if( errcode != null && errcode.trim().length() > 0 )
{
errString = getErrorString( "grade", errcode, userId );
break;
}
}
}
}//END SWITCH
}//END TRY
catch(Exception e)
{
System.out.println("Exception ::" +e);
e.printStackTrace();
errString = e.getMessage();
}
finally
{
try
{
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
if( rs != null )
{
rs.close();
rs = null;
}
if(conn != null)
{
conn.close();
conn = null;
}
}
catch(Exception d)
{
d.printStackTrace();
}
System.out.println(" < DistOrderEJB > CONNECTION IS CLOSED");
}
System.out.println("ErrString ::" + errString);
return errString;
}//END OF VALIDATION
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
Document dom1 = null;
Document dom2 = null;
Document dom3 = null;
String valueXmlString = null;
try
{
dom = parseString(xmlString);
System.out.println("xmlString" + xmlString);
dom1 = parseString(xmlString1);
if( xmlString2.trim().length() > 0 )
{
dom2 = parseString(xmlString2);
}
valueXmlString = itemChanged(dom,dom1,dom2,objContext,currentColumn,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : [DistOrderEJB][itemChanged(String,String)] :==>\n"+e.getMessage());
}
return valueXmlString;
}
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
StringBuffer valueXmlString = new StringBuffer();
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
int ctr = 0;
String tranDate = null;
String childNodeName = null;
String columnValue = null;
String loginCode = null;
String loginCodeName = null;
String flag = null;
String sorgCode = null ,sorgName = null,userCode = null ,userName = null ;
String prdtCode = null ,crTerm = null ,compCode = null ,compDesc = null ,crDesc = null ,prdtDesc = null;
String stermCode = null ,stermDesc = null ,stkCode = null ,stkName = null ,stkCode2 = null ,stkName2 = null ,productPack = null;
String state1 = null;
String state2 = null;
String sorgType = null;
int crDays = 0;
int currentFormNo = 0;
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
String sql = null;
String errString = "";
String loginSite = null;
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
ConnDriver connDriver = new ConnDriver();
String empCodePrm = getValueFromXTRA_PARAMS(xtraParams,"loginEmpCode");
String tranFrFlag = null;
try
{
//Changes and Commented By Poonam on 08-06-2016 :START
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
//Changes and Commented By Poonam on 08-06-2016 :END
loginSite = getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode" );
if(objContext != null && objContext.trim().length() > 0)
{
currentFormNo = Integer.parseInt(objContext);
}
System.out.println("FORM NO:::"+currentFormNo);
valueXmlString = new StringBuffer("<?xml version=\"1.0\"?><Root><header><editFlag>");
valueXmlString.append(editFlag).append("</editFlag></header>");
switch(currentFormNo)
{
case 1 :
valueXmlString.append("<Detail1>\r\n");
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
ctr = 0;
int childNodeListLength = childNodeList.getLength();
do
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equals(currentColumn))
{
if (childNode.getFirstChild() != null)
{
columnValue = childNode.getFirstChild().getNodeValue().trim();
}
}
ctr++;
}
while(ctr < childNodeListLength && !childNodeName.equals(currentColumn));
System.out.println(" Column Value=>" + columnValue);
/*
if (currentColumn.trim().equals("itm_defaultedit"))
{
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
tranDate = sdf.format(new Timestamp(System.currentTimeMillis()));
loginCode = getValueFromXTRA_PARAMS(xtraParams, "loginCode");
sql = "SELECT NAME FROM USERS WHERE CODE = '" + loginCode +"'";
System.out.println("SQL FOR USER'S NAME ====>" + sql);
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
loginCodeName = rs.getString(1) == null ? "":rs.getString(1);
}
pstmt.close(); pstmt = null;
rs.close(); rs = null;
valueXmlString.append("<user_code>").append("<![CDATA[" + loginCode + "]]>").append("</user_code>");
valueXmlString.append("<name>").append("<![CDATA[" + loginCodeName + "]]>").append("</name>");
valueXmlString.append("<tran_date>").append("<![CDATA[" + tranDate + "]]>").append("</tran_date>");
String instituteClass = null;
instituteClass = genericUtility.genericUtility.getColumnValue( "sorg_type", dom1 );
if ("P".equalsIgnoreCase( instituteClass ))
{
valueXmlString.append("<tran_id__ref isVisible=\"0\">").append("<![CDATA[" + " " + "]]>").append("</tran_id__ref>");
}
else
{
valueXmlString.append("<tran_id__ref isVisible=\"1\">").append("<![CDATA[" + " " + "]]>").append("</tran_id__ref>");
}
}
//itmdefault edit
valueXmlString.append("</Detail1>\r\n");
//valueXmlString.append("</Detail>");
break;
*/
}//end of switch
valueXmlString.append("</Root>");
}//END OF TRY
catch(Exception e)
{
e.printStackTrace();
System.out.println("Exception ::"+ e.getMessage());
throw new ITMException(e);
}
finally
{
try
{
if(rs != null)
{
rs.close();
rs = null;
}
if(pstmt!= null)
{
pstmt.close();
pstmt = null;
}
if( conn != null )
{
conn.close();
conn = null;
}
}
catch(Exception d)
{
d.printStackTrace();
}
System.out.println("[DistOrderEJB] Connection is Closed");
}
System.out.println("valueXmlString:::::" + valueXmlString.toString());
return valueXmlString.toString();
}//END OF ITEMCHANGE
private String gbfDistOrderSite( String asDistOrder, String asSiteShip, String asSiteDlv, Connection conn ) throws Exception
{
String lsErrcode = null, lsSiteCodeShip = null, lsSiteCodeDlv = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
String sql = null;
sql = "select site_code__ship ls_site_code__ship, site_code__dlv ls_site_code__dlv from distorder "
+" where dist_order = '" + asDistOrder + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
lsSiteCodeShip = rs.getString( "ls_site_code__ship" );
lsSiteCodeDlv = rs.getString( "ls_site_code__dlv" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( !( lsSiteCodeShip.trim().equalsIgnoreCase( asSiteShip.trim() ) ) || !( lsSiteCodeDlv.equalsIgnoreCase( asSiteDlv.trim() ) ) )
{
lsErrcode = "VTDIST10";
}
return lsErrcode;
}
private Timestamp getDateInForamt( String dateStr, String format ) throws Exception
{
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
Timestamp timestamp = null;
SimpleDateFormat sdf = new SimpleDateFormat( format );//new SimpleDateFormat(genericUtility.getApplDateFormat());
System.out.println( "dateStr[" + dateStr + "]" );
java.util.Date frDate = null;
frDate = sdf.parse( dateStr );
SimpleDateFormat sdf1 = new SimpleDateFormat(genericUtility.getDBDateFormat());
timestamp = Timestamp.valueOf(sdf1.format(frDate).toString() + " 00:00:00.0");
return timestamp;
}
public String gfQcReqd( String asSitecode, String asItemcode, Connection conn ) throws Exception
{
String lsQcReqd = null;
String sql = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
PreparedStatement pstmt1 = null;
ResultSet rs1 = null;
sql = "select ( case when qc_reqd is null then 'N' else qc_reqd end ) ls_qc_reqd "
+" from siteitem "
+" where item_code = '" + asItemcode + "'"
+" and site_code = '" + asSitecode + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery( );
if( rs.next() )
{
lsQcReqd = rs.getString( "ls_qc_reqd" );
}
else
{
String sql1 = "select ( case when qc_reqd is null then 'N' else qc_reqd end ) ls_qc_reqd "
+" from item where item_code = '" + asItemcode + "'";
pstmt1 = conn.prepareStatement( sql );
rs1 = pstmt.executeQuery( );
if( rs1.next() )
{
lsQcReqd = rs1.getString( "ls_qc_reqd" );
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 = null;
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
return lsQcReqd;
}
}// END OF MAIN CLASS
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import org.w3c.dom.Document;
//import javax.ejb.EJBObject;
import ibase.webitm.ejb.ValidatorLocal;
import ibase.webitm.utility.ITMException;
import javax.ejb.Local; // added for ejb3
@Local // added for ejb3
public interface DistReceiptLocal extends ValidatorLocal//,EJBObject
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged() throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import org.w3c.dom.Document;
import javax.ejb.EJBObject;
import ibase.webitm.ejb.ValidatorRemote;
import ibase.webitm.utility.ITMException;
import javax.ejb.Remote; // added for ejb3
@Remote // added for ejb3
public interface DistReceiptRemote extends ValidatorRemote//,EJBObject
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged() throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
This source diff could not be displayed because it is too large. You can view the blob instead.
package ibase.webitm.ejb.dis;
import ibase.webitm.ejb.ProcessLocal;
import ibase.webitm.utility.ITMException;
import org.w3c.dom.*;
import java.rmi.RemoteException;
import javax.ejb.Local;
@Local // added for ejb3
public interface GenConsIssuePrcLocal extends ProcessLocal//,EJBObject
{
public String process() throws RemoteException,ITMException;
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException;
public String process(Document dom, Document dom2, String windowName, String xtraParams) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.dis;
import ibase.webitm.ejb.ProcessRemote;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import javax.ejb.Remote;
import org.w3c.dom.Document;
@Remote // added for ejb3
public interface GenConsIssuePrcRemote extends ProcessRemote//,EJBObject
{
public String process() throws RemoteException,ITMException;
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException;
public String process(Document dom, Document dom2, String windowName, String xtraParams) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.dis;
import ibase.system.config.ConnDriver;
import ibase.utility.E12GenericUtility;
import ibase.webitm.ejb.ValidatorEJB;
//import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import javax.ejb.Stateless;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
@Stateless
public class GenConsIssuePrcValidate extends ValidatorEJB implements GenConsIssuePrcValidateLocal,GenConsIssuePrcValidateRemote
{
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
public String wfValData(String xmlString, String xmlString1, String xmlString2,String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
System.out.println("------------@ wfvalData method called-----------------");
System.out.println("Xml String : ["+xmlString+"]");
String errString = null;
Document dom = null;
Document dom1 = null;
Document dom2 = null;
//GenericUtility genericUtility = GenericUtility.getInstance();
System.out.println("below genericUtility--------------->>>>>>>>>");
try
{
if(xmlString != null && xmlString.trim().length()!=0)
{
dom = genericUtility.parseString(xmlString);
System.out.println("xmlString d" + xmlString);
}
if(xmlString1 != null && xmlString1.trim().length()!=0)
{
dom1 = genericUtility.parseString(xmlString1);
System.out.println("xmlString1 f" + xmlString1);
}
if(xmlString2 != null && xmlString2.trim().length()!=0)
{
dom2 = genericUtility.parseString(xmlString2);
System.out.println("xmlString2 f" + xmlString2);
}
// dom = parseString(xmlString);
// dom1 = parseString(xmlString1);
// dom2 = parseString(xmlString2);
errString = wfValData(dom,dom1,dom2,objContext,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : budgetgroup.java : wfValData(String xmlString) : ==>\n"+e.getMessage());
throw new ITMException(e);
}
return errString;
} //end of wfValData
public String wfValData(Document dom, Document dom1, Document dom2,String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
String cons_order__fr,cons_order__to,site_code = "";
String order_date__to,order_date__fr = "";
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
int ctr=0;
String childNodeName = null;
String errString = "";
Connection conn = null;
PreparedStatement pstmt = null ;
ResultSet rs = null;
String sql = "";
int cnt=0;
int currentFormNo=0;
int childNodeListLength;
ConnDriver connDriver = new ConnDriver();
String consOrdFrom = null;
String SiteCode = null;
String consOrdTo = null;
String fromDateStr = null;
String toDateStr = null;
Timestamp fromDate = null;
String mdate = null;
Timestamp toDate = null;
Timestamp mtdate = null;
String userId="",errCode="",locgrp ="";
//GenericUtility genericUtility = GenericUtility.getInstance();
String bud_group_code ="",acct_code="",cctr_code="",anal_code="",descr="",sh_descr ="";
try
{
//Changes and Commented By Poonam on 08-06-2016 :START
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
//Changes and Commented By Poonam on 08-06-2016 :END
connDriver = null;
userId = getValueFromXTRA_PARAMS(xtraParams,"loginCode");
System.out.println("user ID form XtraParam : "+userId);
if(objContext != null && objContext.trim().length()>0)
{
currentFormNo = Integer.parseInt(objContext);
}
switch(currentFormNo)
{
case 1 :
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr++)
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if (childNodeName.equalsIgnoreCase("cons_order__fr"))
{
cons_order__fr = genericUtility.getColumnValue("cons_order__fr",dom);
if (cons_order__fr == null || cons_order__fr.trim().length() == 0 )
{
System.out.println("cons_order__fr null validation fire");
errCode = "CONSORFRN";
errString = getErrorString("cons_order__fr",errCode,userId);
break;
}else
{
sql = "select count(1) from consume_ord where cons_order = ? ";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,cons_order__fr);
rs = pstmt.executeQuery();
if(rs.next())
{
cnt = rs.getInt(1);
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
if(cnt == 0)
{
System.out.println("cons_order__fr not exist validation fire");
errCode = "CONSORFRNE";
errString = getErrorString("cons_order__fr",errCode,userId);
break;
}
}
}
else if (childNodeName.equalsIgnoreCase("cons_order__to"))
{
cons_order__to = genericUtility.getColumnValue("cons_order__to",dom);
if (cons_order__to == null || cons_order__to.trim().length() == 0 )
{
System.out.println("cons_order__to null validation fire");
errCode = "CONSORTON";
errString = getErrorString("cons_order__to",errCode,userId);
break;
}else
{
sql = "select count(1) from consume_ord where cons_order = ? ";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,cons_order__to);
rs = pstmt.executeQuery();
if(rs.next())
{
cnt = rs.getInt(1);
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
if(cnt == 0)
{
System.out.println("cons_order__fr not exist validation fire");
errCode = "CONSORTONE";
errString = getErrorString("cons_order__to",errCode,userId);
break;
}
}
}
else if (childNodeName.equalsIgnoreCase("order_date__fr"))
{
fromDateStr = genericUtility.getColumnValue( "order_date__fr", dom );
System.out.println("dfhfhfghfgvfvb hjkddfgrrg"+fromDateStr);
toDateStr = genericUtility.getColumnValue( "order_date__to", dom );
System.out.println("dfhfhfghfgvfvb hdssdswererjkddfgrrg"+toDateStr);
cons_order__fr = genericUtility.getColumnValue("cons_order__fr",dom);
//order_date__fr = genericUtility.getColumnValue("order_date__fr",dom);
System.out.println("dates here"+fromDate+""+toDate);
System.out.println("in date validation");
if (fromDateStr == null || fromDateStr.trim().length() == 0 )
{
errCode = "POCONSODFE";
errString = getErrorString("order_date__fr",errCode,userId);
break;
}else{
if (fromDateStr != null || fromDateStr.trim().length() > 0 )
{
if (toDateStr != null)
{
fromDateStr = genericUtility.getValidDateString( fromDateStr, genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat() );
fromDate = java.sql.Timestamp.valueOf( fromDateStr + " 00:00:00.0" );
toDateStr = genericUtility.getValidDateString( toDateStr, genericUtility.getApplDateFormat(),genericUtility.getDBDateFormat());
toDate =java.sql.Timestamp.valueOf( toDateStr + " 00:00:00.0");
System.out.println("fromDate is after toDate");
if(fromDate.compareTo(toDate)>0)
{
System.out.println("order_date__fr main validation fire");
errCode = "CONSDAFRGR";
errString = getErrorString("order_date__fr",errCode,userId);
break;
}
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
mdate = sdf.format(cal.getTime());
mdate = genericUtility.getValidDateString(mdate, genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat() );
java.sql.Timestamp ordatfr = null;
sql = "select ORDER_DATE from consume_ord where CONS_ORDER = '" + cons_order__fr + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
ordatfr = rs.getTimestamp( "ORDER_DATE" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
System.out.println("date is >>>>:::::"+mtdate);
if(ordatfr.compareTo(fromDate)>0)
{
System.out.println("mtdate vvvvisweweegrgrg after toDate");
System.out.println("order_date__fr main validation fire");
errCode = "POCONSBDTR";
errString = getErrorString("order_date__fr",errCode,userId);
break;
}
}
}
}
}
else if (childNodeName.equalsIgnoreCase("order_date__to"))
{
toDateStr = genericUtility.getColumnValue( "order_date__to", dom );
cons_order__to = genericUtility.getColumnValue("cons_order__to",dom);
System.out.println("dfhfhfghfgvfvdvfvb hjk"+toDateStr);
if (toDateStr == null || toDateStr.trim().length() == 0 )
{
errCode = "POCONSODTE";
errString = getErrorString("order_date__to",errCode,userId);
break;
}
else{
toDateStr = genericUtility.getValidDateString( toDateStr, genericUtility.getApplDateFormat(),genericUtility.getDBDateFormat());
toDate =java.sql.Timestamp.valueOf( toDateStr + " 00:00:00.0");
//order_date__to = genericUtility.getColumnValue("order_date__to",dom);
Calendar cal = Calendar.getInstance();
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getApplDateFormat());
java.sql.Timestamp ordatto = null;
sql = "select ORDER_DATE from consume_ord where CONS_ORDER = '" + cons_order__to + "'";
pstmt = conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if( rs.next() )
{
ordatto = rs.getTimestamp( "ORDER_DATE" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
System.out.println("date is >>>>:::::"+mtdate);
if(ordatto.compareTo(toDate)>0)
{
System.out.println("mtdatfrtttyyytyyyedsdsd is after toDate");
System.out.println("order_date__fr main validation fire");
errCode = "POCONSBDTR";
errString = getErrorString("order_date__fr",errCode,userId);
break;
}
}
}
else if (childNodeName.equalsIgnoreCase("site_code"))
{
site_code = genericUtility.getColumnValue("site_code",dom);
if (site_code == null || site_code.trim().length() == 0 )
{
System.out.println("site_code null validation fire");
errCode = "CONSSITEN";
errString = getErrorString("site_code",errCode,userId);
break;
}else
{
sql = "select count(1) from site where site_code = ? ";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,site_code);
rs = pstmt.executeQuery();
if(rs.next())
{
cnt = rs.getInt(1);
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
if(cnt == 0)
{
System.out.println("site_code not exist validation fire");
errCode = "CONSSITENE";
errString = getErrorString("site_code",errCode,userId);
break;
}
}
}
else if (childNodeName.equalsIgnoreCase("loc_group"))
{ System.out.println("deepak");
locgrp = genericUtility.getColumnValue("loc_group",dom);
System.out.println("loc group if-->["+locgrp+"]");
if (locgrp != null && locgrp.trim().length() > 0 )
{
System.out.println("loc code else-->["+locgrp+"]");
sql = "select count(1) from location where loc_group = ? ";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1,locgrp);
rs = pstmt.executeQuery();
if(rs.next())
{
cnt = rs.getInt(1);
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
if(cnt == 0)
{
errCode = "CONSLOCNE";
errString = getErrorString("loc_group",errCode,userId);
break;
}
}
System.out.println("ENTER IN COMB VAL");
consOrdFrom = genericUtility.getColumnValue( "cons_order__fr", dom );
consOrdTo = genericUtility.getColumnValue( "cons_order__to", dom );
fromDateStr = genericUtility.getColumnValue( "order_date__fr", dom );
toDateStr = genericUtility.getColumnValue( "order_date__to", dom );
SiteCode = genericUtility.getColumnValue( "site_code", dom );
fromDateStr = genericUtility.getValidDateString( fromDateStr, genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat() );
fromDate = java.sql.Timestamp.valueOf( fromDateStr + " 00:00:00.0" );
toDateStr = genericUtility.getValidDateString( toDateStr, genericUtility.getApplDateFormat(),genericUtility.getDBDateFormat());
toDate =java.sql.Timestamp.valueOf( toDateStr + " 00:00:00.0");
sql = "SELECT COUNT(1) FROM CONSUME_ORD"+
" WHERE SITE_CODE__ORD = ? AND CONS_ORDER between ? AND ?"+
"AND ORDER_DATE between ? AND ?";
System.out.println(sql+"1st sql");
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, SiteCode);
pstmt.setString(2, consOrdFrom);
pstmt.setString(3, consOrdTo);
pstmt.setTimestamp( 4, fromDate );
pstmt.setTimestamp( 5, toDate );
rs = pstmt.executeQuery();
if(rs.next())
{
cnt = rs.getInt(1);
}
pstmt.close();
rs.close();
pstmt = null;
rs = null;
if(cnt == 0)
{
errCode = "CONSCOMB";
errString = getErrorString("",errCode,userId);
break;
}
}
//
//
//
// if(childNodeName.equalsIgnoreCase("cons_order__fr") || childNodeName.equalsIgnoreCase("cons_order__to") ||
// childNodeName.equalsIgnoreCase("order_date__fr") || childNodeName.equalsIgnoreCase("site_code"))
// {
//
//
// sql = "select count(1) from consume_iss where cons_order = ? ";
// pstmt=conn.prepareStatement(sql);
// pstmt.setString(1,consOrdFrom);
// rs = pstmt.executeQuery();
// if(rs.next())
// {
// cnt = rs.getInt(1);
// }
// pstmt.close();
// rs.close();
// pstmt = null;
// rs = null;
// if(cnt > 0)
// {
// System.out.println("order already generated");
// errCode = "";
// errString = getErrorString("",errCode,userId);
// break;
// }
//
//
//
// }
}
break;
default:
} //end switch
} //end try
catch(Exception e)
{
System.out.println("Exception ::"+e);
e.printStackTrace();
errString=e.getMessage();
throw new ITMException(e);
}
finally
{
try
{
if(conn!=null)
{
if(rs != null )
{
rs.close();
rs = null;
}
if(pstmt != null )pstmt.close();
pstmt =null;
conn.close();
}
conn = null;
}
catch(Exception d)
{
d.printStackTrace();
}
}
System.out.println("ErrString ::[ "+errString+" ]");
return errString;
}
public String itemChanged(String xmlString,String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
System.out.println("------------------ itemChanged called------------------");
Document dom = null;
Document dom1 = null;
Document dom2 = null;
String valueXmlString = "";
try
{
dom = parseString(xmlString);
dom1 = parseString(xmlString1);
dom2 = parseString(xmlString2);
valueXmlString = itemChanged(dom,dom1,dom2,objContext,currentColumn,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : [budgetgroup ][itemChanged(String,String)] :==>\n"+e.getMessage());
}
return valueXmlString;
}
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
PreparedStatement pStmt = null;
ResultSet rs = null;
String sql = null;
int currentFormNo = 0;
StringBuffer valueXmlString = new StringBuffer();
String columnValue = null;
NodeList parentNodeList = null;
Node parentNode = null;
Node childNode = null;
NodeList childNodeList = null;
String childNodeName = null;
int childNodeListLength = 0;
int ctr = 0;
String loginSite = null;
try
{
//Changes and Commented By Poonam on 08-06-2016 :START
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
//Changes and Commented By Poonam on 08-06-2016 :END
connDriver = null;
if(objContext != null && objContext.trim().length()>0)
{
currentFormNo = Integer.parseInt(objContext);
}
loginSite = getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
System.out.println("[EpaymentICEJB] [itemChanged] :currentFormNo ....." +currentFormNo);
valueXmlString = new StringBuffer("<?xml version=\"1.0\"?><Root><header><editFlag>");
valueXmlString.append(editFlag).append("</editFlag></header>");
System.out.println("Current Form No ["+currentFormNo+"]");
switch (currentFormNo)
{
case 1:
valueXmlString.append("<Detail1>");
//SEARCHING THE DOM FOR THE INCOMING COLUMN VALUE START
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
ctr = 0;
childNodeListLength = childNodeList.getLength();
do
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equals(currentColumn))
{
if (childNode.getFirstChild() != null)
{
columnValue=childNode.getFirstChild().getNodeValue().trim();
}
}
ctr++;
}while(ctr < childNodeListLength && !childNodeName.equals(currentColumn));
System.out.println("[" + currentColumn + "] ==> '" + columnValue + "'");
if (currentColumn.trim().equals( "itm_default" ))
{
valueXmlString.append("<site_code>").append("<![CDATA[" + ( loginSite != null ? loginSite.trim() : "" )+ "]]>").append("</site_code>");
}
if ( currentColumn.trim().equals( "cons_order__fr" ) )
{
java.sql.Timestamp orderDate = null;
if( columnValue != null )
{
sql = "select ORDER_DATE from consume_ord where CONS_ORDER = '" + columnValue + "'";
pStmt = conn.prepareStatement( sql );
rs = pStmt.executeQuery();
if( rs.next() )
{
orderDate = rs.getTimestamp( "ORDER_DATE" );
}
rs.close();
rs = null;
pStmt.close();
pStmt = null;
}
valueXmlString.append("<order_date__fr>").append("<![CDATA[" + ( orderDate != null ? genericUtility.getValidDateString(orderDate.toString(), genericUtility.getDBDateFormat(), genericUtility.getApplDateFormat() ) : "" )+ "]]>").append("</order_date__fr>");
}
if ( currentColumn.trim().equals( "cons_order__to" ) )
{
java.sql.Timestamp orderDate = null;
if( columnValue != null )
{
sql = "select ORDER_DATE from consume_ord where CONS_ORDER = '" + columnValue + "'";
pStmt = conn.prepareStatement( sql );
rs = pStmt.executeQuery();
if( rs.next() )
{
orderDate = rs.getTimestamp( "ORDER_DATE" );
}
rs.close();
rs = null;
pStmt.close();
pStmt = null;
}
valueXmlString.append("<order_date__to>").append("<![CDATA[" + ( orderDate != null ? genericUtility.getValidDateString(orderDate.toString(), genericUtility.getDBDateFormat(), genericUtility.getApplDateFormat() ) : "" )+ "]]>").append("</order_date__to>");
}
valueXmlString.append("</Detail1>");
valueXmlString.append("</Root>");
break;
///////////////
////////////////
}//END OF TRY
}
catch(Exception e)
{
System.out.println("Exception ::"+ e.getMessage());
e.printStackTrace();
}
finally
{
try
{
if ( rs != null )
{
rs.close();
rs = null;
}
if ( pStmt != null )
{
pStmt.close();
pStmt = null;
}
if ( conn != null )
{
conn.close();
conn = null;
}
}
catch(Exception e)
{
System.out.println("Exception ::" + e);
e.printStackTrace();
}
}
return valueXmlString.toString();
}
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import org.w3c.dom.*;
import ibase.webitm.ejb.ValidatorLocal;
import ibase.webitm.utility.ITMException;
import javax.ejb.Local;
@Local
public interface GenConsIssuePrcValidateLocal extends ValidatorLocal
{
public String wfValData(String xmlString, String xmlString1, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(Document dom, Document dom1, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import org.w3c.dom.*;
import ibase.webitm.ejb.ValidatorRemote;
import ibase.webitm.utility.ITMException;
import javax.ejb.Remote;
@Remote
public interface GenConsIssuePrcValidateRemote extends ValidatorRemote
{
public String wfValData(String xmlString, String xmlString1, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(Document dom, Document dom1, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import java.text.*;
import java.util.Date;
import java.sql.*;
import org.w3c.dom.*;
import javax.ejb.*;
import ibase.utility.E12GenericUtility;
import ibase.webitm.utility.*;
import ibase.system.config.*;
import ibase.webitm.ejb.*;
import javax.ejb.Stateless; // added for ejb3
@Stateless // added for ejb3
public class GenDistIssIC extends ValidatorEJB //implements SessionBean
{
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
/*public void ejbCreate() throws RemoteException, CreateException
{
System.out.println("EpaymentICEJB is in Process..........");
}
public void ejbRemove()
{
}
public void ejbActivate()
{
}
public void ejbPassivate()
{
}*/
public String wfValData() throws RemoteException,ITMException
{
return "";
}
public String itemChanged() throws RemoteException,ITMException
{
return "";
}
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
Document dom1 = null;
Document dom2 = null;
String errString = null;
System.out.println("Validation Start..........");
try
{
System.out.println("xmlString:::"+xmlString);
dom = parseString(xmlString);
dom1 = parseString(xmlString1);
if (xmlString2.trim().length() > 0 )
{
dom2 = parseString(xmlString2);
}
errString = wfValData(dom,dom1,dom2,objContext,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : EpaymentICEJB : wfValData(String xmlString) : ==>\n"+e.getMessage());
}
return (errString);
}
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
String errString = " ";
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
int ctr = 0;
String startDate = null,endDate = null;
String columnValue = null;
String childNodeName = null;
String errCode = null;
String userId = null,loginSite = null;
String prdtCode = null;
int cnt = 0;
int currentFormNo = 0;
int childNodeListLength;
Connection conn = null;
PreparedStatement pstmt=null;
ResultSet rs = null;
String sql = null;
String orderDateStr = null;
String tranDateStr = null;
int resultCount = 0;
String templateFile = null;
String exprNo = null;
ConnDriver connDriver = new ConnDriver();
try
{
System.out.println( "wfValData called" );
//Changes and Commented By Poonam on 08-06-2016 :START
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
//Changes and Commented By Poonam on 08-06-2016 :END
userId = getValueFromXTRA_PARAMS(xtraParams,"loginCode");
loginSite = getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
//genericUtility = GenericUtility.getInstance();
if(objContext != null && objContext.trim().length()>0)
{
currentFormNo = Integer.parseInt(objContext);
}
switch(currentFormNo)
{
case 1 :
System.out.println("VALIDATION FOR DETAIL [ 1 ]..........");
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr++)
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
}
//END OF CASE1
break;
case 2 :
System.out.println("VALIDATION FOR DETAIL [ 2 ]..........");
parentNodeList = dom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr++)
{
cnt = 0;
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
}//END FOR OF CASE2
break;
}//END SWITCH
}//END TRY
catch(Exception e)
{
System.out.println("Exception ::" +e);
e.printStackTrace();
errCode = "VALEXCEP";
errString = getErrorString( "", errCode, userId );
}
finally
{
try
{
if(conn != null)
{
if( pstmt != null )
{
pstmt.close();
pstmt = null;
}
if( rs != null )
{
rs.close();
rs = null;
}
conn.close();
}
conn = null;
}
catch(Exception d)
{
d.printStackTrace();
}
System.out.println(" < ExprProcessIcEJB > CONNECTION IS CLOSED");
}
System.out.println("ErrString ::" + errString);
return errString;
}//END OF VALIDATION
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
Document dom1 = null;
Document dom2 = null;
String valueXmlString = null;
try
{
dom = parseString(xmlString);
System.out.println("xmlString" + xmlString);
dom1 = parseString(xmlString1);
System.out.println("xmlString1" + xmlString1);
if (xmlString2.trim().length() > 0 )
{
System.out.println("xmlString2" + xmlString2);
dom2 = parseString("<Root>" + xmlString2+ "</Root>");
}
valueXmlString = itemChanged(dom,dom1,dom2,objContext,currentColumn,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : [EpaymentICEJB][itemChanged(String,String)] :==>\n"+e.getMessage());
}
return valueXmlString;
}
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
PreparedStatement pStmt = null;
ResultSet rs = null;
String sql = null;
int currentFormNo = 0;
StringBuffer valueXmlString = new StringBuffer();
String columnValue = null;
NodeList parentNodeList = null;
Node parentNode = null;
Node childNode = null;
NodeList childNodeList = null;
String childNodeName = null;
int childNodeListLength = 0;
int ctr = 0;
String loginSite = null;
try
{
//Changes and Commented By Poonam on 08-06-2016 :START
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
//Changes and Commented By Poonam on 08-06-2016 :END
connDriver = null;
if(objContext != null && objContext.trim().length()>0)
{
currentFormNo = Integer.parseInt(objContext);
}
loginSite = getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
System.out.println("[EpaymentICEJB] [itemChanged] :currentFormNo ....." +currentFormNo);
valueXmlString = new StringBuffer("<?xml version=\"1.0\"?><Root><header><editFlag>");
valueXmlString.append(editFlag).append("</editFlag></header>");
System.out.println("Current Form No ["+currentFormNo+"]");
switch (currentFormNo)
{
case 1:
valueXmlString.append("<Detail1>");
//SEARCHING THE DOM FOR THE INCOMING COLUMN VALUE START
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
ctr = 0;
childNodeListLength = childNodeList.getLength();
do
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equals(currentColumn))
{
if (childNode.getFirstChild() != null)
{
columnValue=childNode.getFirstChild().getNodeValue().trim();
}
}
ctr++;
}while(ctr < childNodeListLength && !childNodeName.equals(currentColumn));
System.out.println("[" + currentColumn + "] ==> '" + columnValue + "'");
if ( currentColumn.trim().equals( "dist_order__fr" ) )
{
java.sql.Timestamp orderDate = null;
if( columnValue != null )
{
sql = "select ORDER_DATE from distorder where DIST_ORDER = '" + columnValue + "'";
pStmt = conn.prepareStatement( sql );
rs = pStmt.executeQuery();
if( rs.next() )
{
orderDate = rs.getTimestamp( "ORDER_DATE" );
}
rs.close();
rs = null;
pStmt.close();
pStmt = null;
}
valueXmlString.append("<order_date__fr>").append("<![CDATA[" + ( orderDate != null ? genericUtility.getValidDateString(orderDate.toString(), genericUtility.getDBDateFormat(), genericUtility.getApplDateFormat() ) : "" )+ "]]>").append("</order_date__fr>");
}
if ( currentColumn.trim().equals( "dist_order__to" ) )
{
java.sql.Timestamp orderDate = null;
if( columnValue != null )
{
sql = "select ORDER_DATE from distorder where DIST_ORDER = '" + columnValue + "'";
pStmt = conn.prepareStatement( sql );
rs = pStmt.executeQuery();
if( rs.next() )
{
orderDate = rs.getTimestamp( "ORDER_DATE" );
}
rs.close();
rs = null;
pStmt.close();
pStmt = null;
}
valueXmlString.append("<order_date__to>").append("<![CDATA[" + ( orderDate != null ? genericUtility.getValidDateString(orderDate.toString(), genericUtility.getDBDateFormat(), genericUtility.getApplDateFormat() ) : "" )+ "]]>").append("</order_date__to>");
}
valueXmlString.append("</Detail1>");
valueXmlString.append("</Root>");
break;
///////////////
case 2:
valueXmlString.append("<Detail2>");
//SEARCHING THE DOM FOR THE INCOMING COLUMN VALUE START
parentNodeList = dom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
ctr = 0;
childNodeListLength = childNodeList.getLength();
do
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equals(currentColumn))
{
if (childNode.getFirstChild() != null)
{
columnValue=childNode.getFirstChild().getNodeValue().trim();
}
}
ctr++;
}while(ctr < childNodeListLength && !childNodeName.equals(currentColumn));
System.out.println("[" + currentColumn + "] ==> '" + columnValue + "'");
if (currentColumn.trim().equals( "itm_default" ))
{
valueXmlString.append("<qty_perc isSrvCallOnChg='0'>").append("<![CDATA[]]>").append("</qty_perc>");
}
if (currentColumn.trim().equals( "itm_defaultedit" ))
{
String calcType = genericUtility.getColumnValue( "calc_type", dom );
String qtyPerc = genericUtility.getColumnValue( "qty_perc", dom );
String calMethod = genericUtility.getColumnValue( "cal_method", dom );
String calInput = genericUtility.getColumnValue( "cal_input", dom );
if( calcType != null && ( calcType.indexOf( "P" ) > -1 || calcType.indexOf( "W" ) > -1 ) )
{
valueXmlString.append("<qty_perc protect='0'>").append("<![CDATA[" + qtyPerc + "]]>").append("</qty_perc>");
}
else
{
valueXmlString.append("<qty_perc protect='0'>").append("<![CDATA[" + qtyPerc + "]]>").append("</qty_perc>");
}
if( calcType != null && calcType.indexOf( "U" ) > -1 )
{
valueXmlString.append("<cal_method protect='0'>").append("<![CDATA[" + calMethod + "]]>").append("</cal_method>");
valueXmlString.append("<cal_input protect='0'>").append("<![CDATA[" + calInput + "]]>").append("</cal_input>");
}
else
{
valueXmlString.append("<cal_method protect='1'>").append("<![CDATA[]]>").append("</cal_method>");
valueXmlString.append("<cal_input protect='1'>").append("<![CDATA[]]>").append("</cal_input>");
}
}
if (currentColumn.trim().equals( "item_code" ))
{
String descr = null;
sql = "select descr from item where item_code = '" + ( columnValue != null ? columnValue.trim() : "" ) + "'";
pStmt = conn.prepareStatement( sql );
rs = pStmt.executeQuery();
if( rs.next() )
{
descr = rs.getString( "descr" );
}
rs.close();
rs = null;
pStmt.close();
pStmt = null;
valueXmlString.append("<item_descr>").append("<![CDATA[" + ( descr != null ? descr.trim() : "" )+ "]]>").append("</item_descr>");
}
if (currentColumn.trim().equals( "site_code" ))
{
String descr = null;
sql = "select descr from site where site_code = '" + ( columnValue != null ? columnValue.trim() : "" ) + "'";
pStmt = conn.prepareStatement( sql );
rs = pStmt.executeQuery();
if( rs.next() )
{
descr = rs.getString( "descr" );
}
rs.close();
rs = null;
pStmt.close();
pStmt = null;
valueXmlString.append("<site_descr>").append("<![CDATA[" + ( descr != null ? descr.trim() : "" )+ "]]>").append("</site_descr>");
}
if (currentColumn.trim().equals( "calc_type" ))
{
System.out.println( "calc_type :: " + columnValue );
String calcType = genericUtility.getColumnValue( "calc_type", dom );
System.out.println( "calc_type :: " + calcType );
String qtyPerc = genericUtility.getColumnValue( "qty_perc", dom );
System.out.println( "qtyPerc :: " + qtyPerc );
String calMethod = genericUtility.getColumnValue( "cal_method", dom );
System.out.println( "calMethod :: " + calMethod );
String calInput = genericUtility.getColumnValue( "cal_input", dom );
System.out.println( "calInput :: " + calInput );
if( currentColumn != null && ( columnValue.indexOf( "P" ) > -1 || columnValue.indexOf( "W" ) > -1 ) )
{
valueXmlString.append("<qty_perc protect='0'>").append("<![CDATA[" + (qtyPerc == null?"":qtyPerc) + "]]>").append("</qty_perc>");
}
else
{
valueXmlString.append("<qty_perc protect='1'>").append("<![CDATA[]]>").append("</qty_perc>");
}
if( currentColumn != null && columnValue.indexOf( "U" ) > -1 )
{
valueXmlString.append("<cal_method protect='0'>").append("<![CDATA[" + (calMethod == null?"":calMethod) + "]]>").append("</cal_method>");
valueXmlString.append("<cal_input protect='0'>").append("<![CDATA[" + (calInput == null?"":calInput) + "]]>").append("</cal_input>");
}
else
{
valueXmlString.append("<cal_method protect='1'>").append("<![CDATA[]]>").append("</cal_method>");
valueXmlString.append("<cal_input protect='1'>").append("<![CDATA[]]>").append("</cal_input>");
}
}
valueXmlString.append("</Detail2>");
valueXmlString.append("</Root>");
////////////////
}//END OF TRY
}
catch(Exception e)
{
System.out.println("Exception ::"+ e.getMessage());
e.printStackTrace();
}
finally
{
try
{
if ( rs != null )
{
rs.close();
rs = null;
}
if ( pStmt != null )
{
pStmt.close();
pStmt = null;
}
if ( conn != null )
{
conn.close();
conn = null;
}
}
catch(Exception e)
{
System.out.println("Exception ::" + e);
e.printStackTrace();
}
}
return valueXmlString.toString();
}//END OF ITEMCHANGE
private String getCurrdateAppFormat()
{
String s = "";
//GenericUtility genericUtility = GenericUtility.getInstance();
try
{
java.util.Date date = null;
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
System.out.println(genericUtility.getDBDateFormat());
SimpleDateFormat simpledateformat = new SimpleDateFormat(genericUtility.getDBDateFormat());
date = simpledateformat.parse(timestamp.toString());
timestamp = Timestamp.valueOf(simpledateformat.format(date).toString() + " 00:00:00.0");
s = (new SimpleDateFormat(genericUtility.getApplDateFormat())).format(timestamp).toString();
}
catch(Exception exception)
{
System.out.println("Exception in getCurrdateAppFormat " + exception.getMessage());
}
return s;
}
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import org.w3c.dom.*;
//import javax.ejb.EJBObject;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
import javax.ejb.Local; // added for ejb3
@Local // added for ejb3
public interface GenDistIssICLocal extends ValidatorLocal //, EJBObject
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException, ITMException;
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged() throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import org.w3c.dom.*;
import javax.ejb.EJBObject;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
import javax.ejb.Remote; // added for ejb3
@Remote // added for ejb3
public interface GenDistIssICRemote extends ValidatorRemote //, EJBObject
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException, ITMException;
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged() throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import ibase.webitm.utility.*;
import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility;
import ibase.webitm.ejb.*;
import ibase.system.config.*;
import java.rmi.RemoteException;
import java.text.*;
import java.util.*;
import java.sql.*;
import org.w3c.dom.*;
import javax.xml.parsers.*;
import javax.ejb.*;
import javax.naming.InitialContext;
import java.io.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer;
import ibase.webitm.ejb.mfg.ExplodeBom;
import javax.ejb.Stateless; // added for ejb3
@Stateless // added for ejb3
public class GenDistIssuePrc extends ProcessEJB //implements SessionBean
{
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
//ArrayList itemQtyList = new ArrayList();
StringBuffer failMsg = null;
HashMap<String,String> errMap=new HashMap<String, String>();
String errCode1=" \n Stock does not exist!\n";
String errCode2=" \n Stock does not exist for few items!\n";//Manoj dtd 03102013 message changed
String errCode3=" \n Unconfirmed Issue Exists!\n";
String errCode4=" \n All Quantity Issued.!\n";
String errCode5=" \n Unconfirmed Dist order or closed!\n";
String errCode6=" \n Dist order is cancelled!\n";//New error message is added by manoj dtd 07/03/16 to validate cancelled Dist order
/*public void ejbCreate() throws RemoteException, CreateException
{
//System.out.println("Create Method Called....");
}
public void ejbRemove()
{
}
public void ejbActivate()
{
}
public void ejbPassivate()
{
}*/
public String process() throws RemoteException,ITMException
{
return "";
}
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
String retStr = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
PreparedStatement pstmt1 = null;
ResultSet rs1 = null;
CreateDistIssue createDistIss = null;
DistOrdRec rec = null;
String excpMsg = null;
String sql = "";
String retString = null;
String errCode = "";
String errMsgStr = null;
String distOrdFrom = null;
String distOrdTo = null;
String fromDateStr = null;
String toDateStr = null;
Timestamp fromDate = null;
Timestamp toDate = null;
String resultStr = null;
ArrayList distOrderList = null;
Connection conn = null;
StringBuffer comXmlString = new StringBuffer("<Root>");
String clubRequired="";
String club="";
String dOrder="";
boolean isStockExist=false;
String siteCode="";
String siteCodeDlv="";
String orderType="";
String locType="";
HashMap<String, ArrayList<DistOrderClubBean>> hm = new HashMap<String,ArrayList<DistOrderClubBean>>();
String udfStr1="";
int cntIssue=0;
String rateClg = "",rateFmDistOrd="";
// boolean errFlag = false;
String tranType = "";
//System.out.println("xmlString[process]::::::::::;;;"+xmlString);
//System.out.println("xmlString2[process]::::::::::;;;"+xmlString2);
//System.out.println("windowName[process]::::::::::;;;"+windowName);
//System.out.println("xtraParams[process]:::::::::;;;"+xtraParams);
try
{
if(xmlString != null && xmlString.trim().length()!=0)
{
dom = genericUtility.parseString(xmlString);
}
}
catch (Exception e)
{
//System.out.println("Exception PrcEJB :process(String xmlString, String xmlString2, String windowName, String xtraParams):" + e.getMessage() + ":");
e.printStackTrace();
excpMsg = e.getMessage();
}
try
{
ConnDriver connDriver = new ConnDriver();
conn = connDriver.getConnectDB( "DriverITM" );
connDriver = null;
conn.setAutoCommit( false );
createDistIss = new CreateDistIssue();
distOrderList = new ArrayList();
failMsg = new StringBuffer( "" );
distOrdFrom = genericUtility.getColumnValue( "dist_order__fr", dom );
distOrdTo = genericUtility.getColumnValue( "dist_order__to", dom );
fromDateStr = genericUtility.getColumnValue( "order_date__fr", dom );
toDateStr = genericUtility.getColumnValue( "order_date__to", dom );
fromDateStr = genericUtility.getValidDateString( fromDateStr, genericUtility.getApplDateFormat(), genericUtility.getDBDateFormat() );
fromDate = java.sql.Timestamp.valueOf( fromDateStr + " 00:00:00.0" );
//System.out.println( "fromDate..............." + fromDate );
toDateStr = genericUtility.getValidDateString( toDateStr, genericUtility.getApplDateFormat(),genericUtility.getDBDateFormat());
toDate =java.sql.Timestamp.valueOf( toDateStr + " 00:00:00.0");
//System.out.println( "toDate..............." + toDate);
// changes done by ManojSharma 4/Apr/12
clubRequired=genericUtility.getColumnValue( "club", dom );
// if(clubRequired.equalsIgnoreCase("N"))
if("N".equalsIgnoreCase(clubRequired))
{
sql = "SELECT DIST_ORDER, SITE_CODE "
+ " FROM DISTORDER "
+ " WHERE DIST_ORDER >= '" + distOrdFrom + "' "
+ " AND DIST_ORDER <= '" + distOrdTo + "' "
// + " AND CONFIRMED = 'Y' "
//+ " AND STATUS <> 'C' "
+ " AND ORDER_DATE between ? AND ? ";
//System.out.println("sql..............."+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setTimestamp( 1, fromDate );
pstmt.setTimestamp( 2, toDate );
rs = pstmt.executeQuery();
while( rs.next() )
{
rec = new DistOrdRec();
rec.distOrder = rs.getString( "DIST_ORDER" );
rec.siteCode = rs.getString( "SITE_CODE" );
distOrderList.add( rec );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
int distOrderListLen = distOrderList.size();
resultStr = null;
for( int distIdx = 0; distIdx < distOrderListLen; distIdx++ )
{
conn.setAutoCommit(false);//Added By Manoj 15/01/2013 to set Autocommit false in loop
rec = ( DistOrdRec ) distOrderList.get( distIdx );
if( isStockExist( rec.distOrder, conn ) )
{
resultStr = createDistIss.createDistIssue( rec.siteCode, "<Root><TranID>" + rec.distOrder + "</TranID></Root>", xtraParams, conn );
System.out.println("172---resultStr----"+resultStr);
/*Commented by manoj dtd 03102013 not required
if ( resultStr == null || resultStr.trim().length() == 0 )
{
resultStr = itmDBAccessEJB.getErrorString("","VTDESPCONF","BASE");
cntIssue++;
}*/
if( resultStr != null && !( resultStr.toLowerCase().indexOf( "success" ) > -1 ) )
{
// errFlag = true;
System.out.println("----Rollbacking----"+resultStr);
if(resultStr.contains("NODETAILEXIST"))
{
failMsg.append( rec.distOrder + " Detail Records couldn't Inserted!\n" );
}
conn.rollback();//Added By Manoj 15/01/2013 to rollback transaction
//break;
}
if( resultStr != null && ( resultStr.toLowerCase().indexOf( "success" ) > -1 ) )
{
System.out.println("----Commiting----"+resultStr);
conn.commit(); //Added By Manoj 15/01/2013 to commit transaction in loop
// if(errFlag)
// resultStr = itmDBAccessEJB.getErrorString("","VTDENTCONF","BASE");
// else
resultStr = itmDBAccessEJB.getErrorString("","VTDESPCONF","BASE");//Added by manoj dtd 03102013 to show success message
cntIssue++;
}
}
else
{
//chandni error stock does not exist
errMsgStr = itmDBAccessEJB.getErrorString("","VTDESNCONF","BASE");
}
System.out.println("335---resultStr---"+resultStr);
if( resultStr != null && !( resultStr.toLowerCase().indexOf( "success" ) > -1 ) )
{
//msalam on 220609 for showing actual error coming from createDistIssue.
//retString = "VTFAIL";
retString = resultStr;
}
else
{
System.out.println("in else after create dist iss exp :: "+retString);
//commented for test on 220609
retString = null;
}
}
}
//added else part by ManojSharma for adding logic for clubbing dist_order Req.Id DI1ISUN005
else
{
sql=" SELECT D.DIST_ORDER,D.LINE_NO AS LINE_NO,D.TRAN_ID__DEMAND,D.ITEM_CODE AS ITEM_CODE,D.QTY_ORDER AS QTY_ORDER,D.QTY_CONFIRM AS QTY_CONFIRM,"
+" D.QTY_RECEIVED AS QTY_RECEIVED,D.QTY_SHIPPED AS QTY_SHIPPED,D.DUE_DATE AS DUE_DATE,D.TAX_CLASS AS TAX_CLASS,D.TAX_CHAP AS TAX_CHAP,D.TAX_ENV AS TAX_ENV,D.UNIT AS UNIT,ITEM.DESCR AS ITEM_DESCR,"
+" D.SALE_ORDER AS SALE_ORDER,D.LINE_NO__SORD AS LINE_NO__SORD,D.RATE AS RATE,D.QTY_RETURN AS QTY_RETURN,D.RATE__CLG AS RATE__CLG,D.DISCOUNT AS DISCOUNT,D.REMARKS AS REMARKS,D.TOT_AMT AS TOT_AMT,D.TAX_AMT AS TAX_AMT,"
+" D.NET_AMT AS NET_AMT,D.OVER_SHIP_PERC AS OVER_SHIP_PERC,SPACE(300) AS QTY_DETAILS,D.UNIT__ALT AS UNIT__ALT,D.CONV__QTY__ALT AS CONV__QTY__ALT,"
+" D.QTY_ORDER__ALT AS QTY_ORDER__ALT,D.SHIP_DATE AS SHIP_DATE,D.PACK_INSTR AS PACK_INSTR ,"
+" ( CASE WHEN ITEM.DEPT_CODE__ISS IS NULL then ' ' else ITEM.DEPT_CODE__ISS END ) AS DEPT_CODE, "
+" H.AVALIABLE_YN AS AVALIABLE_YN, H.TRAN_TYPE AS TRAN_TYPE,ITEM.LOC_TYPE LOC_TYPE,H.SITE_CODE SITE_CODE,H.SITE_CODE__DLV,H.ORDER_TYPE "
+" FROM DISTORDER_DET D,ITEM ITEM, DISTORDER H "
+" WHERE D.DIST_ORDER = H.DIST_ORDER "
+" AND D.ITEM_CODE = ITEM.ITEM_CODE "
+" AND H.DIST_ORDER >= '" + distOrdFrom + "' and H.DIST_ORDER<='" + distOrdTo + "'"
+" AND ORDER_DATE between ? AND ? "
//+" AND CONFIRMED = 'Y' "
+" AND CASE WHEN D.STATUS IS NULL THEN 'O' ELSE D.STATUS END <> 'C' "//Added by manoj dtd 24/12/2013 to exclude closed lines
+" ORDER BY item.dept_code__iss ASC," //added by rajendra on 02/09/08
+" D.LINE_NO ASC ";
pstmt = conn.prepareStatement(sql);
pstmt.setTimestamp( 1, fromDate );
pstmt.setTimestamp( 2, toDate );
rs = pstmt.executeQuery();
while( rs.next() )
{
dOrder=rs.getString("DIST_ORDER");
distOrderList.add(dOrder);
siteCode = rs.getString("SITE_CODE");
siteCodeDlv = rs.getString("SITE_CODE__DLV");
orderType = rs.getString("ORDER_TYPE");
locType = rs.getString("LOC_TYPE");
tranType = rs.getString("TRAN_TYPE");//including tran type added by vishakha 07/05/2015
rateClg = Double.toString(rs.getDouble( "RATE__CLG" )); // ADDED BY RITESH ON 17/SEP/2014
rateFmDistOrd = Double.toString(rs.getDouble( "RATE" )); // ADDED BY RITESH ON 18/SEP/2014
if (siteCode == null ) siteCode ="";
if (siteCodeDlv == null ) siteCodeDlv ="";
if (locType == null ) locType ="";
if (orderType == null ) orderType ="";
if(tranType == null) tranType="";//added by vishakha on 07/05/2015
pstmt1=conn.prepareStatement("select udf_str1 from gencodes where fld_name='LOC_TYPE' AND fld_value=?");
pstmt1.setString(1, locType);
rs1=pstmt1.executeQuery();
if(rs1.next())
{
udfStr1=rs1.getString(1);
if (udfStr1 == null )
udfStr1 ="";
}
rs1.close();
rs1=null;
pstmt1.close();
pstmt1=null;
/*Commented by manoj dtd 20/02/2013 to change clubbing criteria based on udf_str1 column defined ingencodes for location type
if((siteCode.length()>0) && (siteCodeDlv.length()>0 ) && (orderType.length() >0) && (locType.length() >0))
{
club = siteCode.trim()+","+siteCodeDlv.trim()+","+orderType.trim()+","+locType.trim();
}
else
{
club = siteCode+","+siteCodeDlv+","+orderType+","+locType;
}*/
if((siteCode.length()>0) && (siteCodeDlv.length()>0 ) && (orderType.length() >0) && tranType.length() > 0) // vishakha Changes for D14ASUN007 - 6/May/2015
{
club = siteCode.trim()+","+siteCodeDlv.trim()+","+orderType.trim()+","+udfStr1.trim()+","+tranType.trim();//vishakha Changes for D14ASUN007 - 6/May/2015
}
else
{
club = siteCode+","+siteCodeDlv+","+orderType+","+udfStr1+","+tranType.trim();//vishakha Changes for D14ASUN007 - 6/May/2015
}
DistOrderClubBean db = new DistOrderClubBean();
db.setSiteCode(siteCode);
db.setTranType(rs.getString("TRAN_TYPE"));
db.setAvailableYn(rs.getString("AVALIABLE_YN"));
db.setDeptCode(rs.getString("DEPT_CODE"));
db.setLineNo(rs.getInt("LINE_NO"));
db.setUnit(rs.getString("UNIT"));
db.setUnitAlt(rs.getString("UNIT__ALT"));
db.setItemCode(rs.getString("ITEM_CODE"));
db.setQtyConfirm(rs.getDouble("QTY_CONFIRM"));
db.setQtyShipped(rs.getDouble("QTY_SHIPPED"));
db.setDiscount(rs.getDouble("DISCOUNT"));
db.setDistOrdNo(dOrder);
db.setRateFmDistOrd(rateFmDistOrd);
db.setRateClgFmDistOrd(rateClg);
ArrayList<DistOrderClubBean> inputList =new ArrayList<DistOrderClubBean>();
inputList.add(db);
System.out.println("The content of arraylist is: " + inputList);
ArrayList<DistOrderClubBean> clubList =new ArrayList<DistOrderClubBean>();
if (hm.containsKey(club))
{
clubList= hm.get(club);
clubList.add(db);
hm.put(club,clubList);
}
else
{
hm.put(club,inputList);
}
System.out.println("The size of hm is:"+hm.size());
System.out.println("printing hm:"+hm);
} // end of while
for(int i=0;i<distOrderList.size();i++)
{
dOrder=(String) distOrderList.get(i);
if(!isStockExist( dOrder, conn ) )
{
isStockExist=false;
break;
}
else
{
isStockExist=true;
}
} // end of for
System.out.println("is stock exist::"+isStockExist);
if(isStockExist==true)
{
Set<Map.Entry<String, ArrayList<DistOrderClubBean>>> set = hm.entrySet();
for (Map.Entry<String, ArrayList<DistOrderClubBean>> me : set)
{
conn.setAutoCommit(false);//Added By Manoj 15/01/2013 to set Autocommit false in loop
ArrayList<DistOrderClubBean> distOrdBean = me.getValue();
//resultStr = createDistIss.createDistIssue( "",distOrdBean,xtraParams, conn,rateClg,rateFmDistOrd );
resultStr = createDistIss.createDistIssue( "",distOrdBean,xtraParams, conn );
System.out.println("return resultStr---"+resultStr);
/*if ( resultStr == null || resultStr.trim().length() == 0 )
{
resultStr = itmDBAccessEJB.getErrorString("","VTDESPCONF","BASE");
cntIssue++;
}*/
if( resultStr != null && !( resultStr.toLowerCase().indexOf( "success" ) > -1 ) )
{
// errFlag = true;
if(resultStr.contains("NODETAILEXIST"))
{
failMsg.append( resultStr.substring(14, resultStr.length()) + " Detail Records couldn't Inserted!\n" );
//resultStr=itmDBAccessEJB.getErrorString( "", "VTDESNCONF", "BASE" );
}
System.out.println("----Rollbacking----");
conn.rollback();//Added By Manoj 15/01/2013 to rollback transaction
//break;
}
if( resultStr != null && ( resultStr.toLowerCase().indexOf( "success" ) > -1 ) )
{
System.out.println("----Commiting----");
conn.commit(); //Added By Manoj 15/01/2013 to commit transaction in loop
// if(errFlag)
// resultStr = itmDBAccessEJB.getErrorString("","VTDENTCONF","BASE");
// else
resultStr = itmDBAccessEJB.getErrorString("","VTDESPCONF","BASE");
cntIssue++;
}
}
}
else
{
//chandni error stock does not exist
errMsgStr = itmDBAccessEJB.getErrorString("","VTDESNCONF","BASE");
}
System.out.println("335---resultStr---"+resultStr);
if( resultStr != null && !( resultStr.toLowerCase().indexOf( "success" ) > -1 ) )
{
//msalam on 220609 for showing actual error coming from createDistIssue.
//retString = "VTFAIL";
retString = resultStr;
}
else
{
System.out.println("in else after create dist iss exp :: "+retString);
//commented for test on 220609
retString = null;
}
} // end of else ended by ManojSharma
}
catch(ITMException itme)
{
System.out.println("returning in itme :: "+retString);
retString = "ERROR";
excpMsg = itme.getMessage();
//System.out.println("Exception in...."+e.getMessage());
itme.printStackTrace();
}
catch(Exception e)
{
//System.out.println("returning in exp :: "+retString);
retString = "ERROR";
excpMsg = e.getMessage();
//System.out.println("Exception in...."+e.getMessage());
e.printStackTrace();
}
finally
{
try
{
if (createDistIss != null)
{
//createDistIss.clear();
createDistIss = null;
}
if (distOrderList != null)
{
//distOrderList.clear();
distOrderList = null;
}
System.out.println( "retString :: " + retString );
//if ( retString == null || retString.trim().length() == 0 || retString.toLowerCase().indexOf( "success" ) > -1 )
//{
//conn.commit();
//System.out.println("commiting connection.............");
System.out.println("cntIssue----"+cntIssue);
if(cntIssue>0)
{
conn.commit();
// if(errFlag)
// resultStr = itmDBAccessEJB.getErrorString("","VTDENTCONF","BASE");
// else
retString = itmDBAccessEJB.getErrorString("","VTDESPCONF","BASE");
}
else
{
retString = itmDBAccessEJB.getErrorString( "", "VTDESNCONF", "BASE" );
conn.rollback();
}
//errString = itmDBAccessEJB.getErrorString("", errString, "");
//if( failMsg != null && failMsg.toString().trim().length() > 0 )
if( errMap != null && errMap.size() > 0 )
{
String begPart = retString.substring( 0, retString.indexOf("<trace>") + 7 );
String endPart = retString.substring( retString.indexOf("</trace>"));
String errorFoundstr="Following Dist Orders can not be processded due to :\n";
if(errMap.containsKey(errCode1))
{
errorFoundstr+=errCode1+errMap.get(errCode1);
}
/*if(errMap.containsKey(errCode2))
{
errorFoundstr+=errCode2+errMap.get(errCode2);
}*/
if(errMap.containsKey(errCode3))
{
errorFoundstr+=errCode3+errMap.get(errCode3);
}
if(errMap.containsKey(errCode4))
{
errorFoundstr+=errCode4+errMap.get(errCode4);
}
if(errMap.containsKey(errCode5))
{
errorFoundstr+=errCode5+errMap.get(errCode5);
}
//New error message is added by manoj dtd 07/03/16 to validate cancelled Dist order
if(errMap.containsKey(errCode6))
{
errorFoundstr+=errCode6+errMap.get(errCode6);
}
//String mainStr = begPart + "Following Dist Orders can not be processded due to \n unavailability of stock \n or unconfirmed Distribution Issue already exist :\n" + failMsg.toString() + endPart;
System.out.println("errorFoundstr-----"+errorFoundstr);
String mainStr = begPart + errorFoundstr + endPart;
retString = mainStr;
begPart =null;
endPart =null;
mainStr =null;
}
//}
/*Commented by Manoj dtd 27/09/2013 not Required
else
{
conn.rollback();
//System.out.println("connection rollback.............");
//msalam on 220609 for showing actual error coming from createDistIssue
//System.out.println( "excpMsg in else :: " + excpMsg );
//retString = itmDBAccessEJB.getErrorString( "", "VTDESNCONF", "BASE" );
errMsgStr = itmDBAccessEJB.getErrorString( "", "VTDESNCONF", "BASE" );
//end by msalam on 220609
}*/
cntIssue=0;
errMap.clear();
if( rs != null )
{
rs.close();
}
rs = null;
if (pstmt != null)
{
pstmt.close();
}
if(conn != null)
{
conn.close();
conn = null;
}
}
catch(Exception e)
{
//System.out.println("Error In closing connection::==> "+e);
excpMsg = e.getMessage();
e.printStackTrace();
}
}
System.out.println("Printing excpMsg----"+excpMsg);
System.out.println("Printing errMsgStr----"+errMsgStr);
if( excpMsg != null && excpMsg.trim().length() > 0 )
{
String begPart = retString.substring( 0, retString.indexOf("<trace>") + 7 );
String endPart = retString.substring( retString.indexOf("</trace>"));
String mainStr = begPart + "Following Exception has occured\n" + ( excpMsg == null ? "" : excpMsg ) + endPart;
retString = mainStr;
begPart =null;
endPart =null;
mainStr =null;
}else if( errMsgStr != null && errMsgStr.trim().length() > 0 )
{
System.out.println("retString i else condition---"+retString);
String errStr = retString.substring( retString.indexOf("<trace>") + 7, retString.indexOf("</trace>") );
String begPart = errMsgStr.substring( 0, errMsgStr.indexOf("<trace>") + 7 );
String endPart = errMsgStr.substring( errMsgStr.indexOf("</trace>"));
String mainStr = begPart + errStr + endPart;
retString = mainStr;
begPart =null;
endPart =null;
mainStr =null;
}
//System.out.println("returning from "+retString);
return (retString);
}
private boolean isStockExist( String distOrder, Connection conn ) throws Exception
{
String locCodeDamaged = null;
String res = "";
String sql = null;
int count = 0;
PreparedStatement pstmt = null;
ResultSet rs = null;
String distOrderIss = null;
String tranIdIss = null;
String confirmed = null;
double qtyOrder = 0.0;
double quantity = 0.0;
String availableYN = null;
int countOrdItem=0;
String subSQL="";
String locGroupJwiss="";
// 28/05/09 manoharan avialable_yn added
sql = "SELECT LOC_CODE__DAMAGED, AVALIABLE_YN "
+ " FROM DISTORDER WHERE DIST_ORDER = '"+distOrder+"' ";
pstmt= conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if ( rs.next() )
{
locCodeDamaged = rs.getString( "LOC_CODE__DAMAGED" );
//System.out.println("locCodeDamaged :"+locCodeDamaged);
if( locCodeDamaged == null )
{
locCodeDamaged = "";
}
// 28/05/09 manoharan available_yn added
availableYN = rs.getString( "AVALIABLE_YN" );
if( availableYN == null )
{
availableYN = "Y";
}
// end 28/05/09 manoharan available_yn added
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if ( locCodeDamaged != null && locCodeDamaged.trim().length() > 0 )
{
StringTokenizer st = new StringTokenizer( locCodeDamaged, "," );
while ( st.hasMoreTokens() )
{
res = res + "'" + st.nextToken() + "',";
}
res = res.substring( 0, res.length() - 1 );
//System.out.println("res ::" + res);
locCodeDamaged = res;
//System.out.println("locCodeDamaged After String Tockenized ::"+locCodeDamaged);
}
/* sql = "SELECT count( 1 ) cnt"
+" FROM STOCK A, INVSTAT B, LOCATION C "
+" WHERE C.INV_STAT = B.INV_STAT "
+" AND A.LOC_CODE = C.LOC_CODE "
+" AND ( A.ITEM_CODE, A.SITE_CODE ) in ( SELECT D.item_code, H.SITE_CODE__SHIP "
+" FROM DISTORDER H, DISTORDER_DET D "
+" WHERE h.dist_order = d.dist_order "
+" and D.DIST_ORDER = '" + distOrder + "' ) "
+" AND B.AVAILABLE = ? "
+" AND B.USABLE = ? "
+" AND B.STAT_TYPE <> 'S' "
+" AND A.QUANTITY - A.ALLOC_QTY > 0 "
+" AND NOT EXISTS (SELECT 1 FROM INV_RESTR I WHERE I.INV_STAT = B.INV_STAT AND I.REF_SER = 'D-ISS') ";
if( locCodeDamaged != null && locCodeDamaged.trim().length() > 0 )
{
sql = sql + " AND A.LOC_CODE IN (" + locCodeDamaged + ")";
}*/
sql="SELECT CASE WHEN LOC_GROUP__JWISS IS NULL THEN ' ' ELSE LOC_GROUP__JWISS END AS LOC_GROUP FROM DISTORDER WHERE DIST_ORDER = ? ";
pstmt=conn.prepareStatement(sql);
pstmt.setString(1, distOrder);
rs=pstmt.executeQuery();
if(rs.next())
{
locGroupJwiss=rs.getString( "LOC_GROUP" );
}
rs.close();
rs=null;
pstmt.close();
pstmt=null;
System.out.println("(locGroupJwiss.trim()).length()----"+(locGroupJwiss.trim()).length());
if((locGroupJwiss.trim()).length()>0)
{
subSQL=" AND C.LOC_GROUP ='"+locGroupJwiss+"' ";
}
else
{
subSQL="";
}
//SQL changed by manoj dtd 11/07/2013 to check stock for location froup
sql="SELECT COUNT(1) as cnt FROM DISTORDER H, DISTORDER_DET D WHERE h.dist_order = d.dist_order " +
" and D.DIST_ORDER = '" + distOrder + "' AND " +
" (D.item_code, H.SITE_CODE__SHIP) IN " +
" (SELECT A.ITEM_CODE,A.SITE_CODE FROM STOCK A, INVSTAT B, LOCATION C " +
" WHERE C.INV_STAT = B.INV_STAT AND A.LOC_CODE = C.LOC_CODE " +
" AND B.AVAILABLE = ? "+
" AND B.USABLE = ? " +
" AND B.STAT_TYPE <> 'S' " +
subSQL+
" AND A.QUANTITY - A.ALLOC_QTY > 0 " +
" AND CASE WHEN D.STATUS IS NULL THEN 'O' ELSE D.STATUS END <>'C' "+//Added by manoj dtd 24/12/2013 to exclude closed lines
" AND NOT EXISTS " +
" (SELECT 1 FROM INV_RESTR I WHERE I.INV_STAT = B.INV_STAT AND I.REF_SER = 'D-ISS')" ;
if( locCodeDamaged != null && locCodeDamaged.trim().length() > 0 )
{
sql = sql + " AND A.LOC_CODE IN (" + locCodeDamaged + ")";
}
sql=sql+" )";
pstmt= conn.prepareStatement( sql );
// 28/05/09 manoharan available_yn dynamic bind
pstmt.setString(1,availableYN);
pstmt.setString(2,availableYN);
rs = pstmt.executeQuery();
if ( rs.next() )
{
count = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if( count == 0 )
{
if(errMap!=null && errMap.size()>0)
{
if(errMap.containsKey(errCode1))
{
errMap.put(errCode1,errMap.get(errCode1)+","+distOrder);
}
else
{
errMap.put(errCode1, distOrder);
}
}
else
{
errMap.put(errCode1, distOrder);
}
failMsg.append( distOrder + " Stock does not exist!\n" );
}
pstmt=conn.prepareStatement("select count(1) from distorder_det where dist_order=? and status<>'C'");
pstmt.setString(1,distOrder);
rs=pstmt.executeQuery();
if(rs.next())
{
countOrdItem=rs.getInt(1);
}
rs.close();
rs=null;
pstmt.close();
pstmt=null;
/*Commented by manoj dtd 03/10/2013 to required to show dist order no. for which stock does not exist for few items
if(count>0)
{
if(count<countOrdItem)
{
if(errMap!=null && errMap.size()>0)
{
if(errMap.containsKey(errCode2))
{
errMap.put(errCode2,errMap.get(errCode2)+","+distOrder);
}
else
{
errMap.put(errCode2, distOrder);
}
}
else
{
errMap.put(errCode2, distOrder);
}
failMsg.append( distOrder + " Stock does not exist for all items!\n" );
}
}
*/
int distIssCount = 0;
/* sql changed as it was not allowing partial processing msalam on 230609
sql = " select h.dist_order, h.tran_id, h.confirmed, DH.QTY_ORDER, D.QUANTITY "
+" from DISTORD_ISS H, distord_Issdet D, DISTORDER_DET DH "
+" where H.dist_order = '" + distOrder + "' "
+" AND H.TRAN_ID = D.TRAN_ID "
+" AND D.DIST_ORDER = DH.DIST_ORDER "
+" AND D.LINE_NO_DIST_ORDER = DH.LINE_NO ";
*/
// 21/04/10 manoharan 1st check unconfirmed issues
sql = " select count(1) as cnt "
+" from DISTORD_ISS "
+" where dist_order = ? "
+ " and (case when confirmed is null then 'N' else confirmed end) = 'N' ";
pstmt= conn.prepareStatement( sql );
pstmt.setString( 1, distOrder );
rs = pstmt.executeQuery();
if ( rs.next() )
{
distIssCount = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = null;
boolean issToBeGenerated = true;
if (distIssCount > 0 )
{
issToBeGenerated = false;
if( errMap!=null && errMap.size()>0)
{
if(errMap.containsKey(errCode3))
{
errMap.put(errCode3,errMap.get(errCode3)+","+distOrder);
}
else
{
errMap.put(errCode3, distOrder);
}
}
else
{
errMap.put(errCode3, distOrder);
}
failMsg.append( distOrder + " Unconfirmed Issue Exists!\n" );
}
else
{
/* 21/04/10 manoharan wrong logic for pending order checking
sql = " select h.confirmed, D.QTY_ORDER AS QTY_ORDER, D.QUANTITY AS QUANTITY"
+" from DISTORD_ISS H, "
+" ( select sum( DH.QTY_ORDER ) QTY_ORDER, sum( D.QUANTITY ) QUANTITY "
+" from DISTORD_ISS H, distord_Issdet D, DISTORDER_DET DH "
+" where H.dist_order = ? "
+" AND H.TRAN_ID = D.TRAN_ID "
+" AND D.DIST_ORDER = DH.DIST_ORDER "
+" AND D.LINE_NO_DIST_ORDER = DH.LINE_NO "
+" ) d "
+" where H.dist_order = ? ";
//+" AND H.TRAN_ID = D.TRAN_ID ";
*/
sql = " select sum(ord_qty) ord_qty, sum(iss_qty) iss_qty from ( "
+ " select d.line_no, d.qty_order ord_qty, "
+ " (select sum(id.quantity) from distord_issdet id where id.dist_order = d.dist_order "
+ " and id.line_no_dist_order = d.line_no ) iss_qty "
+ " from distorder_det d "
+ " where d.dist_order = ?"
+ " and CASE WHEN D.STATUS IS NULL THEN 'O' ELSE D.STATUS END<>'C' "//Added by manoj dtd 24/12/2013 to exclude closed lines
+ " ) " ;
pstmt= conn.prepareStatement( sql );
pstmt.setString( 1, distOrder );
//pstmt.setString( 2, distOrder );
rs = pstmt.executeQuery();
if ( rs.next() )
{
//confirmed = rs.getString( "confirmed" );
qtyOrder = rs.getDouble( "ord_qty" );
quantity = rs.getDouble( "iss_qty" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = null;
if( qtyOrder - quantity <= 0 )
{
issToBeGenerated = false;
if(errMap!=null && errMap.size()>0)
{
if(errMap.containsKey(errCode4))
{
errMap.put(errCode4,errMap.get(errCode4)+","+distOrder);
}
else
{
errMap.put(errCode4, distOrder);
}
}
else
{
errMap.put(errCode4, distOrder);
}
failMsg.append( distOrder + " All Quantity Issued.!\n" );
}
}
// end 21/04/10 manoharan 1st check unconfirmed issues
//check for unconfirmed dist order not to be processed
int unConf = 0;
sql = "SELECT count( 1 ) cnt "
+" FROM DISTORDER "
+" WHERE DIST_ORDER = '" + distOrder + "' "
+" AND ( CONFIRMED = 'N' OR STATUS = 'C' ) ";
pstmt= conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if ( rs.next() )
{
unConf = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = null;
if( unConf > 0 )
{
if( errMap!=null && errMap.size()>0)
{
System.out.println("1--errMap.get(errCode5)-----"+errMap.get(errCode5));
if(errMap.containsKey(errCode5))
{
errMap.put(errCode5,errMap.get(errCode5)+","+distOrder);
}
else
{
errMap.put(errCode5, distOrder);
}
}
else
{
System.out.println("2--errMap.get(errCode5)-----"+errMap.get(errCode5));
errMap.put(errCode5, distOrder);
}
failMsg.append( distOrder + " Unconfirmed Dist order or closed!\n" );
}
//New error message is added by manoj dtd 07/03/16 to validate cancelled Dist order
int canRec=0;
sql = "SELECT count( 1 ) cnt "
+" FROM DISTORDER "
+" WHERE DIST_ORDER = '" + distOrder + "' "
+" AND STATUS = 'X' ";
pstmt= conn.prepareStatement( sql );
rs = pstmt.executeQuery();
if ( rs.next() )
{
canRec = rs.getInt( "cnt" );
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql = null;
if( canRec > 0 )
{
if( errMap!=null && errMap.size()>0)
{
System.out.println("1--errMap.get(errCode6)-----"+errMap.get(errCode6));
if(errMap.containsKey(errCode6))
{
errMap.put(errCode6,errMap.get(errCode6)+","+distOrder);
}
else
{
errMap.put(errCode6, distOrder);
}
}
else
{
System.out.println("2--errMap.get(errCode6)-----"+errMap.get(errCode6));
errMap.put(errCode6, distOrder);
}
failMsg.append( distOrder + "Dist order is cancelled!\n" );
}
System.out.println("inside isstock count:"+count+"issToBeGenerated:"+issToBeGenerated+"unConf:"+unConf);
return count > 0 && issToBeGenerated && unConf == 0 && canRec==0;
}
private class DistOrdRec
{
String distOrder = null;
String siteCode = null;
}
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
//import javax.ejb.EJBObject;
import org.w3c.dom.*;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
import javax.xml.parsers.*;
import ibase.webitm.ejb.ProcessLocal;
import ibase.webitm.utility.ITMException;
import javax.ejb.Local; // added for ejb3
@Local // added for ejb3
public interface GenDistIssuePrcLocal extends ProcessLocal//,EJBObject
{
public String process() throws RemoteException,ITMException;
public String process(String string1, String string2, String windowName, String xtraParams) throws RemoteException,ITMException;
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import javax.ejb.EJBObject;
import org.w3c.dom.*;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
import javax.xml.parsers.*;
import ibase.webitm.ejb.ProcessRemote;
import ibase.webitm.utility.ITMException;
import javax.ejb.Remote; // added for ejb3
@Remote // added for ejb3
public interface GenDistIssuePrcRemote extends ProcessRemote//,EJBObject
{
public String process() throws RemoteException,ITMException;
public String process(String string1, String string2, String windowName, String xtraParams) throws RemoteException,ITMException;
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import ibase.webitm.utility.*;
import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility;
import ibase.webitm.ejb.*;
import ibase.system.config.*;
import java.rmi.RemoteException;
import java.text.*;
import java.util.*;
import java.sql.*;
import org.w3c.dom.*;
import javax.xml.parsers.*;
import javax.ejb.*;
import javax.naming.InitialContext;
import java.io.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.*;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.Transformer;
import ibase.webitm.ejb.mfg.ExplodeBom;
import javax.ejb.Stateless; // added for ejb3
@Stateless // added for ejb3
public class MaterialTransferPrc extends ProcessEJB //implements SessionBean
{
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
ITMDBAccessEJB itmDBAccessEJB = new ITMDBAccessEJB();
ArrayList itemQtyList = new ArrayList();
StringBuffer msgString = null;
/*public void ejbCreate() throws RemoteException, CreateException
{
System.out.println("Create Method Called....");
}
public void ejbRemove()
{
}
public void ejbActivate()
{
}
public void ejbPassivate()
{
}*/
public String process() throws RemoteException,ITMException
{
return "";
}
public String process(String xmlString, String xmlString2, String windowName, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
String retStr = "";
PreparedStatement pstmt = null,pstmt1 = null,pstmt2 = null;
ResultSet rs = null,rs1 = null,rs2 = null;
String sql = "";
String retString = "" ,errCode = "",siteCodeSupp ="";
String workOrderFrom ="",workOrderTo ="", workOrderFromDate ="",workOrderToDate ="";
String workorder = null;
String itemCode = "",bomCode = "",site ="" ,itemCodeBean ="",retXmlString ="",dueDate2 ="";
double quantity =0,balQty =0, demandQty = 0, suppQty = 0,qtyfromStock =0;
double qcleadtime = 0,mfgleadtime = 0,yieldperc =0;
Timestamp fromDate = null, toDate =null,dueDate =null;
///////////////////////////////////////////
Connection conn = null;
String errorString = null;
HashMap siteMap =new HashMap();
Vector siteList = new Vector();
ExplodeBom exBom = new ExplodeBom();
msgString = new StringBuffer( "" );
///////////////////////////////////////////
StringBuffer comXmlString = new StringBuffer("<Root>");
System.out.println("xmlString[process]::::::::::;;;"+xmlString);
System.out.println("xmlString2[process]::::::::::;;;"+xmlString2);
System.out.println("windowName[process]::::::::::;;;"+windowName);
System.out.println("xtraParams[process]:::::::::;;;"+xtraParams);
try
{
if(xmlString != null && xmlString.trim().length()!=0)
{
dom = genericUtility.parseString(xmlString);
System.out.println("dom" + dom);
}
}
catch (Exception e)
{
System.out.println("Exception PrcEJB :process(String xmlString, String xmlString2, String windowName, String xtraParams):" + e.getMessage() + ":");
e.printStackTrace();
retStr = e.getMessage();
}
try
{
ConnDriver connDriver = new ConnDriver();
//Changes and Commented By Poonam on 08-06-2016 :START
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
//Changes and Commented By Poonam on 08-06-2016 :END
connDriver = null;
conn.setAutoCommit(false);
site = genericUtility.getColumnValue("site_code",dom);
workOrderFrom = genericUtility.getColumnValue("work_order__from",dom);
workOrderTo = genericUtility.getColumnValue("work_order__to",dom);
workOrderFromDate = genericUtility.getColumnValue("date_from",dom);
workOrderToDate = genericUtility.getColumnValue("date_to",dom);
workOrderFromDate = genericUtility.getValidDateString(workOrderFromDate,genericUtility.getApplDateFormat(),genericUtility.getDBDateFormat());
fromDate =java.sql.Timestamp.valueOf( workOrderFromDate+ " 00:00:00.0");
System.out.println("fromDate..............."+fromDate);
workOrderToDate = genericUtility.getValidDateString(workOrderToDate,genericUtility.getApplDateFormat(),genericUtility.getDBDateFormat());
toDate =java.sql.Timestamp.valueOf( workOrderToDate+ " 00:00:00.0");
System.out.println("toDate..............."+toDate);
int trfCnt = 0;
// Changes done due to multiple ditribution orders creation on pressing of
//Process button multiple times.(transfer_status column has been added in workorder table)
//START
sql = "Select count(1) from workorder where "
+" work_order >= ? and work_order <= ? "
+" and site_code = ? "
+" and ord_date >= ? and ord_date <= ? "
+" and status in ('P','M')";
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, workOrderFrom );
pstmt.setString( 2, workOrderTo );
pstmt.setString( 3, site );
pstmt.setTimestamp(4,fromDate);
pstmt.setTimestamp(5,toDate);
rs = pstmt.executeQuery();
if(rs.next())
{
trfCnt = rs.getInt(1);
}
rs.close();
pstmt.close();
if( trfCnt == 0 )
{
retString = itmDBAccessEJB.getErrorString("","VTNORECFND","BASE");
return retString;
}
trfCnt = 0;
sql = "Select count(1) from workorder where "
+" work_order >= ? and work_order <= ? "
+" and site_code = ? "
+" and ord_date >= ? and ord_date <= ? "
+" and status in ('P','M')"
+" and (transfer_status = ? or transfer_status is null) ";
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, workOrderFrom );
pstmt.setString( 2, workOrderTo );
pstmt.setString( 3, site );
pstmt.setTimestamp(4,fromDate);
pstmt.setTimestamp(5,toDate);
pstmt.setString( 6, "N" );
rs = pstmt.executeQuery();
if(rs.next())
{
trfCnt = rs.getInt(1);
}
rs.close();
pstmt.close();
if( trfCnt == 0 )
{
retString = itmDBAccessEJB.getErrorString("","VTMTRLADYT","BASE");
return retString;
}
// Changes done due to multiple ditribution orders creation on pressing of
//Process button multiple times.(transfer_status column has been added in workorder table)
//END
sql = "SELECT WORK_ORDER, ITEM_CODE, QUANTITY, BOM_CODE , DUE_DATE "
+" FROM WORKORDER "
+" WHERE WORK_ORDER >= '"+workOrderFrom+"' "
+" AND WORK_ORDER <= '"+workOrderTo+"' "
+" AND ORD_DATE >= ? AND ORD_DATE <= ? "
+" AND SITE_CODE = '"+site+"' "
+" AND STATUS IN ('P','M')"
//change -- START
+" AND ( TRANSFER_STATUS IS NULL OR TRANSFER_STATUS = 'N') ";
//change -- END
System.out.println("sql..............."+sql);
System.out.println("workOrderFrom..............."+workOrderFrom);
pstmt = conn.prepareStatement(sql);
pstmt.setTimestamp(1,fromDate);
pstmt.setTimestamp(2,toDate);
rs = pstmt.executeQuery();
int siteCtr = 0;
while (rs.next())
{
workorder = rs.getString("WORK_ORDER") ;
itemCode = rs.getString("ITEM_CODE") ;
quantity = rs.getDouble("QUANTITY");
bomCode = rs.getString("BOM_CODE");
dueDate = rs.getTimestamp("DUE_DATE");
System.out.println("workorder..............."+workorder);
System.out.println("itemCode..............."+itemCode);
System.out.println("bomCode..............."+bomCode);
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getDBDateFormat());
dueDate2 = sdf.format(dueDate);
//System.out.println("dueDate2..... :: "+dueDate2);
sql = "SELECT MFG_TYPE,QC_LEAD_TIME,MFG_LEAD_TIME,YIELD_PERC "
+" FROM SITEITEM WHERE ITEM_CODE = '"+itemCode+"' AND SITE_CODE = '"+site+"' ";
System.out.println("sql..... :: "+sql);
pstmt1 = conn.prepareStatement(sql);
// pstmt1.setString(1,itemCode);
// pstmt1.setString(2,site);
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
yieldperc = rs1.getDouble("YIELD_PERC");
qcleadtime = rs1.getDouble("QC_LEAD_TIME");
mfgleadtime = rs1.getDouble("MFG_LEAD_TIME");
}
rs1.close();
rs1 =null;
pstmt1.close();
pstmt1 = null;
sql = "SELECT QC_LEAD_TIME,MFG_LEAD,YIELD_PERC "
+" FROM ITEM WHERE ITEM_CODE = '"+itemCode+"' ";
System.out.println("sql..... :: "+sql);
pstmt1 = conn.prepareStatement(sql);
// pstmt1.setString(1,itemCode);
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
if(qcleadtime == 0 ) qcleadtime = rs1.getDouble("QC_LEAD_TIME");
if(mfgleadtime == 0 ) mfgleadtime = rs1.getDouble("MFG_LEAD");
if(yieldperc == 0 ) yieldperc = rs1.getDouble("YIELD_PERC");
}
rs1.close();
rs1 =null;
pstmt1.close();
pstmt1 = null;
System.out.println("yieldperc..... :: "+yieldperc);
StringBuffer valueXmlString = new StringBuffer("<Root>");
valueXmlString.append("<Detail>");
valueXmlString.append("<site_code>").append("<![CDATA[").append(site).append("]]>").append("</site_code>");
valueXmlString.append("<item_code>").append("<![CDATA[").append(itemCode).append("]]>").append("</item_code>");
valueXmlString.append("<line_type>").append("<![CDATA[").append("B").append("]]>").append("</line_type>");
valueXmlString.append("<bom_code>").append("<![CDATA[").append(bomCode).append("]]>").append("</bom_code>");
valueXmlString.append("<quantity>").append("<![CDATA[").append(quantity).append("]]>").append("</quantity>");
valueXmlString.append("<due_date>").append("<![CDATA[").append(dueDate2).append("]]>").append("</due_date>");
valueXmlString.append("<mfg_lead_time>").append("<![CDATA[").append(mfgleadtime).append("]]>").append("</mfg_lead_time>");
valueXmlString.append("<qc_lead_time>").append("<![CDATA[").append(qcleadtime).append("]]>").append("</qc_lead_time>");
valueXmlString.append("</Detail>");
valueXmlString.append("</Root>");
if(bomCode != null && bomCode.trim().length() > 0)
{
System.out.println("calling ....ExplodeBom");
if(exBom == null)
{
System.out.println("exbom is null ");
}
retXmlString = exBom.explodeBom(valueXmlString.toString());
System.out.println("retXmlString..... :: "+retXmlString);
populateTransferList(retXmlString,site,workorder,conn);
}
if (itemQtyList.size() == 0)
{
System.out.println("* * * * * * No shortage of material sites * * * * * *");
}
// exBom = null; //COMMENTED BY RAJENDRA ON 05/09/08
for(int ctr = 0; ctr < itemQtyList.size(); ctr ++)
{
MaterialtransferBean materialtransferBean =(MaterialtransferBean)itemQtyList.get(ctr);
itemCodeBean =materialtransferBean.getItemCode();
demandQty =materialtransferBean.getDemandQty();
suppQty =materialtransferBean.getSuppQty();
balQty =materialtransferBean.getBalQty();
System.out.println("itemCode..............."+itemCodeBean);
System.out.println("demandQty..............."+demandQty);
//System.out.println("suppQty..............."+suppQty);
System.out.println("balQty original..............."+balQty);
if(balQty > 0)
{
HashMap suppQtyMap =new HashMap();
sql = " SELECT SITE_CODE__SUPP "
+" FROM SUPPLY_SITES WHERE SITE_CODE = '"+site+"' "
+" ORDER BY PREF_NO " ;
System.out.println("sql..............."+sql);
pstmt2 = conn.prepareStatement(sql);
// pstmt.setString(1,site);
rs2 = pstmt2.executeQuery();
while (rs2.next())
{
siteCodeSupp = rs2.getString("SITE_CODE__SUPP");
sql = " SELECT SUM(A.QUANTITY - A.ALLOC_QTY) as QUANTITY "
+" FROM STOCK A, INVSTAT B, LOCATION C "
+" WHERE A.LOC_CODE = C.LOC_CODE "
+" AND B.INV_STAT = C.INV_STAT "
+" AND A.ITEM_CODE = '"+itemCodeBean+"' "
+" AND A.SITE_CODE = '"+siteCodeSupp+"' "
+" AND (A.QUANTITY - A.ALLOC_QTY) > 0 "
+" AND B.AVAILABLE = 'Y' "
+" AND NOT EXISTS (SELECT 1 FROM INV_RESTR I "
+"WHERE I.INV_STAT = B.INV_STAT AND I.REF_SER = 'D-ISS') ";
System.out.println("sql..............."+sql);
pstmt1 = conn.prepareStatement(sql);
// pstmt1.setString(1,itemCodeBean);
// pstmt1.setString(2,siteCodeSupp);
System.out.println("itemCodeBean..............."+itemCodeBean);
System.out.println("siteCodeSupp..............."+siteCodeSupp);
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
qtyfromStock = rs1.getDouble("QUANTITY");
System.out.println("qtyfromStock..............."+qtyfromStock);
// siteMap.put(siteCodeSupp,siteCodeSupp); //rajendra
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 =null;
//For keeping minimum inventry in stock as per request Id : DI89SUN213 --- START
double minQtyStk = 0;
sql = "Select min_qty from siteitem where site_code = ? and item_code = ?";
System.out.println("sql..............."+sql);
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString( 1, siteCodeSupp );
pstmt1.setString( 2, itemCodeBean );
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
minQtyStk = rs1.getDouble("min_qty");
System.out.println("minQtyStk..............."+minQtyStk);
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 =null;
if( minQtyStk == 0 )
{
sql = "Select min_qty from item where site_code = ? and item_code = ?";
System.out.println("sql..............."+sql);
pstmt1 = conn.prepareStatement(sql);
pstmt1.setString( 1, siteCodeSupp );
pstmt1.setString( 2, itemCodeBean );
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
minQtyStk = rs1.getDouble("min_qty");
System.out.println("minQtyStk..............."+minQtyStk);
}
rs1.close();
rs1 = null;
pstmt1.close();
pstmt1 =null;
}
qtyfromStock = qtyfromStock - minQtyStk;
//For keeping minimum inventry in stock as per request Id : DI89SUN213 --- END
if(qtyfromStock >= balQty )
{
suppQtyMap.put(siteCodeSupp,new Double(balQty));
siteMap.put(siteCodeSupp,siteCodeSupp); //add
System.out.println("siteCodeSupp 1..............."+siteCodeSupp);
if (!siteList.contains(siteCodeSupp) )
{
siteList.add(siteCodeSupp);
siteCtr++ ;
System.out.println("Supply Site adding in siteList ["+ siteCtr + "][" + siteCodeSupp + "]");
}
else
{
System.out.println("Supply Site already exists in siteList [" + siteCodeSupp + "]");
}
//System.out.println("suppQtyMap....>=..........."+suppQtyMap);
break;
}
// else
else if(qtyfromStock > 0)
{
siteMap.put(siteCodeSupp,siteCodeSupp); //add
suppQtyMap.put(siteCodeSupp,new Double(qtyfromStock));
System.out.println("siteCodeSupp else..............."+siteCodeSupp);
if (!siteList.contains(siteCodeSupp) )
{
siteList.add(siteCodeSupp);
siteCtr++ ;
System.out.println("Supply Site adding in siteList ["+ siteCtr + "][" + siteCodeSupp + "]");
}
else
{
System.out.println("Supply Site already exists in siteList [" + siteCodeSupp + "]");
}
//System.out.println("suppQtyMap....else..........."+suppQtyMap);
balQty = balQty - qtyfromStock;
System.out.println("balQty after..............."+balQty);
}
} //end while
rs2.close();
rs2 =null;
pstmt2.close();
pstmt2 = null;
materialtransferBean.setSiteQtyMap(suppQtyMap);
itemQtyList.set(ctr,materialtransferBean);
}//end if
}//end for loop
//added by rajendra on 28/08/08 for req id DI89sun061
if(siteList.size() > 0 )
{
System.out.println("calling ..............................createDistOrder");
CreateDistOrder createDistOrder = new CreateDistOrder();
System.out.println("siteList....["+ siteList.size() + "][" + siteList.toString()+ "]");
retString = createDistOrder.createDistributionOrder(site,siteList,itemQtyList,xtraParams,workorder, conn) ;
System.out.println("retString ...1.................."+retString);
if(retString.indexOf("Success") > -1)
{
msgString = msgString.append(retString.substring( retString.indexOf("</Root>")+7, retString.length() ));
}
createDistOrder = null;
itemQtyList.clear();
siteMap.clear();
siteList.clear();
}
else
{
System.out.println("* * * * * * No material found in defined sites * * * * * *");
}
} //end while
rs.close();
rs = null;
pstmt.close();
pstmt = null;
//commented by rajendra on 28/08/08 for req id DI89sun061
//System.out.println("site..............."+site);
//System.out.println("siteMap..............."+siteMap);
//calling this function for creating distribution order for each supplier site
/* if(siteList.size() > 0 )
{
CreateDistOrder createDistOrder = new CreateDistOrder();
// retString = createDistOrder.createDistributionOrder(site,siteMap,itemQtyList) ;
System.out.println("siteList....["+ siteList.size() + "][" + siteList.toString()+ "]");
retString = createDistOrder.createDistributionOrder(site,siteList,itemQtyList,xtraParams, conn) ;
createDistOrder = null;
itemQtyList.clear();
siteMap.clear();
siteList.clear();
}
else
{
System.out.println("* * * * * * No material found in defined sites * * * * * *");
} */
//VTCICONF3
//retString = itmDBAccessEJB.getErrorString("","VTCICONF3","BASE");
}
catch(Exception e)
{
retString = "ERROR";
System.out.println("Exception in...."+e.getMessage());
e.printStackTrace();
}
finally
{
try
{
if (retString == null || retString.trim().length() ==0 || retString.indexOf("Success") > -1 )
{
conn.commit();
System.out.println("commiting connection.............");
//retString = itmDBAccessEJB.getErrorString("","VTDESPCONF","BASE");
// Changes made to show which distribution order nos are generated.--- start
//String distOrdrNos = "";
/* if(retString.indexOf("Success") > -1)
{
distOrdrNos = retString.substring( retString.indexOf("</Root>")+7, retString.length() );
} */
retString = itmDBAccessEJB.getErrorString("","VTDESPCONF","BASE");
if( msgString != null && msgString.toString().trim().length() > 0 )
{
String begPart = retString.substring( 0, retString.indexOf("<trace>") + 7 );
String endPart = retString.substring( retString.indexOf("</trace>"));
String mainStr = begPart + "Fallowing are the Distribution Order generated. :\n" + msgString.toString() + endPart;
retString = mainStr;
begPart =null;
endPart =null;
mainStr =null;
}
System.out.println(" final return string when confirmed ==>"+retString);
// Changes made to show which distribution order nos are generated.--- end
}
else
{
conn.rollback();
System.out.println("connection rollback.............");
retString = itmDBAccessEJB.getErrorString("","VTDESNCONF","BASE");
}
if (pstmt != null)
{
pstmt.close();
}
if(conn != null)
{
conn.close();
conn = null;
}
}
catch(Exception e)
{
System.out.println("Error In closing connection::==> "+e);
e.printStackTrace();
}
}
System.out.println("returning from "+retString);
return (retString);
}
private String populateTransferList(String retXmlString,String site,String workorder, Connection conn) throws ITMException, Exception
{
Document dom;
PreparedStatement pstmt = null;
ResultSet rs = null;
System.out.println("retXmlString ......"+retXmlString);
String itemCode =null,itemCodeBean ="",sql ="",retString ="";
double quantity = 0,qtyfromStock = 0,demandQty =0,balQty = 0;
NodeList nodeList = null;
Node parentNode = null;
Node childNode = null;
String nodeName = null;
String nodeValue = null;
int totalNodes = 0;
int ctr = 0;
try
{
dom = genericUtility.parseString(retXmlString);
nodeList = dom.getElementsByTagName("Detail");
totalNodes = nodeList.getLength();
for (ctr = 0;ctr < totalNodes; ctr ++)
{
Node node = nodeList.item(ctr);
nodeName = node.getNodeName();
Node valueNode = node.getFirstChild();
while (valueNode != null)
{
nodeName = valueNode.getNodeName();
//System.out.println("nodeName..... :: "+nodeName);
nodeValue = valueNode.getFirstChild().getNodeValue();
if (nodeName.equals("item_code"))
{
itemCode = nodeValue.trim();
System.out.println("itemCode..... :: "+itemCode);
}
else if (nodeName.equals("quantity"))
{
quantity = Double.parseDouble(nodeValue);
System.out.println("quantity..... :: "+quantity);
}
valueNode = valueNode.getNextSibling();
}//end while
int index =itemExist(itemCode);
if(index > -1)
{
MaterialtransferBean materialtransferBean =(MaterialtransferBean)itemQtyList.get(index);
itemCodeBean =materialtransferBean.getItemCode();
//balQty =materialtransferBean.getBalQty();
//System.out.println("balQty.if.............."+balQty);
materialtransferBean.setDemandQty(quantity);
itemQtyList.set(index,materialtransferBean);
}
else
{
MaterialtransferBean materialtransferBean1 = new MaterialtransferBean();
materialtransferBean1.setItemCode(itemCode);
sql=" SELECT SUM(A.QUANTITY - A.ALLOC_QTY) as QUANTITY "
+" FROM STOCK A, INVSTAT B, LOCATION C "
+" WHERE A.LOC_CODE = C.LOC_CODE "
+" AND B.INV_STAT = C.INV_STAT "
+" AND A.ITEM_CODE = '"+itemCode+"' "
+" AND A.SITE_CODE = '"+site+"' "
+" AND (A.QUANTITY - A.ALLOC_QTY) > 0 "
+" AND B.AVAILABLE = 'Y' "
+" AND NOT EXISTS (SELECT 1 FROM INV_RESTR I "
+" WHERE I.INV_STAT = B.INV_STAT AND I.REF_SER = 'D-ISS') ";
System.out.println("sql..............."+sql);
pstmt = conn.prepareStatement(sql);
// pstmt.setString(1,itemCode);
// pstmt.setString(2,site);
rs = pstmt.executeQuery();
if (rs.next())
{
qtyfromStock = rs.getDouble("QUANTITY");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
System.out.println("qtyfromStock.else.............."+qtyfromStock);
//For keeping minimum inventry in stock as per request Id : DI89SUN213 --- START
double minQtyStk = 0;
sql = "Select min_qty from siteitem where site_code = ? and item_code = ?";
System.out.println("sql..............."+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, site );
pstmt.setString( 2, itemCode );
rs = pstmt.executeQuery();
if (rs.next())
{
minQtyStk = rs.getDouble("min_qty");
System.out.println("minQtyStk..............."+minQtyStk);
}
rs.close();
rs = null;
pstmt.close();
pstmt =null;
if( minQtyStk == 0 )
{
sql = "Select min_qty from item where site_code = ? and item_code = ?";
System.out.println("sql..............."+sql);
pstmt = conn.prepareStatement(sql);
pstmt.setString( 1, site );
pstmt.setString( 2, itemCode );
rs = pstmt.executeQuery();
if (rs.next())
{
minQtyStk = rs.getDouble("min_qty");
System.out.println("minQtyStk..............."+minQtyStk);
}
rs.close();
rs = null;
pstmt.close();
pstmt =null;
}
qtyfromStock = qtyfromStock - minQtyStk;
//For keeping minimum inventry in stock as per request Id : DI89SUN213 --- END
materialtransferBean1.setSuppQty(qtyfromStock);
materialtransferBean1.setDemandQty(quantity);
itemQtyList.add(materialtransferBean1);
materialtransferBean1 =null;
}
}//end for
} //end try
catch(SQLException se)
{ retString = "ERROR";
while(se.getNextException() != null)
{
System.out.println("SQL Exception "+se.getNextException().getMessage());
}
}
catch(Exception e)
{
retString = "ERROR";
System.out.println("Exception : XML String ");
e.printStackTrace();
}
return retString;
}
private int itemExist(String itemCode) throws ITMException, Exception
{
int index = -1;
String itemCodeList ="";
MaterialtransferBean materialtransferBean=null;
for( int ctr=0;ctr < itemQtyList.size(); ctr++)
{
materialtransferBean = (MaterialtransferBean) itemQtyList.get(ctr);
itemCodeList = materialtransferBean.getItemCode();
if(itemCode.trim().equalsIgnoreCase(itemCodeList.trim()))
{
index = ctr;
}
}
System.out.println("index.itemExist............."+index);
return index;
}
}
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
//import javax.ejb.EJBObject;
import org.w3c.dom.*;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
import javax.xml.parsers.*;
import ibase.webitm.ejb.ProcessLocal;
import ibase.webitm.utility.ITMException;
import javax.ejb.Local; // added for ejb3
@Local // added for ejb3
public interface MaterialTransferPrcLocal extends ProcessLocal//,EJBObject
{
public String process() throws RemoteException,ITMException;
public String process(String string1, String string2, String windowName, String xtraParams) throws RemoteException,ITMException;
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import javax.ejb.EJBObject;
import org.w3c.dom.*;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
import javax.xml.parsers.*;
import ibase.webitm.ejb.ProcessRemote;
import ibase.webitm.utility.ITMException;
import javax.ejb.Remote; // added for ejb3
@Remote // added for ejb3
public interface MaterialTransferPrcRemote extends ProcessRemote //,EJBObject
{
public String process() throws RemoteException,ITMException;
public String process(String string1, String string2, String windowName, String xtraParams) throws RemoteException,ITMException;
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import java.util.*;
public class MaterialtransferBean implements java.io.Serializable
{
private String itemCode ;
private double demandQty;
private double suppQty ;
private double balQty ;
private HashMap siteQtyMap = new HashMap();
//private ArrayList stockList = new ArrayList();
public MaterialtransferBean()
{
}
public String getItemCode()
{
return this.itemCode;
}
public void setItemCode(String itemCode)
{
this.itemCode = itemCode;
}
public double getBalQty()
{
return this.balQty;
}
public void setBalQty(double balQty)
{
this.balQty = balQty;
}
public double getDemandQty()
{
return this.demandQty;
}
public void setDemandQty(double demandQty)
{
this.demandQty += demandQty;
setBalQty(this.demandQty - this.suppQty);
}
public double getSuppQty()
{
return this.suppQty;
}
public void setSuppQty(double suppQty)
{
this.suppQty = suppQty;
}
public HashMap getSiteQtyMap()
{
return this.siteQtyMap;
}
public void setSiteQtyMap(HashMap siteQtyMap)
{
this.siteQtyMap = siteQtyMap;
}
/*public void setStockList(HashMap stockMap)
{
String itemCode = null;
String locCode = null;
String lotNo = null;
String lotSl = null;
double quantity = 0;
double oldQuantity = 0;
if (this.stockList.size() > 0)
{
int index = 0;
for (index = 0; index < this.stockList.size(); index++ )
{
}
}
else
{
HashMap stockMap = new HashMap();
}
}
public HashMap getStockList()
{
return this.stockList ;
}*/
}
\ No newline at end of file
/********************************************************
Title : SupplySiteEJB
Date Of Modification : 17/3/08
Name of Developer : Nisar S. Khatib
********************************************************/
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
import java.util.*;
import java.sql.*;
import java.util.Calendar;
import java.text.SimpleDateFormat;
import org.w3c.dom.*;
import java.text.NumberFormat;
import java.io.*;
//import javax.ejb.SessionBean;
import javax.ejb.CreateException;
import ibase.webitm.utility.ITMException;
import ibase.webitm.ejb.*;
//import ibase.webitm.utility.GenericUtility;
import ibase.webitm.utility.TransIDGenerator;
import ibase.utility.CommonConstants;
import ibase.utility.E12GenericUtility;
import ibase.system.config.*;
import javax.ejb.Stateless; // added for ejb3
@Stateless // added for ejb3
public class SupplySite extends ValidatorEJB //implements SessionBean
{
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
java.sql.PreparedStatement pstmt=null;
java.sql.ResultSet rs = null;
String sql = null;
String sundryType = null;
String errString = "";
String loginSite = "";
/*public void ejbCreate() throws RemoteException, CreateException
{
System.out.println("SupplySiteEJB is in Process..........");
}
public void ejbRemove()
{
System.out.println("SupplySiteEJB is Removed from memory..........");
}
public void ejbActivate()
{
}
public void ejbPassivate()
{
}*/
public String wfValData() throws RemoteException,ITMException
{
return "";
}
public String itemChanged() throws RemoteException,ITMException
{
return "";
}
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
Document dom1 = null;
Document dom2 = null;
System.out.println("Validation Start..........");
try
{
System.out.println("xmlString:::"+xmlString);
dom = parseString(xmlString);
dom1 = parseString(xmlString1);
if (xmlString2.trim().length() > 0 )
{
dom2 = parseString("<Root>" + xmlString2+ "</Root>");
}
errString = wfValData(dom,dom1,dom2,objContext,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : SupplySiteEJB : wfValData(String xmlString) : ==>\n"+e.getMessage());
}
return (errString);
}
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Connection conn = null;
Statement stmt = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
String columnValue = null;
String childNodeName = null;
String errString = "";
String errCode = "";
String sql = "";
String userId = "";
String custCode=null;
String itemType=null,sampleDate=null,designDate=null;
String siteCode=null,siteCodeSupp = null;
int ctr=0;
int currentFormNo=0;
int childNodeListLength;
int counter = 0,counter1 = 0;
int prefNo = 0;
try
{
ConnDriver connDriver = new ConnDriver();
//Changes and Commented By Poonam on 08-06-2016 :START
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
//Changes and Commented By Poonam on 08-06-2016 :END
connDriver = null;
System.out.println("[SupplySiteEJB]connection 1 is opened......");
stmt = conn.createStatement();
userId = getValueFromXTRA_PARAMS(xtraParams,"loginCode");
loginSite = getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
//GenericUtility genericUtility = GenericUtility.getInstance();
E12GenericUtility genericUtility = new E12GenericUtility();
if(objContext != null && objContext.trim().length()>0)
{
currentFormNo = Integer.parseInt(objContext);
}
switch(currentFormNo)
{
case 1 :
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
for(ctr = 0; ctr < childNodeListLength; ctr++)
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if (childNodeName.equalsIgnoreCase("site_code"))
{
siteCode = getColumnValue("site_code",dom)==null?"": getColumnValue("site_code",dom).trim();
if(siteCode!=null && siteCode.trim().length() == 0)
{
System.out.println("[SupplySiteEJB]------Site Cannot be Empty!---VMSITECD1 -----------");
errString = getErrorString("siteCode","VMSITECD1 ",userId);
break;
}
}
else if (editFlag.equals("A") && childNodeName.equalsIgnoreCase("site_code__supp"))
{
siteCode = getColumnValue("site_code",dom)==null?"": getColumnValue("site_code",dom).trim();
siteCodeSupp = getColumnValue("site_code__supp",dom)==null?"":getColumnValue("site_code__supp",dom).trim();
prefNo = Integer.parseInt(getColumnValue("pref_no",dom)==null?"0":getColumnValue("pref_no",dom).trim());
if(siteCodeSupp!=null && siteCodeSupp.trim().length() == 0)
{
System.out.println("[SupplySiteEJB]------Site Cannot be Empty!---VMSITECD1 -----------");
errString = getErrorString("site_code__supp","VMSITECD1 ",userId);
break;
}
sql="SELECT COUNT(1) AS COUNTER FROM SITE WHERE SITE_CODE='"+siteCodeSupp+"'";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
counter = rs.getInt("COUNTER");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(counter==0)
{
System.out.println("[SupplySiteEJB]-------Invalid site!---VTDESP3 -----------");
errString = getErrorString("site_code__supp","VTDESP3 ",userId);
break;
}
sql="SELECT COUNT(1) AS COUNTER FROM SUPPLY_SITES "
+" WHERE site_code='"+siteCode+"' AND SITE_CODE__SUPP='"+siteCodeSupp+"'";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
counter = rs.getInt("COUNTER");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql="SELECT COUNT(1) AS COUNTER FROM SUPPLY_SITES "
+" WHERE site_code='"+siteCode+"' AND pref_no="+prefNo;
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
counter1 = rs.getInt("COUNTER");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(counter > 0)
{
System.out.println("[SupplySiteEJB]------Can not duplicate site code and site code supp----------");
errString = getErrorString("site_code__supp","VTSUPSI ",userId);
break;
}
if(counter1 > 0)
{
System.out.println("[SupplySiteEJB]------Preference no. can't be same for same Site----------");
errString = getErrorString("pref_no","VTPREFNO1",userId);
break;
}
}
else if (editFlag.equals("E") && childNodeName.equalsIgnoreCase("site_code__supp"))
{
siteCode = getColumnValue("site_code",dom)==null?"": getColumnValue("site_code",dom).trim();
prefNo = Integer.parseInt(getColumnValue("pref_no",dom)==null?"0":getColumnValue("pref_no",dom).trim());
sql="SELECT COUNT(1) AS COUNTER FROM SUPPLY_SITES "
+" WHERE site_code='"+siteCode+"' AND pref_no="+prefNo;
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
counter1 = rs.getInt("COUNTER");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
if(counter1 > 0)
{
System.out.println("[SupplySiteEJB]------Preference no. can't be same for same Site----------");
errString = getErrorString("pref_no","VTPREFNO1",userId);
break;
}
}
}break;//END FOR
}//END SWITCH
}//END TRY
catch(Exception e)
{
System.out.println("Exception ::"+e);
e.printStackTrace();
errString=e.getMessage();
}
finally
{
try
{
if(conn!=null)
{
conn.close();
conn = null;
System.out.println("[SupplySiteEJB]connection 1 is closed......");
}
}catch(Exception d){d.printStackTrace();}
System.out.println("[SupplySiteEJB] Connection is Closed");
}
System.out.println("ErrString ::"+errString);
return errString;
}//END OF VALIDATION
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document dom = null;
Document dom1 = null;
Document dom2 = null;
String valueXmlString = "";
try
{
dom = parseString(xmlString);
System.out.println("xmlString" + xmlString);
System.out.println("[SupplySiteEJB]itemChanged Called...........");
dom1 = parseString(xmlString1);
if (xmlString2.trim().length() > 0 )
{
dom2 = parseString(xmlString2);
}
valueXmlString = itemChanged(dom,dom1,dom2,objContext,currentColumn,editFlag,xtraParams);
}
catch(Exception e)
{
System.out.println("Exception : [SupplySiteEJB][itemChanged(String,String)] :==>\n"+e.getMessage());
}
return valueXmlString;
}
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException
{
Connection conn = null;
PreparedStatement pstmt=null;
ResultSet rs = null;
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
int currentFormNo = 0,ctr = 0;
int prefNo = 0;
String columnValue = null;
String descr = null;
String childNodeName = null;
String siteCode = null;
StringBuffer valueXmlString = new StringBuffer();
try
{
ConnDriver connDriver = new ConnDriver();
//Changes and Commented By Poonam on 08-06-2016 :START
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
//Changes and Commented By Poonam on 08-06-2016 :END
System.out.println("[SupplySiteEJB]connection 2 is opened......");
loginSite = getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
siteCode = getValueFromXTRA_PARAMS(xtraParams, "site_code");
if(objContext != null && objContext.trim().length()>0)
{
currentFormNo = Integer.parseInt(objContext);
}
System.out.println("FORM NO:::"+currentFormNo);
valueXmlString = new StringBuffer("<?xml version=\"1.0\"?><Root><header><editFlag>");
valueXmlString.append(editFlag).append("</editFlag></header>");
valueXmlString.append("<Detail>");
switch(currentFormNo)
{
case 1 :
parentNodeList = dom.getElementsByTagName("Detail1");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
ctr = 0;
int childNodeListLength = childNodeList.getLength();
do
{
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
if(childNodeName.equals(currentColumn))
{
if (childNode.getFirstChild() != null)
{
columnValue=childNode.getFirstChild().getNodeValue().trim();
}
}
ctr++;
}while(ctr < childNodeListLength && !childNodeName.equals(currentColumn));
System.out.println("[SupplySiteEJB]Column Value=>"+columnValue);
System.out.println("[SupplySiteEJB]currentColumn=>"+currentColumn);
if (currentColumn.trim().equals("itm_default"))
{
System.out.println("**************************ITMDEFAULT CALLING********************************** ");
if("-1".equals(siteCode))
{
loginSite = loginSite;
}
else
{
loginSite = siteCode;
}
valueXmlString.append("<site_code>").append("<![CDATA["+loginSite+"]]>").append("</site_code>");
sql="select descr from site where site_code='"+loginSite+"'";
System.out.println("--------sql->"+sql);
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
descr = rs.getString("descr")==null?"":rs.getString("descr").trim();
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
sql="SELECT MAX(PREF_NO)+1 AS PREF_NO FROM SUPPLY_SITES WHERE SITE_CODE='"+loginSite+"'";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
prefNo = rs.getInt("PREF_NO");
}
valueXmlString.append("<pref_no>").append("<![CDATA["+prefNo+"]]>").append("</pref_no>");
valueXmlString.append("<site_descr>").append("<![CDATA["+descr+"]]>").append("</site_descr>");
}
else if(currentColumn.trim().equals("site_code"))
{
sql="select descr from site where site_code='"+columnValue+"'";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
descr = rs.getString("descr")==null?"":rs.getString("descr").trim();
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
valueXmlString.append("<site_descr>").append("<![CDATA["+descr+"]]>").append("</site_descr>");
}
else if(currentColumn.trim().equals("site_code__supp"))
{
sql="select descr from site where site_code='"+columnValue+"'";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
descr = rs.getString("descr")==null?"":rs.getString("descr").trim();
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
valueXmlString.append("<site_descr1>").append("<![CDATA["+descr+"]]>").append("</site_descr1>");
}
else if(currentColumn.trim().equals("itm_defaultedit"))
{
columnValue = getColumnValue("site_code__supp",dom);
sql="select descr from site where site_code='"+columnValue+"'";
System.out.println("sql==>"+sql);
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
if(rs.next())
{
descr = rs.getString("descr")==null?"":rs.getString("descr").trim();
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
valueXmlString.append("<site_descr1>").append("<![CDATA["+descr+"]]>").append("</site_descr1>");
}
valueXmlString.append("</Detail>");
break;
}//end of switch
valueXmlString.append("</Root>");
}//END OF TRY
catch(Exception e)
{
e.printStackTrace();
System.out.println("Exception ::"+e.getMessage());
throw new ITMException(e);
}
finally
{
try
{
if(conn!=null)
{
conn.close();
conn = null;
System.out.println("[SupplySiteEJB]connection 2 is closed......");
}
}catch(Exception d){d.printStackTrace();}
System.out.println("[SupplySiteEJB] Connection is Closed");
}
System.out.println("valueXmlString:::::"+valueXmlString.toString());
return valueXmlString.toString();
}//END OF ITEMCHNGE
}
\ No newline at end of file
package ibase.webitm.ejb.dis;
import ibase.webitm.ejb.*;
import java.rmi.RemoteException;
//import javax.ejb.EJBObject;
import org.w3c.dom.*;
import javax.xml.parsers.*;
import javax.ejb.*;
import ibase.webitm.utility.ITMException;
import javax.ejb.Local; // added for ejb3
@Local // added for ejb3
public interface SupplySiteLocal extends ValidatorLocal//,EJBObject
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged() throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
package ibase.webitm.ejb.dis;
import ibase.webitm.ejb.*;
import java.rmi.RemoteException;
import javax.ejb.EJBObject;
import org.w3c.dom.*;
import javax.xml.parsers.*;
import javax.ejb.*;
import ibase.webitm.utility.ITMException;
import javax.ejb.Remote; // added for ejb3
@Remote // added for ejb3
public interface SupplySiteRemote extends ValidatorRemote//,EJBObject
{
public String wfValData() throws RemoteException,ITMException;
public String wfValData(String xmlString, String xmlString1,String xmlString2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String wfValData(Document dom, Document dom1,Document dom2, String objContext, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged() throws RemoteException,ITMException;
public String itemChanged(String xmlString, String xmlString1,String xmlString2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
public String itemChanged(Document dom, Document dom1,Document dom2, String objContext, String currentColumn, String editFlag, String xtraParams) throws RemoteException,ITMException;
}
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