2320:
2321: d_position := 30;
2322:
2323: -- add default attr_values and attr_values_tlp if not provided
2324: PO_PDOI_ATTR_PROCESS_PVT.add_default_attrs;
2325:
2326: d_position := 40;
2327:
2328: PO_TIMING_UTL.stop_time(PO_PDOI_CONSTANTS.g_T_ATTR_PROCESS);
2396: PO_LOG.proc_begin(d_module);
2397: END IF;
2398:
2399: -- open cursor for query to retrieve attr value records
2400: PO_PDOI_ATTR_PROCESS_PVT.open_attr_values
2401: (
2402: p_max_intf_attr_values_id => l_max_intf_attr_values_id,
2403: x_attr_values_csr => l_attr_values_csr
2404: );
2408: -- fetch records from attr values interface table and process the records
2409: LOOP
2410: BEGIN
2411: -- fetch one batch of records from query result
2412: PO_PDOI_ATTR_PROCESS_PVT.fetch_attr_values
2413: (
2414: x_attr_values_csr => l_attr_values_csr,
2415: x_attr_values => l_attr_values
2416: );
2452: EXIT;
2453: END IF;
2454:
2455: -- determine the action for each attr value record
2456: PO_PDOI_ATTR_PROCESS_PVT.check_attr_actions
2457: (
2458: x_processing_row_tbl => l_processing_row_tbl,
2459: x_attr_values => l_attr_values,
2460: x_merge_row_tbl => l_merge_row_tbl,
2505: PO_PDOI_UTL.commit_work;
2506:
2507: IF (l_attr_values_csr%ISOPEN) THEN
2508: CLOSE l_attr_values_csr;
2509: PO_PDOI_ATTR_PROCESS_PVT.open_attr_values
2510: (
2511: p_max_intf_attr_values_id => l_max_intf_attr_values_id,
2512: x_attr_values_csr => l_attr_values_csr
2513: );
2587: PO_LOG.proc_begin(d_module);
2588: END IF;
2589:
2590: -- open cursor for query to retrieve attr value records
2591: PO_PDOI_ATTR_PROCESS_PVT.open_attr_values_tlp
2592: (
2593: p_max_intf_attr_values_tlp_id => l_max_intf_attr_values_tlp_id,
2594: x_attr_values_tlp_csr => l_attr_values_tlp_csr
2595: );
2599: -- fetch records from attr values tlp interface table and process the records
2600: LOOP
2601: BEGIN
2602: -- fetch one batch of records from query result
2603: PO_PDOI_ATTR_PROCESS_PVT.fetch_attr_values_tlp
2604: (
2605: x_attr_values_tlp_csr => l_attr_values_tlp_csr,
2606: x_attr_values_tlp => l_attr_values_tlp
2607: );
2643: EXIT;
2644: END IF;
2645:
2646: -- determine the action for each attr value tlp record
2647: PO_PDOI_ATTR_PROCESS_PVT.check_attr_tlp_actions
2648: (
2649: x_processing_row_tbl => l_processing_row_tbl,
2650: x_attr_values_tlp => l_attr_values_tlp,
2651: x_merge_row_tbl => l_merge_row_tbl,
2696: PO_PDOI_UTL.commit_work;
2697:
2698: IF (l_attr_values_tlp_csr%ISOPEN) THEN
2699: CLOSE l_attr_values_tlp_csr;
2700: PO_PDOI_ATTR_PROCESS_PVT.open_attr_values_tlp
2701: (
2702: p_max_intf_attr_values_tlp_id => l_max_intf_attr_values_tlp_id,
2703: x_attr_values_tlp_csr => l_attr_values_tlp_csr
2704: );