The following lines contain the word 'select', 'insert', 'update' or 'delete':
g_insert_table INSERT_TABLE_TYPE;
SELECT mapping_type, mapped_to_name, column_name
FROM hr_du_column_mappings
WHERE api_module_id = p_api_module_id;
hr_du_utility.message('INFO','Select Statement Start ' , 15);
SELECT
PVAL001, PVAL002, PVAL003, PVAL004 , PVAL005 , PVAL006,
PVAL007, PVAL008, PVAL009, PVAL010 , PVAL011, PVAL012,
PVAL013, PVAL014, PVAL015, PVAL016 , PVAL017, PVAL018,
PVAL019, PVAL020, PVAL021, PVAL022, PVAL023, PVAL024,
PVAL025, PVAL026, PVAL027, PVAL028, PVAL029, PVAL030,
PVAL031, PVAL032, PVAL033, PVAL034, PVAL035, PVAL036,
PVAL037, PVAL038, PVAL039, PVAL040, PVAL041, PVAL042,
PVAL043, PVAL044, PVAL045, PVAL046, PVAL047, PVAL048,
PVAL049, PVAL050, PVAL051, PVAL052, PVAL053, PVAL054,
PVAL055, PVAL056, PVAL057, PVAL058, PVAL059, PVAL060,
PVAL061, PVAL062, PVAL063, PVAL064, PVAL065, PVAL066,
PVAL067, PVAL068, PVAL069, PVAL070, PVAL071, PVAL072,
PVAL073, PVAL074, PVAL075, PVAL076, PVAL077, PVAL078,
PVAL079, PVAL080, PVAL081, PVAL082, PVAL083, PVAL084,
PVAL085, PVAL086, PVAL087, PVAL088, PVAL089, PVAL090,
PVAL091, PVAL092, PVAL093, PVAL094, PVAL095, PVAL096,
PVAL097, PVAL098, PVAL099, PVAL100, PVAL101, PVAL102,
PVAL103, PVAL104, PVAL105,PVAL106, PVAL107, PVAL108,
PVAL109, PVAL110, PVAL111,PVAL112, PVAL113, PVAL114,
PVAL115, PVAL116, PVAL117,PVAL118, PVAL119, PVAL120,
PVAL121, PVAL122, PVAL123,PVAL124, PVAL125, PVAL126,
PVAL127, PVAL128, PVAL129,PVAL130, PVAL131, PVAL132,
PVAL133, PVAL134, PVAL135,PVAL136, PVAL137, PVAL138,
PVAL139, PVAL140, PVAL141,PVAL142, PVAL143, PVAL144,
PVAL145, PVAL146, PVAL147,PVAL148, PVAL149, PVAL150,
PVAL151, PVAL152, PVAL153,PVAL154, PVAL155, PVAL156,
PVAL157, PVAL158, PVAL159,PVAL160, PVAL161, PVAL162,
PVAL163, PVAL164, PVAL165,PVAL166, PVAL167, PVAL168,
PVAL169, PVAL170, PVAL171,PVAL172, PVAL173, PVAL174,
PVAL175, PVAL176, PVAL177,PVAL178, PVAL179, PVAL180,
PVAL181, PVAL182, PVAL183,PVAL184, PVAL185, PVAL186,
PVAL187, PVAL188, PVAL189,PVAL190, PVAL191, PVAL192,
PVAL193, PVAL194, PVAL195,PVAL196, PVAL197, PVAL198,
PVAL199, PVAL200, PVAL201,PVAL202, PVAL203, PVAL204,
PVAL205, PVAL206, PVAL207,PVAL208, PVAL209, PVAL210,
PVAL211, PVAL212, PVAL213,PVAL214, PVAL215, PVAL216,
PVAL217, PVAL218, PVAL219,PVAL220, PVAL221, PVAL222,
PVAL223, PVAL224, PVAL225,PVAL226, PVAL227, PVAL228,
PVAL229, PVAL230
INTO
g_column_headings(1), g_column_headings(2), g_column_headings(3),
g_column_headings(4), g_column_headings(5), g_column_headings(6),
g_column_headings(7), g_column_headings(8), g_column_headings(9),
g_column_headings(10), g_column_headings(11), g_column_headings(12),
g_column_headings(13), g_column_headings(14), g_column_headings(15),
g_column_headings(16), g_column_headings(17), g_column_headings(18),
g_column_headings(19), g_column_headings(20), g_column_headings(21),
g_column_headings(22), g_column_headings(23), g_column_headings(24),
g_column_headings(25), g_column_headings(26), g_column_headings(27),
g_column_headings(28), g_column_headings(29), g_column_headings(30),
g_column_headings(31), g_column_headings(32), g_column_headings(33),
g_column_headings(34), g_column_headings(35), g_column_headings(36),
g_column_headings(37), g_column_headings(38), g_column_headings(39),
g_column_headings(40), g_column_headings(41), g_column_headings(42),
g_column_headings(43), g_column_headings(44), g_column_headings(45),
g_column_headings(46), g_column_headings(47), g_column_headings(48),
g_column_headings(49), g_column_headings(50), g_column_headings(51),
g_column_headings(52), g_column_headings(53), g_column_headings(54),
g_column_headings(55), g_column_headings(56), g_column_headings(57),
g_column_headings(58), g_column_headings(59), g_column_headings(60),
g_column_headings(61), g_column_headings(62), g_column_headings(63),
g_column_headings(64), g_column_headings(65), g_column_headings(66),
g_column_headings(67), g_column_headings(68), g_column_headings(69),
g_column_headings(70), g_column_headings(71), g_column_headings(72),
g_column_headings(73), g_column_headings(74), g_column_headings(75),
g_column_headings(76), g_column_headings(77), g_column_headings(78),
g_column_headings(79), g_column_headings(80), g_column_headings(81),
g_column_headings(82), g_column_headings(83), g_column_headings(84),
g_column_headings(85), g_column_headings(86), g_column_headings(87),
g_column_headings(88), g_column_headings(89), g_column_headings(90),
g_column_headings(91), g_column_headings(92), g_column_headings(93),
g_column_headings(94), g_column_headings(95), g_column_headings(96),
g_column_headings(97), g_column_headings(98), g_column_headings(99),
g_column_headings(100),g_column_headings(101),g_column_headings(102),
g_column_headings(103),g_column_headings(104),g_column_headings(105),
g_column_headings(106),g_column_headings(107),g_column_headings(108),
g_column_headings(109),g_column_headings(110),g_column_headings(111),
g_column_headings(112),g_column_headings(113),g_column_headings(114),
g_column_headings(115),g_column_headings(116),g_column_headings(117),
g_column_headings(118),g_column_headings(119),g_column_headings(120),
g_column_headings(121),g_column_headings(122),g_column_headings(123),
g_column_headings(124),g_column_headings(125),g_column_headings(126),
g_column_headings(127),g_column_headings(128),g_column_headings(129),
g_column_headings(130),g_column_headings(131),g_column_headings(132),
g_column_headings(133),g_column_headings(134),g_column_headings(135),
g_column_headings(136),g_column_headings(137),g_column_headings(138),
g_column_headings(139),g_column_headings(140),g_column_headings(141),
g_column_headings(142),g_column_headings(143),g_column_headings(144),
g_column_headings(145),g_column_headings(146),g_column_headings(147),
g_column_headings(148),g_column_headings(149),g_column_headings(150),
g_column_headings(151),g_column_headings(152),g_column_headings(153),
g_column_headings(154),g_column_headings(155),g_column_headings(156),
g_column_headings(157),g_column_headings(158),g_column_headings(159),
g_column_headings(160),g_column_headings(161),g_column_headings(162),
g_column_headings(163),g_column_headings(164),g_column_headings(165),
g_column_headings(166),g_column_headings(167),g_column_headings(168),
g_column_headings(169),g_column_headings(170),g_column_headings(171),
g_column_headings(172),g_column_headings(173),g_column_headings(174),
g_column_headings(175),g_column_headings(176),g_column_headings(177),
g_column_headings(178),g_column_headings(179),g_column_headings(180),
g_column_headings(181),g_column_headings(182),g_column_headings(183),
g_column_headings(184),g_column_headings(185),g_column_headings(186),
g_column_headings(187),g_column_headings(188),g_column_headings(189),
g_column_headings(190),g_column_headings(191),g_column_headings(192),
g_column_headings(193),g_column_headings(194),g_column_headings(195),
g_column_headings(196),g_column_headings(197),g_column_headings(198),
g_column_headings(199),g_column_headings(200),g_column_headings(201),
g_column_headings(202),g_column_headings(203),g_column_headings(204),
g_column_headings(205),g_column_headings(206),g_column_headings(207),
g_column_headings(208),g_column_headings(209),g_column_headings(210),
g_column_headings(211),g_column_headings(212),g_column_headings(213),
g_column_headings(214),g_column_headings(215),g_column_headings(216),
g_column_headings(217),g_column_headings(218),g_column_headings(219),
g_column_headings(220),g_column_headings(221),g_column_headings(222),
g_column_headings(223),g_column_headings(224),g_column_headings(225),
g_column_headings(226),g_column_headings(227),g_column_headings(228),
g_column_headings(229),g_column_headings(230)
FROM HR_DU_UPLOAD_LINES
WHERE UPLOAD_LINE_ID = p_line_id;
hr_du_utility.message('INFO','Select Statement Ends ' , 20);
SELECT parent_api_module_id
FROM hr_du_column_mappings
WHERE api_module_id = p_api_module_id
AND mapped_to_name = p_mapped_name;
SELECT des.descriptor
FROM hr_api_modules api,
hr_du_descriptors des,
hr_du_upload_headers head
WHERE api.api_module_id = l_parent_api_module_id
AND head.upload_header_id = p_upload_header_id
AND head.upload_id = des.upload_id
AND upper(api.module_name) = upper(des.descriptor);
SELECT parent_api_module_id
FROM hr_du_column_mappings
WHERE mapping_type = 'D'
AND parent_api_module_id IS NOT null
AND column_name = l_pval_field;
SELECT parent_table
FROM hr_du_column_mappings
WHERE mapping_type = 'D'
AND parent_table is not null
AND column_name = l_pval_field;
g_insert_table(p_array_pos).r_string_apis := l_string_apis;
g_insert_table(p_array_pos).r_api_PVALS := l_api_PVALS;
g_insert_table(p_array_pos).r_generic_pval := l_generic_pval;
l_size := g_insert_table.count;
IF g_insert_table(i).r_ref_Col_apis IS NOT NULL THEN
--The next step is to see if there are any referencing columns
--associated with the api (in R_REF_COL_APIS)
l_new_string := null;
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(i).r_ref_Col_apis);
hr_du_di_insert.WORDS_ON_LINE(g_insert_table(i).r_ref_Col_apis);
hr_du_utility.message('INFO', g_insert_table(i).r_ref_Col_apis , 10);
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(i).r_ref_Col_apis);
l_reference_pval := hr_du_di_insert.Return_Word(
g_insert_table(i).r_ref_Col_apis, j);
IF l_reference_pval = g_insert_table(k).r_api_id THEN
l_new_string := l_new_string || k || ',';
g_insert_table(i).r_ref_Col_apis := l_new_string;
SELECT parent_api_module_id
FROM hr_du_column_mappings
WHERE api_module_id = p_api_module_id
AND mapped_to_name = p_reference_string;
l_dyn_sql := 'SELECT ' || p_field_name ||' FROM ' || p_table ||
' WHERE ' || p_field_pk || ' = ' || p_record_id;
SELECT MAX(to_number(PVAL001))
FROM hr_du_upload_lines
WHERE UPLOAD_HEADER_ID IN (SELECT upload_header_id
FROM hr_du_upload_lines
WHERE upload_line_id = p_upload_line_id)
AND LINE_TYPE = 'D';
SELECT mapped_to_name
FROM hr_du_column_mappings
WHERE api_module_id = p_api_module_id
AND mapping_type = p_mapping_type
AND upper(column_name) = upper(p_pval_field);
PROCEDURE INSERT_API_MODULE_IDS(p_upload_id IN NUMBER)
IS
CURSOR csr_apis IS
SELECT api.api_module_id, des2.upload_header_id
FROM hr_du_descriptors des1,
hr_du_descriptors des2,
hr_du_descriptors des3,
hr_api_modules api
WHERE des1.upload_id = p_upload_id
and upper(des1.descriptor) = 'API'
and des1.descriptor_type = 'D'
and des1.value IS NOT null
and upper(des2.descriptor) = 'PROCESS ORDER'
and des2.descriptor_type = 'D'
and upper(des3.descriptor) = 'REFERENCING'
and des3.value = 'PC'
and des1.upload_header_id = des2.upload_header_id
and des1.upload_header_id = des3.upload_header_id
and upper(des1.value) = api.module_name
ORDER BY des2.value;
SELECT value
FROM hr_du_descriptors
WHERE upload_id = p_upload_id
and upper(descriptor) = 'API'
and descriptor_type = 'D';
'entry:hr_du_dp_pc_conversion.insert_api_module_ids', 5);
hr_du_di_insert.g_current_delimiter := ',';
g_insert_table(l_counter).r_api_id := l_api_module_id;
create_insert_string(l_api_module_id, l_upload_header_id, l_counter);
'exit:hr_du_dp_pc_conversion.insert_api_module_ids', 15);
hr_du_utility.error(SQLCODE,'hr_du_dp_pc_conversion.insert_api_module_ids'
,l_fatal_error_message, 'R');
hr_du_utility.error(SQLCODE, 'hr_du_dp_pc_conversion.insert_api_module_ids'
,'(none)', 'R');
END INSERT_API_MODULE_IDS;
PROCEDURE CREATE_INSERT_STRING(p_api_module_id IN NUMBER,
p_upload_header_id IN NUMBER,
p_array_pos IN NUMBER)
IS
e_fatal_error EXCEPTION;
SELECT UPLOAD_LINE_ID
FROM hr_du_upload_lines
WHERE upload_header_id = p_upload_header_id
AND LINE_TYPE = 'C';
SELECT DI_LINE_NUMBER
FROM hr_du_upload_lines
WHERE upload_line_id = l_line_id;
SELECT des.value
FROM hr_api_modules api,
hr_du_descriptors des,
hr_du_upload_headers head
WHERE api.api_module_id = p_api_module_id
AND head.upload_header_id = p_upload_header_id
AND head.upload_id = des.upload_id
AND upper(api.module_name) = upper(des.descriptor);
'entry:hr_du_dp_pc_conversion.create_insert_string', 5);
UPDATE hr_du_upload_lines
SET status = 'S'
WHERE upload_line_id = l_line_id;
g_insert_table(p_array_pos).r_none_ref_PVAL := l_pval_string;
g_insert_table(p_array_pos).r_ref_PVAL := l_pval_reference;
g_insert_table(p_array_pos).r_id_curval := l_id_currval;
g_insert_table(p_array_pos).r_ref_Col_Names := l_reference_string;
g_insert_table(p_array_pos).r_ref_Col_apis := l_api_module_id_string;
UPDATE hr_du_upload_lines
SET status = 'C'
WHERE upload_line_id = l_line_id;
'exit:hr_du_dp_pc_conversion.create_insert_string', 50);
hr_du_utility.error(SQLCODE,'hr_du_dp_pc_conversion.create_insert_string'
,l_fatal_error_message, 'R');
hr_du_utility.error(SQLCODE,'hr_du_dp_pc_conversion.create_insert_string'
,'(none)', 'R');
END CREATE_INSERT_STRING;
SELECT desc1.UPLOAD_HEADER_ID
FROM hr_du_descriptors desc1,
hr_du_descriptors desc2,
hr_du_descriptors desc3
WHERE upper(desc1.DESCRIPTOR) = 'STARTING POINT'
AND upper(desc1.VALUE) = 'YES'
AND desc1.upload_id = p_upload_id
AND upper(desc2.DESCRIPTOR) = 'REFERENCING'
AND upper(desc2.VALUE) = 'PC'
AND upper(desc3.DESCRIPTOR) = 'API'
AND upper(desc3.VALUE) IS NOT NULL
AND desc2.upload_header_id = desc1.upload_header_id
AND desc3.upload_header_id = desc1.upload_header_id;
SELECT api_module_id
FROM hr_du_upload_headers
WHERE upload_header_id = l_temp_upload_header;
SELECT to_number(PVAL001)
FROM hr_du_upload_lines
WHERE upload_line_id = l_upload_line_id;
l_table_size := g_insert_table.count;
l_api_module_id := g_insert_table(i).r_api_id;
SELECT line.upload_line_id, line.upload_header_id
INTO l_upload_line_id, l_upload_header_id
FROM hr_du_upload_lines line,
hr_du_upload_headers head
WHERE head.upload_id = p_upload_id
AND head.api_module_id = l_api_module_id
AND line.upload_header_id = head.upload_header_id
AND line.status = 'NS'
AND line.reference_type = 'PC'
AND line.line_type = 'D'
AND rownum < 2; --only gets one row
l_api_module_id := g_insert_table(j).r_api_id;
SELECT line.upload_line_id, line.upload_header_id
INTO l_upload_line_id, l_upload_header_id
FROM hr_du_upload_lines line,
hr_du_upload_headers head
WHERE head.upload_id = p_upload_id
AND head.api_module_id = l_api_module_id
AND line.upload_header_id = head.upload_header_id
AND line.status = 'NS'
AND line.reference_type = 'PC'
AND line.line_type = 'D'
AND rownum < 2; --only gets one row
SELECT UPLOAD_LINE_ID
FROM hr_du_upload_lines
WHERE upload_header_id = p_upload_header_id
AND PVAL001 = to_char(p_target_ID)
AND REFERENCE_TYPE = 'PC';
' in API ' || g_insert_table(p_target_api_module).r_api_id ||
'. Referencing column in other file has this invalid reference';
UPDATE hr_du_upload_lines
SET status = 'S'
WHERE upload_line_id = l_upload_line_id;
Select HR_DU_UPLOAD_LINES_S.nextval
INTO l_line_id
FROM dual;
Select ORIGINAL_UPLOAD_HEADER_ID
INTO l_original_upload_header_id
FROM hr_du_upload_lines
WHERE upload_line_id = l_upload_line_id;
l_built_up_string1 := 'INSERT INTO hr_du_upload_lines( ' ||
' UPLOAD_LINE_ID, UPLOAD_HEADER_ID, BATCH_LINE_ID, ' ||
' STATUS, REFERENCE_TYPE, LINE_TYPE, LAST_UPDATE_DATE, ' ||
' LAST_UPDATED_BY, LAST_UPDATE_LOGIN, CREATED_BY, CREATION_DATE, ' ||
' ORIGINAL_UPLOAD_HEADER_ID, PVAL001,' ||
g_insert_table(p_target_api_module).r_none_ref_PVAL || ' ) SELECT '
|| l_line_id || ',' ||
p_upload_header_id || ',' ||
'null,' ||
'''S'',' ||
'''CP'',' ||
'''D'',';
( g_insert_table(p_target_api_module).r_id_curval + 1) ||
',' || g_insert_table(p_target_api_module).r_none_ref_PVAL ||
' FROM hr_du_upload_lines ' ||
' WHERE upload_line_id = ' || l_upload_line_id;
SELECT ' to_date(''' || to_char(sysdate, 'YYYY/MM/DD') ||
''' , ''YYYY/MM/DD'' ) '
INTO l_date_string
FROM dual;
g_insert_table(p_target_api_module).r_id_curval :=
g_insert_table(p_target_api_module).r_id_curval + 1;
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters
(g_insert_table(p_target_api_module).r_ref_Col_apis);
hr_du_di_insert.WORDS_ON_LINE(g_insert_table
(p_target_api_module).r_ref_Col_apis);
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(p_target_api_module).r_ref_PVAL);
l_reference_pval := hr_du_di_insert.Return_Word(
g_insert_table(p_target_api_module).r_ref_PVAL, i);
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(p_target_api_module).r_ref_Col_apis);
l_target_api_module := hr_du_di_insert.Return_Word(
g_insert_table(p_target_api_module).r_ref_Col_apis, i);
l_built_up_string1 := 'SELECT head.upload_header_id '||
'FROM hr_du_upload_headers head, ' ||
'hr_du_descriptors des '||
'WHERE head.upload_id = ' || p_upload_id ||
' AND head.api_module_id = ' ||
g_insert_table(l_target_api_module).r_api_id ||
'AND des.upload_header_id = head.upload_header_id ' ||
'AND des.descriptor = ''API'' ' ||
'AND des.value IS NOT NULL';
PROCESS_LINE(g_insert_table(p_target_api_module).r_id_curval,
p_target_api_module, l_cell_value, l_target_api_module,
l_upload_header_id, p_upload_id);
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(p_target_api_module).r_string_apis);
l_number_references := hr_du_di_insert.WORDS_ON_LINE(
g_insert_table(p_target_api_module).r_string_apis);
g_insert_table(p_target_api_module).r_string_apis ,50);
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(p_target_api_module).r_string_apis);
l_single_api_module := hr_du_di_insert.Return_Word(
g_insert_table(p_target_api_module).r_string_apis, j);
g_insert_table(p_prev_table_number).r_api_id THEN
--
--Recalls the pval*** in the PL/SQL table so the data can be stored
--in the correct position in the UPLOAD_LINE
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(p_target_api_module).R_API_PVALS);
l_single_pval := hr_du_di_insert.Return_Word(
g_insert_table(p_target_api_module).R_API_PVALS, j);
l_built_up_string1 := 'update HR_DU_UPLOAD_LINES SET ' ||
l_single_pval || ' = ''' || p_prev_upload_line_id ||
''' WHERE upload_line_id = ' || l_line_id;
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(p_target_api_module).r_string_apis);
l_single_api_module := hr_du_di_insert.Return_Word(
g_insert_table(p_target_api_module).r_string_apis, j);
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(p_target_api_module).R_API_PVALS);
l_single_pval := hr_du_di_insert.Return_Word(
g_insert_table(p_target_api_module).R_API_PVALS, j);
hr_du_di_insert.g_delimiter_count := hr_du_di_insert.Num_Delimiters(
g_insert_table(p_target_api_module).r_generic_pval);
l_generic_pval := hr_du_di_insert.Return_Word(
g_insert_table(p_target_api_module).r_generic_pval, j);
l_built_up_string3 := 'update HR_DU_UPLOAD_LINES SET ' ||
l_single_pval || ' = ''' || p_prev_upload_line_id
|| ''',' || l_generic_pval || ' = ''' ||
g_insert_table(p_prev_table_number).r_api_id ||
''' WHERE upload_line_id = ' || l_line_id;
UPDATE hr_du_upload_lines
SET status = 'C'
WHERE upload_line_id = l_upload_line_id;
UPDATE hr_du_upload_lines
SET status = 'C'
WHERE upload_line_id = l_line_id;
DELETE FROM HR_DU_UPLOAD_LINES
WHERE UPLOAD_HEADER_ID IN (SELECT head.upload_header_id
FROM hr_du_upload_headers head,
hr_du_descriptors des
WHERE head.upload_id = p_upload_id
AND head.upload_header_id = des.upload_header_id
AND upper(des.descriptor) = 'REFERENCING'
AND upper(des.value) = 'PC')
AND REFERENCE_TYPE = 'CP';
UPDATE hr_du_upload_lines
SET status = 'NS'
WHERE UPLOAD_HEADER_ID IN (SELECT upload_header_id
FROM hr_du_upload_headers
WHERE upload_id = p_upload_id)
AND status <> 'NS';