[Home] [Help]
1146: l_draft_id_tbl PO_TBL_NUMBER;
1147: l_delete_flag_tbl PO_TBL_VARCHAR1;
1148: l_record_already_exist_tbl PO_TBL_VARCHAR1;
1149: l_change_status VARCHAR2(30);
1150: l_change_status_tbl PO_TBL_VARCHAR30;-- used po_ga_org_assign_draft,po_notification_ctrl_draft
1151: BEGIN
1152:
1153: l_org_assignment_id_tbl:= Po_Tbl_Number();
1154: l_notification_id_tbl:= Po_Tbl_Number();
1362: PO_LOG.stmt(d_module,d_position ,'synced Header_ext tables');
1363: END IF;
1364:
1365: /* Sync records coresponding to po_ga_org_assignments */
1366: --delete the recored from po_ga_org_assign_draft for the given header_id and draft_id
1367: -- and then insert the data from the base table
1368: SELECT org_assignment_id,
1369: p_draft_id,
1370: 'N',
1372: BULK COLLECT INTO l_org_assignment_id_tbl,
1373: l_draft_id_tbl,
1374: l_delete_flag_tbl,
1375: l_change_status_tbl
1376: FROM po_ga_org_assign_draft
1377: WHERE po_header_id=l_po_header_id
1378: AND draft_id = p_draft_id ;
1379:
1380: FORALL i in 1 ..l_org_assignment_id_tbl.COUNT
1377: WHERE po_header_id=l_po_header_id
1378: AND draft_id = p_draft_id ;
1379:
1380: FORALL i in 1 ..l_org_assignment_id_tbl.COUNT
1381: DELETE FROM po_ga_org_assign_draft pgoad
1382: WHERE pgoad.org_assignment_id = l_org_assignment_id_tbl(i)
1383: AND pgoad.draft_id = p_draft_id ;
1384:
1385: PO_GA_ORG_ASSIGN_DRAFT_PKG.sync_draft_from_txn
1381: DELETE FROM po_ga_org_assign_draft pgoad
1382: WHERE pgoad.org_assignment_id = l_org_assignment_id_tbl(i)
1383: AND pgoad.draft_id = p_draft_id ;
1384:
1385: PO_GA_ORG_ASSIGN_DRAFT_PKG.sync_draft_from_txn
1386: ( p_org_assignment_id_tbl => l_org_assignment_id_tbl,
1387: p_draft_id_tbl => l_draft_id_tbl,
1388: p_delete_flag_tbl => l_delete_flag_tbl,
1389: x_record_already_exist_tbl => l_record_already_exist_tbl
1389: x_record_already_exist_tbl => l_record_already_exist_tbl
1390: );
1391:
1392: FORALL i in 1 ..l_org_assignment_id_tbl.COUNT
1393: UPDATE po_ga_org_assign_draft pgoad
1394: SET pgoad.change_status = l_change_status_tbl(i)
1395: WHERE pgoad.org_assignment_id = l_org_assignment_id_tbl(i)
1396: AND pgoad.draft_id = p_draft_id ;
1397:
1396: AND pgoad.draft_id = p_draft_id ;
1397:
1398: d_position := 60;
1399: IF (PO_LOG.d_stmt) THEN
1400: PO_LOG.stmt(d_module,d_position ,'PO_GA_ORG_ASSIGN_DRAFT_PKG.sync_draft_from_txn');
1401: END IF;
1402:
1403: /* Sync records coresponding to po_notification_controls */
1404: --delete the recored from po_notification_ctrl_draft for the given header_id and draft_id