Commit 242aee73 authored by msalla's avatar msalla

1. In purchase order amendment the debit acct is picking up from...

1. In purchase order amendment the debit acct is picking up from item_acct_detr for tran_type blank but it should pick up as per the tran type PO.
2. Also, the system is allowing to add the same debit and credit account code. The credit account code should be the payable account of the party.
and it should be auto set like PO. Requesting you to please add the validation like PO

3. On PO amendment confirmation system should pick acct_code__ap_adv and cctr_code__ap_adv as per new logic incorporated like PO

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@201044 ce508802-f39f-4f6c-b175-0d175dae99d5
parent 81b5d71a
......@@ -7,6 +7,7 @@ import java.rmi.RemoteException;
import ibase.system.config.ConnDriver;
import ibase.utility.E12GenericUtility;
import ibase.webitm.ejb.*;
import ibase.webitm.ejb.fin.FinCommon;
//import ibase.webitm.ejb.dis_exp.PurcOrderAmdTWFInvokeConfirm;
import ibase.webitm.ejb.sys.CreateRCPXML;
import org.w3c.dom.*;
......@@ -28,11 +29,12 @@ import java.util.Date;
public class POrderAmdConf extends ActionHandlerEJB implements POrderAmdConfLocal, POrderAmdConfRemote
{
E12GenericUtility genericUtility= new E12GenericUtility();
FinCommon finCommon = new FinCommon();
DistCommon distCommon = new DistCommon();
public String actionHandler() throws RemoteException, ITMException
{
return "";
}
public String actionHandler(String actionType, String xmlString, String objContext, String xtraParams) throws RemoteException, ITMException
{
System.out.println("item actionHandler(...) called............");
......@@ -49,6 +51,7 @@ public class POrderAmdConf extends ActionHandlerEJB implements POrderAmdConfLoca
System.out.println("POrderAmdConf confirm called..............");
String confirmed = "";
String sql = "";
// String sql1 = "";
// int status = 0;
// double frtAmt = 0.0;
......@@ -439,6 +442,7 @@ insert into obj_itemchange(obj_name,form_no,field_name)values('porderamd
// String loginEmpCode = "", ediOption = "", dataStr = "";
// double pohdrTot = 0, vouchAdv = 0, amdDetTot = 0, poDetTot = 0,
// poHdrTot = 0;
String errString="";
Timestamp sysDate = null, taxDate = null, refDate = null, amdDate = null;
String siteCodeDlv = "", siteCodeOrd = "", siteCodeBill = "", deptCode = "", empCode = "", itemSer = "", taxOpt = "", crTerm = "";
String currCode = "", taxChapHdr = "", taxClassHdr = "", taxEnvHdr = "", remarks = "", projCode = "",projCodeDet="", salesPers = "", commPerc = "", commPercOn = "";
......@@ -800,7 +804,8 @@ insert into obj_itemchange(obj_name,form_no,field_name)values('porderamd
* VALLABH select Advance account code CCTR code from header
* supp_code VALLABH KADAM 19/NOV/14 END
*/
sql = "select ACCT_CODE__AP_ADV,CCTR_CODE__AP_ADV from supplier where supp_code=?";
//commented by-Monika-20-May-2019
/* sql = "select ACCT_CODE__AP_ADV,CCTR_CODE__AP_ADV from supplier where supp_code=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, suppCode);
rs = pstmt.executeQuery();
......@@ -814,6 +819,62 @@ insert into obj_itemchange(obj_name,form_no,field_name)values('porderamd
rs = null;
pstmt.close();
pstmt = null;
*/
//changes by monika-20-may-2019
//purchaseorder and sitecode
cctrCodeApAdv=finCommon.getAcctDetrTtype("", itemSer, "APADV", pordType, siteCodeOrd, conn);
// gbf_acct_detr_ttype("",ls_itemser,'PO', ls_type);
System.out.println("tuesdayconf:"+type);
acctCodeApAdv = distCommon.getToken(cctrCodeApAdv, ",");
//changes by monika-22-may-2019
if (cctrCodeApAdv != null
&& cctrCodeApAdv.trim().length() > 0) {
String ls_cctr_drArray[] = cctrCodeApAdv
.split(",");
System.out
.println("@@@@@ ls_cctr_drArray.length["
+ ls_cctr_drArray.length + "]");
if (ls_cctr_drArray.length > 0) {
acctCodeApAdv = ls_cctr_drArray[0];
}
if (ls_cctr_drArray.length > 1) {
acctCodeApAdv = ls_cctr_drArray[0];
cctrCodeApAdv = ls_cctr_drArray[1];
}
}
//end
//changes by monika-22-may-2019
if((acctCodeApAdv ==null || acctCodeApAdv.trim().length() == 0)) {
sql = "select ACCT_CODE__AP_ADV,CCTR_CODE__AP_ADV from supplier where supp_code=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, suppCode);
rs = pstmt.executeQuery();
if (rs.next())
{
acctCodeApAdv = rs.getString("ACCT_CODE__AP_ADV");
cctrCodeApAdv = rs.getString("CCTR_CODE__AP_ADV");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
if(acctCodeApAdv == null )
{
errString= itmDBAccessLocal.getErrorString("", "VTSUPPAC", "","",conn);
return errString;
}
//end
/**
* VALLABH select Advance account code CCTR code from header
* supp_code VALLABH KADAM 19/NOV/14 END
......@@ -2908,7 +2969,7 @@ insert into obj_itemchange(obj_name,form_no,field_name)values('porderamd
if (errCode == null || errCode.trim().length() == 0)
{
sql = " select sum(case when net_amt is null then 0 else net_amt end) from voucher where purc_order = ? "
sql = "select sum(case when net_amt is null then 0 else net_amt end) from voucher where purc_order = ? "
+ " and vouch_type = ? and confirmed = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrder);
......
......@@ -982,10 +982,11 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
System.out.println("<acctCodeCr >@@@@@@ "+ acctCodeCr);
System.out.println("noOfParent@@@@@@@@@@@"+ noOfParent);
a = 0;
for (a = noOfParent - 1; a >= 0; a--)
{
//String lineNoBrowacct = genericUtility.getColumnValueFromNode("line_no",detail2List.item(a));
//commented by monika-22-may-2019
/*for (a = noOfParent - 1; a >= 0; a--)
{*/
//commented by-MOnika-21-may-2019
/*//String lineNoBrowacct = genericUtility.getColumnValueFromNode("line_no",detail2List.item(a));
//lineNoBrowacct = lineNoBrowacct == null ? "": lineNoBrowacct.trim();
//System.out.println("linenoBrowacct>>>>"+lineNoBrowacct);
sql1 ="select acct_code__cr from porddet where purc_order = ?";
......@@ -1033,7 +1034,39 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
System.out.println("in error for vtacctcode");
break;
}
}
*/
//Changes-by-monika-on-21-may-2019
for (a = noOfParent - 1; a >= 0; a--)
{
childNode = childNodeList.item(ctr1);
childNodeName= childNode.getNodeName();
System.out.println("childNodeName["+ childNodeName + "]");
if (childNodeName.equalsIgnoreCase("acct_code__cr"))
{
acctCodeCr = checkNull(genericUtility.getColumnValueFromNode("acct_code__cr", detail2List.item(a))).trim();
lineNoTemp = checkNull(genericUtility.getColumnValueFromNode("line_no", detail2List.item(a))).trim();
//Added By PRiyankaC on 04JAn18[START]
if(acctCodeCr==null || acctCodeCr.trim().length() == 0)
{
errList.add("VMACCODE1 ");
errFields.add(childNodeName.toLowerCase());
}
//Added By PRiyankaC on 04JAn18[END]
else if (!acctCodeCr.equalsIgnoreCase(acctCodeCr.trim())&& ( !lineNoTemp.equalsIgnoreCase(lineNo.trim())))
{
errCode = "VTACCTCODE";
// +
// "~t In a Single PO two account code credit is not allowed";
if (errCode != null && errCode.trim().length() > 0) {
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
}
}
}//end
}
}
......@@ -5430,44 +5463,134 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
dom1);
itemCode = genericUtility.getColumnValue(
"item_code", dom);
purcOrder = checkNull(genericUtility.getColumnValue(
"purc_order", dom1));
siteCode = checkNull(genericUtility.getColumnValue(
"site_code", dom));
pordType=checkNull(genericUtility.getColumnValue(
"pord_type", dom1));
if (acct_dr == null || acct_dr.trim().length() == 0) {
cctr_dr = fincommon.getFromAcctDetr(itemCode,
itemSer, "IN", conn);
String[] cctr_drStr = cctr_dr.split(",");
//changes-by monika-17-may-2019
if(pordType==null || pordType.trim().length() > 0) {
sql = "select pord_type from porder where purc_order = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrder);
rs = pstmt.executeQuery();
if (rs.next()) {
type = checkNull(rs.getString("pord_type"));
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
cctr_dr =fincommon.getAcctDetrTtype(itemCode, itemSer,
"IN",type,siteCode, conn);
//commented-by-monika
/*cctr_dr = fincommon.getFromAcctDetr(itemCode,
itemSer, "IN", conn);*/
/*String[] cctr_drStr = cctr_dr.split(",");
int len = cctr_drStr.length - 1;
System.out.println("@@@cr len[" + len + "]");
if (len > -1) {
acct_dr = cctr_drStr[0];
} else {
acct_dr = "";
}*/
String mcctrArray[] = cctr_dr.split(",");
System.out.println("@@@@@ mcctrArray.length["
+ mcctrArray.length + "]");
if (mcctrArray.length > 0) {
acct_dr= mcctrArray[0];
cctr_dr = "";
}
if (mcctrArray.length > 1) {
acct_dr = mcctrArray[0];
cctr_dr = mcctrArray[1];
}
}
// dw_detedit[ii_currformno].setitem(1,"acct_code__dr",macct)
valueXmlString.append("<acct_code__dr>")
.append("<![CDATA[" + acct_dr + "]]>")
.append("</acct_code__dr>");
// dw_detedit[ii_currformno].setitem(1,"cctr_code__dr",mcctr)
valueXmlString.append("<cctr_code__dr>")
.append("<![CDATA[" + cctr_dr + "]]>")
.append("</cctr_code__dr>");
}
cctr_cr = genericUtility.getColumnValue(
cctr_cr = genericUtility.getColumnValue(
"cctr_code__cr", dom);
acct_cr = genericUtility.getColumnValue(
"acct_code__cr", dom);
//end
if (acct_cr == null || acct_cr.trim().length() == 0) {
acct_cr = fincommon.getFromAcctDetr(itemCode,
itemSer, "PO", conn);
String[] acct_crStr = cctr_dr.split(",");
//changes-by monika-17-may-2019
if(pordType==null || pordType.trim().length() > 0) {
sql = "select pord_type from porder where purc_order = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrder);
rs = pstmt.executeQuery();
if (rs.next()) {
type = checkNull(rs.getString("pord_type"));
System.out.println("hello product__type:");
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
cctr_cr =fincommon.getAcctDetrTtype(itemCode, itemSer,
"IN",type,siteCode, conn);
/*cctr_dr = fincommon.getFromAcctDetr(itemCode,
itemSer, "IN", conn);*/
//end
/*String[] acct_crStr = cctr_dr.split(",");
int len = acct_crStr.length - 1;
System.out.println("@@@cr len[" + len + "]");
if (len > -1) {
acct_cr = acct_crStr[0];
} else {
acct_cr = "";
}
}*/
//changes -made-by monika-22-may-2019
if (cctr_cr != null
&& cctr_cr.trim().length() > 0) {
String ls_cctr_crArray[] = cctr_cr
.split(",");
System.out
.println("@@@@@ cctr_drArray.length["
+ ls_cctr_crArray.length + "]");
if (ls_cctr_crArray.length > 0) {
acct_cr =ls_cctr_crArray[0];
cctr_cr = "";
}
if (ls_cctr_crArray.length > 1) {
acct_cr = ls_cctr_crArray[0];
cctr_cr = ls_cctr_crArray[1];
}
}//end
}
valueXmlString.append("<acct_code__dr >")
/*valueXmlString.append("<acct_code__dr >")
.append("<![CDATA[" + acct_dr + "]]>")
.append("</acct_code__dr>");
valueXmlString.append("<cctr_code__dr >")
.append("<![CDATA[" + cctr_dr + "]]>")
.append("</cctr_code__dr>");
.append("</cctr_code__dr>");*/
valueXmlString.append("<acct_code__cr >")
.append("<![CDATA[" + acct_cr + "]]>")
.append("</acct_code__cr>");
......@@ -5481,7 +5604,7 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
.append("</item_code>");
}
}
} else if (currentColumn.trim().equalsIgnoreCase("item_code")) {
else if (currentColumn.trim().equalsIgnoreCase("item_code")) {
itemCode = genericUtility.getColumnValue("item_code", dom);
sql = " select descr,unit,loc_code,pack_code,pack_instr,unit__pur from item where item_code = ? ";
pstmt = conn.prepareStatement(sql);
......@@ -5601,13 +5724,37 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
cctr_dr = genericUtility.getColumnValue("cctr_code__dr",
dom);
indNo = genericUtility.getColumnValue("ind_no", dom);
if (indNo == null || indNo.trim().length() == 0) {
cctr_dr = fincommon.getFromAcctDetr(itemCode, itemSer,
"IN", conn);
if (indNo == null || indNo.trim().length() == 0) {
//changes-by-monika-17-may-2019
if(pordType==null || pordType.trim().length() > 0) {
sql = "select pord_type from porder where purc_order = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrder);
rs = pstmt.executeQuery();
if (rs.next()) {
type = checkNull(rs.getString("pord_type"));
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
cctr_dr =fincommon.getAcctDetrTtype(itemCode, itemSer,
"IN",type,siteCode, conn);
System.out.println("tuesday:"+cctr_dr);
//COMMENTED BY-Monika
/*cctr_dr = fincommon.getFromAcctDetr(itemCode,
itemSer, "IN", conn);*/
//end
String[] cctr_drStr = cctr_dr.split(",");
int len = cctr_drStr.length - 1;
System.out.println("@@@cr len[" + len + "]");
if (len > -1) {
/*if (len > -1) {
acct_dr = cctr_drStr[0];
} else {
acct_dr = "";
......@@ -5617,7 +5764,21 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
cctr_dr = cctr_drStr[1];
} else {
cctr_dr = "";
}*/
//changes made -by-monika-22-may-2019
String mcctrArray[] = cctr.split(",");
System.out.println("@@@@@ mcctrArray.length["
+ mcctrArray.length + "]");
if (mcctrArray.length > 0) {
acct_dr= mcctrArray[0];
cctr_dr = "";
}
if (mcctrArray.length > 1) {
acct_dr = mcctrArray[0];
cctr_dr = mcctrArray[1];
}
}//end
valueXmlString.append("<acct_code__dr >")
.append("<![CDATA[" + acct_dr + "]]>")
......@@ -5651,19 +5812,44 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
itemSer = genericUtility.getColumnValue("item_ser", dom1);
suppCode = genericUtility.getColumnValue("supp_code", dom1);
itemCode = genericUtility.getColumnValue("item_code", dom);
cctr_cr = genericUtility.getColumnValue("cctr_code__cr",
dom);
acct_cr = genericUtility.getColumnValue("acct_code__cr",
dom);
if (acct_cr == null || acct_cr.trim().length() == 0) {
//changes made by monika-21-may-2019
cctr_cr = fincommon.getFromAcctDetr(itemCode, itemSer,
"PO", conn);
//changes-by-monika-17-may-2019
if(pordType==null || pordType.trim().length() > 0) {
sql = "select pord_type from porder where purc_order = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, purcOrder);
rs = pstmt.executeQuery();
if (rs.next()) {
type = checkNull(rs.getString("pord_type"));
}
rs.close();
rs = null;
pstmt.close();
pstmt = null;
}
cctr_cr =fincommon.getAcctDetrTtype(itemCode, itemSer,
"IN",type,siteCode, conn);
System.out.println("tuesday:"+cctr_dr);
//COMMENTED BY-Monika
/* cctr_cr = fincommon.getFromAcctDetr(itemCode, itemSer,
"PO", conn);*/
//end
String[] cctr_crStr = cctr_cr.split(",");
int len = cctr_crStr.length - 1;
System.out.println("@@@cr len[" + len + "]");
if (len > -1) {
/*if (len > -1) {
acct_cr = cctr_crStr[0];
} else {
acct_cr = "";
......@@ -5673,16 +5859,30 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
cctr_cr = cctr_crStr[1];
} else {
cctr_cr = "";
}*/
//changes made -by-monika-22-may-2019
String mcctrArray[] = cctr_cr.split(",");
System.out.println("@@@@@ mcctrArray.length["
+ mcctrArray.length + "]");
if (mcctrArray.length > 0) {
acct_cr= mcctrArray[0];
cctr_cr = "";
}
if (mcctrArray.length > 1) {
acct_cr = mcctrArray[0];
cctr_cr = mcctrArray[1];
}
//end
}
valueXmlString.append("<acct_code__dr >")
/*valueXmlString.append("<acct_code__dr >")
.append("<![CDATA[" + acct_dr + "]]>")
.append("</acct_code__dr>");
valueXmlString.append("<cctr_code__dr >")
.append("<![CDATA[" + cctr_dr + "]]>")
.append("</cctr_code__dr>");
.append("</cctr_code__dr>");*///commented by MOnika
valueXmlString.append("<acct_code__cr >")
.append("<![CDATA[" + acct_cr + "]]>")
.append("</acct_code__cr>");
......@@ -5761,7 +5961,7 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
.append("<![CDATA[" + lastPurcPo + "]]>")
.append("</last_purc_po>");
// added by ritesh on 02/feb/2015 for request S14ISUN007 end
} else if (currentColumn.trim().equalsIgnoreCase("quantity")) {
} else if (currentColumn.trim().equalsIgnoreCase("quantity")) {
String quantityStr = genericUtility.getColumnValue(
"quantity", dom);
quantity = quantityStr == null ? 0 : Double
......@@ -5863,8 +6063,7 @@ public class POrderAmdIC extends ValidatorEJB implements POrderAmdICLocal,POrder
.append("<![CDATA[" + conv_rtuom_stduom + "]]>")
.append("</conv__rtuom_stduom>");
}
valueXmlString.append("<rate__stduom>")
.append("<![CDATA[" + rate_stduom + "]]>")
valueXmlString.append("<rate__stduom>").append("<![CDATA[" + rate_stduom + "]]>")
.append("</rate__stduom>");
valueXmlString.append("<rate__clg>")
.append("<![CDATA[" + rate + "]]>")
......
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