The following lines contain the word 'select', 'insert', 'update' or 'delete':
| 12-MAR-2004 K.Boussema Changed to incorporate the select of lookups |
| from the extract objects |
| 22-MAR-2004 K.Boussema Added a parameter p_module to the TRACE calls|
| and the procedure. |
| 11-MAY-2004 K.Boussema Removed the call to XLA trace routine from |
| trace() procedure |
| 20-Sep-2004 S.Singhania Made chnages for the bulk performance: |
| - Added routines GenerateHdrStructure and |
| GenerateCacheHdrSources |
| - Modified routines GenerateHdrVariables, |
| GenerateLineStructure,GenerateLineCursor,|
| GenerateHeaderCursor, GenerateFetchLineCu|
| rsor, GenerateFetchHeaderCursor |
| - Replace the constant C_HDR_CUR with C_HDR|
| _CUR_EVENT_TYPE and C_HDR_CUR_EVENT_CLASS|
| - Replace the constant C_LINE_CUR with C_LI|
| NE_CUR_EVENT_TYPE, C_LINE_CUR_EVENT_CLASS|
| 06-Oct-2004 K.Boussema Made changes for the Accounting Event Extract|
| Diagnostics feature. |
| 08-DEC-2004 K.Boussema Updated to change xla_extract_sources table |
| by xla_diag_sources |
| 03-Mar-2005 W.shen remove the hint in line cursor |
| 06-Mar-2005 W.shen Ledger Currency Project. |
| Remove the ledger currency level extract |
| object. Add ledger_id to ledger line level |
| object. join to ledger_id depends on alc |
| setting . |
| 08-Jun-2005 K.Boussema Reviewed C_INSERT_LINE_SOURCES_CLASS constant |
| to fix bug 4200257 |
| 21-JUL-2005 K.Boussema Reviewed to handle the two cases: |
| - no header Transaction objects and |
| - no line Transaction objects |
| 01-Aug-2005 W. Chan 4458381 - Public Sector Enhancement |
| 11-Sep-2006 V. Swapna Bug 5478323: Correct an ORA-01400 |
| error on the table xla_diag_sources. |
+===========================================================================*/
--
--
--+==========================================================================+
--| |
--| GLOBAL CONSTANTS |
--| |
--| |
--+==========================================================================+
--
--+==========================================================================+
--| |
--| Header CURSOR Template |
--| |
--+==========================================================================+
--
--
C_HDR_CUR_EVENT_TYPE CONSTANT VARCHAR2(10000):='
--
CURSOR header_cur
IS
SELECT /*+ leading(xet) cardinality(xet,1) */
-- Event Type Code: $event_type_code$
-- Event Class Code: $event_class_code$
xet.entity_id
, xet.legal_entity_id
, xet.entity_code
, xet.transaction_number
, xet.event_id
, xet.event_class_code
, xet.event_type_code
, xet.event_number
, xet.event_date
, xet.transaction_date
, xet.reference_num_1
, xet.reference_num_2
, xet.reference_num_3
, xet.reference_num_4
, xet.reference_char_1
, xet.reference_char_2
, xet.reference_char_3
, xet.reference_char_4
, xet.reference_date_1
, xet.reference_date_2
, xet.reference_date_3
, xet.reference_date_4
, xet.event_created_by
, xet.budgetary_control_flag $hdr_sources$
FROM xla_events_gt xet $hdr_tabs$
WHERE xet.event_date between p_pad_start_date and p_pad_end_date
and xet.event_type_code = C_EVENT_TYPE_CODE
and xet.event_status_code <> ''N'' $hdr_clauses$
ORDER BY event_id
;
SELECT /*+ leading(xet) cardinality(xet,1) */
-- Event Class Code: $event_class_code$
xet.entity_id
,xet.legal_entity_id
,xet.entity_code
,xet.transaction_number
,xet.event_id
,xet.event_class_code
,xet.event_type_code
,xet.event_number
,xet.event_date
,xet.transaction_date
,xet.reference_num_1
,xet.reference_num_2
,xet.reference_num_3
,xet.reference_num_4
,xet.reference_char_1
,xet.reference_char_2
,xet.reference_char_3
,xet.reference_char_4
,xet.reference_date_1
,xet.reference_date_2
,xet.reference_date_3
,xet.reference_date_4
,xet.event_created_by
,xet.budgetary_control_flag $hdr_sources$
FROM xla_events_gt xet $hdr_tabs$
WHERE xet.event_date between p_pad_start_date and p_pad_end_date
and xet.event_class_code = C_EVENT_CLASS_CODE
and xet.event_status_code <> ''N'' $hdr_clauses$
ORDER BY event_id
;
SELECT /*+ leading(xet) cardinality(xet,1) */
-- Event Type Code: $event_type_code$
-- Event Class Code: $event_class_code$
xet.entity_id
,xet.legal_entity_id
,xet.entity_code
,xet.transaction_number
,xet.event_id
,xet.event_class_code
,xet.event_type_code
,xet.event_number
,xet.event_date
,xet.transaction_date
,xet.reference_num_1
,xet.reference_num_2
,xet.reference_num_3
,xet.reference_num_4
,xet.reference_char_1
,xet.reference_char_2
,xet.reference_char_3
,xet.reference_char_4
,xet.reference_date_1
,xet.reference_date_2
,xet.reference_date_3
,xet.reference_date_4
,xet.event_created_by
,xet.budgetary_control_flag $line_sources$
FROM xla_events_gt xet $line_tabs$
WHERE xet.event_id between x_first_event_id and x_last_event_id
and xet.event_date between p_pad_start_date and p_pad_end_date
and xet.event_type_code = C_EVENT_TYPE_CODE
and xet.event_status_code <> ''N'' $line_clauses$;
SELECT /*+ leading(xet) cardinality(xet,1) */
-- Event Class Code: $event_class_code$
xet.entity_id
,xet.legal_entity_id
,xet.entity_code
,xet.transaction_number
,xet.event_id
,xet.event_class_code
,xet.event_type_code
,xet.event_number
,xet.event_date
,xet.transaction_date
,xet.reference_num_1
,xet.reference_num_2
,xet.reference_num_3
,xet.reference_num_4
,xet.reference_char_1
,xet.reference_char_2
,xet.reference_char_3
,xet.reference_char_4
,xet.reference_date_1
,xet.reference_date_2
,xet.reference_date_3
,xet.reference_date_4
,xet.event_created_by
,xet.budgetary_control_flag
$line_sources$
FROM xla_events_gt xet $line_tabs$
WHERE xet.event_id between x_first_event_id and x_last_event_id
and xet.event_date between p_pad_start_date and p_pad_end_date
and xet.event_class_code = C_EVENT_CLASS_CODE
and xet.event_status_code <> ''N'' $line_clauses$;
C_INSERT_HDR_SOURCES_EVT CONSTANT VARCHAR2(10000):='
--
INSERT INTO xla_diag_sources --hdr1
(
event_id
, ledger_id
, sla_ledger_id
, description_language
, object_name
, object_type_code
, line_number
, source_application_id
, source_type_code
, source_code
, source_value
, source_meaning
, created_by
, creation_date
, last_update_date
, last_updated_by
, last_update_login
, program_update_date
, program_application_id
, program_id
, request_id
)
SELECT
event_id
, p_target_ledger_id
, p_sla_ledger_id
, p_language
, object_name
, object_type_code
, line_number
, source_application_id
, source_type_code
, source_code
, SUBSTR(source_value ,1,1996)
, SUBSTR(source_meaning,1,200)
, xla_environment_pkg.g_Usr_Id
, TRUNC(SYSDATE)
, TRUNC(SYSDATE)
, xla_environment_pkg.g_Usr_Id
, xla_environment_pkg.g_Login_Id
, TRUNC(SYSDATE)
, xla_environment_pkg.g_Prog_Appl_Id
, xla_environment_pkg.g_Prog_Id
, xla_environment_pkg.g_Req_Id
FROM (
SELECT xet.event_id event_id
, 0 line_number
, CASE r
$object_name$
ELSE null
END object_name
, CASE r
$object_type_code$
ELSE null
END object_type_code
, CASE r
$source_application_id$
ELSE null
END source_application_id
, $source_type_code$ source_type_code
, CASE r
$source_code$
ELSE null
END source_code
, CASE r
$source_value$
ELSE null
END source_value
, $source_meaning$ source_meaning
FROM xla_events_gt xet $hdr_tabs$
,(select rownum r from all_objects where rownum <= $source_number$ and owner = p_apps_owner)
WHERE xet.event_date between p_pad_start_date AND p_pad_end_date
AND xet.event_type_code = C_EVENT_TYPE_CODE
$hdr_clauses$
)
;
(p_msg => ''number of header sources inserted = ''||SQL%ROWCOUNT
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
C_INSERT_HDR_SOURCES_CLASS CONSTANT VARCHAR2(10000):='
--
INSERT INTO xla_diag_sources --hdr2
(
event_id
, ledger_id
, sla_ledger_id
, description_language
, object_name
, object_type_code
, line_number
, source_application_id
, source_type_code
, source_code
, source_value
, source_meaning
, created_by
, creation_date
, last_update_date
, last_updated_by
, last_update_login
, program_update_date
, program_application_id
, program_id
, request_id
)
SELECT
event_id
, p_target_ledger_id
, p_sla_ledger_id
, p_language
, object_name
, object_type_code
, line_number
, source_application_id
, source_type_code
, source_code
, SUBSTR(source_value ,1,1996)
, SUBSTR(source_meaning ,1,200)
, xla_environment_pkg.g_Usr_Id
, TRUNC(SYSDATE)
, TRUNC(SYSDATE)
, xla_environment_pkg.g_Usr_Id
, xla_environment_pkg.g_Login_Id
, TRUNC(SYSDATE)
, xla_environment_pkg.g_Prog_Appl_Id
, xla_environment_pkg.g_Prog_Id
, xla_environment_pkg.g_Req_Id
FROM (
SELECT xet.event_id event_id
, 0 line_number
, CASE r
$object_name$
ELSE null
END object_name
, CASE r
$object_type_code$
ELSE null
END object_type_code
, CASE r
$source_application_id$
ELSE null
END source_application_id
, $source_type_code$ source_type_code
, CASE r
$source_code$
ELSE null
END source_code
, CASE r
$source_value$
ELSE null
END source_value
, $source_meaning$ source_meaning
FROM xla_events_gt xet $hdr_tabs$
,(select rownum r from all_objects where rownum <= $source_number$ and owner = p_apps_owner)
WHERE xet.event_date between p_pad_start_date AND p_pad_end_date
AND xet.event_class_code = C_EVENT_CLASS_CODE
$hdr_clauses$
)
;
(p_msg => ''number of header sources inserted = ''||SQL%ROWCOUNT
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
C_INSERT_LINE_SOURCES_EVT CONSTANT VARCHAR2(10000):='
--
INSERT INTO xla_diag_sources --line1
(
event_id
, ledger_id
, sla_ledger_id
, description_language
, object_name
, object_type_code
, line_number
, source_application_id
, source_type_code
, source_code
, source_value
, source_meaning
, created_by
, creation_date
, last_update_date
, last_updated_by
, last_update_login
, program_update_date
, program_application_id
, program_id
, request_id
)
SELECT event_id
, p_target_ledger_id
, p_sla_ledger_id
, p_language
, object_name
, object_type_code
, line_number
, source_application_id
, source_type_code
, source_code
, SUBSTR(source_value,1,1996)
, SUBSTR(source_meaning,1,200)
, xla_environment_pkg.g_Usr_Id
, TRUNC(SYSDATE)
, TRUNC(SYSDATE)
, xla_environment_pkg.g_Usr_Id
, xla_environment_pkg.g_Login_Id
, TRUNC(SYSDATE)
, xla_environment_pkg.g_Prog_Appl_Id
, xla_environment_pkg.g_Prog_Id
, xla_environment_pkg.g_Req_Id
FROM (
SELECT xet.event_id event_id
, $line_number$ line_number
, CASE r
$object_name$
ELSE null
END object_name
, CASE r
$object_type_code$
ELSE null
END object_type_code
, CASE r
$source_application_id$
ELSE null
END source_application_id
, $source_type_code$ source_type_code
, CASE r
$source_code$
ELSE null
END source_code
, CASE r
$source_value$
ELSE null
END source_value
, $source_meaning$ source_meaning
FROM xla_events_gt xet $line_tabs$
,(select rownum r from all_objects where rownum <= $source_number$ and owner = p_apps_owner)
WHERE xet.event_date between p_pad_start_date AND p_pad_end_date
AND xet.event_type_code = C_EVENT_TYPE_CODE
$line_clauses$
)
;
(p_msg => ''number of line sources inserted = ''||SQL%ROWCOUNT
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
C_INSERT_LINE_SOURCES_CLASS CONSTANT VARCHAR2(10000):='
--
INSERT INTO xla_diag_sources --line2
(
event_id
, ledger_id
, sla_ledger_id
, description_language
, object_name
, object_type_code
, line_number
, source_application_id
, source_type_code
, source_code
, source_value
, source_meaning
, created_by
, creation_date
, last_update_date
, last_updated_by
, last_update_login
, program_update_date
, program_application_id
, program_id
, request_id
)
SELECT event_id
, p_target_ledger_id
, p_sla_ledger_id
, p_language
, object_name
, object_type_code
, line_number
, source_application_id
, source_type_code
, source_code
, SUBSTR(source_value,1,1996)
, SUBSTR(source_meaning ,1,200)
, xla_environment_pkg.g_Usr_Id
, TRUNC(SYSDATE)
, TRUNC(SYSDATE)
, xla_environment_pkg.g_Usr_Id
, xla_environment_pkg.g_Login_Id
, TRUNC(SYSDATE)
, xla_environment_pkg.g_Prog_Appl_Id
, xla_environment_pkg.g_Prog_Id
, xla_environment_pkg.g_Req_Id
FROM (
SELECT xet.event_id event_id
, $line_number$ line_number
, CASE r
$object_name$
ELSE null
END object_name
, CASE r
$object_type_code$
ELSE null
END object_type_code
, CASE r
$source_application_id$
ELSE null
END source_application_id
, $source_type_code$ source_type_code
, CASE r
$source_code$
ELSE null
END source_code
, CASE r
$source_value$
ELSE null
END source_value
, $source_meaning$ source_meaning
FROM xla_events_gt xet $line_tabs$
, (select rownum r from all_objects where rownum <= $source_number$ and owner = p_apps_owner)
WHERE xet.event_date between p_pad_start_date AND p_pad_end_date
AND xet.event_class_code = C_EVENT_CLASS_CODE
$line_clauses$
)
;
(p_msg => ''number of line sources inserted = ''||SQL%ROWCOUNT
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
trace(p_msg => 'SQL - DELETE FROM xla_evt_class_sources_gt '
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
DELETE FROM xla_evt_class_sources_gt gt
WHERE gt.application_id = p_application_id
AND gt.entity_code = p_entity_code
AND gt.event_class_code = p_event_class_code
;
(p_msg => '# rows deleted from xla_evt_class_sources_gt = '||SQL%ROWCOUNT
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
PROCEDURE InsertSourcesIntoGtTable (
p_application_id IN NUMBER
, p_entity_code IN VARCHAR2
, p_event_class_code IN VARCHAR2
, p_array_evt_source_index IN xla_cmp_source_pkg.t_array_ByInt
, p_array_application_id IN xla_cmp_source_pkg.t_array_Num
, p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
, p_array_source_type_code IN xla_cmp_source_pkg.t_array_VL1
, p_array_datatype_code IN xla_cmp_source_pkg.t_array_VL1
, p_array_translated_flag IN xla_cmp_source_pkg.t_array_VL1
)
IS
--
l_log_module VARCHAR2(240);
l_log_module := C_DEFAULT_MODULE||'.InsertSourcesIntoGtTable';
(p_msg => 'BEGIN of InsertSourcesIntoGtTable'
,p_level => C_LEVEL_PROCEDURE
,p_module => l_log_module);
(p_msg => 'SQL- Insert Into xla_evt_class_sources_gt '
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
INSERT INTO xla_evt_class_sources_gt
(
application_id
, entity_code
, event_class_code
, source_application_id
, source_code
, source_hash_id
, source_datatype_code
, source_level_code
)
SELECT
p_application_id
, p_entity_code
, p_event_class_code
, xes.source_application_id
, p_array_source_code(Idx)
, p_array_evt_source_index(Idx)
, CASE p_array_datatype_code(Idx)
WHEN 'C' THEN C_VARCHAR2
WHEN 'D' THEN C_DATE
ELSE C_NUMBER
END
, CASE xes.level_code
WHEN 'C' THEN C_BC_LINE
-- Added an extra decode for language column (Dimple)
WHEN 'L' THEN DECODE(p_array_source_code(Idx),'LANGUAGE',C_MLS_LINE,
DECODE(p_array_translated_flag(Idx)
,'Y',C_MLS_LINE
,C_LINE))
WHEN 'H' THEN DECODE(p_array_source_code(Idx),'LANGUAGE',C_MLS_HEADER,
DECODE(p_array_translated_flag(Idx)
,'Y', C_MLS_HEADER
, C_HEADER))
END
--
FROM xla_event_sources xes
WHERE xes.application_id = p_application_id
AND xes.entity_code = p_entity_code
AND xes.event_class_code = p_event_class_code
AND xes.source_code = p_array_source_code(Idx)
AND xes.source_type_code = p_array_source_type_code(Idx)
AND xes.source_application_id = p_array_application_id(Idx)
AND xes.source_type_code = 'S'
AND xes.active_flag = 'Y'
-- added not exists to prevent inserting sources that are already there in GT table (Dimple)
AND not exists (SELECT 'x'
FROM xla_evt_class_sources_gt gt
WHERE gt.application_id = xes.application_id
AND gt.entity_code = xes.entity_code
AND gt.event_class_code = xes.event_class_code
AND gt.source_application_id = xes.source_application_id
AND gt.source_code = xes.source_code)
;
(p_msg => '# rows inserted into xla_evt_class_sources_gt = '||SQL%ROWCOUNT
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
(p_msg => 'END of InsertSourcesIntoGtTable'
,p_level => C_LEVEL_PROCEDURE
,p_module => l_log_module);
(p_location => 'xla_cmp_extract_pkg.InsertSourcesIntoGtTable ');
END InsertSourcesIntoGtTable;
(p_msg => 'SQL- SELECT from xla_evt_class_sources_gt '
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
SELECT gt.source_hash_id
, CASE gt.source_level_code
WHEN C_HEADER THEN 'H'
WHEN C_MLS_HEADER THEN 'H'
ELSE 'L'
END
BULK COLLECT INTO
l_array_evt_source_index
, l_array_evt_source_Level
FROM xla_evt_class_sources_gt gt
WHERE gt.application_id = p_application_id
AND gt.entity_code = p_entity_code
AND gt.event_class_code = p_event_class_code
;
(p_msg => '# rows inserted into xla_evt_class_sources_gt = '||SQL%ROWCOUNT
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
SELECT
gt.extract_object_name
, gt.extract_object_type_code
, nvl(gt.always_populated_flag,C_NOT_ALWAYS_POPULATED)
, nvl(gt.reference_object_flag,C_NOT_REF_OBJ)
, gt.join_condition
, nvl(ro.linked_to_ref_obj_name, ro.object_name)
FROM xla_evt_class_sources_gt gt
, xla_reference_objects ro
WHERE gt.application_id = p_application_id
AND gt.entity_code = p_entity_code
AND gt.event_class_code = p_event_class_code
AND ro.application_id (+)= p_application_id
AND ro.entity_code (+)= p_entity_code
AND ro.event_class_code (+)= p_event_class_code
AND ro.reference_object_name (+)= gt.extract_object_name
UNION
SELECT ro1.reference_object_name
, gt.extract_object_type_code
, nvl(ro1.always_populated_flag,C_NOT_ALWAYS_POPULATED)
, 'Y'
, ro1.join_condition
, nvl(ro1.linked_to_ref_obj_name, ro1.object_name)
FROM xla_evt_class_sources_gt gt
, xla_reference_objects ro
, xla_reference_objects ro1
WHERE gt.application_id = p_application_id
AND gt.entity_code = p_entity_code
AND gt.event_class_code = p_event_class_code
AND ro.application_id = p_application_id
AND ro.entity_code = p_entity_code
AND ro.event_class_code = p_event_class_code
AND ro.reference_object_name = gt.extract_object_name
AND ro1.application_id = p_application_id
AND ro1.entity_code = p_entity_code
AND ro1.event_class_code = p_event_class_code
AND ro1.reference_object_name = ro.linked_to_ref_obj_name
UNION
SELECT eo.object_name
,gt.extract_object_type_code
,nvl(eo.always_populated_flag,C_NOT_ALWAYS_POPULATED)
,'N'
,null
,null
FROM xla_evt_class_sources_gt gt
, xla_reference_objects ro
, xla_extract_objects eo
WHERE gt.application_id = p_application_id
AND gt.entity_code = p_entity_code
AND gt.event_class_code = p_event_class_code
AND ro.application_id = p_application_id
AND ro.entity_code = p_entity_code
AND ro.event_class_code = p_event_class_code
AND ro.reference_object_name = gt.extract_object_name
AND eo.application_id = p_application_id
AND eo.entity_code = p_entity_code
AND eo.event_class_code = p_event_class_code
AND eo.object_name = ro.object_name
;
(p_msg => '# rows selected from xla_evt_class_sources_gt = '||table_cur%ROWCOUNT
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
(p_msg => 'SQL- SELECT from xla_evt_class_sources_gt'
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
SELECT gt.source_hash_id
, gt.extract_object_name
, gt.extract_object_type_code
BULK COLLECT INTO
l_array_source_hash_id
, l_array_object_name
, l_array_object_type
FROM xla_evt_class_sources_gt gt
WHERE gt.application_id = p_application_id
AND gt.entity_code = p_entity_code
AND gt.event_class_code = p_event_class_code
;
(p_msg => '# rows selected from xla_evt_class_sources_gt = '||SQL%ROWCOUNT
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
InsertSourcesIntoGtTable (
p_application_id
, p_entity_code
, p_event_class_code
, l_array_evt_source_index
, l_array_application_id
, l_array_source_code
, l_array_source_type_code
, l_array_datatype_code
, l_array_translated_flag
);
select alc_enabled_flag
from xla_subledgers
where application_id = p_application_id;
select alc_enabled_flag
into l_alc_enabled_flag
from xla_subledgers
where application_id = g_application_id;
FUNCTION GenerateInsertStm(
p_array_table_name IN xla_cmp_source_pkg.t_array_VL30
, p_array_table_type IN xla_cmp_source_pkg.t_array_VL30
, p_array_table_index IN xla_cmp_source_pkg.t_array_ByInt
, p_array_table_hash IN xla_cmp_source_pkg.t_array_VL30
, p_array_ref_obj_flag IN xla_cmp_source_pkg.t_array_VL1
, p_array_populated_flag IN xla_cmp_source_pkg.t_array_VL1
--
, p_array_source_index IN xla_cmp_source_pkg.t_array_ByInt
, p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
, p_array_application_id IN xla_cmp_source_pkg.t_array_Num
, p_array_source_type_code IN xla_cmp_source_pkg.t_array_VL1
, p_array_flex_value_set_id IN xla_cmp_source_pkg.t_array_Num
, p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
, p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
--
, p_level IN VARCHAR2
, p_procedure IN VARCHAR2
)
RETURN CLOB
IS
--
C_LINE_NUMBER CONSTANT VARCHAR2(100):= '$tab$.line_number';
l_log_module := C_DEFAULT_MODULE||'.GenerateInsertStm';
(p_msg => 'BEGIN of GenerateInsertStm'
,p_level => C_LEVEL_PROCEDURE
,p_module => l_log_module);
l_sql_statement := C_INSERT_HDR_SOURCES_EVT;
l_sql_statement := C_INSERT_HDR_SOURCES_CLASS;
l_sql_statement := C_INSERT_LINE_SOURCES_EVT;
l_sql_statement := C_INSERT_LINE_SOURCES_CLASS;
(p_msg => 'END of GenerateInsertStm'
,p_level => C_LEVEL_PROCEDURE
,p_module => l_log_module);
(p_location => 'xla_cmp_extract_pkg.GenerateInsertStm ');
END GenerateInsertStm;
FUNCTION GenerateInsertHdrSources (
--
p_array_table_name IN xla_cmp_source_pkg.t_array_VL30
, p_array_parent_table_index IN xla_cmp_source_pkg.t_array_ByInt
, p_array_table_hash IN xla_cmp_source_pkg.t_array_VL30
, p_array_table_type IN xla_cmp_source_pkg.t_array_VL30
, p_array_populated_flag IN xla_cmp_source_pkg.t_array_VL1
--
, p_array_ref_obj_flag IN xla_cmp_source_pkg.t_array_vl1
, p_array_join_condition IN xla_cmp_source_pkg.t_array_vl2000
--
, p_array_h_source_index IN xla_cmp_source_pkg.t_array_ByInt
, p_array_h_table_index IN xla_cmp_source_pkg.t_array_ByInt
--
, p_array_h_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
, p_array_h_mls_table_index IN xla_cmp_source_pkg.t_array_ByInt
--
, p_array_application_id IN xla_cmp_source_pkg.t_array_Num
, p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
, p_array_source_type_code IN xla_cmp_source_pkg.t_array_VL1
, p_array_flex_value_set_id IN xla_cmp_source_pkg.t_array_Num
, p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
, p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
--
, p_procedure IN VARCHAR2
)
RETURN CLOB
IS
--
l_sql_statement CLOB;
l_log_module := C_DEFAULT_MODULE||'.GenerateInsertHdrSources';
(p_msg => 'BEGIN of GenerateInsertHdrSources'
,p_level => C_LEVEL_PROCEDURE
,p_module => l_log_module);
(p_msg => 'CALL GenerateInsertStm()'
,p_level => C_LEVEL_STATEMENT
,p_module => l_log_module);
l_sql_statement := GenerateInsertStm(
p_array_table_name => p_array_table_name
, p_array_table_type => p_array_table_type
, p_array_table_index => l_array_table_index
, p_array_table_hash => p_array_table_hash
, p_array_ref_obj_flag => p_array_ref_obj_flag
, p_array_populated_flag => p_array_populated_flag
--
, p_array_source_index => l_array_source_index
, p_array_source_code => p_array_source_code
, p_array_application_id => p_array_application_id
, p_array_source_type_code => p_array_source_type_code
, p_array_flex_value_set_id => p_array_flex_value_set_id
, p_array_lookup_type => p_array_lookup_type
, p_array_view_application_id => p_array_view_application_id
--
, p_level => C_HEADER
, p_procedure => p_procedure
);
(p_msg => 'END of GenerateInsertHdrSources'
,p_level => C_LEVEL_PROCEDURE
,p_module => l_log_module);
(p_location => 'xla_cmp_extract_pkg.GenerateInsertHdrSources ');
END GenerateInsertHdrSources;
FUNCTION GenerateInsertLineSources (
--
p_array_table_name IN xla_cmp_source_pkg.t_array_VL30
, p_array_parent_table_index IN xla_cmp_source_pkg.t_array_ByInt
, p_array_table_hash IN xla_cmp_source_pkg.t_array_VL30
, p_array_table_type IN xla_cmp_source_pkg.t_array_VL30
, p_array_populated_flag IN xla_cmp_source_pkg.t_array_VL1
--
, p_array_ref_obj_flag IN xla_cmp_source_pkg.t_array_VL1
, p_array_join_condition IN xla_cmp_source_pkg.t_array_VL2000
--
, p_array_l_source_index IN xla_cmp_source_pkg.t_array_ByInt
, p_array_l_table_index IN xla_cmp_source_pkg.t_array_ByInt
--
, p_array_l_mls_source_index IN xla_cmp_source_pkg.t_array_ByInt
, p_array_l_mls_table_index IN xla_cmp_source_pkg.t_array_ByInt
--
, p_array_application_id IN xla_cmp_source_pkg.t_array_Num
, p_array_source_code IN xla_cmp_source_pkg.t_array_VL30
, p_array_source_type_code IN xla_cmp_source_pkg.t_array_VL1
, p_array_flex_value_set_id IN xla_cmp_source_pkg.t_array_Num
, p_array_lookup_type IN xla_cmp_source_pkg.t_array_VL30
, p_array_view_application_id IN xla_cmp_source_pkg.t_array_Num
--
,p_procedure IN VARCHAR2
)
RETURN CLOB
IS
--
l_sql_statement CLOB;
l_log_module := C_DEFAULT_MODULE||'.GenerateInsertLineSources';
(p_msg => 'BEGIN of GenerateInsertLineSources'
,p_level => C_LEVEL_PROCEDURE
,p_module => l_log_module);
l_sql_statement := GenerateInsertStm(
p_array_table_name => p_array_table_name
, p_array_table_type => p_array_table_type
, p_array_table_index => l_array_table_index
, p_array_table_hash => p_array_table_hash
, p_array_ref_obj_flag => p_array_ref_obj_flag
, p_array_populated_flag => p_array_populated_flag
--
, p_array_source_index => l_array_source_index
, p_array_source_code => p_array_source_code
, p_array_application_id => p_array_application_id
, p_array_source_type_code => p_array_source_type_code
, p_array_flex_value_set_id => p_array_flex_value_set_id
, p_array_lookup_type => p_array_lookup_type
, p_array_view_application_id => p_array_view_application_id
--
, p_level => C_LINE
, p_procedure => p_procedure
);
(p_msg => 'END of GenerateInsertLineSources'
,p_level => C_LEVEL_PROCEDURE
,p_module => l_log_module);
(p_location => 'xla_cmp_extract_pkg.GenerateInsertLineSources ');
END GenerateInsertLineSources;