Commit e97b700d authored by sjagtap's avatar sjagtap

Sun pharama business component use for multitancancy server

git-svn-id: http://15.206.35.175/svn/proteus/business-java/trunk@187652 ce508802-f39f-4f6c-b175-0d175dae99d5
parent c4d3f6b6
package ibase.webitm.ejb.SOD;
import ibase.system.config.ConnDriver;
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.util.ArrayList;
import javax.ejb.Stateless;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
@Stateless
public class SodRiskEJB extends ValidatorEJB implements SodRiskEJBLocal,
SodRiskEJBRemote {
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException {
System.out.println("In wfValData");
Document currDom = null;
Document hdrDom = null;
Document allDom = null;
String errString = "";
try {
System.out.println("currFrmXmlStr..." + currFrmXmlStr);
System.out.println("hdrFrmXmlStr..." + hdrFrmXmlStr);
System.out.println("allFrmXmlStr..." + allFrmXmlStr);
if ((currFrmXmlStr != null) && (currFrmXmlStr.trim().length() != 0)) {
currDom = parseString(currFrmXmlStr);
}
if ((hdrFrmXmlStr != null) && (hdrFrmXmlStr.trim().length() != 0)) {
hdrDom = parseString(hdrFrmXmlStr);
}
if ((allFrmXmlStr != null) && (allFrmXmlStr.trim().length() != 0)) {
allDom = parseString(allFrmXmlStr);
}
errString = validate(currDom, hdrDom, allDom, objContext, editFlag,
xtraParams);
} catch (Exception e) {
System.out
.println("Exception : [PurcRCPIc][wfValData(String currFrmXmlStr)] : ==>\n"
+ e.getMessage());
}
return errString;
}
public String validate(Document currDom, Document hdrDom, Document allDom,
String objContext, String editFlag, String xtraParams)
throws RemoteException, ITMException {
System.out.println("In validate Data");
GenericUtility genericUtility = GenericUtility.getInstance();
ArrayList errList = new ArrayList();
ArrayList errFields = new ArrayList();
int count = 0;
String errString = "";
String errorType = "";
String errCode = "";
StringBuffer errStringXml = new StringBuffer(
"<?xml version=\"1.0\"?>\r\n<Root><Errors>");
String childNodeName = "";
String sql = "";
int noOfChilds = 0;
ResultSet rs1 = null;
String loginSiteCode = "";
Connection conn = null;
PreparedStatement pstmt1 = null;
int currentFormNo = 0;
int cnt = 0;
ConnDriver connDriver = null;
Node childNode = null;
try {
System.out.println("************xtraParams*************"
+ xtraParams);
connDriver = new ConnDriver();
//Comment by sanket J on 06/JUL/2018 for multitancy server
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
String userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams,
"loginCode");
loginSiteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams,
"loginSiteCode");
System.out.println("**************loginCode************" + userId);
if ((objContext != null) && (objContext.trim().length() > 0)) {
currentFormNo = Integer.parseInt(objContext);
}
NodeList parentList = currDom.getElementsByTagName("Detail"
+ currentFormNo);
NodeList childList = null;
System.out.println("hdrDom..." + hdrDom);
switch (currentFormNo) {
case 1:
childList = parentList.item(0).getChildNodes();
noOfChilds = childList.getLength();
for (int ctr = 0; ctr < noOfChilds; ctr++) {
childNode = childList.item(ctr);
if (childNode.getNodeType() != 1) {
continue;
}
childNodeName = childNode.getNodeName();
System.out.println("Editflag =" + editFlag);
System.out.println("parentList = " + parentList);
System.out.println("childList = " + childList);
System.out.println("childNodeName: " + childNodeName);
if ("risk_id".equalsIgnoreCase(childNodeName)) {
if (childNode.getFirstChild() == null) {
System.out.println("VTBLKRSKID");
errList.add("VTBLKRSKID");
errFields.add(childNodeName.toLowerCase());
break;
} else {
String risk_id = checkNull(genericUtility
.getColumnValue("risk_id", currDom));
System.out.println("editFlag in risk_id:"
+ editFlag);
if (editFlag.equalsIgnoreCase("A")) {
String sql1 = "SELECT COUNT(*) AS COUNT FROM SOD_RISK WHERE risk_id = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, risk_id);
rs1 = pstmt1.executeQuery();
if (rs1.next()) {
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count > 0) {
errList.add("VTINVRSKID");
errFields.add(childNodeName.toLowerCase());
break;
}
System.out.println("risk_id.length(): "
+ risk_id.length());
if (risk_id.length() > 6) {
errList.add("VTINVRSKLT");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
}
if ("risk_lvl".equalsIgnoreCase(childNodeName)) {
if (childNode.getFirstChild() == null) {
System.out.println("VTBLKRSKLV");
errList.add("VTBLKRSKLV");
errFields.add(childNodeName.toLowerCase());
break;
} else {
String risk_lvl = checkNull(genericUtility
.getColumnValue("risk_lvl", currDom));
String sql1 = "SELECT COUNT(*) AS COUNT FROM GENCODES WHERE FLD_NAME = 'SOD_RISK_LVL' AND MOD_NAME='W_SOD_RISK' AND FLD_VALUE = ? ";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, risk_lvl.trim());
rs1 = pstmt1.executeQuery();
if (rs1.next()) {
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0) {
errList.add("VTINVRSKLV");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
}
}
int errListSize = errList.size();
cnt = 0;
String errFldName = null;
if ((errList != null) && (errListSize > 0)) {
for (cnt = 0; cnt < errListSize; cnt++) {
errCode = (String) errList.get(cnt);
errFldName = (String) errFields.get(cnt);
errString = getErrorString(errFldName, errCode, userId);
errorType = errorType(conn, errCode);
if (errString.length() > 0) {
String bifurErrString = errString.substring(
errString.indexOf("<Errors>") + 8,
errString.indexOf("<trace>"));
bifurErrString = bifurErrString
+ errString.substring(
errString.indexOf("</trace>") + 8,
errString.indexOf("</Errors>"));
errStringXml.append(bifurErrString);
System.out.println("errStringXml .........."
+ errStringXml);
errString = "";
}
if (errorType.equalsIgnoreCase("E")) {
break;
}
}
errList.clear();
errList = null;
errFields.clear();
errFields = null;
errStringXml.append("</Errors></Root>\r\n");
} else {
errStringXml = new StringBuffer("");
}
errString = errStringXml.toString();
} catch (Exception e) {
System.out.println("Exception in StockTransferGrlIC == >");
e.printStackTrace();
throw new ITMException(e);
} finally {
try {
if (rs1 != null) {
rs1.close();
rs1 = null;
}
if (pstmt1 != null) {
pstmt1.close();
pstmt1 = null;
}
if ((conn != null) && (!conn.isClosed()))
conn.close();
} catch (Exception e) {
System.out.println("Exception :InvBankDtlsIC:wfValData :==>\n"
+ e.getMessage());
throw new ITMException(e);
}
}
return errString;
}
private String errorType(Connection conn, String errorCode) {
String msgType = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
String sql = " SELECT MSG_TYPE FROM MESSAGES WHERE MSG_NO = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, errorCode);
rs = pstmt.executeQuery();
while (rs.next())
msgType = rs.getString("MSG_TYPE");
} catch (Exception ex) {
ex.printStackTrace();
try {
if (rs != null) {
rs.close();
rs = null;
}
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
} catch (Exception e) {
e.printStackTrace();
}
} finally {
try {
if (rs != null) {
rs.close();
rs = null;
}
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
return msgType;
}
public void callPstRs(PreparedStatement pstmt, ResultSet rs) {
try {
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
if (rs != null) {
rs.close();
rs = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
private String checkNull(String inputVal) {
if (inputVal == null) {
inputVal = "";
}
return inputVal;
}
}
\ No newline at end of file
package ibase.webitm.ejb.SOD;
import java.rmi.RemoteException;
import javax.ejb.Remote;
import ibase.webitm.ejb.ValidatorLocal;
@Local
public interface SodRiskEJBLocal extends ValidatorLocal {
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException ;
}
package ibase.webitm.ejb.SOD;
import java.rmi.RemoteException;
import javax.ejb.Remote;
import ibase.webitm.ejb.ValidatorRemote;
@Remote
public interface SodRiskEJBRemote extends ValidatorRemote{
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException ;
}
package ibase.webitm.ejb.SOD;
import ibase.system.config.ConnDriver;
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.SQLException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import javax.ejb.Stateless;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
@Stateless
public class SodRuleEJB extends ValidatorEJB implements SodRuleEJBLocal,SodRuleEJBRemote
{
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,String allFrmXmlStr, String objContext, String editFlag,String xtraParams) throws RemoteException
{
System.out.println("In wfValData");
Document currDom = null;
Document hdrDom = null;
Document allDom = null;
String errString = "";
try {
System.out.println("currFrmXmlStr..." + currFrmXmlStr);
System.out.println("hdrFrmXmlStr..." + hdrFrmXmlStr);
System.out.println("allFrmXmlStr..." + allFrmXmlStr);
if ((currFrmXmlStr != null) && (currFrmXmlStr.trim().length() != 0)) {
currDom = parseString(currFrmXmlStr);
}
if ((hdrFrmXmlStr != null) && (hdrFrmXmlStr.trim().length() != 0)) {
hdrDom = parseString(hdrFrmXmlStr);
}
if ((allFrmXmlStr != null) && (allFrmXmlStr.trim().length() != 0)) {
allDom = parseString(allFrmXmlStr);
}
errString = validate(currDom, hdrDom, allDom, objContext, editFlag,
xtraParams);
}
catch (Exception e)
{
System.out.println("Exception : [PurcRCPIc][wfValData(String currFrmXmlStr)] : ==>\n"+ e.getMessage());
}
return errString;
}
public String validate(Document currDom, Document hdrDom, Document allDom,String objContext, String editFlag, String xtraParams)throws RemoteException, ITMException
{
System.out.println("In validate Data");
GenericUtility genericUtility = GenericUtility.getInstance();
ArrayList errList = new ArrayList();
ArrayList errFields = new ArrayList();
int count = 0;
String errString = "";
String errorType = "";
String errCode = "";
StringBuffer errStringXml = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root><Errors>");
String childNodeName = "";
String sql = "";
int noOfChilds = 0;
ResultSet rs1 = null;
String loginSiteCode = "";
Connection conn = null;
PreparedStatement pstmt1 = null;
int currentFormNo = 0;
int cnt = 0;
ConnDriver connDriver = null;
Node childNode = null;
try
{
System.out.println("************xtraParams*************"+ xtraParams);
connDriver = new ConnDriver();
//Comment by sanket J on 06/JUL/2018 for multitancy server
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
String userId = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginCode");
loginSiteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams,"loginSiteCode");
System.out.println("**************loginCode************" + userId);
if ((objContext != null) && (objContext.trim().length() > 0))
{
currentFormNo = Integer.parseInt(objContext);
}
NodeList parentList = currDom.getElementsByTagName("Detail"+ currentFormNo);
NodeList childList = null;
System.out.println("hdrDom..." + hdrDom);
switch (currentFormNo)
{
case 1:
childList = parentList.item(0).getChildNodes();
noOfChilds = childList.getLength();
for (int ctr = 0; ctr < noOfChilds; ctr++)
{
childNode = childList.item(ctr);
if (childNode.getNodeType() != 1)
{
continue;
}
childNodeName = childNode.getNodeName();
System.out.println("Editflag =" + editFlag);
System.out.println("parentList = " + parentList);
System.out.println("childList = " + childList);
System.out.println("childNodeName: " + childNodeName);
if ("risk_id".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTBLKRSKID");
errList.add("VTBLKRSKID");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
String risk_id = checkNull(genericUtility.getColumnValue("risk_id", currDom));
System.out.println("editFlag in risk_id:"+ editFlag);
String sql1 = "SELECT COUNT(*) AS COUNT FROM SOD_RISK WHERE risk_id = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, risk_id);
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0)
{
errList.add("VTINVRISID");
errFields.add(childNodeName.toLowerCase());
break;
}
System.out.println("risk_id.length(): "+ risk_id.length());
if (risk_id.length() > 6)
{
errList.add("VTINVRSKLT");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
}
break;
case 2:
childList = parentList.item(0).getChildNodes();
noOfChilds = childList.getLength();
for (int ctr = 0; ctr < noOfChilds; ctr++) {
childNode = childList.item(ctr);
if (childNode.getNodeType() != 1)
{
continue;
}
childNodeName = childNode.getNodeName();
System.out.println("Editflag =" + editFlag);
System.out.println("parentList = " + parentList);
System.out.println("childList = " + childList);
System.out.println("childNodeName: " + childNodeName);
if ("obj_name_conflict".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTBLKCOOBJ");
errList.add("VTBLKCOOBJ");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
String obj_name_conflict = checkNull(genericUtility.getColumnValue("obj_name_conflict", currDom));
String application = checkNull(genericUtility.getColumnValue("application", currDom));
System.out.println("obj_name_conflict:"+ obj_name_conflict);
/*
* String objConArr[] =
* obj_name_conflict.split(",");
* System.out.println("objConArr Length: " +
* objConArr.length);
*/
String sql1 = "SELECT COUNT(*) AS COUNT FROM ITM2MENU WHERE win_name = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, "w_"+obj_name_conflict.trim());
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0)
{
errList.add("VTINVCOOBJ");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
if ("right_char".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTINVRIGCH");
errList.add("VTINVRIGCH");
errFields.add(childNodeName.toLowerCase());
break;
}
}
if ("right_char_conflict".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTINVCRICH");
errList.add("VTINVCRICH");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
// Validation check for same obj_name and conflict
// name entry
String right_char_conflict = "", right_char = "", obj_name_conflict = "", obj_name = "";
right_char_conflict = checkNull(genericUtility.getColumnValue("right_char_conflict",currDom));
right_char = checkNull(genericUtility.getColumnValue("right_char", currDom));
obj_name_conflict = checkNull(genericUtility.getColumnValue("obj_name_conflict",currDom));
obj_name = checkNull(genericUtility.getColumnValue("obj_name", currDom));
System.out.println("right_char_conflict: "+ right_char_conflict);
System.out.println("right_char: " + right_char);
System.out.println("obj_name_conflict: "+ obj_name_conflict);
System.out.println("obj_name: " + obj_name);
System.out.println("Validation for same rule entry");
if ((obj_name.trim().equals(obj_name_conflict.trim())) && (right_char.trim().equals(right_char_conflict.trim())))
{
System.out.println("VTENTRYINV");
errList.add("VTENTRYINV");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
if ("application".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTBLKAPPLT");
errList.add("VTBLKAPPLT");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
String application = checkNull(genericUtility.getColumnValue("application", currDom));
System.out.println("application:" + application);
count = 0;
String sql1 = "SELECT COUNT(*) AS COUNT FROM ITM2MENU WHERE APPLICATION = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, application.trim());
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0)
{
errList.add("VTINVAPPLT");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
if ("obj_name".equalsIgnoreCase(childNodeName))
{
if (childNode.getFirstChild() == null)
{
System.out.println("VTBLKOBJNM");
errList.add("VTBLKOBJNM");
errFields.add(childNodeName.toLowerCase());
break;
}
else
{
String obj_name = checkNull(genericUtility.getColumnValue("obj_name", currDom));
String application = checkNull(genericUtility.getColumnValue("application", currDom));
System.out.println("obj_name:" + obj_name);
/*
* String objArr[] = obj_name.split(",");
* System.out.println("objArr Length: " +
* objArr.length);
*/
String sql1 = "SELECT COUNT(*) AS COUNT FROM ITM2MENU WHERE win_name = ? and application = ?";
pstmt1 = conn.prepareStatement(sql1);
pstmt1.setString(1, "w_"+obj_name.trim());
pstmt1.setString(2, application.trim());
rs1 = pstmt1.executeQuery();
if (rs1.next())
{
count = rs1.getInt("COUNT");
}
System.out.println("Count: " + count);
if (count <= 0)
{
errList.add("VTINVOBJNM");
errFields.add(childNodeName.toLowerCase());
break;
}
// Validation for checking double entry for same
// rule
System.out.println("Validation for Double rule starts");
String right_char_conflict = "", right_char = "", obj_name_conflict = "";
right_char_conflict = checkNull(genericUtility.getColumnValue("right_char_conflict",currDom));
right_char = checkNull(genericUtility.getColumnValue("right_char", currDom));
obj_name_conflict = checkNull(genericUtility.getColumnValue("obj_name_conflict",currDom));
obj_name = checkNull(genericUtility.getColumnValue("obj_name", currDom));
String right_char_conflict_check = "", right_char_check = "", obj_name_conflict_check = "", obj_name_check = "";
NodeList parentNodeList = null;
parentNodeList = null;
Node parentNode = null;
NodeList childNodeList = null;
int childNodeListLength = 0;
parentNodeList = allDom.getElementsByTagName("Detail2");
int parentNodeListLength = parentNodeList.getLength();
System.out.println("parentNodeListLength: "+ parentNodeListLength);
for (int selectedRow = 0; selectedRow < (parentNodeListLength - 1); selectedRow++)
{
int detCnt = 0;
parentNode = parentNodeList.item(selectedRow);
childNodeList = parentNode.getChildNodes();
childNodeListLength = childNodeList.getLength();
// System.out.println("childNodeListLength---->>>>>>> "+
// childNodeListLength);
String attributeValue = "";
System.out.println("childNodeListLength: "+ childNodeListLength);
for (int childRow = 0; childRow < childNodeListLength; childRow++)
{
childNode = childNodeList.item(childRow);
/*
* attributeValue = getAttribValue(
* childNode, "updateFlag");
* System.out.println("attributeValue: " +
* attributeValue);
*/
childNodeName = childNode.getNodeName();
// System.out.println("childNodeName---->>> "+
// childNodeName);
if (childNodeName.equals("attribute"))
{
if(childNode.getFirstChild() != null)
{
attributeValue = childNode.getFirstChild().getNodeValue();
}
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
if (childNodeName.equals("right_char_conflict"))
{
right_char_conflict_check = childNode.getFirstChild().getNodeValue();
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
if (childNodeName.equals("right_char"))
{
right_char_check = childNode.getFirstChild().getNodeValue();
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
if (childNodeName.equals("obj_name_conflict"))
{
obj_name_conflict_check = childNode.getFirstChild().getNodeValue();
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
if (childNodeName.equals("obj_name"))
{
obj_name_check = childNode.getFirstChild().getNodeValue();
// System.out.print("+++++++++suppCodeDetail1++++++++"+suppCodeDetail1);
}
}
System.out.println("right_char_conflict_check: "+ right_char_conflict_check);
System.out.println("right_char_check: "+ right_char_check);
System.out.println("obj_name_conflict_check: "+ obj_name_conflict_check);
System.out.println("obj_name_check: "+ obj_name_check);
System.out.println("attribute: "+ attributeValue);
if ((right_char_conflict_check.trim().equals(right_char_conflict.trim())) && (right_char_check.trim().equals(right_char.trim())) && (obj_name_conflict_check.trim().equals(obj_name_conflict.trim())) && (obj_name_check.trim().equals(obj_name.trim())) && (!attributeValue.equalsIgnoreCase("E")))
{
System.out.println("VTRPTENTRY");
errList.add("VTRPTENTRY");
errFields.add(childNodeName.toLowerCase());
break;
}
}
}
}
}
}
int errListSize = errList.size();
cnt = 0;
String errFldName = null;
if ((errList != null) && (errListSize > 0))
{
for (cnt = 0; cnt < errListSize; cnt++)
{
errCode = (String) errList.get(cnt);
errFldName = (String) errFields.get(cnt);
errString = getErrorString(errFldName, errCode, userId);
errorType = errorType(conn, errCode);
if (errString.length() > 0)
{
String bifurErrString = errString.substring(errString.indexOf("<Errors>") + 8,errString.indexOf("<trace>"));
bifurErrString = bifurErrString+ errString.substring(errString.indexOf("</trace>") + 8,errString.indexOf("</Errors>"));
errStringXml.append(bifurErrString);
System.out.println("errStringXml .........."+ errStringXml);
errString = "";
}
if (errorType.equalsIgnoreCase("E"))
{
break;
}
}
errList.clear();
errList = null;
errFields.clear();
errFields = null;
errStringXml.append("</Errors></Root>\r\n");
}
else
{
errStringXml = new StringBuffer("");
}
errString = errStringXml.toString();
}
catch (Exception e)
{
System.out.println("Exception in StockTransferGrlIC == >");
e.printStackTrace();
throw new ITMException(e);
}
finally
{
try
{
if (rs1 != null)
{
rs1.close();
rs1 = null;
}
if (pstmt1 != null)
{
pstmt1.close();
pstmt1 = null;
}
if ((conn != null) && (!conn.isClosed()))
conn.close();
}
catch (Exception e)
{
System.out.println("Exception :InvBankDtlsIC:wfValData :==>\n"+ e.getMessage());
throw new ITMException(e);
}
}
return errString;
}
private String getAttribValue(Node detailNode, String nodeName,String attribStr)
{
String attribValue = "";
try
{
String domStr = GenericUtility.getInstance().serializeDom(detailNode);
Document dom = GenericUtility.getInstance().parseString(domStr);
if (dom != null /* && dom.getAttributes() != null */)
{
Node attributeNode = dom.getElementsByTagName(nodeName).item(0);
attribValue = getAttribValue(attributeNode, attribStr);
}
}
catch (Exception e)
{
System.out.println("Exception : getAttribValue :" + e.getMessage());
}
return attribValue;
}
private String getAttribValue(Node detailNode, String attribStr)
{
String attribValue = "";
try
{
if (detailNode != null && detailNode.getAttributes() != null)
{
Node attribNode = detailNode.getAttributes().getNamedItem(attribStr);
if (attribNode != null)
{
attribValue = checkNull(attribNode.getNodeValue());
}
}
}
catch (Exception e)
{
System.out.println("Exception : getAttribValue :" + e.getMessage());
}
return attribValue;
}
public String itemChanged() throws RemoteException, ITMException
{
return "";
}
public String itemChanged(String currFrmXmlStr, String hdrFrmXmlStr,String allFrmXmlStr, String objContext, String currentColumn,String editFlag, String xtraParams) throws RemoteException,ITMException
{
Document currDom = null;
Document hdrDom = null;
Document allDom = null;
String errString = null;
GenericUtility genericUtility = GenericUtility.getInstance();
try
{
if ((currFrmXmlStr != null) && (currFrmXmlStr.trim().length() != 0))
{
currDom = genericUtility.parseString(currFrmXmlStr);
System.out.println("currFrmXmlStr : " + currFrmXmlStr);
}
if ((hdrFrmXmlStr != null) && (hdrFrmXmlStr.trim().length() != 0))
{
hdrDom = genericUtility.parseString(hdrFrmXmlStr);
System.out.println("hdrFrmXmlStr : " + hdrFrmXmlStr);
}
if ((allFrmXmlStr != null) && (allFrmXmlStr.trim().length() != 0))
{
allDom = genericUtility.parseString(allFrmXmlStr);
System.out.println("allFrmXmlStr : " + allFrmXmlStr);
}
errString = itemChanged(currDom, hdrDom, allDom, objContext,currentColumn, editFlag, xtraParams);
System.out.println("ErrString :" + errString);
}
catch (Exception e)
{
System.out.println("Exception : NearExpiryIC:defaul_ItemChanged(String,String):"+ e.getMessage() + ":");
errString = genericUtility.createErrorString(e);
}
System.out.println("returning from NearExpiryIC default_Itemchanged");
return errString;
}
public String itemChanged(Document currDom, Document hdrDom,Document allDom, String objContext, String currentColumn,String editFlag, String xtraParams) throws RemoteException,ITMException
{
String sql = "";
int currentFormNo = 0;
String childNodeName = null;
int ctr = 0;
int childNodeListLength = 0;
ResultSet rs = null;
Connection conn = null;
ConnDriver connDriver = new ConnDriver();
StringBuffer valueXmlString = new StringBuffer();
try
{
//Comment by sanket J on 06/JUL/2018 for multitancy server
//conn = connDriver.getConnectDB("DriverITM");
conn = getConnection();
PreparedStatement pstmt = null;
GenericUtility genericUtility = GenericUtility.getInstance();
String loginSiteCode = genericUtility.getValueFromXTRA_PARAMS(xtraParams, "loginSiteCode");
NodeList parentNodeList = null;
NodeList childNodeList = null;
Node parentNode = null;
Node childNode = null;
String itemCode = "", itemDescr = "", itemUnit = "", objName = "",objNameConf = "";
if ((objContext != null) && (objContext.trim().length() > 0))
{
currentFormNo = Integer.parseInt(objContext);
}
valueXmlString = new StringBuffer("<?xml version=\"1.0\"?>\r\n<Root>\r\n<Header>\r\n<editFlag>");
valueXmlString.append(editFlag).append("</editFlag>\r\n</Header>\r\n");
SimpleDateFormat sdf = new SimpleDateFormat(genericUtility.getDispDateFormat());
System.out.println("currentFormNo-------*************** = "+ currentFormNo);
switch (currentFormNo)
{
case 2:
System.out.println("currentFormNo-------*************** = "+ currentFormNo);
parentNodeList = currDom.getElementsByTagName("Detail2");
parentNode = parentNodeList.item(0);
childNodeList = parentNode.getChildNodes();
valueXmlString.append("<Detail2>");
childNodeListLength = childNodeList.getLength();
do {
childNode = childNodeList.item(ctr);
childNodeName = childNode.getNodeName();
ctr++;
} while ((ctr < childNodeListLength)&& (!childNodeName.equals(currentColumn)));
System.out.println("Chg SOD Rule IC currentColumn : "+ currentColumn);
if (currentColumn.equalsIgnoreCase("application"))
{
valueXmlString.append("<obj_name>").append("<![CDATA[]]>").append("</obj_name>");
valueXmlString.append("<obj_name_conflict>").append("<![CDATA[]]>").append("</obj_name_conflict>");
}
else if (currentColumn.equalsIgnoreCase("obj_name"))
{
objName = checkNull(genericUtility.getColumnValue("obj_name", currDom));
if(objName.trim().length()>0 && objName.contains("~") == true)
{
String[] objNameArray = objName.replaceAll("\\s+","").split("~");
System.out.println("obj_name::::"+objNameArray[0]+"udf_1::"+objNameArray[1]);
valueXmlString.append("<obj_name>").append("<![CDATA["+objNameArray[0]+"]]>").append("</obj_name>");
valueXmlString.append("<udf_1>").append("<![CDATA["+objNameArray[1]+"]]>").append("</udf_1>");
}
else
{
valueXmlString.append("<udf_1>").append("<![CDATA[]]>").append("</udf_1>");
}
}
else if (currentColumn.equalsIgnoreCase("obj_name_conflict"))
{
objNameConf = checkNull(genericUtility.getColumnValue("obj_name_conflict", currDom));
if(objNameConf.trim().length()>0 && objNameConf.contains("~") == true)
{
String[] objNameConfArray = objNameConf.replaceAll("\\s+","").split("~");
System.out.println("obj_name_conflict::::"+objNameConfArray[0]+"udf_2::"+objNameConfArray[1]);
valueXmlString.append("<obj_name_conflict>").append("<![CDATA["+objNameConfArray[0]+"]]>").append("</obj_name_conflict>");
valueXmlString.append("<udf_2>").append("<![CDATA["+objNameConfArray[1]+"]]>").append("</udf_2>");
}
else
{
valueXmlString.append("<udf_2>").append("<![CDATA[]]>").append("</udf_2>");
}
}
valueXmlString.append("</Detail2>\r\n");
}
}
catch (Exception localException)
{
}
finally
{
if (conn != null)
{
try
{
conn.close();
}
catch (SQLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
valueXmlString.append("</Root>\r\n");
System.out.println("\n****ValueXmlString :" + valueXmlString.toString()+ ":********");
return valueXmlString.toString();
}
public static String getListStr(ArrayList tranIdList)
{
String listStr = null;
int listLen = 0;
listLen = tranIdList.size();
listStr = "( ";
for (int listIdx = 0; listIdx < listLen; listIdx++)
{
listStr = listStr + "'" + (String) tranIdList.get(listIdx) + "'"
+ ", ";
}
return listStr.substring(0, listStr.length() - 2) + " )";
}
private String errorType(Connection conn, String errorCode)
{
String msgType = "";
PreparedStatement pstmt = null;
ResultSet rs = null;
try
{
String sql = " SELECT MSG_TYPE FROM MESSAGES WHERE MSG_NO = ? ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, errorCode);
rs = pstmt.executeQuery();
while (rs.next())
msgType = rs.getString("MSG_TYPE");
}
catch (Exception ex)
{
ex.printStackTrace();
try
{
if (rs != null)
{
rs.close();
rs = null;
}
if (pstmt != null)
{
pstmt.close();
pstmt = null;
}
}
catch (Exception e)
{
e.printStackTrace();
}
}
finally
{
try
{
if (rs != null) {
rs.close();
rs = null;
}
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
return msgType;
}
public void callPstRs(PreparedStatement pstmt, ResultSet rs) {
try {
if (pstmt != null) {
pstmt.close();
pstmt = null;
}
if (rs != null) {
rs.close();
rs = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
private String checkNull(String inputVal) {
if (inputVal == null) {
inputVal = "";
}
return inputVal;
}
}
\ No newline at end of file
package ibase.webitm.ejb.SOD;
import ibase.webitm.ejb.ValidatorLocal;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import javax.ejb.Remote;
@Local
public interface SodRuleEJBLocal extends ValidatorLocal {
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException;
public String itemChanged(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String currentColumn,
String editFlag, String xtraParams) throws RemoteException,
ITMException;
}
package ibase.webitm.ejb.SOD;
import ibase.webitm.ejb.ValidatorRemote;
import ibase.webitm.utility.ITMException;
import java.rmi.RemoteException;
import javax.ejb.Remote;
@Remote
public interface SodRuleEJBRemote extends ValidatorRemote{
public String wfValData(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String editFlag,
String xtraParams) throws RemoteException ;
public String itemChanged(String currFrmXmlStr, String hdrFrmXmlStr,
String allFrmXmlStr, String objContext, String currentColumn,
String editFlag, String xtraParams) throws RemoteException,
ITMException;
}
-- dummy itm2menu entires sql
INSERT
INTO ITM2MENU
(
APPLICATION,
LEVEL_1,
LEVEL_2,
LEVEL_3,
LEVEL_4,
LEVEL_5,
WIN_NAME,
DESCR,
COMMENTS,
MENU_PATH,
ICON_PATH,
CLOSE_ICON,
OPEN_ICON,
OBJ_TYPE,
CHG_DATE,
CHG_TERM,
CHG_USER,
MOB_DEPLOY,
DEFAULT_STATE,
DEF_ACTION
)
VALUES
(
'SYS',
8,12,0,0,0,
'w_d_sod_profile_wise_conflict_report',
'Profile Wise Sod Conflict Report',
NULL,
'SYS.8.12.0.0.0',
NULL,
NULL,
NULL,
'R',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL
);
/
commit;
/
INSERT
INTO ITM2MENU
(
APPLICATION,
LEVEL_1,
LEVEL_2,
LEVEL_3,
LEVEL_4,
LEVEL_5,
WIN_NAME,
DESCR,
COMMENTS,
MENU_PATH,
ICON_PATH,
CLOSE_ICON,
OPEN_ICON,
OBJ_TYPE,
CHG_DATE,
CHG_TERM,
CHG_USER,
MOB_DEPLOY,
DEFAULT_STATE,
DEF_ACTION
)
VALUES
(
'SYS',
8,10,0,0,0,
'w_d_sod_report',
'SOD report',
NULL,
'SYS.8.10.0.0.0',
NULL,
NULL,
NULL,
'R',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL
);
/
commit;
/
\ No newline at end of file
CREATE TABLE SoD_rule_hdr
(
RULE_ID varchar2(10),
RULE_DESCR varchar2(100),
RISK_ID varchar2(10),
UDF_1 varchar2(100),
UDF_2 varchar2(100),
CHG_DATE date,
CHG_USER CHAR(10),
CHG_TERM CHAR(15),
constraint SOD_RULE_HDR_PK primary key (RULE_ID),
FOREIGN KEY (RISK_ID) REFERENCES SoD_risk(RISK_ID)
);
CREATE TABLE SoD_rule_dtl
(
RULE_ID VARCHAR2(10),
LINE_NO CHAR(3),
DESCR VARCHAR2(40),
OBJ_NAME VARCHAR2(200),
RIGHT_CHAR VARCHAR2(10),
OBJ_NAME_CONFLICT VARCHAR2(200),
RIGHT_CHAR_CONFLICT VARCHAR2(10),
UDF_1 VARCHAR2(100),
UDF_2 VARCHAR2(100),
UDF_3 varchar2(100),
CONSTRAINT SOD_RULE_DTL_PK PRIMARY KEY (RULE_ID,LINE_NO)
);
alter table SoD_rule_dtl
add APPLICATION CHAR(3);
insert into TRANSETUP (TRAN_WINDOW,SAVE_FLAG,VAL_FLAG,KEY_FLAG,KEY_STRING,UDF_1,UDF_2,UDF_3,UDF_4,UDF_5,REPEATE_ADD,CHG_DATE,
CHG_USER,CHG_TERM,EDI_OPTION,SITE_ACC_COL,CONFIRM_COL,CONFIRM_VAL,REPEAT_ADD_DET,REPEATADDDET,LOAD_MODE,AUTO_CONFIRM,LEDG_POST_CONF,
CHG_DATE_ON_CONF,TRAN_ID_COL,MAIL_OPTION,CONFIRM_MODE,GARBAGE_OPT,VAL_FLAG_EDI,VERIFY_PASSWORD,CUST_ACC_COL,SALES_PERS_ACC_COL,SUPP_ACC_COL,
ITEM_SER_ACC_CODE,EMP_ACC_COL,ITEM_SER_ACC_COL,WORKFLOW_OPT,TABLE_NAME,APPLICATION,TABLE_DESC,TRAN_DATE_COL,TRAN_ID__FROM,TRAN_ID__TO,TABLE_NAME_DET1,
TABLE_NAME_DET2,TABLE_NAME_DET3,MULTITIRE_OPT,REF_SER,VIEW_MODE,TAX_FORMS,SIGN_STATUS,USER_TRAN_WINDOW,CUSTOM_PREVIEW_OBJ,IGNOREERRLIST_ONLOAD,
CHILDDATA_ARGOPT,EDIT_TMPLT,WRKFLW_INIT,EDITTAX,FORMAL_ARGS,AUDIT_TRAIL_OPT,EDIT_OPT,CACHE_OPT,OPTIMIZE_MODE,EDIT_EXPR,RATE_COL,QTY_COL,EDIT_EXPR_INP,RCP_CACHE_STATUS,PRINT_CONTROL,TRANSFER_MODE,PROFILE_ID__RES,TRAN_COMPL_MSG,PERIOD_OPTION,WRKFLW_PRIORITY,EXEC_TYPE,DISP_META_DATA,ALLOW_ATTACH,START_FORM,ISATTACHMENT,HEADER_FORM_NO,MSG_ONSAVE,WF_STATUS,RESTART_FORM,ISGWTINITIATED,CONFIRM_DATE_COL,CONFIRM_BY_COL,BROW_DATA_DEF,CMS_PATH,DEF_VIEW,VIEW_OPTS) values
('w_sod_rule','2','2','A','risk_id,seq03',null,null,null,null,null,'Y',TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM')
,'SUN','SUN','0',null,null,null,null,null,null,null,null,null,'RULE_ID',null,'0',null,'0',null,null,null,
null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,'SODRL','F',null,null,null,null,null,null,null,null,
null,null,'0',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,
null,null,null,null,null,null,null);
commit;
insert into OBJ_FORMS (WIN_NAME,TITLE,OBJ_BROW_NAME,OBJ_EDIT_NAME,CROSS_UPDATE_EXPR,EXPR_FLD_INFO,TARGET_FLD_INFO,EXPR_COMMENT,FORM_NO,SCR_FLAG,AUTO_ACCEPT_SCAN,SCAN_FLAG,SCAN_METADATA,PROPERTY_INFO,SCAN_DELIMITER,COLUMN_ON_SAVE,AFTER_SAVE,EXT_SETUP,EXT_METADATA,EXT_COM,AUTO_ACCEPT_WEIGHDATA,FORM_TYPE,DISP_METADATA,PARENT_KEY_COL,QTY_COL,RATE_COL,ASSISTED_MODE,STORAGE_KEY_METADATA,SELECTION_MODE,DEFAULT_VIEW,AUTO_ADDON_ENTRY) values
('w_sod_rule','SOD Rule','sod_rule11','sod_rule21',null,null,null,null,'1',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null);
insert into OBJ_FORMS (WIN_NAME,TITLE,OBJ_BROW_NAME,OBJ_EDIT_NAME,CROSS_UPDATE_EXPR,EXPR_FLD_INFO,TARGET_FLD_INFO,EXPR_COMMENT,FORM_NO,SCR_FLAG,AUTO_ACCEPT_SCAN,SCAN_FLAG,SCAN_METADATA,PROPERTY_INFO,SCAN_DELIMITER,COLUMN_ON_SAVE,AFTER_SAVE,EXT_SETUP,EXT_METADATA,EXT_COM,AUTO_ACCEPT_WEIGHDATA,FORM_TYPE,DISP_METADATA,PARENT_KEY_COL,QTY_COL,RATE_COL,ASSISTED_MODE,STORAGE_KEY_METADATA,SELECTION_MODE,DEFAULT_VIEW,AUTO_ADDON_ENTRY) values
('w_sod_rule','SOD Rule','sod_rule12','sod_rule22',null,null,null,null,'2',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null);
INSERT INTO OBJ_ACTIONS (OBJ_NAME,LINE_NO,IMAGE,DESCRIPTION,SERVICE_CODE,INTERACTIVE,RIGHTS_CHAR,TITLE,FORM_NO,SERVICE_HANDLER,PLACEMENT,ACTION_TYPE,TRAN_TYPE,CHG_DATE,CHG_TERM,CHG_USER,IS_CONFIRMATION_REQ,SEP_DUTY_OPT,RE_AUTH_OPT) VALUES
('sod_rule',1,'add.gif','Add New Record','a','a','A','Add New','1',NULL,NULL,'S',NULL,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',NULL,NULL,NULL);
INSERT INTO OBJ_ACTIONS (OBJ_NAME,LINE_NO,IMAGE,DESCRIPTION,SERVICE_CODE,INTERACTIVE,RIGHTS_CHAR,TITLE,FORM_NO,SERVICE_HANDLER,PLACEMENT,ACTION_TYPE,TRAN_TYPE,CHG_DATE,CHG_TERM,CHG_USER,IS_CONFIRMATION_REQ,SEP_DUTY_OPT,RE_AUTH_OPT) VALUES
('sod_rule',2,'edit.gif','Edit Record','a','a','E','Edit','1',NULL,NULL,'S',NULL,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','Dhanraj',NULL,NULL,NULL);
insert into OBJ_ACTIONS (OBJ_NAME,LINE_NO,IMAGE,DESCRIPTION,SERVICE_CODE,INTERACTIVE,RIGHTS_CHAR,TITLE,FORM_NO,SERVICE_HANDLER,PLACEMENT,ACTION_TYPE,TRAN_TYPE,CHG_DATE,CHG_TERM,CHG_USER,IS_CONFIRMATION_REQ,SEP_DUTY_OPT,RE_AUTH_OPT) values
('sod_rule',3,'delete.gif','Deleting','a','a','D','Delete','1',NULL,NULL,'S',NULL,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','Dhanraj',NULL,NULL,NULL);
commit;
insert into SYSTEM_EVENTS (OBJ_NAME,EVENT_CODE,EVENT_CONTEXT,SERVICE_CODE,METHOD_RULE,OVERWRITE_CORE,CHG_DATE,CHG_USER,CHG_TERM,RESULT_HANDLE,COMP_TYPE,COMP_NAME,COMM_FORMAT) values
('sod_rule','pre_validate','1','prv_sod_rule',null,'0',TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE','2','EJB','SodRuleEJB',null);
INSERT INTO SYSTEM_EVENT_SERVICES (SERVICE_CODE,SERVICE_DESCR,SERVICE_URI,SERVICE_PROVIDER,METHOD_NAME,RETURN_VALUE,RETURN_TYPE,RETURN_DESCR,RETURN_XFRM,RETURN_XFRM_XSL,CHG_DATE,CHG_USER,CHG_TERM) VALUES
('prv_sod_rule','Validation','http://172.16.145.69/BaseE12DotNetService6-3-2-140/E12BusinessLogic6-3-2-140.asmx','BASE','wfValData','String','S',null,null, EMPTY_BLOB(),TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE');
Insert into SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) values
('prv_sod_rule',1,'COMPONENT_TYPE','I',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE','EJB');
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_rule',3,'XML_DATA','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_rule',4,'XML_DATA_1','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_rule',5,'XML_DATA_ALL','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_rule',6,'OBJ_CONTEXT','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
Insert into SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) values
('prv_sod_rule',7,'EDIT_FLAG','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
Insert into SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) values
('prv_sod_rule',8,'XTRA_PARAMS','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_rule',2,'COMPONENT_NAME','I',NULL,'S',NULL,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE','SodRuleEJB');
commit;
insert into ITM2MENU (APPLICATION,LEVEL_1,LEVEL_2,LEVEL_3,LEVEL_4,LEVEL_5,WIN_NAME,DESCR,COMMENTS,MENU_PATH,ICON_PATH,CLOSE_ICON,OPEN_ICON,OBJ_TYPE,CHG_DATE,CHG_TERM,CHG_USER,MOB_DEPLOY) values
('FIN',36,0,0,0,0,'w_sod_rule','SOD Rule','SOD Rule','FIN.36.0.0.0.0',null,null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTBLKOBJNM','Obj Name cannot be blank','Obj Name cannot be blank.','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTINVOBJNM','Obj Name value invalid','Obj Name value must exist in ITM2MENU.','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTBLKCOOBJ','Conflict Obj Name value blank','Conflict Obj Name cannot be blank.','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTINVCOOBJ','Conflict Obj Name invalid','Conflict Obj Name value must exist in ITM2MENU.','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTBLKAPPLT','Application value blank','Application value cannot be blank','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTINVAPPLT','Application value invalid','Application value must exist in ITM2MENU','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTINVRIGCH','Right Char value blank','Rights Char value cannot be blank','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTINVCRICH','Conflict Right Char blank','Conflict Rights Char value cannot be blank','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',null,null);
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) VALUES
('APPLICATION','W_SOD_RULE','SELECT DISTINCT(APPLICATION) FROM ITM2MENU','','Application',0,0,
TO_TIMESTAMP('20-MAY-13','DD-MON-RR HH.MI.SSXFF AM'),'NPRC','NPRC','1',NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'1',NULL);
commit;
------------------ Added by akshay --------------
----------------- Added on 06-01-16--------------------
INSERT INTO SYSTEM_EVENTS (OBJ_NAME,EVENT_CODE,EVENT_CONTEXT,SERVICE_CODE,METHOD_RULE,OVERWRITE_CORE,CHG_DATE,CHG_USER,CHG_TERM,RESULT_HANDLE,COMP_TYPE,COMP_NAME,COMM_FORMAT) VALUES
('sod_rule','post_item_change','1','poic_sod_rule',null,'0',to_timestamp('08-JAN-15','DD-MON-RR HH.MI.SSXFF AM'),'Manoj ','BASE','2','EJB','SodRuleEJB',null);
INSERT INTO SYSTEM_EVENT_SERVICES (SERVICE_CODE,SERVICE_DESCR,SERVICE_URI,SERVICE_PROVIDER,METHOD_NAME,RETURN_VALUE,RETURN_TYPE,RETURN_DESCR,RETURN_XFRM,RETURN_XFRM_XSL,CHG_DATE,CHG_USER,CHG_TERM) VALUES
('poic_sod_rule','post item change','http://172.16.145.69/BaseE12DotNetService6-3-2-158/E12BusinessLogic6-3-2-158.asmx','BASE','itemChanged','String','S',null,null, EMPTY_BLOB(),to_timestamp('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE');
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('poic_sod_rule',1,'COMPONENT_TYPE','I',null,'S',null,to_timestamp('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE','EJB');
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('poic_sod_rule',2,'COMPONENT_NAME','I',null,'S',null,to_timestamp('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE','SodRuleEJB');
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('poic_sod_rule',3,'XML_DATA','I',null,'S',null,to_timestamp('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('poic_sod_rule',4,'XML_DATA_1','I',null,'S',null,to_timestamp('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('poic_sod_rule',5,'XML_DATA_ALL','I',null,'S',null,to_timestamp('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('poic_sod_rule',6,'OBJ_CONTEXT','I',null,'S',null,to_timestamp('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('poic_sod_rule',7,'FOCUSED_COLUMN','I',null,'S',null,to_timestamp('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('poic_sod_rule',8,'EDIT_FLAG','I',null,'S',null,to_timestamp('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('poic_sod_rule',9,'XTRA_PARAMS','I',NULL,'S',NULL,TO_TIMESTAMP('21-NOV-12','DD-MON-RR HH.MI.SSXFF AM'),'Manoj','BASE',NULL);
commit;
ALTER TABLE SOD_RULE_hdr
drop column udf_1;
ALTER TABLE SOD_RULE_HDR
add Impact varCHAR(4000);
Insert into OBJ_ITEMCHANGE (OBJ_NAME,FORM_NO,FIELD_NAME,MANDATORY) values ('sod_rule','2','application',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
('VTENTRYINV','Invalid Entry','Rule defination has no meaning','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTRPTENTRY','Combination already exists','Combination already exists for this rule.','E','Y',NULL,NULL,NULL,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',NULL,NULL);
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) VALUES
('OBJ_NAME','W_SOD_RULE','SELECT WIN_NAME,DESCR FROM ITM2MENU WHERE APPLICATION = ''?''','','Object Name',0,0,
TO_TIMESTAMP('20-MAY-13','DD-MON-RR HH.MI.SSXFF AM'),'NPRC','NPRC','1',NULL,':1.application',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'1',NULL);
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) VALUES
('OBJ_NAME_CONFLICT','W_SOD_RULE','SELECT WIN_NAME,DESCR FROM ITM2MENU WHERE APPLICATION = ''?''','','Object Name',0,0,
TO_TIMESTAMP('20-MAY-13','DD-MON-RR HH.MI.SSXFF AM'),'NPRC','NPRC','1',NULL,':1.application',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'1',NULL);
----------------------- Added on 11-Jan-16 ------------------------
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) VALUES
('RISK_ID','W_SOD_RULE','SELECT RISK_ID,RISK_DESCR FROM SOD_RISK','','Risk Id',0,0,
TO_TIMESTAMP('20-MAY-13','DD-MON-RR HH.MI.SSXFF AM'),'NPRC','NPRC','1',NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'1',NULL);
-------------Added on 19/01/16----------
-------------Added by Azhar-------------
Update pophelp set sql_str = 'SELECT substr(win_name,3,100) as OBJ_NAME,DESCR FROM ITM2MENU WHERE APPLICATION = ''?'' and win_name is not null and win_name not in (''-'')' where field_name = 'OBJ_NAME' and mod_name = 'W_SOD_RULE';
Update pophelp set sql_str = 'SELECT substr(win_name,3,100) as OBJ_NAME,DESCR FROM ITM2MENU where win_name is not null and win_name not in (''-'')' where field_name = 'OBJ_NAME_CONFLICT' and mod_name = 'W_SOD_RULE';
Update pophelp set sql_input = null where field_name = 'OBJ_NAME_CONFLICT' and mod_name = 'W_SOD_RULE';
--Added by Tajuddin as per discussion with Rahul Sir
ALTER TABLE SOD_RULE_DTL MODIFY DESCR VARCHAR2(100);
commit;
CREATE TABLE SoD_risk
(
RISK_ID varchar2(10),
RISK_DESCR varchar2(100),
RISK_LVL CHAR(1),
BUSINESS_PROCESS varchar2(100),
CHG_DATE date,
CHG_USER CHAR(10),
CHG_TERM CHAR(15),
constraint SoD_risk_PK primary key (RISK_ID)
);
insert into TRANSETUP (TRAN_WINDOW,SAVE_FLAG,VAL_FLAG,KEY_FLAG,KEY_STRING,UDF_1,UDF_2,UDF_3,UDF_4,UDF_5,REPEATE_ADD,CHG_DATE,
CHG_USER,CHG_TERM,EDI_OPTION,SITE_ACC_COL,CONFIRM_COL,CONFIRM_VAL,REPEAT_ADD_DET,REPEATADDDET,LOAD_MODE,AUTO_CONFIRM,LEDG_POST_CONF,
CHG_DATE_ON_CONF,TRAN_ID_COL,MAIL_OPTION,CONFIRM_MODE,GARBAGE_OPT,VAL_FLAG_EDI,VERIFY_PASSWORD,CUST_ACC_COL,SALES_PERS_ACC_COL,SUPP_ACC_COL,
ITEM_SER_ACC_CODE,EMP_ACC_COL,ITEM_SER_ACC_COL,WORKFLOW_OPT,TABLE_NAME,APPLICATION,TABLE_DESC,TRAN_DATE_COL,TRAN_ID__FROM,TRAN_ID__TO,TABLE_NAME_DET1,
TABLE_NAME_DET2,TABLE_NAME_DET3,MULTITIRE_OPT,REF_SER,VIEW_MODE,TAX_FORMS,SIGN_STATUS,USER_TRAN_WINDOW,CUSTOM_PREVIEW_OBJ,IGNOREERRLIST_ONLOAD,
CHILDDATA_ARGOPT,EDIT_TMPLT,WRKFLW_INIT,EDITTAX,FORMAL_ARGS,AUDIT_TRAIL_OPT,EDIT_OPT,CACHE_OPT,OPTIMIZE_MODE,EDIT_EXPR,RATE_COL,QTY_COL,EDIT_EXPR_INP,RCP_CACHE_STATUS,PRINT_CONTROL,TRANSFER_MODE,PROFILE_ID__RES,TRAN_COMPL_MSG,PERIOD_OPTION,WRKFLW_PRIORITY,EXEC_TYPE,DISP_META_DATA,ALLOW_ATTACH,START_FORM,ISATTACHMENT,HEADER_FORM_NO,MSG_ONSAVE,WF_STATUS,RESTART_FORM,ISGWTINITIATED,CONFIRM_DATE_COL,CONFIRM_BY_COL,BROW_DATA_DEF,CMS_PATH,DEF_VIEW,VIEW_OPTS) values
('w_sod_risk','2','2','M','',null,null,null,null,null,'Y',TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM')
,'SUN','SUN','0',null,null,null,null,null,null,null,null,null,'RISK_ID',null,'0',null,'0',null,null,null,
null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,'','F',null,null,null,null,null,null,null,null,
null,null,'0',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,
null,null,null,null,null,null,null);
commit;
insert into OBJ_FORMS (WIN_NAME,TITLE,OBJ_BROW_NAME,OBJ_EDIT_NAME,CROSS_UPDATE_EXPR,EXPR_FLD_INFO,TARGET_FLD_INFO,EXPR_COMMENT,FORM_NO,SCR_FLAG,AUTO_ACCEPT_SCAN,SCAN_FLAG,SCAN_METADATA,PROPERTY_INFO,SCAN_DELIMITER,COLUMN_ON_SAVE,AFTER_SAVE,EXT_SETUP,EXT_METADATA,EXT_COM,AUTO_ACCEPT_WEIGHDATA,FORM_TYPE,DISP_METADATA,PARENT_KEY_COL,QTY_COL,RATE_COL,ASSISTED_MODE,STORAGE_KEY_METADATA,SELECTION_MODE,DEFAULT_VIEW,AUTO_ADDON_ENTRY) values
('w_sod_risk','SOD Risk','sod_risk11','sod_risk21',null,null,null,null,'1',null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null);
INSERT INTO OBJ_ACTIONS (OBJ_NAME,LINE_NO,IMAGE,DESCRIPTION,SERVICE_CODE,INTERACTIVE,RIGHTS_CHAR,TITLE,FORM_NO,SERVICE_HANDLER,PLACEMENT,ACTION_TYPE,TRAN_TYPE,CHG_DATE,CHG_TERM,CHG_USER,IS_CONFIRMATION_REQ,SEP_DUTY_OPT,RE_AUTH_OPT) VALUES
('sod_risk',1,'add.gif','Add New Record','a','a','A','Add New','1',NULL,NULL,'S',NULL,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',NULL,NULL,NULL);
INSERT INTO OBJ_ACTIONS (OBJ_NAME,LINE_NO,IMAGE,DESCRIPTION,SERVICE_CODE,INTERACTIVE,RIGHTS_CHAR,TITLE,FORM_NO,SERVICE_HANDLER,PLACEMENT,ACTION_TYPE,TRAN_TYPE,CHG_DATE,CHG_TERM,CHG_USER,IS_CONFIRMATION_REQ,SEP_DUTY_OPT,RE_AUTH_OPT) VALUES
('sod_risk',2,'edit.gif','Edit Record','a','a','E','Edit','1',NULL,NULL,'S',NULL,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','Dhanraj',NULL,NULL,NULL);
insert into OBJ_ACTIONS (OBJ_NAME,LINE_NO,IMAGE,DESCRIPTION,SERVICE_CODE,INTERACTIVE,RIGHTS_CHAR,TITLE,FORM_NO,SERVICE_HANDLER,PLACEMENT,ACTION_TYPE,TRAN_TYPE,CHG_DATE,CHG_TERM,CHG_USER,IS_CONFIRMATION_REQ,SEP_DUTY_OPT,RE_AUTH_OPT) values
('sod_risk',3,'delete.gif','Deleting','a','a','D','Delete','1',NULL,NULL,'S',NULL,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','Dhanraj',NULL,NULL,NULL);
commit;
insert into SYSTEM_EVENTS (OBJ_NAME,EVENT_CODE,EVENT_CONTEXT,SERVICE_CODE,METHOD_RULE,OVERWRITE_CORE,CHG_DATE,CHG_USER,CHG_TERM,RESULT_HANDLE,COMP_TYPE,COMP_NAME,COMM_FORMAT) values
('sod_risk','pre_validate','1','prv_sod_risk',null,'0',TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE','2','EJB','SodRiskEJB',null);
INSERT INTO SYSTEM_EVENT_SERVICES (SERVICE_CODE,SERVICE_DESCR,SERVICE_URI,SERVICE_PROVIDER,METHOD_NAME,RETURN_VALUE,RETURN_TYPE,RETURN_DESCR,RETURN_XFRM,RETURN_XFRM_XSL,CHG_DATE,CHG_USER,CHG_TERM) VALUES
('prv_sod_risk','Validation','http://172.16.145.69/BaseE12DotNetService6-3-2-140/E12BusinessLogic6-3-2-140.asmx','BASE','wfValData','String','S',null,null, EMPTY_BLOB(),TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE');
Insert into SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) values
('prv_sod_risk',1,'COMPONENT_TYPE','I',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE','EJB');
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_risk',3,'XML_DATA','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_risk',4,'XML_DATA_1','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_risk',5,'XML_DATA_ALL','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_risk',6,'OBJ_CONTEXT','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
Insert into SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) values
('prv_sod_risk',7,'EDIT_FLAG','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
Insert into SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) values
('prv_sod_risk',8,'XTRA_PARAMS','l',null,'S',null,to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE',null);
INSERT INTO SYSTEM_SERVICE_ARGS (SERVICE_CODE,LINE_NO,ARG_NAME,ARG_MODE,DESCR,ARG_TYPE,ARG_XFRM,CHG_DATE,CHG_USER,CHG_TERM,ARG_VALUE) VALUES
('prv_sod_risk',2,'COMPONENT_NAME','I',NULL,'S',NULL,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'Dhanraj','BASE','SodRiskEJB');
commit;
INSERT INTO ITM2MENU (APPLICATION,LEVEL_1,LEVEL_2,LEVEL_3,LEVEL_4,LEVEL_5,WIN_NAME,DESCR,COMMENTS,MENU_PATH,ICON_PATH,CLOSE_ICON,OPEN_ICON,OBJ_TYPE,CHG_DATE,CHG_TERM,CHG_USER,MOB_DEPLOY) VALUES
('FIN',35,0,0,0,0,'w_sod_risk','SOD Risk','SOD Risk','FIN.35.0.0.0.0',null,null,null,'T',to_timestamp('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTBLKRSKID','Risk Id cannot be blank','Risk Id cannot be blank.','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTINVRSKID','Risk Id value Invalid','Risk Id value already exist.','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTINVRSKLT','Risk Id value invalid','Risk Id value cannot be greater than 6.','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTINVRSKLV','Risk Level value invalid','Risk Level value must exist in Gencodes.','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTINVRISID','Risk Id value invalid','Risk Id value must exist in SOD_RISK table.','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',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
('VTBLKRSKLV','Risk Level value blank','Risk Level value cannot be blank','E','Y',null,null,null,TO_TIMESTAMP('05-SEP-15','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE',null,null);
commit;
insert into GENCODES (FLD_NAME,MOD_NAME,FLD_VALUE,DESCR,SH_DESCR,CHG_DATE,CHG_USER,CHG_TERM,ACTIVE,UDF_STR1,UDF_STR2,UDF_STR3) values
('SOD_RISK_LVL','W_SOD_RISK','H','High Level','High Level',to_timestamp('25-OCT-12','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE','Y',null,null,null);
insert into GENCODES (FLD_NAME,MOD_NAME,FLD_VALUE,DESCR,SH_DESCR,CHG_DATE,CHG_USER,CHG_TERM,ACTIVE,UDF_STR1,UDF_STR2,UDF_STR3) values
('SOD_RISK_LVL','W_SOD_RISK','M','Medium Level','Medium Level',to_timestamp('25-OCT-12','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE','Y',null,null,null);
insert into GENCODES (FLD_NAME,MOD_NAME,FLD_VALUE,DESCR,SH_DESCR,CHG_DATE,CHG_USER,CHG_TERM,ACTIVE,UDF_STR1,UDF_STR2,UDF_STR3) values
('SOD_RISK_LVL','W_SOD_RISK','L','Low Level','Low Level',to_timestamp('25-OCT-12','DD-MON-RR HH.MI.SSXFF AM'),'BASE','BASE','Y',null,null,null);
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) VALUES
('RISK_LVL','W_SOD_RISK','SELECT FLD_VALUE,DESCR FROM GENCODES WHERE FLD_NAME=''SOD_RISK_LVL''',null,'RISK_LVL',0,0,to_timestamp('20-MAY-13','DD-MON-RR HH.MI.SSXFF AM'),'NPRC ','NPRC ','1',null,null,null,null,null,null,null,null,null,'1',null);
------------- Added on 11-Jan-16-------------------
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) VALUES
('RISK_ID','W_SOD_RISK','SELECT RISK_ID,RISK_DESCR FROM SOD_RISK','','Risk Id',0,0,
TO_TIMESTAMP('20-MAY-13','DD-MON-RR HH.MI.SSXFF AM'),'NPRC','NPRC','1',NULL,'',NULL,NULL,NULL,NULL,NULL,NULL,NULL,'1',NULL);
commit;
------------- Added on 11-Mar-16-------------------
alter table sod_risk add (quality_Risk char(1), business_risk char(1));
commit;
\ No newline at end of file
-------------Added on 19/01/16----------
-------------Added by Azhar-------------
Update pophelp set sql_str = 'SELECT substr(win_name,3,100) as OBJ_NAME,DESCR FROM ITM2MENU WHERE APPLICATION = ''?'' and win_name is not null and win_name not in (''-'')' where field_name = 'OBJ_NAME' and mod_name = 'W_SOD_RULE';
Update pophelp set sql_str = 'SELECT substr(win_name,3,100) as OBJ_NAME,DESCR FROM ITM2MENU where win_name is not null and win_name not in (''-'')' where field_name = 'OBJ_NAME_CONFLICT' and mod_name = 'W_SOD_RULE';
Update pophelp set sql_input = null where field_name = 'OBJ_NAME_CONFLICT' and mod_name = 'W_SOD_RULE';
--Added by Tajuddin as per discussion with Rahul Sir
ALTER TABLE SOD_RULE_DTL MODIFY DESCR VARCHAR2(100);
commit;
----------------------------------------------------------------
alter table sod_risk add (quality_Risk char(1), business_risk char(1));
commit;
------added by saurabh on 06/06/16----------------------------
delete from pophelp where field_name like 'OBJ_NAME%' and mod_name='W_SOD_RULE';
commit;
----------------------------------
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)
values ('OBJ_NAME','W_SOD_RULE','SELECT substr(win_name,3,100) || '' ~ '' || MENU_PATH as NEW_Menu , substr(win_name,3,100) as OBJ_NAME, DESCR FROM ITM2MENU WHERE APPLICATION = ''?'' and win_name is not null and win_name not in (''-'')',null,'Object Name',0,0,sysdate,'NPRC ','NPRC ','1',null,':1.application',0,null,null,null,null,null,null,'1',null,null);
commit;
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)
values ('OBJ_NAME_CONFLICT','W_SOD_RULE','SELECT substr(win_name,3,100) || '' ~ '' || MENU_PATH as NEW_Menu , substr(win_name,3,100) as OBJ_NAME, DESCR FROM ITM2MENU WHERE win_name is not null and win_name not in (''-'')',null,'Object Name',0,0,sysdate,'NPRC ','NPRC ','1',null,null,0,null,null,null,null,null,null,'1',null,null);
commit;
----------------------------------
insert into obj_itemchange (OBJ_NAME,FORM_NO,FIELD_NAME,MANDATORY) values ('sod_rule','2 ','obj_name',null);
insert into obj_itemchange (obj_name,form_no,field_name,mandatory) values ('sod_rule','2 ','obj_name_conflict',null);
commit;
-----------------------------
\ No newline at end of file
create or replace
function ddf_get_profile_id(usercode users.code%type,usersitecode user_site.site_code%type)
return varchar2 is
vuser_profile_id varchar2(20);
begin
select user_site.profile_id into vuser_profile_id
from USER_SITE,
USERS
where users.code = usercode
AND user_site.site_code = usersitecode
AND users.code =user_site.user_id;
if vuser_profile_id is not null then
select user_site.profile_id into vuser_profile_id from user_site,users
where users.code = usercode
AND user_site.site_code = usersitecode
AND users.code =user_site.user_id;
else
select users.profile_id into vuser_profile_id from users
where users.code = usercode;
end if;
return vuser_profile_id;
exception
when no_data_found
then
select users.profile_id into vuser_profile_id from users
where users.code = usercode
AND users.usr_lev in (0,1);
return vuser_profile_id;
when others then
vuser_profile_id := 'NOMARF';
return vuser_profile_id;
end;
\ No newline at end of file
create or replace
function ddf_get_sod_comparestrings(string1 user_rights.rights%type,
string2 sod_rule_dtl.right_char_conflict%type) return varchar2 is
i number := 0;
l_count number := 0;
str1 varchar2(20);
str2 varchar2(20);
str3 varchar2(20);
pstr varchar2(20);
begin
str1 := ddf_get_sod_sort_string(replace(string1,',',''));
str2 := ddf_get_sod_sort_string(replace(string2,',',''));
if substr(str1,1,1) = '*' then
pstr := 'conflict';
else
--while (i < length(str1))
for i in 1..length(str1)
loop
--i := i+1;
dbms_output.put_line('i:'||i);
l_count := instr(str2,substr(str1,i,1),1);
dbms_output.put_line('l_count:'||l_count);
if l_count > 0
then pstr := 'conflict';
else pstr := null;
end if;
exit when l_count > 0;
end loop;
end if;
return pstr;
end ;
/
commit;
/
\ No newline at end of file
create or replace
function ddf_get_sod_sort_string(p_string in varchar2) return varchar deterministic
as
rv varchar2(4000);
ch varchar2(1);
type vcArray is table of varchar(4000) index by varchar2(1);
sorted vcArray;
key varchar2(1);
begin
for i in 1 .. length(p_string)
loop
ch := substr(p_string, i, 1);
if (sorted.exists(ch))
then
sorted(ch) := sorted(ch) || ch;
else
sorted(ch) := ch;
end if;
end loop;
rv := '';
key := sorted.FIRST;
WHILE key IS NOT NULL LOOP
rv := rv || sorted(key);
key := sorted.NEXT(key);
END LOOP;
return rv;
end;
/
commit;
/
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment