Commit 269dd122 authored by SABURI PATEKAR's avatar SABURI PATEKAR

Fix POPHELP issue where mapped transporter was not listed correctly in Sales Order.

Allow any transporter code when DIST_ROUTE details are not defined.
parent d44a7989
package ibase.webitm.ejb.dis;
import java.rmi.RemoteException;
......@@ -425,6 +424,41 @@ public class DispatchIC extends ValidatorEJB implements DispatchICLocal,Dispatch
//Commented by sarita as tran_code is not mandatory in despatch transporter[end]
//changed by nasruddin 9-1-17 end
//--6-Jul-2026
// Added by Saburi on 16-Jun-2026 for Transporter validation based on Distribution Route and Transaction Code
/*{String distRoute = checkNull(genericUtility.getColumnValue("dist_route", dom));
tranCode = checkNull(genericUtility.getColumnValue("tran_code", dom));
BaseLogger.log("3", getUserInfo(), null,"@@@ distRoute :: " + distRoute + " tranCode :: " + tranCode);
if (distRoute != null && distRoute.trim().length() > 0 && tranCode != null && tranCode.trim().length() > 0)
{
sql = "SELECT COUNT(*) CNT FROM DISTROUTEDET WHERE DIST_ROUTE = ? AND TRAN_CODE = ?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, distRoute);
pstmt.setString(2, tranCode);
rs = pstmt.executeQuery();
int cnt1 = 0;
if (rs.next())
{
cnt1 = rs.getInt("CNT");
}
BaseLogger.log("3", getUserInfo(), null,"@@@ Transporter Validation Count :: " + cnt1);
if (cnt1 == 0)
{
errCode = "VTDISTRT01"; // Invalid Transporter
errList.add(errCode);
errFields.add(childNodeName.toLowerCase());
}
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}*/
}
else if (childNodeName.equalsIgnoreCase("stan_code"))
{
......@@ -2483,7 +2517,6 @@ public class DispatchIC extends ValidatorEJB implements DispatchICLocal,Dispatch
}//end if //Ignore stock check for no stockable items
}
else if (childNodeName.equalsIgnoreCase("lot_sl"))
{
msaleord = checkNull(genericUtility.getColumnValue("sord_no", dom));
......@@ -4792,6 +4825,7 @@ public class DispatchIC extends ValidatorEJB implements DispatchICLocal,Dispatch
lineNoSord = checkNull(genericUtility.getColumnValue("line_no__sord", dom));
expLevDom = checkNull(genericUtility.getColumnValue("exp_lev", dom));
BaseLogger.log("3", getUserInfo(), null, "@@@ expLevDom:-["+expLevDom+"]");
lineNoSord = " " + lineNoSord;
lineNoSord = lineNoSord.substring(lineNoSord.length()-3, lineNoSord.length());
......@@ -5085,7 +5119,13 @@ public class DispatchIC extends ValidatorEJB implements DispatchICLocal,Dispatch
//Condition added By Ganpat Yeram[25/AR/2025]
if(expLevDom==null || expLevDom.trim().length()==0)
{
BaseLogger.log("3", getUserInfo(), null, "exp LEVEL :: line_no__sord if exp lev null "+expLev);
valueXmlString.append("<exp_lev>").append("<![CDATA["+expLev+"]]>").append("</exp_lev>");
setNodeValue(dom, "exp_lev", getAbsString(expLev));
}else{// added by Kaustubh on 14/may/26
BaseLogger.log("3", getUserInfo(), null, "exp LEVEL :: line_no__sord else "+expLevDom);
valueXmlString.append("<exp_lev>").append("<![CDATA["+expLevDom+"]]>").append("</exp_lev>");
setNodeValue(dom, "exp_lev", getAbsString(expLevDom));
}
//commented by kunal as instructed by manoharan sir
//valueXmlString.append("<quantity>").append("<![CDATA["+quantity+"]]>").append("</quantity>");
......@@ -5095,7 +5135,6 @@ public class DispatchIC extends ValidatorEJB implements DispatchICLocal,Dispatch
setNodeValue(dom, "item_code__ord", getAbsString(itemCodeOrd));
setNodeValue(dom, "quantity__ord", orderQty);
setNodeValue(dom, "site_code", getAbsString(siteCodeDet));
setNodeValue(dom, "exp_lev", getAbsString(expLev));
//commented by kunal as instructed by manoharan sir
//setNodeValue(dom, "quantity", quantity);
//setNodeValue(dom, "quantity_real", quantity);
......@@ -8464,8 +8503,3 @@ public class DispatchIC extends ValidatorEJB implements DispatchICLocal,Dispatch
//added by tejahri on 3-jun -25[end]
}
\ No newline at end of file
-- Point 3
UPDATE POPHELP
SET SQL_STR = 'SELECT TRAN_CODE, TRANS_PRIORITY
Insert into POPHELP (FIELD_NAME,MOD_NAME,SQL_STR,DW_OBJECT,MSG_TITLE,WIDTH,HEIGHT,CHG_DATE,CHG_USER,CHG_TERM,DIST_OPT,FILTER_STRING,SQL_INPUT,DEFAULT_COL,POP_ALIGN,QUERY_MODE,PAGE_CONTEXT,POPHELP_COLS,POPHELP_SOURCE,MULTI_OPT,HELP_OPTION,POPUP_XSL_NAME,AUTO_FILL_LEN,THUMB_OBJ,THUMB_IMAGE_COL,THUMB_ALT_COL,AUTO_MIN_LENGTH,OBJ_NAME__DS,DATA_MODEL_NAME,VALIDATE_DATA,ITEM_CHANGE,MSG_NO,FILTER_EXPR,LAYOUT) values ('TRAN_CODE','W_SORDER','SELECT TRAN_CODE, TRANS_PRIORITY
FROM DISTROUTEDET
WHERE DIST_ROUTE = ''?''
ORDER BY TRANS_PRIORITY',
DW_OBJECT = NULL,
MSG_TITLE = NULL,
WIDTH = NULL,
HEIGHT = NULL,
CHG_DATE = TO_DATE('25-05-26','DD-MM-RR'),
CHG_USER = 'System',
CHG_TERM = 'System',
DIST_OPT = NULL,
FILTER_STRING = NULL,
SQL_INPUT = '0:dist_route',
DEFAULT_COL = 1,
POP_ALIGN = NULL,
QUERY_MODE = NULL,
PAGE_CONTEXT = NULL,
POPHELP_COLS = NULL,
POPHELP_SOURCE = NULL,
MULTI_OPT = NULL,
HELP_OPTION = '2',
POPUP_XSL_NAME = NULL,
AUTO_FILL_LEN = '2',
THUMB_OBJ = NULL,
THUMB_IMAGE_COL = NULL,
THUMB_ALT_COL = NULL,
AUTO_MIN_LENGTH = '2 ',
OBJ_NAME__DS = NULL,
DATA_MODEL_NAME = NULL,
VALIDATE_DATA = NULL,
ITEM_CHANGE = NULL,
MSG_NO = NULL,
FILTER_EXPR = NULL,
LAYOUT = NULL
WHERE FIELD_NAME = 'TRAN_CODE'
AND MOD_NAME = 'W_SORDER';
ORDER BY TRANS_PRIORITY',null,null,null,null,to_date('25-05-26','DD-MM-RR'),'System ','System',null,null,'0:dist_route',1,null,null,null,null,null,null,'2',null,'2',null,null,null,'2 ',null,null,null,null,null,null,null);
Insert into obj_itemchange (OBJ_NAME,FORM_NO,FIELD_NAME,MANDATORY,EXEC_AT,JS_ARG) values ('sorder','1 ','dist_route','N',null,null);
ALTER TABLE DISTROUTEDET
ADD TRANS_PRIORITY NUMBER(3);
ALTER TABLE DISTROUTEDET
ADD TRANS_PRIORITY NUMBER(3) DEFAULT 1 NOT NULL;
Insert into MESSAGES (MSG_NO,MSG_STR,MSG_DESCR,MSG_TYPE,MSG_OPT,MSG_TIME,ALARM,ERR_SOURCE,CHG_DATE,CHG_USER,CHG_TERM,OVERRIDE_INPUT,MAIL_OPTION) values ('VTPRIBLK','Transporter Priority Empty!','The transporter Priority cannot be empty.','E','Y',null,null,null,to_date('22-10-00','DD-MM-RR'),'SUN ','HDP',null,null);
-- Saburi P. 10-JUN-26
Insert into MESSAGES (MSG_NO,MSG_STR,MSG_DESCR,MSG_TYPE,MSG_OPT,MSG_TIME,ALARM,ERR_SOURCE,CHG_DATE,CHG_USER,CHG_TERM,OVERRIDE_INPUT,MAIL_OPTION) values ('VTDUPPRI ','Transport Priority already exists','Duplicate Transport Priority is not allowed for this Distribution Route','E',null,null,null,null,to_date('22-05-26','DD-MM-RR'),'SYSTEM ','SYSTEM',null,null);
Insert into obj_itemchange (OBJ_NAME,FORM_NO,FIELD_NAME,MANDATORY,EXEC_AT,JS_ARG) values ('sorder','1 ','dist_route','N',null,null);
Insert into MESSAGES (MSG_NO,MSG_STR,MSG_DESCR,MSG_TYPE,MSG_OPT,MSG_TIME,ALARM,ERR_SOURCE,CHG_DATE,CHG_USER,CHG_TERM,OVERRIDE_INPUT,MAIL_OPTION) values ('VTPRIBLK','Transporter Priority Empty!','The transporter Priority cannot be empty.','E','Y',null,null,null,to_date('22-10-00','DD-MM-RR'),'SUN ','HDP',null,null);
Insert into MESSAGES (MSG_NO,MSG_STR,MSG_DESCR,MSG_TYPE,MSG_OPT,MSG_TIME,ALARM,ERR_SOURCE,CHG_DATE,CHG_USER,CHG_TERM,OVERRIDE_INPUT,MAIL_OPTION) values ('VTDUPPRI ','Transport Priority already exists','Duplicate Transport Priority is not allowed for this Distribution Route','E',null,null,null,null,to_date('22-05-26','DD-MM-RR'),'SYSTEM ','SYSTEM',null,null);
UPDATE POPHELP
SET SQL_STR = 'SELECT TRAN_CODE, TRANS_PRIORITY
......@@ -93,6 +61,201 @@ WHERE FIELD_NAME = 'TRAN_CODE'
Insert into obj_itemchange (OBJ_NAME,FORM_NO,FIELD_NAME,MANDATORY,EXEC_AT,JS_ARG) values ('despatch','1 ','dist_route','N',null,null);
-- 12-JUN-26 Saburi P.
Insert into MESSAGES (MSG_NO,MSG_STR,MSG_DESCR,MSG_TYPE,MSG_OPT,MSG_TIME,ALARM,ERR_SOURCE,CHG_DATE,CHG_USER,CHG_TERM,OVERRIDE_INPUT,MAIL_OPTION)
values ('VTDISTRT01','Invalid Transporter','Please select a valid Transporter for the selected Distribution Route.','E',null,null,null,null,to_date('12-06-26','DD-MM-RR'),'SABURI','SYSTEM',null,null);
-- 19-JUN-26 Saburi P. Validations from GENMST instead of Java Code.
Insert into GENMST (FLD_NAME,MOD_NAME,DESCR,ERROR_CD,BLANK_OPT,FLD_TYPE,FLD_MIN,FLD_MAX,VAL_TYPE,CHG_DATE,CHG_USER,CHG_TERM,VAL_TABLE,SQL_INPUT,FLD_WIDTH,UDF_USAGE_1,UDF_USAGE_2,UDF_USAGE_3,VAL_STAGE,OBJ_NAME,FORM_NO,ACTION,USER_ID,TRAN_ID,UDF_STR1_DESCR,UDF_STR2_DESCR,UDF_STR3_DESCR,EXEC_SEQ) values ('TRANS_PRIORITY','W_DISTROUTE','Transport Priority cannot be blank','VTPRIBLK ','N','C','select case
when ? is null then 1
else 0
end
from dual','0','Q',to_date('18-06-26','DD-MM-RR'),'BASE ','BASE',null,':1.trans_priority',0,null,null,null,null,null,'2','Edit',null,'F0000000000000000781',null,null,null,null);
Insert into GENMST (FLD_NAME,MOD_NAME,DESCR,ERROR_CD,BLANK_OPT,FLD_TYPE,FLD_MIN,FLD_MAX,VAL_TYPE,CHG_DATE,CHG_USER,CHG_TERM,VAL_TABLE,SQL_INPUT,FLD_WIDTH,UDF_USAGE_1,UDF_USAGE_2,UDF_USAGE_3,VAL_STAGE,OBJ_NAME,FORM_NO,ACTION,USER_ID,TRAN_ID,UDF_STR1_DESCR,UDF_STR2_DESCR,UDF_STR3_DESCR,EXEC_SEQ) values ('TRANS_PRIORITY','W_DISTROUTE','Duplicate Transport Priority not allowed','VTDUPPRI ','N','C','select case
when length(trim(nvl(?,''''))) = 0
then 1
when (select count(*)
from DISTROUTEDET
where DIST_ROUTE = ?
and TRANS_PRIORITY = ?
and LINE_NO <> ?) > 0
then 1
else 0
end
from dual','0','Q',to_date('19-06-26','DD-MM-RR'),'BASE ','BASE',null,':1.trans_priority,:1.dist_route,:1.trans_priority,:1.line_no',0,null,null,null,null,null,'2','Edit',null,'F0000000000000000782',null,null,null,null);
UPDATE POPHELP
SET SQL_STR =
'SELECT TRAN_CODE, TRANS_PRIORITY
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
AND TRANS_PRIORITY > 0
ORDER BY TRANS_PRIORITY'
WHERE FIELD_NAME = 'TRAN_CODE'
AND MOD_NAME = 'W_SORDER';
Insert into GENMST (FLD_NAME,MOD_NAME,DESCR,ERROR_CD,BLANK_OPT,FLD_TYPE,FLD_MIN,FLD_MAX,VAL_TYPE,CHG_DATE,CHG_USER,CHG_TERM,VAL_TABLE,SQL_INPUT,FLD_WIDTH,UDF_USAGE_1,UDF_USAGE_2,UDF_USAGE_3,VAL_STAGE,OBJ_NAME,FORM_NO,ACTION,USER_ID,TRAN_ID,UDF_STR1_DESCR,UDF_STR2_DESCR,UDF_STR3_DESCR,EXEC_SEQ) values ('TRAN_CODE','W_DISPATCH','Invalid Transporter','VTDISTRT01','N','C','select (case when (length(trim(?)) > 0 and length(trim(?)) > 0)
then (select case when (select count(*)
from DISTROUTEDET
where DIST_ROUTE = ?
and TRAN_CODE = ?) > 0
then 1
else 0
end
from dual)
else 1
end)
from dual','0','Q',to_date('16-06-26','DD-MM-RR'),'BASE ','BASE',null,':0.dist_route,:0.tran_code,:0.dist_route,:0.tran_code',0,null,null,null,null,null,'1','Edit',null,'F0000000000000000780',null,null,null,null);
Insert into GENMST (FLD_NAME,MOD_NAME,DESCR,ERROR_CD,BLANK_OPT,FLD_TYPE,FLD_MIN,FLD_MAX,VAL_TYPE,CHG_DATE,CHG_USER,CHG_TERM,VAL_TABLE,SQL_INPUT,FLD_WIDTH,UDF_USAGE_1,UDF_USAGE_2,UDF_USAGE_3,VAL_STAGE,OBJ_NAME,FORM_NO,ACTION,USER_ID,TRAN_ID,UDF_STR1_DESCR,UDF_STR2_DESCR,UDF_STR3_DESCR,EXEC_SEQ) values ('TRAN_CODE','W_SORDER','Invalid Transporter','VTDISTRT01','N','C','select (case when (length(trim(?)) > 0 and length(trim(?)) > 0)
then (select case when (select count(*)
from DISTROUTEDET
where DIST_ROUTE = ?
and TRAN_CODE = ?) > 0
then 1
else 0
end
from dual)
else 1
end)
from dual','1','Q',to_date('16-06-26','DD-MM-RR'),'BASE ','BASE',null,':0.dist_route,:0.tran_code,:0.dist_route,:0.tran_code',0,null,null,null,null,null,'1','Edit',null,'F0000000000000000778',null,null,null,null);
-- 26-JUN-26 Saburi P.
UPDATE GENMST
SET FLD_MIN = 'SELECT CASE
WHEN EXISTS (
SELECT 1
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
AND TRANS_PRIORITY IS NULL
)
THEN 1
WHEN EXISTS (
SELECT 1
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
AND TRAN_CODE = ?
AND TRANS_PRIORITY IS NOT NULL
)
THEN 1
ELSE 0
END
FROM dual',
SQL_INPUT = ':0.dist_route,:0.dist_route,:0.tran_code',
CHG_DATE = SYSDATE,
CHG_USER = 'BASE',
CHG_TERM = 'BASE'
WHERE FLD_NAME = 'TRAN_CODE'
AND MOD_NAME = 'W_SORDER'
AND ERROR_CD='VTDISTRT01';
UPDATE POPHELP
SET SQL_STR = 'SELECT TRAN_CODE, TRANS_PRIORITY
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
AND TRANS_PRIORITY IS NOT NULL
ORDER BY TRANS_PRIORITY'
WHERE FIELD_NAME = 'TRAN_CODE'
AND MOD_NAME = 'W_SORDER';
-- 6-JUL-26 Saburi P.
Insert into GENMST (FLD_NAME,MOD_NAME,DESCR,ERROR_CD,BLANK_OPT,FLD_TYPE,FLD_MIN,FLD_MAX,VAL_TYPE,CHG_DATE,CHG_USER,CHG_TERM,VAL_TABLE,SQL_INPUT,FLD_WIDTH,UDF_USAGE_1,UDF_USAGE_2,UDF_USAGE_3,VAL_STAGE,OBJ_NAME,FORM_NO,ACTION,USER_ID,TRAN_ID,UDF_STR1_DESCR,UDF_STR2_DESCR,UDF_STR3_DESCR,EXEC_SEQ) values ('TRAN_CODE','W_DESPATCH','Invalid Transporter','VTDISTRT01','N','C','SELECT CASE
-- Case 1: Route + Tran Code + Priority exists
WHEN EXISTS (
SELECT 1
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
AND TRAN_CODE = ?
AND TRANS_PRIORITY IS NOT NULL
) THEN 1
-- Case 2: Route exists but priority is NULL
WHEN EXISTS (
SELECT 1
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
AND TRANS_PRIORITY IS NULL
) THEN 1
-- Case 3: Route does not exist
WHEN NOT EXISTS (
SELECT 1
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
) THEN 1
ELSE 0
END
FROM dual','1','Q',to_date('03-07-26','DD-MM-RR'),'BASE ','BASE',null,':0.dist_route,:0.tran_code,:0.dist_route,:0.dist_route',1,null,null,null,'1',null,'1','Edit',null,'F000000000000000070',null,null,null,null);
UPDATE GENMST
SET
DESCR = 'Invalid Transporter',
ERROR_CD = 'VTDISTRT01',
BLANK_OPT = 'N',
FLD_TYPE = 'C',
FLD_MIN = 'SELECT CASE
-- Case 1: Route + Tran Code + Priority exists
WHEN EXISTS (
SELECT 1
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
AND TRAN_CODE = ?
AND TRANS_PRIORITY IS NOT NULL
) THEN 1
-- Case 2: Route exists but priority is NULL
WHEN EXISTS (
SELECT 1
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
AND TRANS_PRIORITY IS NULL
) THEN 1
-- Case 3: Route does not exist
WHEN NOT EXISTS (
SELECT 1
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
) THEN 1
ELSE 0
END
FROM dual',
FLD_WIDTH = 1,
SQL_INPUT=':0.dist_route,:0.tran_code,:0.dist_route,:0.dist_route',
VAL_TYPE = 'Q',
CHG_DATE = TO_DATE('03-07-26','DD-MM-RR'),
CHG_USER = 'BASE',
CHG_TERM = 'BASE',
VAL_STAGE = '1',
ACTION = 'Edit',
TRAN_ID = 'F0000000000000000778'
WHERE FLD_NAME = 'TRAN_CODE'
AND MOD_NAME = 'W_SORDER';
Insert into GENMST_APPL (TRAN_ID, LINE_NO, SCOPE, SCOPE_DATA)
values ('F0000000000000000778', 1, 'E', 'W_SORDER');
Insert into GENMST_APPL (TRAN_ID, LINE_NO, SCOPE, SCOPE_DATA)
values ('F000000000000000070', 1, 'E', 'W_DESPATCH');
Insert into GENMST_APPL (TRAN_ID, LINE_NO, SCOPE, SCOPE_DATA)
values ('F0000000000000000781', 1, 'E', 'W_DISTROUTE');
update pophelp set SQL_STR='SELECT TRAN_CODE, TRANS_PRIORITY
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
ORDER BY TRANS_PRIORITY' where field_name='TRAN_CODE' and mod_name='W_SORDER';
update pophelp set SQL_STR='SELECT TRAN_CODE, TRANS_PRIORITY
FROM DISTROUTEDET
WHERE DIST_ROUTE = ?
ORDER BY TRANS_PRIORITY' where field_name='TRAN_CODE' and mod_name='W_DESPATCH';
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