3: --
4: -- Setup Datatypes
5: --
6: type t_file_list_rec is record
7: (file_detail_id pay_file_details.file_detail_id%type,
8: file_type pay_file_details.file_type%type,
9: int_file_name varchar2(30),
10: position number,
11: nxtptr number,
4: -- Setup Datatypes
5: --
6: type t_file_list_rec is record
7: (file_detail_id pay_file_details.file_detail_id%type,
8: file_type pay_file_details.file_type%type,
9: int_file_name varchar2(30),
10: position number,
11: nxtptr number,
12: prvptr number,
70: g_char_set := hr_mx_utility.get_IANA_charset;
71:
72: select file_detail_id
73: into file_id
74: from pay_file_details
75: where source_id=p_source_id
76: and source_type=p_source_type
77: and internal_file_name=p_int_file_name
78: and sequence=p_sequence;
80: g_file_list(file_id).file_detail_id := file_id;
81:
82: select blob_file_fragment
83: into g_file_list(file_id).file_locator
84: from pay_file_details
85: where file_detail_id=file_id
86: for update of blob_file_fragment;
87:
88:
94: end if;
95:
96: exception
97: when no_data_found then
98: select pay_file_details_s.nextval
99: into file_id
100: from dual;
101: --
102: g_file_list(file_id).file_detail_id := file_id;
104: g_file_list(file_id).file_type := p_file_type;
105: g_file_list(file_id).int_file_name := p_int_file_name;
106: g_file_list(file_id).sequence := p_sequence;
107: --
108: insert into pay_file_details
109: (file_detail_id,
110: source_id,
111: source_type,
112: file_location,
127: );
128:
129: select blob_file_fragment
130: into g_file_list(file_id).file_locator
131: from pay_file_details
132: where file_detail_id = file_id
133: for update of blob_file_fragment;
134:
135: dbms_lob.open(g_file_list(file_id).file_locator, DBMS_LOB.LOB_READWRITE);
286: begin
287: --
288: select file_fragment
289: into g_tmp_clob
290: from pay_file_details
291: where file_detail_id = p_file_id;
292: --
293: dbms_lob.open(g_tmp_clob, DBMS_LOB.LOB_READONLY);
294: --
299: begin
300: --
301: select blob_file_fragment
302: into g_tmp_blob
303: from pay_file_details
304: where file_detail_id = p_file_id;
305: --
306: dbms_lob.open(g_tmp_blob, DBMS_LOB.LOB_READONLY);
307:
407: p_text out nocopy varchar2
408: )
409: is
410: l_size number;
411: l_file_type pay_file_details.file_type%type;
412: l_raw_text raw(8000);
413: begin
414: --
415:
481: p_text out nocopy raw
482: )
483: is
484: l_size number;
485: l_file_type pay_file_details.file_type%type;
486: raw_data raw(8000);
487: begin
488: --
489: if (g_tmp_blob is null) then
682: begin
683: --
684: select file_fragment
685: into l_clob
686: from pay_file_details
687: where file_detail_id = p_file_id;
688: --
689: if l_clob is null then
690: p_size := 0;
728: begin
729: --
730: select file_fragment
731: into l_clob
732: from pay_file_details
733: where file_detail_id = p_file_id;
734: --
735: if l_clob is null then
736: return null;
757: begin
758: --
759: select blob_file_fragment
760: into l_blob
761: from pay_file_details
762: where file_detail_id = p_file_id;
763: --
764: if l_blob is null then
765: return null;