[Home] [Help]
950:
951: -- Validates system code and system name in table HZ_ORIG_SYSTEMS_B
952: -- For invalid systems, writes parameter name and parameter value
953: -- in table EGO_PUB_WS_INPUT_IDENTIFIERS
954: -- And corresponding error code and error message in table EGO_PUB_WS_ERRORS
955:
956: FUNCTION Validate_System_Info(p_session_id IN NUMBER,
957: p_system_code IN OUT NOCOPY VARCHAR2,
958: p_system_name VARCHAR2 DEFAULT NULL) RETURN BOOLEAN
1689: IS
1690:
1691: BEGIN
1692:
1693: INSERT INTO EGO_PUB_WS_ERRORS(session_id,
1694: odi_session_id,
1695: input_id,
1696: err_code,
1697: err_message,
1768: FROM EGO_PUB_WS_INPUT_IDENTIFIERS
1769: WHERE SESSION_ID = l_session_id
1770: AND SYSTEM_CODE = l_system_code;
1771:
1772: -- Get ERROR_CODE, ERROR_MESSAGE from EGO_PUB_WS_ERRORS
1773: CURSOR c_pub_ws_error(l_session_id NUMBER, l_input_id NUMBER, l_system_code VARCHAR2)
1774: IS
1775: SELECT SESSION_ID,
1776: INPUT_ID,
1776: INPUT_ID,
1777: SYSTEM_CODE,
1778: ERR_CODE,
1779: ERR_MESSAGE
1780: FROM EGO_PUB_WS_ERRORS
1781: WHERE SESSION_ID = l_session_id
1782: AND INPUT_ID = l_input_id
1783: AND SYSTEM_CODE = l_system_code;
1784:
1813: LOOP
1814: l_system_code := sys.CHAR_VALUE;
1815: l_invld_sys_cnt := 0;
1816:
1817: -- invalid system stored in EGO_PUB_WS_ERRORS for the p_session_id
1818: -- get count for the l_system_code
1819: -- if it is equal to zero then only for that system code
1820: -- send the status back to batch fwk table EGO_PUB_BAT_STATUS_B
1821:
1821:
1822: BEGIN
1823: SELECT count(1)
1824: INTO l_invld_sys_cnt
1825: FROM EGO_PUB_WS_ERRORS
1826: WHERE SESSION_ID = p_session_id
1827: AND ERR_CODE = 'D'
1828: AND SYSTEM_CODE = l_system_code;
1829: EXCEPTION
1998: END IF;
1999:
2000: END LOOP;
2001:
2002: -- For each record in EGO_PUB_WS_ERRORS , join with EGO_PUB_WS_INPUT_IDENTIFIERS
2003: -- using INPUT_ID, SESSION_ID, and SYSTEM_CODE
2004: -- to retrieve PKs from EGO_PUB_WS_INPUT_IDENTIFIERS, and ERR_CODE and ERR_MESSAGE from EGO_PUB_WS_ERRORS
2005: -- and update records in global temporary table accordingly using PKs.
2006:
2000: END LOOP;
2001:
2002: -- For each record in EGO_PUB_WS_ERRORS , join with EGO_PUB_WS_INPUT_IDENTIFIERS
2003: -- using INPUT_ID, SESSION_ID, and SYSTEM_CODE
2004: -- to retrieve PKs from EGO_PUB_WS_INPUT_IDENTIFIERS, and ERR_CODE and ERR_MESSAGE from EGO_PUB_WS_ERRORS
2005: -- and update records in global temporary table accordingly using PKs.
2006:
2007: IF (l_trigger_import = 'Y' OR l_trigger_import = 'TRUE') THEN
2008:
2010: LOOP
2011: l_system_code := sys.CHAR_VALUE;
2012: l_invld_sys_cnt := 0;
2013:
2014: -- invalid system stored in EGO_PUB_WS_ERRORS for the p_session_id
2015: -- get count for the l_system_code
2016: -- if it is equal to zero then only for that system code
2017: -- send the status back to batch fwk table EGO_PUB_BAT_STATUS_B
2018:
2018:
2019: BEGIN
2020: SELECT count(1)
2021: INTO l_invld_sys_cnt
2022: FROM EGO_PUB_WS_ERRORS
2023: WHERE SESSION_ID = p_session_id
2024: AND ERR_CODE = 'D'
2025: AND SYSTEM_CODE = l_system_code;
2026: EXCEPTION
2042: --DBMS_OUTPUT.PUT_LINE('l_input_id ' || to_char(l_input_id));
2043: BEGIN
2044: SELECT count(1)
2045: INTO l_error_rec_count
2046: FROM EGO_PUB_WS_ERRORS
2047: WHERE session_id = p_session_id
2048: AND system_code = l_system_code
2049: AND input_id = l_input_id;
2050: EXCEPTION
2075: AND SYSTEM_CODE = ip.SYSTEM_CODE;
2076:
2077: -- Update Err_Message in EGO_PUB_WS_ERROR table
2078:
2079: UPDATE EGO_PUB_WS_ERRORS
2080: SET ERR_MESSAGE = l_message
2081: WHERE SESSION_ID = p_session_id
2082: AND INPUT_ID = l_input_id
2083: AND SYSTEM_CODE = l_system_code;
2104: AND SYSTEM_CODE = ip.SYSTEM_CODE;
2105:
2106: -- Update Err_Message in EGO_PUB_WS_ERROR table
2107:
2108: UPDATE EGO_PUB_WS_ERRORS
2109: SET ERR_MESSAGE = l_message
2110: WHERE SESSION_ID = p_session_id
2111: AND INPUT_ID = l_input_id
2112: AND SYSTEM_CODE = l_system_code;
2132: AND SYSTEM_CODE = ip.SYSTEM_CODE;
2133:
2134: -- Update Err_Message in EGO_PUB_WS_ERROR table
2135:
2136: UPDATE EGO_PUB_WS_ERRORS
2137: SET ERR_MESSAGE = l_message
2138: WHERE SESSION_ID = p_session_id
2139: AND INPUT_ID = l_input_id
2140: AND SYSTEM_CODE = l_system_code;
2252: FROM EGO_PUB_WS_INPUT_IDENTIFIERS
2253: WHERE SESSION_ID = l_session_id
2254: AND SYSTEM_CODE = l_system_code;
2255:
2256: -- Get ERROR_CODE, ERROR_MESSAGE from EGO_PUB_WS_ERRORS
2257: CURSOR c_pub_ws_error(l_session_id NUMBER, l_input_id NUMBER, l_system_code VARCHAR2)
2258: IS
2259: SELECT SESSION_ID,
2260: INPUT_ID,
2260: INPUT_ID,
2261: SYSTEM_CODE,
2262: ERR_CODE,
2263: ERR_MESSAGE
2264: FROM EGO_PUB_WS_ERRORS
2265: WHERE SESSION_ID = l_session_id
2266: AND INPUT_ID = l_input_id
2267: AND SYSTEM_CODE = l_system_code;
2268:
2273: LOOP
2274: l_system_code := sys.CHAR_VALUE;
2275: l_invld_sys_cnt := 0;
2276:
2277: -- invalid system stored in EGO_PUB_WS_ERRORS for the p_session_id
2278: -- get count for the l_system_code
2279: -- if it is equal to zero then only for that system code
2280: -- send the status back to batch fwk table EGO_PUB_BAT_STATUS_B
2281:
2281:
2282: BEGIN
2283: SELECT count(1)
2284: INTO l_invld_sys_cnt
2285: FROM EGO_PUB_WS_ERRORS
2286: WHERE SESSION_ID = p_session_id
2287: AND ERR_CODE = 'D'
2288: AND SYSTEM_CODE = l_system_code;
2289: EXCEPTION
2318: --DBMS_OUTPUT.PUT_LINE('ip.SYSTEM_CODE: ' || to_char(ip.SYSTEM_CODE));
2319:
2320: -- Update Err_Message in EGO_PUB_WS_ERROR table
2321:
2322: UPDATE EGO_PUB_WS_ERRORS
2323: SET ERR_MESSAGE = l_message
2324: WHERE SESSION_ID = p_session_id
2325: AND INPUT_ID = l_input_id
2326: AND SYSTEM_CODE = l_system_code
2336: l_message := SUBSTR(FND_MESSAGE.Get, 1, 2000);
2337:
2338: -- Update Err_Message in EGO_PUB_WS_ERROR table
2339:
2340: UPDATE EGO_PUB_WS_ERRORS
2341: SET ERR_MESSAGE = l_message
2342: WHERE SESSION_ID = p_session_id
2343: AND INPUT_ID = l_input_id
2344: AND SYSTEM_CODE = l_system_code;
2412: --Start error handling
2413: CURSOR c_err_detail(cp_session_id NUMBER)
2414: IS
2415: SELECT session_id,input_id, err_code,err_message, 'US' language_code, system_code
2416: FROM EGO_PUB_WS_ERRORS
2417: WHERE session_id=cp_session_id
2418: AND ERR_CODE IN('EGO_SYNC_ENTITY_ERROR', 'EGO_SYNC_MIB_STAT_1_ERROR');
2419:
2420: --Start warning handling
2420: --Start warning handling
2421: CURSOR c_warn_detail(cp_session_id NUMBER)
2422: IS
2423: SELECT session_id,input_id, err_code,err_message, 'US' language_code, system_code
2424: FROM EGO_PUB_WS_ERRORS
2425: WHERE session_id=cp_session_id
2426: AND ERR_CODE = 'EGO_SYNC_ENTITY_WARNING';
2427:
2428: CURSOR c_err_identifier(cp_session_id NUMBER,