228:
229: PO_TIMING_UTL.start_time(PO_PDOI_CONSTANTS.g_T_HEADER_PROCESS);
230:
231: -- open cursor for the query which retrieve the header info
232: PO_PDOI_HEADER_PROCESS_PVT.open_headers
233: (
234: p_max_intf_header_id => l_max_intf_header_id,
235: x_headers_csr => l_headers_csr
236: );
240: -- fetch records from header interface table and process the records
241: LOOP
242: BEGIN
243: -- fetch one batch of header records from query result
244: PO_PDOI_HEADER_PROCESS_PVT.fetch_headers
245: (
246: x_headers_csr => l_headers_csr,
247: x_headers => l_headers
248: );
267: l_headers.intf_id_index_tbl(l_headers.intf_header_id_tbl(i)) := i;
268: END LOOP;
269:
270: -- derive logic
271: PO_PDOI_HEADER_PROCESS_PVT.derive_headers
272: (
273: x_headers => l_headers
274: );
275:
275:
276: d_position := 30;
277:
278: -- default logic
279: PO_PDOI_HEADER_PROCESS_PVT.default_headers
280: (
281: x_headers => l_headers
282: );
283:
283:
284: d_position := 40;
285:
286: -- validate logic
287: PO_PDOI_HEADER_PROCESS_PVT.validate_headers
288: (
289: x_headers => l_headers
290: );
291:
347: PO_PDOI_UTL.commit_work;
348:
349: IF (l_headers_csr%ISOPEN) THEN
350: CLOSE l_headers_csr;
351: PO_PDOI_HEADER_PROCESS_PVT.open_headers
352: (
353: p_max_intf_header_id => l_max_intf_header_id,
354: x_headers_csr => l_headers_csr
355: );