[Home] [Help]
PACKAGE BODY: APPS.PO_PDOI_TYPES
Source
1 PACKAGE BODY PO_PDOI_TYPES AS
2 /* $Header: PO_PDOI_TYPES.plb 120.14.12020000.3 2013/02/10 15:52:36 vegajula ship $ */
3
4 d_pkg_name CONSTANT VARCHAR2(50) :=
5 PO_LOG.get_package_base('PO_PDOI_TYPES');
6
7 --------------------------------------------------------------------------
8 ---------------------- PRIVATE PROCEDURES PROTOTYPE ----------------------
9 --------------------------------------------------------------------------
10
11 PROCEDURE fill_tbl
12 ( p_num_records IN NUMBER,
13 x_tbl IN OUT NOCOPY PO_TBL_NUMBER
14 );
15
16 PROCEDURE fill_tbl
17 ( p_num_records IN NUMBER,
18 x_tbl IN OUT NOCOPY PO_TBL_DATE
19 );
20
21
22 PROCEDURE fill_tbl
23 ( p_num_records IN NUMBER,
24 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR1
25 );
26
27 PROCEDURE fill_tbl
28 ( p_num_records IN NUMBER,
29 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR5
30 );
31
32 PROCEDURE fill_tbl
33 ( p_num_records IN NUMBER,
34 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR30
35 );
36
37 PROCEDURE fill_tbl
38 ( p_num_records IN NUMBER,
39 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR100
40 );
41
42 PROCEDURE fill_tbl
43 ( p_num_records IN NUMBER,
44 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR2000
45 );
46
47 --CLM PDOI Integration
48 PROCEDURE fill_tbl
49 ( p_num_records IN NUMBER,
50 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR240
51 );
52
53 --------------------------------------------------------------------------
54 ---------------------- PUBLIC PROCEDURES ---------------------------------
55 --------------------------------------------------------------------------
56
57
58 -----------------------------------------------------------------------
59 --Start of Comments
60 --Name: fill_all_headers_attr
61 --Function:
62 -- Initialize all the pl/sql tables in the record type. It also sets
63 -- the record count
64 --Parameters:
65 --IN:
66 -- p_num_records
67 -- Number of entries for each pl/sql tables in the record type
68 --IN OUT:
69 -- x_headers
70 -- Trecord of tables holding header information
71 --OUT:
72 --End of Comments
73 ------------------------------------------------------------------------
74 PROCEDURE fill_all_headers_attr
75 ( p_num_records IN NUMBER,
76 x_headers IN OUT NOCOPY headers_rec_type
77 ) IS
78
79 d_api_name CONSTANT VARCHAR2(30) := 'fill_all_headers_attr';
80 d_module CONSTANT VARCHAR2(255) := d_pkg_name || d_api_name || '.';
81 d_position NUMBER;
82
83 BEGIN
84 d_position := 0;
85
86 IF (PO_LOG.d_proc) THEN
87 PO_LOG.proc_begin(d_module);
88 END IF;
89
90 -- set record count
91 x_headers.rec_count := p_num_records;
92
93 fill_tbl(p_num_records, x_headers.intf_header_id_tbl);
94 fill_tbl(p_num_records, x_headers.draft_id_tbl);
95 fill_tbl(p_num_records, x_headers.po_header_id_tbl);
96 fill_tbl(p_num_records, x_headers.action_tbl);
97 fill_tbl(p_num_records, x_headers.document_num_tbl);
98 fill_tbl(p_num_records, x_headers.doc_type_tbl);
99 fill_tbl(p_num_records, x_headers.doc_subtype_tbl);
100 fill_tbl(p_num_records, x_headers.rate_type_tbl);
101 fill_tbl(p_num_records, x_headers.rate_type_code_tbl);
102 fill_tbl(p_num_records, x_headers.rate_date_tbl);
103 fill_tbl(p_num_records, x_headers.rate_tbl);
104 fill_tbl(p_num_records, x_headers.agent_id_tbl);
105 fill_tbl(p_num_records, x_headers.agent_name_tbl);
106 fill_tbl(p_num_records, x_headers.ship_to_loc_id_tbl);
107 fill_tbl(p_num_records, x_headers.ship_to_loc_tbl);
108 fill_tbl(p_num_records, x_headers.bill_to_loc_id_tbl);
109 fill_tbl(p_num_records, x_headers.bill_to_loc_tbl);
110 fill_tbl(p_num_records, x_headers.payment_terms_tbl);
111 fill_tbl(p_num_records, x_headers.terms_id_tbl);
112 fill_tbl(p_num_records, x_headers.vendor_name_tbl);
113 fill_tbl(p_num_records, x_headers.vendor_num_tbl);
114 fill_tbl(p_num_records, x_headers.vendor_id_tbl);
115 fill_tbl(p_num_records, x_headers.vendor_site_code_tbl);
116 fill_tbl(p_num_records, x_headers.vendor_site_id_tbl);
117 fill_tbl(p_num_records, x_headers.vendor_contact_tbl);
118 fill_tbl(p_num_records, x_headers.vendor_contact_id_tbl);
119 fill_tbl(p_num_records, x_headers.from_rfq_num_tbl);
120 fill_tbl(p_num_records, x_headers.from_header_id_tbl);
121 fill_tbl(p_num_records, x_headers.fob_tbl);
122 fill_tbl(p_num_records, x_headers.freight_carrier_tbl);
123 fill_tbl(p_num_records, x_headers.freight_term_tbl);
124 fill_tbl(p_num_records, x_headers.pay_on_code_tbl);
125 fill_tbl(p_num_records, x_headers.shipping_control_tbl);
126 fill_tbl(p_num_records, x_headers.currency_code_tbl);
127 fill_tbl(p_num_records, x_headers.quote_warning_delay_tbl);
128 fill_tbl(p_num_records, x_headers.approval_required_flag_tbl);
129 fill_tbl(p_num_records, x_headers.reply_date_tbl);
130 fill_tbl(p_num_records, x_headers.approval_status_tbl);
131 fill_tbl(p_num_records, x_headers.approved_date_tbl);
132 fill_tbl(p_num_records, x_headers.from_type_lookup_code_tbl);
133 fill_tbl(p_num_records, x_headers.revision_num_tbl);
134 fill_tbl(p_num_records, x_headers.confirming_order_flag_tbl);
135 fill_tbl(p_num_records, x_headers.acceptance_required_flag_tbl);
136 fill_tbl(p_num_records, x_headers.min_release_amount_tbl);
137 fill_tbl(p_num_records, x_headers.closed_code_tbl);
138 fill_tbl(p_num_records, x_headers.print_count_tbl);
139 fill_tbl(p_num_records, x_headers.frozen_flag_tbl);
140 fill_tbl(p_num_records, x_headers.encumbrance_required_flag_tbl);
141 fill_tbl(p_num_records, x_headers.vendor_doc_num_tbl);
142 fill_tbl(p_num_records, x_headers.org_id_tbl);
143 fill_tbl(p_num_records, x_headers.acceptance_due_date_tbl);
144 fill_tbl(p_num_records, x_headers.amount_to_encumber_tbl);
145 fill_tbl(p_num_records, x_headers.effective_date_tbl);
146 fill_tbl(p_num_records, x_headers.expiration_date_tbl);
147 fill_tbl(p_num_records, x_headers.po_release_id_tbl);
148 fill_tbl(p_num_records, x_headers.release_num_tbl);
149 fill_tbl(p_num_records, x_headers.release_date_tbl);
150 fill_tbl(p_num_records, x_headers.revised_date_tbl);
151 fill_tbl(p_num_records, x_headers.printed_date_tbl);
152 fill_tbl(p_num_records, x_headers.closed_date_tbl);
153 fill_tbl(p_num_records, x_headers.amount_agreed_tbl);
154 fill_tbl(p_num_records, x_headers.amount_limit_tbl);
155 fill_tbl(p_num_records, x_headers.firm_flag_tbl);
156 fill_tbl(p_num_records, x_headers.gl_encumbered_date_tbl);
157 fill_tbl(p_num_records, x_headers.gl_encumbered_period_tbl);
158 fill_tbl(p_num_records, x_headers.budget_account_id_tbl);
159 fill_tbl(p_num_records, x_headers.budget_account_tbl);
160 fill_tbl(p_num_records, x_headers.budget_account_segment1_tbl);
161 fill_tbl(p_num_records, x_headers.budget_account_segment2_tbl);
162 fill_tbl(p_num_records, x_headers.budget_account_segment3_tbl);
163 fill_tbl(p_num_records, x_headers.budget_account_segment4_tbl);
164 fill_tbl(p_num_records, x_headers.budget_account_segment5_tbl);
165 fill_tbl(p_num_records, x_headers.budget_account_segment6_tbl);
166 fill_tbl(p_num_records, x_headers.budget_account_segment7_tbl);
167 fill_tbl(p_num_records, x_headers.budget_account_segment8_tbl);
168 fill_tbl(p_num_records, x_headers.budget_account_segment9_tbl);
169 fill_tbl(p_num_records, x_headers.budget_account_segment10_tbl);
170 fill_tbl(p_num_records, x_headers.budget_account_segment11_tbl);
171 fill_tbl(p_num_records, x_headers.budget_account_segment12_tbl);
172 fill_tbl(p_num_records, x_headers.budget_account_segment13_tbl);
173 fill_tbl(p_num_records, x_headers.budget_account_segment14_tbl);
174 fill_tbl(p_num_records, x_headers.budget_account_segment15_tbl);
175 fill_tbl(p_num_records, x_headers.budget_account_segment16_tbl);
176 fill_tbl(p_num_records, x_headers.budget_account_segment17_tbl);
177 fill_tbl(p_num_records, x_headers.budget_account_segment18_tbl);
178 fill_tbl(p_num_records, x_headers.budget_account_segment19_tbl);
179 fill_tbl(p_num_records, x_headers.budget_account_segment20_tbl);
180 fill_tbl(p_num_records, x_headers.budget_account_segment21_tbl);
181 fill_tbl(p_num_records, x_headers.budget_account_segment22_tbl);
182 fill_tbl(p_num_records, x_headers.budget_account_segment23_tbl);
183 fill_tbl(p_num_records, x_headers.budget_account_segment24_tbl);
184 fill_tbl(p_num_records, x_headers.budget_account_segment25_tbl);
185 fill_tbl(p_num_records, x_headers.budget_account_segment26_tbl);
186 fill_tbl(p_num_records, x_headers.budget_account_segment27_tbl);
187 fill_tbl(p_num_records, x_headers.budget_account_segment28_tbl);
188 fill_tbl(p_num_records, x_headers.budget_account_segment29_tbl);
189 fill_tbl(p_num_records, x_headers.budget_account_segment30_tbl);
190 fill_tbl(p_num_records, x_headers.created_language_tbl);
191 fill_tbl(p_num_records, x_headers.style_id_tbl);
192 fill_tbl(p_num_records, x_headers.style_display_name_tbl);
193 fill_tbl(p_num_records, x_headers.global_agreement_flag_tbl);
194
195 -- standard who columns
196 fill_tbl(p_num_records, x_headers.last_update_date_tbl);
197 fill_tbl(p_num_records, x_headers.last_updated_by_tbl);
198 fill_tbl(p_num_records, x_headers.last_update_login_tbl);
199 fill_tbl(p_num_records, x_headers.creation_date_tbl);
200 fill_tbl(p_num_records, x_headers.created_by_tbl);
201 fill_tbl(p_num_records, x_headers.request_id_tbl);
202 fill_tbl(p_num_records, x_headers.program_application_id_tbl);
203 fill_tbl(p_num_records, x_headers.program_id_tbl);
204 fill_tbl(p_num_records, x_headers.program_update_date_tbl);
205
206 -- attributes not read from interface table but exist in txn table
207 fill_tbl(p_num_records, x_headers.status_lookup_code_tbl);
208 fill_tbl(p_num_records, x_headers.cancel_flag_tbl);
209 fill_tbl(p_num_records, x_headers.vendor_order_num_tbl);
210 fill_tbl(p_num_records, x_headers.quote_vendor_quote_num_tbl);
211 fill_tbl(p_num_records, x_headers.doc_creation_method_tbl);
212 fill_tbl(p_num_records, x_headers.quotation_class_code_tbl);
213 fill_tbl(p_num_records, x_headers.approved_flag_tbl);
214 fill_tbl(p_num_records, x_headers.tax_attribute_update_code_tbl);
215 fill_tbl(p_num_records, x_headers.po_dist_id_tbl);
216
217 -- attributes added for processing purpose
218 fill_tbl(p_num_records, x_headers.error_flag_tbl);
219
220 --PDOI CLM Integration
221 fill_tbl(p_num_records, x_headers.clm_standard_form_tbl);
222 fill_tbl(p_num_records, x_headers.clm_document_format_tbl);
223 fill_tbl(p_num_records, x_headers.clm_award_type_tbl);
224 fill_tbl(p_num_records, x_headers.clm_source_document_id_tbl);
225 fill_tbl(p_num_records, x_headers.clm_external_idv_tbl);
226 fill_tbl(p_num_records, x_headers.clm_vendor_offer_number_tbl);
227 fill_tbl(p_num_records, x_headers.clm_award_administrator_tbl);
228 fill_tbl(p_num_records, x_headers.comments_tbl);
229 fill_tbl(p_num_records, x_headers.no_signed_copies_to_return_tbl);
230 fill_tbl(p_num_records, x_headers.umbrella_program_id_tbl);
231 fill_tbl(p_num_records, x_headers.note_to_vendor_tbl);
232 fill_tbl(p_num_records, x_headers.note_to_receiver_tbl);
233 fill_tbl(p_num_records, x_headers.clm_effective_date_tbl);
234 fill_tbl(p_num_records, x_headers.clm_min_guar_award_amt_tbl);
235 fill_tbl(p_num_records, x_headers.clm_min_guar_award_amt_per_tbl);
236 fill_tbl(p_num_records, x_headers.clm_min_order_amount_tbl);
237 fill_tbl(p_num_records, x_headers.clm_max_order_amount_tbl);
238 fill_tbl(p_num_records, x_headers.clm_amount_released_tbl);
239 fill_tbl(p_num_records, x_headers.fon_ref_id_tbl);
240 fill_tbl(p_num_records, x_headers.clm_award_type_disp_tbl);
241 fill_tbl(p_num_records, x_headers.clm_award_admin_disp_tbl);
242 fill_tbl(p_num_records, x_headers.clm_contract_officer_disp_tbl);
243 fill_tbl(p_num_records, x_headers.clm_contract_officer_tbl);
244 fill_tbl(p_num_records, x_headers.clm_source_document_disp_tbl);
245 fill_tbl(p_num_records, x_headers.draft_type_tbl);
246
247 IF (PO_LOG.d_proc) THEN
248 PO_LOG.proc_end (d_module);
249 END IF;
250
251 EXCEPTION
252 WHEN OTHERS THEN
253 PO_MESSAGE_S.add_exc_msg
254 (
255 p_pkg_name => d_pkg_name,
256 p_procedure_name => d_api_name || '.' || d_position
257 );
258 RAISE;
259 END fill_all_headers_attr;
260
261
262 -----------------------------------------------------------------------
263 --Start of Comments
264 --Name: fill_all_lines_attr
265 --Function:
266 -- Initialize all the pl/sql tables in the record type. It also sets
267 -- the record count
268 --Parameters:
269 --IN:
270 -- p_num_records
271 -- Number of entries for each pl/sql tables in the record type
272 --IN OUT:
273 -- x_headers
274 -- Trecord of tables holding line information
275 --OUT:
276 --End of Comments
277 ------------------------------------------------------------------------
278 PROCEDURE fill_all_lines_attr
279 ( p_num_records IN NUMBER,
280 x_lines IN OUT NOCOPY lines_rec_type
281 ) IS
282
283 d_api_name CONSTANT VARCHAR2(30) := 'fill_all_lines_attr';
284 d_module CONSTANT VARCHAR2(255) := d_pkg_name || d_api_name || '.';
285 d_position NUMBER;
286
287 BEGIN
288 d_position := 0;
289
290 IF (PO_LOG.d_proc) THEN
291 PO_LOG.proc_begin(d_module);
292 END IF;
293
294 -- set record count
295 x_lines.rec_count := p_num_records;
296
297 -- attributes read from line interface records
298 fill_tbl(p_num_records, x_lines.intf_line_id_tbl);
299 fill_tbl(p_num_records, x_lines.intf_header_id_tbl);
300 fill_tbl(p_num_records, x_lines.po_header_id_tbl);
301 fill_tbl(p_num_records, x_lines.po_line_id_tbl);
302 fill_tbl(p_num_records, x_lines.action_tbl);
303 fill_tbl(p_num_records, x_lines.document_num_tbl);
304 fill_tbl(p_num_records, x_lines.item_tbl);
305 fill_tbl(p_num_records, x_lines.vendor_product_num_tbl);
306 fill_tbl(p_num_records, x_lines.supplier_part_auxid_tbl);
307 fill_tbl(p_num_records, x_lines.item_id_tbl);
308 fill_tbl(p_num_records, x_lines.item_revision_tbl);
309 fill_tbl(p_num_records, x_lines.job_business_group_name_tbl);
310 fill_tbl(p_num_records, x_lines.job_business_group_id_tbl);
311 fill_tbl(p_num_records, x_lines.job_name_tbl);
312 fill_tbl(p_num_records, x_lines.job_id_tbl);
313 fill_tbl(p_num_records, x_lines.category_tbl);
314 fill_tbl(p_num_records, x_lines.category_id_tbl);
315 fill_tbl(p_num_records, x_lines.ip_category_tbl);
316 fill_tbl(p_num_records, x_lines.ip_category_id_tbl);
317 fill_tbl(p_num_records, x_lines.uom_code_tbl);
318 fill_tbl(p_num_records, x_lines.unit_of_measure_tbl);
319 fill_tbl(p_num_records, x_lines.line_type_tbl);
320 fill_tbl(p_num_records, x_lines.line_type_id_tbl);
321 fill_tbl(p_num_records, x_lines.un_number_tbl);
322 fill_tbl(p_num_records, x_lines.un_number_id_tbl);
323 fill_tbl(p_num_records, x_lines.hazard_class_tbl);
324 fill_tbl(p_num_records, x_lines.hazard_class_id_tbl);
325 fill_tbl(p_num_records, x_lines.template_name_tbl);
326 fill_tbl(p_num_records, x_lines.template_id_tbl);
327 fill_tbl(p_num_records, x_lines.item_desc_tbl);
328 fill_tbl(p_num_records, x_lines.unit_price_tbl);
329 fill_tbl(p_num_records, x_lines.base_unit_price_tbl);
330 fill_tbl(p_num_records, x_lines.from_header_id_tbl);
331 fill_tbl(p_num_records, x_lines.from_line_id_tbl);
332 fill_tbl(p_num_records, x_lines.list_price_per_unit_tbl);
333 fill_tbl(p_num_records, x_lines.market_price_tbl);
334 fill_tbl(p_num_records, x_lines.capital_expense_flag_tbl);
335 fill_tbl(p_num_records, x_lines.clm_info_flag_tbl); /* 10354034 */
336
337 fill_tbl(p_num_records, x_lines.min_release_amount_tbl);
338 fill_tbl(p_num_records, x_lines.allow_price_override_flag_tbl);
339 fill_tbl(p_num_records, x_lines.price_type_tbl);
340 fill_tbl(p_num_records, x_lines.price_break_lookup_code_tbl);
341 fill_tbl(p_num_records, x_lines.closed_code_tbl);
342 fill_tbl(p_num_records, x_lines.quantity_tbl);
343 fill_tbl(p_num_records, x_lines.line_num_tbl);
344 fill_tbl(p_num_records, x_lines.shipment_num_tbl);
345 fill_tbl(p_num_records, x_lines.price_chg_accept_flag_tbl);
346 fill_tbl(p_num_records, x_lines.effective_date_tbl);
347 fill_tbl(p_num_records, x_lines.expiration_date_tbl);
348 fill_tbl(p_num_records, x_lines.attribute14_tbl);
349 fill_tbl(p_num_records, x_lines.price_update_tolerance_tbl);
350 fill_tbl(p_num_records, x_lines.line_loc_populated_flag_tbl);
351 -- PDOI for Complex PO Project
352 fill_tbl(p_num_records, x_lines.retainage_rate_tbl);
353 fill_tbl(p_num_records, x_lines.max_retainage_amount_tbl);
354 fill_tbl(p_num_records, x_lines.progress_payment_rate_tbl);
355 fill_tbl(p_num_records, x_lines.recoupment_rate_tbl);
356 fill_tbl(p_num_records, x_lines.advance_amount_tbl);
357
358 fill_tbl(p_num_records, x_lines.negotiated_flag_tbl);
359 fill_tbl(p_num_records, x_lines.amount_tbl);
360 fill_tbl(p_num_records, x_lines.contractor_last_name_tbl);
361 fill_tbl(p_num_records, x_lines.contractor_first_name_tbl);
362 fill_tbl(p_num_records, x_lines.over_tolerance_err_flag_tbl);
363 fill_tbl(p_num_records, x_lines.not_to_exceed_price_tbl);
364 fill_tbl(p_num_records, x_lines.po_release_id_tbl);
365 fill_tbl(p_num_records, x_lines.release_num_tbl);
366 fill_tbl(p_num_records, x_lines.source_shipment_id_tbl);
367 fill_tbl(p_num_records, x_lines.contract_num_tbl);
368 fill_tbl(p_num_records, x_lines.contract_id_tbl);
369 fill_tbl(p_num_records, x_lines.type_1099_tbl);
370 fill_tbl(p_num_records, x_lines.closed_by_tbl);
371 fill_tbl(p_num_records, x_lines.closed_date_tbl);
372 fill_tbl(p_num_records, x_lines.committed_amount_tbl);
373 fill_tbl(p_num_records, x_lines.qty_rcv_exception_code_tbl);
374 fill_tbl(p_num_records, x_lines.weight_uom_code_tbl);
375 fill_tbl(p_num_records, x_lines.volume_uom_code_tbl);
376 fill_tbl(p_num_records, x_lines.secondary_unit_of_meas_tbl);
377 fill_tbl(p_num_records, x_lines.secondary_quantity_tbl);
378 fill_tbl(p_num_records, x_lines.preferred_grade_tbl);
379 fill_tbl(p_num_records, x_lines.process_code_tbl);
380 fill_tbl(p_num_records, x_lines.parent_interface_line_id_tbl); -- bug5149827
381 fill_tbl(p_num_records, x_lines.file_line_language_tbl); -- bug 5489942
382
383 -- standard who columns
384 fill_tbl(p_num_records, x_lines.last_updated_by_tbl);
385 fill_tbl(p_num_records, x_lines.last_update_date_tbl);
386 fill_tbl(p_num_records, x_lines.last_update_login_tbl);
387 fill_tbl(p_num_records, x_lines.creation_date_tbl);
388 fill_tbl(p_num_records, x_lines.created_by_tbl);
389 fill_tbl(p_num_records, x_lines.request_id_tbl);
390 fill_tbl(p_num_records, x_lines.program_application_id_tbl);
391 fill_tbl(p_num_records, x_lines.program_id_tbl);
392 fill_tbl(p_num_records, x_lines.program_update_date_tbl);
393
394 -- attributes that are in line txn table but not in interface table
395 fill_tbl(p_num_records, x_lines.order_type_lookup_code_tbl);
396 fill_tbl(p_num_records, x_lines.purchase_basis_tbl);
397 fill_tbl(p_num_records, x_lines.matching_basis_tbl);
398 fill_tbl(p_num_records, x_lines.unordered_flag_tbl);
399 fill_tbl(p_num_records, x_lines.cancel_flag_tbl);
400 fill_tbl(p_num_records, x_lines.quantity_committed_tbl);
401 fill_tbl(p_num_records, x_lines.tax_attribute_update_code_tbl);
402
403 -- attributes read from the header interface record
404 fill_tbl(p_num_records, x_lines.draft_id_tbl);
405 fill_tbl(p_num_records, x_lines.hd_action_tbl);
406 fill_tbl(p_num_records, x_lines.hd_po_header_id_tbl);
407 fill_tbl(p_num_records, x_lines.hd_vendor_id_tbl);
408 fill_tbl(p_num_records, x_lines.hd_min_release_amount_tbl);
409 fill_tbl(p_num_records, x_lines.hd_start_date_tbl);
410 fill_tbl(p_num_records, x_lines.hd_end_date_tbl);
411 fill_tbl(p_num_records, x_lines.hd_global_agreement_flag_tbl);
412 fill_tbl(p_num_records, x_lines.hd_currency_code_tbl);
413 fill_tbl(p_num_records, x_lines.hd_created_language_tbl);
414 fill_tbl(p_num_records, x_lines.hd_style_id_tbl);
415 fill_tbl(p_num_records, x_lines.hd_rate_type_tbl);
416
417 -- attributes added for location processing
418 fill_tbl(p_num_records, x_lines.create_line_loc_tbl);
419
420 -- attributes added for uniqueness checking
421 fill_tbl(p_num_records, x_lines.origin_line_num_tbl);
422 fill_tbl(p_num_records, x_lines.group_num_tbl);
423 fill_tbl(p_num_records, x_lines.match_line_found_tbl);
424 fill_tbl(p_num_records, x_lines.line_num_unique_tbl);
425
426 -- attributes added for processing purpose
427 fill_tbl(p_num_records, x_lines.error_flag_tbl);
428 fill_tbl(p_num_records, x_lines.need_to_reject_flag_tbl);
429 fill_tbl(p_num_records, x_lines.allow_desc_update_flag_tbl);
430
431 --attributes added for pdoi clm integration
432 fill_tbl(p_num_records, x_lines.contract_type_tbl);
433 fill_tbl(p_num_records, x_lines.cost_constraint_tbl);
434 fill_tbl(p_num_records, x_lines.note_to_vendor_tbl);
435 fill_tbl(p_num_records, x_lines.oke_contract_version_id_tbl);
436 fill_tbl(p_num_records, x_lines.oke_contract_header_id_tbl);
437 fill_tbl(p_num_records, x_lines.clm_option_indicator_tbl);
438 fill_tbl(p_num_records, x_lines.clm_base_line_num_tbl);
439 fill_tbl(p_num_records, x_lines.clm_option_num_tbl);
440 fill_tbl(p_num_records, x_lines.clm_option_from_date_tbl);
441 fill_tbl(p_num_records, x_lines.clm_option_to_date_tbl);
442 fill_tbl(p_num_records, x_lines.clm_idc_type_tbl);
443 fill_tbl(p_num_records, x_lines.line_num_display_tbl);
444 fill_tbl(p_num_records, x_lines.clm_funded_flag_tbl);
445 fill_tbl(p_num_records, x_lines.user_document_status_tbl);
446 fill_tbl(p_num_records, x_lines.clm_exercised_flag_tbl);
447 fill_tbl(p_num_records, x_lines.clm_exercised_date_tbl);
448 fill_tbl(p_num_records, x_lines.clm_min_total_amount_tbl);
449 fill_tbl(p_num_records, x_lines.clm_max_total_amount_tbl);
450 fill_tbl(p_num_records, x_lines.clm_min_total_quantity_tbl);
451 fill_tbl(p_num_records, x_lines.clm_max_total_quantity_tbl);
452 fill_tbl(p_num_records, x_lines.clm_min_order_amount_tbl);
453 fill_tbl(p_num_records, x_lines.clm_max_order_amount_tbl);
454 fill_tbl(p_num_records, x_lines.clm_min_order_quantity_tbl);
455 fill_tbl(p_num_records, x_lines.clm_max_order_quantity_tbl);
456 fill_tbl(p_num_records, x_lines.clm_total_amount_ordered_tbl);
457 fill_tbl(p_num_records, x_lines.clm_total_quantity_ordered_tbl);
458 fill_tbl(p_num_records, x_lines.clm_period_perf_end_date_tbl);
459 fill_tbl(p_num_records, x_lines.clm_period_perf_start_date_tbl);
460 fill_tbl(p_num_records, x_lines.contract_type_display_tbl);
461 fill_tbl(p_num_records, x_lines.cost_constraint_display_tbl);
462 fill_tbl(p_num_records, x_lines.clm_idc_type_display_tbl);
463 fill_tbl(p_num_records, x_lines.clm_base_line_num_disp_tbl);
464 fill_tbl(p_num_records, x_lines.from_header_disp_tbl);
465 fill_tbl(p_num_records, x_lines.from_line_disp_tbl);
466 fill_tbl(p_num_records, x_lines.group_line_id_tbl);
467
468
469
470 IF (PO_LOG.d_proc) THEN
471 PO_LOG.proc_end (d_module);
472 END IF;
473
474 EXCEPTION
475 WHEN OTHERS THEN
476 PO_MESSAGE_S.add_exc_msg
477 (
478 p_pkg_name => d_pkg_name,
479 p_procedure_name => d_api_name || '.' || d_position
480 );
481 RAISE;
482 END fill_all_lines_attr;
483
484
485 -----------------------------------------------------------------------
486 --Start of Comments
487 --Name: fill_all_line_locs_attr
488 --Function:
489 -- Initialize all the pl/sql tables in the record type. It also sets
490 -- the record count
491 --Parameters:
492 --IN:
493 -- p_num_records
494 -- Number of entries for each pl/sql tables in the record type
495 --IN OUT:
496 -- x_headers
497 -- Trecord of tables holding line location information
498 --OUT:
499 --End of Comments
500 ------------------------------------------------------------------------
501 PROCEDURE fill_all_line_locs_attr
502 ( p_num_records IN NUMBER,
503 x_line_locs IN OUT NOCOPY line_locs_rec_type
504 ) IS
505
506 d_api_name CONSTANT VARCHAR2(30) := 'fill_all_line_locs_attr';
507 d_module CONSTANT VARCHAR2(255) := d_pkg_name || d_api_name || '.';
508 d_position NUMBER;
509
510 BEGIN
511 d_position := 0;
512
513 IF (PO_LOG.d_proc) THEN
514 PO_LOG.proc_begin(d_module);
515 END IF;
516
517 -- set record count
518 x_line_locs.rec_count := p_num_records;
519
520 fill_tbl(p_num_records, x_line_locs.intf_line_loc_id_tbl);
521 fill_tbl(p_num_records, x_line_locs.intf_line_id_tbl);
522 fill_tbl(p_num_records, x_line_locs.intf_header_id_tbl);
523 fill_tbl(p_num_records, x_line_locs.shipment_num_tbl);
524 fill_tbl(p_num_records, x_line_locs.shipment_type_tbl);
525 fill_tbl(p_num_records, x_line_locs.line_loc_id_tbl);
526 fill_tbl(p_num_records, x_line_locs.ship_to_org_code_tbl);
527 fill_tbl(p_num_records, x_line_locs.ship_to_org_id_tbl);
528 fill_tbl(p_num_records, x_line_locs.ship_to_loc_tbl);
529 fill_tbl(p_num_records, x_line_locs.ship_to_loc_id_tbl);
530 fill_tbl(p_num_records, x_line_locs.payment_terms_tbl);
531 fill_tbl(p_num_records, x_line_locs.terms_id_tbl);
532 fill_tbl(p_num_records, x_line_locs.receiving_routing_tbl);
533 fill_tbl(p_num_records, x_line_locs.receiving_routing_id_tbl);
534 fill_tbl(p_num_records, x_line_locs.inspection_required_flag_tbl);
535 fill_tbl(p_num_records, x_line_locs.receipt_required_flag_tbl);
536 fill_tbl(p_num_records, x_line_locs.price_override_tbl);
537 fill_tbl(p_num_records, x_line_locs.qty_rcv_tolerance_tbl);
538 fill_tbl(p_num_records, x_line_locs.qty_rcv_exception_code_tbl);
539 fill_tbl(p_num_records, x_line_locs.enforce_ship_to_loc_code_tbl);
540 fill_tbl(p_num_records, x_line_locs.allow_sub_receipts_flag_tbl);
541 fill_tbl(p_num_records, x_line_locs.days_early_receipt_allowed_tbl);
542 fill_tbl(p_num_records, x_line_locs.days_late_receipt_allowed_tbl);
543 fill_tbl(p_num_records, x_line_locs.receipt_days_except_code_tbl);
544 fill_tbl(p_num_records, x_line_locs.invoice_close_tolerance_tbl);
545 fill_tbl(p_num_records, x_line_locs.receive_close_tolerance_tbl);
546 fill_tbl(p_num_records, x_line_locs.accrue_on_receipt_flag_tbl);
547 fill_tbl(p_num_records, x_line_locs.firm_flag_tbl);
548 fill_tbl(p_num_records, x_line_locs.fob_tbl);
549 fill_tbl(p_num_records, x_line_locs.freight_carrier_tbl);
550 fill_tbl(p_num_records, x_line_locs.freight_term_tbl);
551 fill_tbl(p_num_records, x_line_locs.need_by_date_tbl);
552 fill_tbl(p_num_records, x_line_locs.promised_date_tbl);
553 fill_tbl(p_num_records, x_line_locs.quantity_tbl);
554 fill_tbl(p_num_records, x_line_locs.amount_tbl); -- PDOI for Complex PO Project
555 fill_tbl(p_num_records, x_line_locs.start_date_tbl);
556 fill_tbl(p_num_records, x_line_locs.end_date_tbl);
557 fill_tbl(p_num_records, x_line_locs.note_to_receiver_tbl);
558 fill_tbl(p_num_records, x_line_locs.price_discount_tbl);
559 fill_tbl(p_num_records, x_line_locs.secondary_unit_of_meas_tbl);
560 fill_tbl(p_num_records, x_line_locs.secondary_quantity_tbl);
561 fill_tbl(p_num_records, x_line_locs.preferred_grade_tbl);
562 fill_tbl(p_num_records, x_line_locs.tax_code_id_tbl);
563 fill_tbl(p_num_records, x_line_locs.tax_name_tbl);
564 fill_tbl(p_num_records, x_line_locs.taxable_flag_tbl);
565 fill_tbl(p_num_records, x_line_locs.unit_of_measure_tbl);
566 fill_tbl(p_num_records, x_line_locs.value_basis_tbl);
567 fill_tbl(p_num_records, x_line_locs.matching_basis_tbl);
568 fill_tbl(p_num_records, x_line_locs.payment_type_tbl); -- PDOI for Complex PO Project
569
570 -- attributes in txn table but not in interface table
571 fill_tbl(p_num_records, x_line_locs.match_option_tbl);
572 fill_tbl(p_num_records, x_line_locs.txn_flow_header_id_tbl);
573 fill_tbl(p_num_records, x_line_locs.outsourced_assembly_tbl);
574 fill_tbl(p_num_records, x_line_locs.tax_attribute_update_code_tbl);
575
576 -- standard who columns
577 fill_tbl(p_num_records, x_line_locs.last_updated_by_tbl);
578 fill_tbl(p_num_records, x_line_locs.last_update_date_tbl);
579 fill_tbl(p_num_records, x_line_locs.last_update_login_tbl);
580 fill_tbl(p_num_records, x_line_locs.creation_date_tbl);
581 fill_tbl(p_num_records, x_line_locs.created_by_tbl);
582 fill_tbl(p_num_records, x_line_locs.request_id_tbl);
583 fill_tbl(p_num_records, x_line_locs.program_application_id_tbl);
584 fill_tbl(p_num_records, x_line_locs.program_id_tbl);
585 fill_tbl(p_num_records, x_line_locs.program_update_date_tbl);
586
587 -- attributes read from the line interface record
588 fill_tbl(p_num_records, x_line_locs.ln_po_line_id_tbl);
589 fill_tbl(p_num_records, x_line_locs.ln_item_id_tbl);
590
591 --< Shared Proc 14223789 Start >
592 fill_tbl(p_num_records, x_line_locs.ln_item_category_id_tbl);
593 --< Shared Proc 14223789 End >
594
595 fill_tbl(p_num_records, x_line_locs.ln_order_type_lookup_code_tbl);
596 fill_tbl(p_num_records, x_line_locs.ln_action_tbl);
597 fill_tbl(p_num_records, x_line_locs.ln_unit_price_tbl);
598 fill_tbl(p_num_records, x_line_locs.ln_quantity_tbl); -- PDOI for Complex PO Project
599 fill_tbl(p_num_records, x_line_locs.ln_amount_tbl); -- PDOI for Complex PO Project
600 fill_tbl(p_num_records, x_line_locs.ln_line_type_id_tbl);
601 fill_tbl(p_num_records, x_line_locs.ln_unit_of_measure_tbl);
602 fill_tbl(p_num_records, x_line_locs.ln_closed_code_tbl);
603 fill_tbl(p_num_records, x_line_locs.ln_purchase_basis_tbl);
604 fill_tbl(p_num_records, x_line_locs.ln_matching_basis_tbl);
605 fill_tbl(p_num_records, x_line_locs.ln_item_revision_tbl);
606 fill_tbl(p_num_records, x_line_locs.ln_expiration_date_tbl);
607 fill_tbl(p_num_records, x_line_locs.ln_government_context_tbl);
608 fill_tbl(p_num_records, x_line_locs.ln_closed_reason_tbl);
609 fill_tbl(p_num_records, x_line_locs.ln_closed_date_tbl);
610 fill_tbl(p_num_records, x_line_locs.ln_closed_by_tbl);
611 fill_tbl(p_num_records, x_line_locs.ln_from_header_id_tbl);
612 fill_tbl(p_num_records, x_line_locs.ln_from_line_id_tbl);
613 fill_tbl(p_num_records, x_line_locs.ln_price_break_lookup_code_tbl);
614
615 -- attributes read from the header interface record
616 fill_tbl(p_num_records, x_line_locs.draft_id_tbl);
617 fill_tbl(p_num_records, x_line_locs.hd_po_header_id_tbl);
618 --< Shared Proc 14223789 Start >
619 fill_tbl(p_num_records, x_line_locs.hd_doc_type_tbl);
620 --< Shared Proc 14223789 End >
621 fill_tbl(p_num_records, x_line_locs.hd_ship_to_loc_id_tbl);
622 fill_tbl(p_num_records, x_line_locs.hd_vendor_id_tbl);
623 fill_tbl(p_num_records, x_line_locs.hd_vendor_site_id_tbl);
624 fill_tbl(p_num_records, x_line_locs.hd_terms_id_tbl);
625 fill_tbl(p_num_records, x_line_locs.hd_fob_tbl);
626 fill_tbl(p_num_records, x_line_locs.hd_freight_carrier_tbl);
627 fill_tbl(p_num_records, x_line_locs.hd_freight_term_tbl);
628 fill_tbl(p_num_records, x_line_locs.hd_approved_flag_tbl);
629 fill_tbl(p_num_records, x_line_locs.hd_effective_date_tbl);
630 fill_tbl(p_num_records, x_line_locs.hd_expiration_date_tbl);
631 fill_tbl(p_num_records, x_line_locs.hd_style_id_tbl);
632
633 -- attributes added for item processing(read from line)
634 --ln_qty_rcv_tolerance_tbl);
635 fill_tbl(p_num_records, x_line_locs.ln_unit_weight_tbl);
636 fill_tbl(p_num_records, x_line_locs.ln_unit_volume_tbl);
637 fill_tbl(p_num_records, x_line_locs.ln_item_attribute_category_tbl);
638 fill_tbl(p_num_records, x_line_locs.ln_item_attribute1_tbl);
639 fill_tbl(p_num_records, x_line_locs.ln_item_attribute2_tbl);
640 fill_tbl(p_num_records, x_line_locs.ln_item_attribute3_tbl);
641 fill_tbl(p_num_records, x_line_locs.ln_item_attribute4_tbl);
642 fill_tbl(p_num_records, x_line_locs.ln_item_attribute5_tbl);
643 fill_tbl(p_num_records, x_line_locs.ln_item_attribute6_tbl);
644 fill_tbl(p_num_records, x_line_locs.ln_item_attribute7_tbl);
645 fill_tbl(p_num_records, x_line_locs.ln_item_attribute8_tbl);
646 fill_tbl(p_num_records, x_line_locs.ln_item_attribute9_tbl);
647 fill_tbl(p_num_records, x_line_locs.ln_item_attribute10_tbl);
648 fill_tbl(p_num_records, x_line_locs.ln_item_attribute11_tbl);
649 fill_tbl(p_num_records, x_line_locs.ln_item_attribute12_tbl);
650 fill_tbl(p_num_records, x_line_locs.ln_item_attribute13_tbl);
651 fill_tbl(p_num_records, x_line_locs.ln_item_attribute14_tbl);
652 fill_tbl(p_num_records, x_line_locs.ln_item_attribute15_tbl);
653 fill_tbl(p_num_records, x_line_locs.ln_item_tbl);
654 fill_tbl(p_num_records, x_line_locs.ln_item_desc_tbl);
655 fill_tbl(p_num_records, x_line_locs.ln_list_price_per_unit_tbl);
656 fill_tbl(p_num_records, x_line_locs.ln_market_price_tbl);
657 fill_tbl(p_num_records, x_line_locs.ln_un_number_id_tbl);
658 fill_tbl(p_num_records, x_line_locs.ln_hazard_class_id_tbl);
659 fill_tbl(p_num_records, x_line_locs.ln_qty_rcv_exception_code_tbl);
660 fill_tbl(p_num_records, x_line_locs.ln_weight_uom_code_tbl);
661 fill_tbl(p_num_records, x_line_locs.ln_volume_uom_code_tbl);
662 fill_tbl(p_num_records, x_line_locs.ln_template_id_tbl);
663 fill_tbl(p_num_records, x_line_locs.ln_category_id_tbl);
664 fill_tbl(p_num_records, x_line_locs.line_ref_index_tbl);
665
666 -- attributes added for processing purpose
667 fill_tbl(p_num_records, x_line_locs.shipment_num_unique_tbl);
668 fill_tbl(p_num_records, x_line_locs.error_flag_tbl);
669 fill_tbl(p_num_records, x_line_locs.hd_currency_code_tbl); --- Bug# 11834816
670
671 IF (PO_LOG.d_proc) THEN
672 PO_LOG.proc_end (d_module);
673 END IF;
674
675 EXCEPTION
676 WHEN OTHERS THEN
677 PO_MESSAGE_S.add_exc_msg
678 (
679 p_pkg_name => d_pkg_name,
680 p_procedure_name => d_api_name || '.' || d_position
681 );
682 RAISE;
683 END fill_all_line_locs_attr;
684
685 -----------------------------------------------------------------------
686 --Start of Comments
687 --Name: fill_all_dists_attr
688 --Function:
689 -- Initialize all the pl/sql tables in the record type. It also sets
690 -- the record count
691 --Parameters:
692 --IN:
693 -- p_num_records
694 -- Number of entries for each pl/sql tables in the record type
695 --IN OUT:
696 -- x_headers
697 -- Trecord of tables holding distribution information
698 --OUT:
699 --End of Comments
700 ------------------------------------------------------------------------
701 PROCEDURE fill_all_dists_attr
702 ( p_num_records IN NUMBER,
703 x_dists IN OUT NOCOPY distributions_rec_type
704 ) IS
705
706 d_api_name CONSTANT VARCHAR2(30) := 'fill_all_dists_attr';
707 d_module CONSTANT VARCHAR2(255) := d_pkg_name || d_api_name || '.';
708 d_position NUMBER;
709
710 BEGIN
711 d_position := 0;
712
713 IF (PO_LOG.d_proc) THEN
714 PO_LOG.proc_begin(d_module);
715 END IF;
716
717 -- set record count
718 x_dists.rec_count := p_num_records;
719
720 fill_tbl(p_num_records, x_dists.intf_dist_id_tbl);
721 fill_tbl(p_num_records, x_dists.intf_header_id_tbl);
722 fill_tbl(p_num_records, x_dists.intf_line_id_tbl);
723 fill_tbl(p_num_records, x_dists.intf_line_loc_id_tbl);
724 fill_tbl(p_num_records, x_dists.po_dist_id_tbl);
725 fill_tbl(p_num_records, x_dists.dist_num_tbl);
726 fill_tbl(p_num_records, x_dists.deliver_to_loc_tbl);
727 fill_tbl(p_num_records, x_dists.deliver_to_loc_id_tbl);
728 fill_tbl(p_num_records, x_dists.deliver_to_person_name_tbl);
729 fill_tbl(p_num_records, x_dists.deliver_to_person_id_tbl);
730 fill_tbl(p_num_records, x_dists.dest_type_tbl);
731 fill_tbl(p_num_records, x_dists.dest_type_code_tbl);
732 fill_tbl(p_num_records, x_dists.dest_org_tbl);
733 fill_tbl(p_num_records, x_dists.dest_org_id_tbl);
734 fill_tbl(p_num_records, x_dists.wip_entity_tbl);
735 fill_tbl(p_num_records, x_dists.wip_entity_id_tbl);
736 fill_tbl(p_num_records, x_dists.wip_line_code_tbl);
737 fill_tbl(p_num_records, x_dists.wip_line_id_tbl);
738 fill_tbl(p_num_records, x_dists.bom_resource_code_tbl);
739 fill_tbl(p_num_records, x_dists.bom_resource_id_tbl);
740 fill_tbl(p_num_records, x_dists.charge_account_tbl);
741 fill_tbl(p_num_records, x_dists.charge_account_id_tbl);
742 fill_tbl(p_num_records, x_dists.dest_charge_account_id_tbl);
743 fill_tbl(p_num_records, x_dists.project_accounting_context_tbl);
744 fill_tbl(p_num_records, x_dists.award_num_tbl);
745 fill_tbl(p_num_records, x_dists.award_id_tbl);
746 fill_tbl(p_num_records, x_dists.project_tbl);
747 fill_tbl(p_num_records, x_dists.project_id_tbl);
748 fill_tbl(p_num_records, x_dists.task_tbl);
749 fill_tbl(p_num_records, x_dists.task_id_tbl);
750 fill_tbl(p_num_records, x_dists.expenditure_tbl);
751 fill_tbl(p_num_records, x_dists.expenditure_type_tbl);
752 fill_tbl(p_num_records, x_dists.expenditure_org_tbl);
753 fill_tbl(p_num_records, x_dists.expenditure_org_id_tbl);
754 fill_tbl(p_num_records, x_dists.expenditure_item_date_tbl);
755 fill_tbl(p_num_records, x_dists.end_item_unit_number_tbl);
756 fill_tbl(p_num_records, x_dists.dest_context_tbl);
757 fill_tbl(p_num_records, x_dists.gl_encumbered_date_tbl);
758 fill_tbl(p_num_records, x_dists.gl_encumbered_period_tbl);
759 fill_tbl(p_num_records, x_dists.variance_account_id_tbl);
760 fill_tbl(p_num_records, x_dists.accrual_account_id_tbl);
761 fill_tbl(p_num_records, x_dists.budget_account_id_tbl);
762 fill_tbl(p_num_records, x_dists.dest_variance_account_id_tbl);
763 fill_tbl(p_num_records, x_dists.dest_subinventory_tbl);
764 fill_tbl(p_num_records, x_dists.amount_ordered_tbl);
765 fill_tbl(p_num_records, x_dists.quantity_ordered_tbl);
766 fill_tbl(p_num_records, x_dists.wip_rep_schedule_id_tbl);
767 fill_tbl(p_num_records, x_dists.wip_operation_seq_num_tbl);
768 fill_tbl(p_num_records, x_dists.wip_resource_seq_num_tbl);
769 fill_tbl(p_num_records, x_dists.prevent_encumbrance_flag_tbl);
770 fill_tbl(p_num_records, x_dists.recovery_rate_tbl);
771 fill_tbl(p_num_records, x_dists.tax_recovery_override_flag_tbl);
772 fill_tbl(p_num_records, x_dists.account_segment1_tbl);
773 fill_tbl(p_num_records, x_dists.account_segment2_tbl);
774 fill_tbl(p_num_records, x_dists.account_segment3_tbl);
775 fill_tbl(p_num_records, x_dists.account_segment4_tbl);
776 fill_tbl(p_num_records, x_dists.account_segment5_tbl);
777 fill_tbl(p_num_records, x_dists.account_segment6_tbl);
778 fill_tbl(p_num_records, x_dists.account_segment7_tbl);
779 fill_tbl(p_num_records, x_dists.account_segment8_tbl);
780 fill_tbl(p_num_records, x_dists.account_segment9_tbl);
781 fill_tbl(p_num_records, x_dists.account_segment10_tbl);
782 fill_tbl(p_num_records, x_dists.account_segment11_tbl);
783 fill_tbl(p_num_records, x_dists.account_segment12_tbl);
784 fill_tbl(p_num_records, x_dists.account_segment13_tbl);
785 fill_tbl(p_num_records, x_dists.account_segment14_tbl);
786 fill_tbl(p_num_records, x_dists.account_segment15_tbl);
787 fill_tbl(p_num_records, x_dists.account_segment16_tbl);
788 fill_tbl(p_num_records, x_dists.account_segment17_tbl);
789 fill_tbl(p_num_records, x_dists.account_segment18_tbl);
790 fill_tbl(p_num_records, x_dists.account_segment19_tbl);
791 fill_tbl(p_num_records, x_dists.account_segment20_tbl);
792 fill_tbl(p_num_records, x_dists.account_segment21_tbl);
793 fill_tbl(p_num_records, x_dists.account_segment22_tbl);
794 fill_tbl(p_num_records, x_dists.account_segment23_tbl);
795 fill_tbl(p_num_records, x_dists.account_segment24_tbl);
796 fill_tbl(p_num_records, x_dists.account_segment25_tbl);
797 fill_tbl(p_num_records, x_dists.account_segment26_tbl);
798 fill_tbl(p_num_records, x_dists.account_segment27_tbl);
799 fill_tbl(p_num_records, x_dists.account_segment28_tbl);
800 fill_tbl(p_num_records, x_dists.account_segment29_tbl);
801 fill_tbl(p_num_records, x_dists.account_segment30_tbl);
802 fill_tbl(p_num_records, x_dists.dist_attribute1_tbl);
803 fill_tbl(p_num_records, x_dists.dist_attribute2_tbl);
804 fill_tbl(p_num_records, x_dists.dist_attribute3_tbl);
805 fill_tbl(p_num_records, x_dists.dist_attribute4_tbl);
806 fill_tbl(p_num_records, x_dists.dist_attribute5_tbl);
807 fill_tbl(p_num_records, x_dists.dist_attribute6_tbl);
808 fill_tbl(p_num_records, x_dists.dist_attribute7_tbl);
809 fill_tbl(p_num_records, x_dists.dist_attribute8_tbl);
810 fill_tbl(p_num_records, x_dists.dist_attribute9_tbl);
811 fill_tbl(p_num_records, x_dists.dist_attribute10_tbl);
812 fill_tbl(p_num_records, x_dists.dist_attribute11_tbl);
813 fill_tbl(p_num_records, x_dists.dist_attribute12_tbl);
814 fill_tbl(p_num_records, x_dists.dist_attribute13_tbl);
815 fill_tbl(p_num_records, x_dists.dist_attribute14_tbl);
816 fill_tbl(p_num_records, x_dists.dist_attribute15_tbl);
817
818 -- ACRN proj
819 fill_tbl(p_num_records, x_dists.ACRN_tbl);
820
821 -- standard who columns
822 fill_tbl(p_num_records, x_dists.last_updated_by_tbl);
823 fill_tbl(p_num_records, x_dists.last_update_date_tbl);
824 fill_tbl(p_num_records, x_dists.last_update_login_tbl);
825 fill_tbl(p_num_records, x_dists.creation_date_tbl);
826 fill_tbl(p_num_records, x_dists.created_by_tbl);
827 fill_tbl(p_num_records, x_dists.request_id_tbl);
828 fill_tbl(p_num_records, x_dists.program_application_id_tbl);
829 fill_tbl(p_num_records, x_dists.program_id_tbl);
830 fill_tbl(p_num_records, x_dists.program_update_date_tbl);
831
832 -- attributes exist in txn table but not in interface table
833 fill_tbl(p_num_records, x_dists.tax_attribute_update_code_tbl);
834 fill_tbl(p_num_records, x_dists.award_set_id_tbl); -- bug5201306
835
836 -- attributes read from line location record
837 fill_tbl(p_num_records, x_dists.loc_ship_to_org_id_tbl);
838 fill_tbl(p_num_records, x_dists.loc_line_loc_id_tbl);
839 fill_tbl(p_num_records, x_dists.loc_shipment_type_tbl);
840 fill_tbl(p_num_records, x_dists.loc_txn_flow_header_id_tbl);
841 fill_tbl(p_num_records, x_dists.loc_accrue_on_receipt_flag_tbl);
842 fill_tbl(p_num_records, x_dists.loc_need_by_date_tbl);
843 fill_tbl(p_num_records, x_dists.loc_promised_date_tbl);
844 fill_tbl(p_num_records, x_dists.loc_price_override_tbl);
845 fill_tbl(p_num_records, x_dists.loc_outsourced_assembly_tbl);
846 fill_tbl(p_num_records, x_dists.loc_attribute1_tbl);
847 fill_tbl(p_num_records, x_dists.loc_attribute2_tbl);
848 fill_tbl(p_num_records, x_dists.loc_attribute3_tbl);
849 fill_tbl(p_num_records, x_dists.loc_attribute4_tbl);
850 fill_tbl(p_num_records, x_dists.loc_attribute5_tbl);
851 fill_tbl(p_num_records, x_dists.loc_attribute6_tbl);
852 fill_tbl(p_num_records, x_dists.loc_attribute7_tbl);
853 fill_tbl(p_num_records, x_dists.loc_attribute8_tbl);
854 fill_tbl(p_num_records, x_dists.loc_attribute9_tbl);
855 fill_tbl(p_num_records, x_dists.loc_attribute10_tbl);
856 fill_tbl(p_num_records, x_dists.loc_attribute11_tbl);
857 fill_tbl(p_num_records, x_dists.loc_attribute12_tbl);
858 fill_tbl(p_num_records, x_dists.loc_attribute13_tbl);
859 fill_tbl(p_num_records, x_dists.loc_attribute14_tbl);
860 fill_tbl(p_num_records, x_dists.loc_attribute15_tbl);
861
862 -- attributes read from line record
863 fill_tbl(p_num_records, x_dists.ln_order_type_lookup_code_tbl);
864 fill_tbl(p_num_records, x_dists.ln_purchase_basis_tbl);
865 fill_tbl(p_num_records, x_dists.ln_item_id_tbl);
866 fill_tbl(p_num_records, x_dists.ln_category_id_tbl);
867 fill_tbl(p_num_records, x_dists.ln_line_type_id_tbl);
868 fill_tbl(p_num_records, x_dists.ln_po_line_id_tbl);
869 fill_tbl(p_num_records, x_dists.ln_attribute1_tbl);
870 fill_tbl(p_num_records, x_dists.ln_attribute2_tbl);
871 fill_tbl(p_num_records, x_dists.ln_attribute3_tbl);
872 fill_tbl(p_num_records, x_dists.ln_attribute4_tbl);
873 fill_tbl(p_num_records, x_dists.ln_attribute5_tbl);
874 fill_tbl(p_num_records, x_dists.ln_attribute6_tbl);
875 fill_tbl(p_num_records, x_dists.ln_attribute7_tbl);
876 fill_tbl(p_num_records, x_dists.ln_attribute8_tbl);
877 fill_tbl(p_num_records, x_dists.ln_attribute9_tbl);
878 fill_tbl(p_num_records, x_dists.ln_attribute10_tbl);
879 fill_tbl(p_num_records, x_dists.ln_attribute11_tbl);
880 fill_tbl(p_num_records, x_dists.ln_attribute12_tbl);
881 fill_tbl(p_num_records, x_dists.ln_attribute13_tbl);
882 fill_tbl(p_num_records, x_dists.ln_attribute14_tbl);
883 fill_tbl(p_num_records, x_dists.ln_attribute15_tbl);
884
885 -- attributes read from header record
886 fill_tbl(p_num_records, x_dists.draft_id_tbl);
887 fill_tbl(p_num_records, x_dists.hd_agent_id_tbl);
888 fill_tbl(p_num_records, x_dists.hd_po_header_id_tbl);
889 fill_tbl(p_num_records, x_dists.hd_rate_date_tbl);
890 fill_tbl(p_num_records, x_dists.hd_rate_tbl);
891 fill_tbl(p_num_records, x_dists.hd_type_lookup_code_tbl);
892 fill_tbl(p_num_records, x_dists.hd_vendor_id_tbl);
893 fill_tbl(p_num_records, x_dists.hd_attribute1_tbl);
894 fill_tbl(p_num_records, x_dists.hd_attribute2_tbl);
895 fill_tbl(p_num_records, x_dists.hd_attribute3_tbl);
896 fill_tbl(p_num_records, x_dists.hd_attribute4_tbl);
897 fill_tbl(p_num_records, x_dists.hd_attribute5_tbl);
898 fill_tbl(p_num_records, x_dists.hd_attribute6_tbl);
899 fill_tbl(p_num_records, x_dists.hd_attribute7_tbl);
900 fill_tbl(p_num_records, x_dists.hd_attribute8_tbl);
901 fill_tbl(p_num_records, x_dists.hd_attribute9_tbl);
902 fill_tbl(p_num_records, x_dists.hd_attribute10_tbl);
903 fill_tbl(p_num_records, x_dists.hd_attribute11_tbl);
904 fill_tbl(p_num_records, x_dists.hd_attribute12_tbl);
905 fill_tbl(p_num_records, x_dists.hd_attribute13_tbl);
906 fill_tbl(p_num_records, x_dists.hd_attribute14_tbl);
907 fill_tbl(p_num_records, x_dists.hd_attribute15_tbl);
908
909 -- attributes added for processing
910 fill_tbl(p_num_records, x_dists.ship_to_ou_id_tbl);
911 fill_tbl(p_num_records, x_dists.ship_to_ou_coa_id_tbl);
912 fill_tbl(p_num_records, x_dists.item_status_tbl);
913 fill_tbl(p_num_records, x_dists.gms_txn_required_flag_tbl);
914 fill_tbl(p_num_records, x_dists.dist_num_unique_tbl);
915 fill_tbl(p_num_records, x_dists.error_flag_tbl);
916
917 --attributes added for clm pdoi integration
918 fill_tbl(p_num_records, x_dists.clm_defence_funding_tbl);
919 fill_tbl(p_num_records, x_dists.clm_fms_case_number_tbl);
920 fill_tbl(p_num_records, x_dists.clm_agency_acct_identifier_tbl);
921 fill_tbl(p_num_records, x_dists.clm_misc_loa_tbl);
922 fill_tbl(p_num_records, x_dists.group_line_id_tbl);
923 fill_tbl(p_num_records, x_dists.quantity_funded_tbl);
924 fill_tbl(p_num_records, x_dists.amount_funded_tbl);
925
926
927 IF (PO_LOG.d_proc) THEN
928 PO_LOG.proc_end (d_module);
929 END IF;
930
931
932 EXCEPTION
933 WHEN OTHERS THEN
934 PO_MESSAGE_S.add_exc_msg
935 (
936 p_pkg_name => d_pkg_name,
937 p_procedure_name => d_api_name || '.' || d_position
938 );
939 RAISE;
940 END fill_all_dists_attr;
941
942 -----------------------------------------------------------------------
943 --Start of Comments
944 --Name: fill_all_price_diffs_attr
945 --Function:
946 -- Initialize all the pl/sql tables in the record type. It also sets
947 -- the record count
948 --Parameters:
949 --IN:
950 -- p_num_records
951 -- Number of entries for each pl/sql tables in the record type
952 --IN OUT:
953 -- x_headers
954 -- Trecord of tables holding price differential information
955 --OUT:
956 --End of Comments
957 ------------------------------------------------------------------------
958 PROCEDURE fill_all_price_diffs_attr
959 ( p_num_records IN NUMBER,
960 x_price_diffs IN OUT NOCOPY price_diffs_rec_type
961 ) IS
962
963 d_api_name CONSTANT VARCHAR2(30) := 'fill_all_price_diffs_attr';
964 d_module CONSTANT VARCHAR2(255) := d_pkg_name || d_api_name || '.';
965 d_position NUMBER;
966
967 BEGIN
968 d_position := 0;
969
970 IF (PO_LOG.d_proc) THEN
971 PO_LOG.proc_begin(d_module);
972 END IF;
973
974 -- set record count
975 x_price_diffs.rec_count := p_num_records;
976
977 fill_tbl(p_num_records, x_price_diffs.intf_price_diff_id_tbl);
978 fill_tbl(p_num_records, x_price_diffs.intf_line_id_tbl); -- bug 5215781
979 fill_tbl(p_num_records, x_price_diffs.intf_header_id_tbl); -- bug 5215781
980 fill_tbl(p_num_records, x_price_diffs.price_diff_num_tbl);
981 fill_tbl(p_num_records, x_price_diffs.price_type_tbl);
982 fill_tbl(p_num_records, x_price_diffs.entity_type_tbl);
983 fill_tbl(p_num_records, x_price_diffs.entity_id_tbl);
984 fill_tbl(p_num_records, x_price_diffs.multiplier_tbl);
985 fill_tbl(p_num_records, x_price_diffs.min_multiplier_tbl);
986 fill_tbl(p_num_records, x_price_diffs.max_multiplier_tbl);
987
988 -- attribute read from line location
989 fill_tbl(p_num_records, x_price_diffs.loc_line_loc_id_tbl);
990
991 -- attributes read from line record
992 fill_tbl(p_num_records, x_price_diffs.ln_po_line_id_tbl);
993
994 -- attributes read from header record
995 fill_tbl(p_num_records, x_price_diffs.draft_id_tbl);
996 fill_tbl(p_num_records, x_price_diffs.hd_style_id_tbl);
997
998 -- attributes added for processing
999 fill_tbl(p_num_records, x_price_diffs.error_flag_tbl);
1000 fill_tbl(p_num_records, x_price_diffs.price_diff_num_unique_tbl);
1001
1002
1003 IF (PO_LOG.d_proc) THEN
1004 PO_LOG.proc_end (d_module);
1005 END IF;
1006
1007 EXCEPTION
1008 WHEN OTHERS THEN
1009 PO_MESSAGE_S.add_exc_msg
1010 (
1011 p_pkg_name => d_pkg_name,
1012 p_procedure_name => d_api_name || '.' || d_position
1013 );
1014 RAISE;
1015 END fill_all_price_diffs_attr;
1016
1017 -----------------------------------------------------------------------
1018 --Start of Comments
1019 --Name: fill_all_attr_values_attr
1020 --Function:
1021 -- Initialize all the pl/sql tables in the record type. It also sets
1022 -- the record count
1023 --Parameters:
1024 --IN:
1025 -- p_num_records
1026 -- Number of entries for each pl/sql tables in the record type
1027 --IN OUT:
1028 -- x_headers
1029 -- Trecord of tables holding attribute values information
1030 --OUT:
1031 --End of Comments
1032 ------------------------------------------------------------------------
1033 PROCEDURE fill_all_attr_values_attr
1034 ( p_num_records IN NUMBER,
1035 x_attr_values IN OUT NOCOPY attr_values_rec_type
1036 ) IS
1037
1038 d_api_name CONSTANT VARCHAR2(30) := 'fill_all_attr_values_attr';
1039 d_module CONSTANT VARCHAR2(255) := d_pkg_name || d_api_name || '.';
1040 d_position NUMBER;
1041
1042 BEGIN
1043 d_position := 0;
1044
1045 IF (PO_LOG.d_proc) THEN
1046 PO_LOG.proc_begin(d_module);
1047 END IF;
1048
1049 -- set record count
1050 x_attr_values.rec_count := p_num_records;
1051
1052 -- attribute from attr_values table
1053 fill_tbl(p_num_records, x_attr_values.intf_attr_values_id_tbl);
1054 fill_tbl(p_num_records, x_attr_values.org_id_tbl);
1055
1056 -- attributes from line record
1057 fill_tbl(p_num_records, x_attr_values.ln_po_line_id_tbl);
1058 fill_tbl(p_num_records, x_attr_values.ln_ip_category_id_tbl);
1059 fill_tbl(p_num_records, x_attr_values.ln_item_id_tbl);
1060
1061 -- attribute from header record
1062 fill_tbl(p_num_records, x_attr_values.draft_id_tbl);
1063
1064 -- attributes added for processing purpose
1065 fill_tbl(p_num_records, x_attr_values.attribute_values_id_tbl);
1066 fill_tbl(p_num_records, x_attr_values.error_flag_tbl);
1067
1068 IF (PO_LOG.d_proc) THEN
1069 PO_LOG.proc_end (d_module);
1070 END IF;
1071
1072 EXCEPTION
1073 WHEN OTHERS THEN
1074 PO_MESSAGE_S.add_exc_msg
1075 (
1076 p_pkg_name => d_pkg_name,
1077 p_procedure_name => d_api_name || '.' || d_position
1078 );
1079 RAISE;
1080 END fill_all_attr_values_attr;
1081
1082 -----------------------------------------------------------------------
1083 --Start of Comments
1084 --Name: fill_all_attr_values_tlp_attr
1085 --Function:
1086 -- Initialize all the pl/sql tables in the record type. It also sets
1087 -- the record count
1088 --Parameters:
1089 --IN:
1090 -- p_num_records
1091 -- Number of entries for each pl/sql tables in the record type
1092 --IN OUT:
1093 -- x_headers
1094 -- Trecord of tables holding attribute values tlp information
1095 --OUT:
1096 --End of Comments
1097 ------------------------------------------------------------------------
1098 PROCEDURE fill_all_attr_values_tlp_attr
1099 ( p_num_records IN NUMBER,
1100 x_attr_values_tlp IN OUT NOCOPY attr_values_tlp_rec_type
1101 ) IS
1102
1103 d_api_name CONSTANT VARCHAR2(30) := 'fill_all_attr_values_tlp_attr';
1104 d_module CONSTANT VARCHAR2(255) := d_pkg_name || d_api_name || '.';
1105 d_position NUMBER;
1106
1107 BEGIN
1108 d_position := 0;
1109
1110 IF (PO_LOG.d_proc) THEN
1111 PO_LOG.proc_begin(d_module);
1112 END IF;
1113
1114 -- set record count
1115 x_attr_values_tlp.rec_count := p_num_records;
1116
1117 -- attribute from attr_values table
1118 fill_tbl(p_num_records, x_attr_values_tlp.intf_attr_values_tlp_id_tbl);
1119 fill_tbl(p_num_records, x_attr_values_tlp.language_tbl);
1120 fill_tbl(p_num_records, x_attr_values_tlp.org_id_tbl);
1121
1122 -- attribute from line
1123 fill_tbl(p_num_records, x_attr_values_tlp.ln_po_line_id_tbl);
1124 fill_tbl(p_num_records, x_attr_values_tlp.ln_ip_category_id_tbl);
1125 fill_tbl(p_num_records, x_attr_values_tlp.ln_item_id_tbl);
1126 fill_tbl(p_num_records, x_attr_values_tlp.ln_item_desc_tbl);
1127
1128 -- attribute from headers
1129 fill_tbl(p_num_records, x_attr_values_tlp.draft_id_tbl);
1130
1131 -- attributes added for processing purpose
1132 fill_tbl(p_num_records, x_attr_values_tlp.error_flag_tbl);
1133 fill_tbl(p_num_records, x_attr_values_tlp.attribute_values_tlp_id_tbl);
1134
1135 IF (PO_LOG.d_proc) THEN
1136 PO_LOG.proc_end (d_module);
1137 END IF;
1138
1139 EXCEPTION
1140 WHEN OTHERS THEN
1141 PO_MESSAGE_S.add_exc_msg
1142 (
1143 p_pkg_name => d_pkg_name,
1144 p_procedure_name => d_api_name || '.' || d_position
1145 );
1146 RAISE;
1147 END fill_all_attr_values_tlp_attr;
1148
1149 --------------------------------------------------------------------------
1150 ---------------------- PRIVATE PROCEDURES --------------------------------
1151 --------------------------------------------------------------------------
1152
1153 -----------------------------------------------------------------------
1154 --Start of Comments
1155 --Name: fill_tbl
1156 --Function:
1157 -- Initialize the pl/sql structure if it is NULL, and allocating the memory
1158 -- for the number of records specified. Otherwise, do nothing
1159 --Parameters:
1160 --IN:
1161 -- p_num_records
1162 -- Number of entries to be allocated for the pl/sql structure
1163 --IN OUT:
1164 -- x_tbl
1165 -- Table to initialize
1166 --OUT:
1167 --End of Comments
1168 ------------------------------------------------------------------------
1169 PROCEDURE fill_tbl
1170 ( p_num_records IN NUMBER,
1171 x_tbl IN OUT NOCOPY PO_TBL_NUMBER
1172 ) IS
1173 BEGIN
1174 IF (x_tbl IS NOT NULL AND x_tbl.COUNT > 0 AND x_tbl.COUNT = p_num_records) THEN --8449373
1175 RETURN;
1176 END IF;
1177
1178 x_tbl := PO_TBL_NUMBER();
1179 x_tbl.EXTEND(p_num_records);
1180
1181 END fill_tbl;
1182
1183 -----------------------------------------------------------------------
1184 --Start of Comments
1185 --Name: fill_tbl
1186 --Function:
1187 -- Overload procedure
1188 --End of Comments
1189 ------------------------------------------------------------------------
1190 PROCEDURE fill_tbl
1191 ( p_num_records IN NUMBER,
1192 x_tbl IN OUT NOCOPY PO_TBL_DATE
1193 ) IS
1194 BEGIN
1195 IF (x_tbl IS NOT NULL AND x_tbl.COUNT > 0 AND x_tbl.COUNT = p_num_records) THEN --8449373
1196 RETURN;
1197 END IF;
1198
1199 x_tbl := PO_TBL_DATE();
1200 x_tbl.EXTEND(p_num_records);
1201
1202 END fill_tbl;
1203
1204 -----------------------------------------------------------------------
1205 --Start of Comments
1206 --Name: fill_tbl
1207 --Function:
1208 -- Overload procedure
1209 --End of Comments
1210 ------------------------------------------------------------------------
1211 PROCEDURE fill_tbl
1212 ( p_num_records IN NUMBER,
1213 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR1
1214 ) IS
1215 BEGIN
1216 IF (x_tbl IS NOT NULL AND x_tbl.COUNT > 0 AND x_tbl.COUNT = p_num_records) THEN --8449373
1217 RETURN;
1218 END IF;
1219
1220 x_tbl := PO_TBL_VARCHAR1();
1221 x_tbl.EXTEND(p_num_records);
1222
1223 END fill_tbl;
1224
1225 -----------------------------------------------------------------------
1226 --Start of Comments
1227 --Name: fill_tbl
1228 --Function:
1229 -- Overload procedure
1230 --End of Comments
1231 ------------------------------------------------------------------------
1232 PROCEDURE fill_tbl
1233 ( p_num_records IN NUMBER,
1234 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR5
1235 ) IS
1236 BEGIN
1237 IF (x_tbl IS NOT NULL AND x_tbl.COUNT > 0 AND x_tbl.COUNT = p_num_records) THEN --8449373
1238 RETURN;
1239 END IF;
1240
1241 x_tbl := PO_TBL_VARCHAR5();
1242 x_tbl.EXTEND(p_num_records);
1243
1244 END fill_tbl;
1245
1246 -----------------------------------------------------------------------
1247 --Start of Comments
1248 --Name: fill_tbl
1249 --Function:
1250 -- Overload procedure
1251 --End of Comments
1252 ------------------------------------------------------------------------
1253 PROCEDURE fill_tbl
1254 ( p_num_records IN NUMBER,
1255 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR30
1256 ) IS
1257 BEGIN
1258 IF (x_tbl IS NOT NULL AND x_tbl.COUNT > 0 AND x_tbl.COUNT = p_num_records) THEN --8449373
1259 RETURN;
1260 END IF;
1261
1262 x_tbl := PO_TBL_VARCHAR30();
1263 x_tbl.EXTEND(p_num_records);
1264
1265 END fill_tbl;
1266
1267 -----------------------------------------------------------------------
1268 --Start of Comments
1269 --Name: fill_tbl
1270 --Function:
1271 -- Overload procedure
1272 --End of Comments
1273 ------------------------------------------------------------------------
1274 PROCEDURE fill_tbl
1275 ( p_num_records IN NUMBER,
1276 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR100
1277 ) IS
1278 BEGIN
1279 IF (x_tbl IS NOT NULL AND x_tbl.COUNT > 0 AND x_tbl.COUNT = p_num_records) THEN --8449373
1280 RETURN;
1281 END IF;
1282
1283 x_tbl := PO_TBL_VARCHAR100();
1284 x_tbl.EXTEND(p_num_records);
1285
1286 END fill_tbl;
1287
1288 -----------------------------------------------------------------------
1289 --Start of Comments
1290 --Name: fill_tbl
1291 --Function:
1292 -- Overload procedure
1293 --End of Comments
1294 ------------------------------------------------------------------------
1295 PROCEDURE fill_tbl
1296 ( p_num_records IN NUMBER,
1297 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR2000
1298 ) IS
1299 BEGIN
1300 IF (x_tbl IS NOT NULL AND x_tbl.COUNT > 0 AND x_tbl.COUNT = p_num_records) THEN --8449373
1301 RETURN;
1302 END IF;
1303
1304 x_tbl := PO_TBL_VARCHAR2000();
1305 x_tbl.EXTEND(p_num_records);
1306
1307 END fill_tbl;
1308
1309 -----------------------------------------------------------------------
1310 --Start of Comments
1311 --Name: fill_tbl
1312 --Function:
1313 -- Overload procedure
1314 --End of Comments
1315 ------------------------------------------------------------------------
1316 PROCEDURE fill_tbl
1317 ( p_num_records IN NUMBER,
1318 x_tbl IN OUT NOCOPY PO_TBL_VARCHAR240
1319 ) IS
1320 BEGIN
1321 IF (x_tbl IS NOT NULL AND x_tbl.COUNT > 0 AND x_tbl.COUNT = p_num_records) THEN
1322 RETURN;
1323 END IF;
1324
1325 x_tbl := PO_TBL_VARCHAR240();
1326 x_tbl.EXTEND(p_num_records);
1327
1328 END fill_tbl;
1329
1330
1331 END PO_PDOI_TYPES;