115: * Also sets prevent encumbrace flag to 'Y' in the po_req_distributions table.
116: * Effects: This api split the requisition lines, if needed, depending on the
117: * allocation done by the sourcing user. This api uses a global temp. table
118: * to massage the input given by sourcing and inserts records into
119: * po_requisition_lines_all and po_req_distributions_all table. This api also
120: * handles the encumbrace effect of splitting requisition lines. This api would
121: * be called from ORacle sourcing workflow.
122: *
123: * Returns:
219: l_current_ou_id PO_REQUISITION_LINES_ALL.org_id%TYPE;
220: l_org_context_changed VARCHAR2(1) := 'N';
221:
222: -- bug 5249299
223: l_project_id po_req_distributions_all.project_id%TYPE;
224: l_task_id po_req_distributions_all.task_id%TYPE;
225: l_award_id po_req_distributions_all.award_id%TYPE;
226: l_expenditure_type po_req_distributions_all.expenditure_type%TYPE;
227: l_expenditure_item_date po_req_distributions_all.expenditure_item_date%TYPE;
220: l_org_context_changed VARCHAR2(1) := 'N';
221:
222: -- bug 5249299
223: l_project_id po_req_distributions_all.project_id%TYPE;
224: l_task_id po_req_distributions_all.task_id%TYPE;
225: l_award_id po_req_distributions_all.award_id%TYPE;
226: l_expenditure_type po_req_distributions_all.expenditure_type%TYPE;
227: l_expenditure_item_date po_req_distributions_all.expenditure_item_date%TYPE;
228: l_distribution_id po_req_distributions_all.distribution_id%TYPE;
221:
222: -- bug 5249299
223: l_project_id po_req_distributions_all.project_id%TYPE;
224: l_task_id po_req_distributions_all.task_id%TYPE;
225: l_award_id po_req_distributions_all.award_id%TYPE;
226: l_expenditure_type po_req_distributions_all.expenditure_type%TYPE;
227: l_expenditure_item_date po_req_distributions_all.expenditure_item_date%TYPE;
228: l_distribution_id po_req_distributions_all.distribution_id%TYPE;
229: l_award_set_id po_req_distributions_all.award_id%TYPE;
222: -- bug 5249299
223: l_project_id po_req_distributions_all.project_id%TYPE;
224: l_task_id po_req_distributions_all.task_id%TYPE;
225: l_award_id po_req_distributions_all.award_id%TYPE;
226: l_expenditure_type po_req_distributions_all.expenditure_type%TYPE;
227: l_expenditure_item_date po_req_distributions_all.expenditure_item_date%TYPE;
228: l_distribution_id po_req_distributions_all.distribution_id%TYPE;
229: l_award_set_id po_req_distributions_all.award_id%TYPE;
230: l_status VARCHAR2(1);
223: l_project_id po_req_distributions_all.project_id%TYPE;
224: l_task_id po_req_distributions_all.task_id%TYPE;
225: l_award_id po_req_distributions_all.award_id%TYPE;
226: l_expenditure_type po_req_distributions_all.expenditure_type%TYPE;
227: l_expenditure_item_date po_req_distributions_all.expenditure_item_date%TYPE;
228: l_distribution_id po_req_distributions_all.distribution_id%TYPE;
229: l_award_set_id po_req_distributions_all.award_id%TYPE;
230: l_status VARCHAR2(1);
231:
224: l_task_id po_req_distributions_all.task_id%TYPE;
225: l_award_id po_req_distributions_all.award_id%TYPE;
226: l_expenditure_type po_req_distributions_all.expenditure_type%TYPE;
227: l_expenditure_item_date po_req_distributions_all.expenditure_item_date%TYPE;
228: l_distribution_id po_req_distributions_all.distribution_id%TYPE;
229: l_award_set_id po_req_distributions_all.award_id%TYPE;
230: l_status VARCHAR2(1);
231:
232: CURSOR l_req_dist_proj_csr(l_req_line_id number) IS
225: l_award_id po_req_distributions_all.award_id%TYPE;
226: l_expenditure_type po_req_distributions_all.expenditure_type%TYPE;
227: l_expenditure_item_date po_req_distributions_all.expenditure_item_date%TYPE;
228: l_distribution_id po_req_distributions_all.distribution_id%TYPE;
229: l_award_set_id po_req_distributions_all.award_id%TYPE;
230: l_status VARCHAR2(1);
231:
232: CURSOR l_req_dist_proj_csr(l_req_line_id number) IS
233: SELECT distribution_id,
235: task_id,
236: award_id,
237: expenditure_type,
238: expenditure_item_date
239: FROM po_req_distributions_all
240: WHERE requisition_line_id = l_req_line_id;
241:
242: l_req_dist_proj_rec l_req_dist_proj_csr%ROWTYPE;
243: -- bug 5249299
1578: l_org_context_changed := 'Y';
1579: l_old_line_requesting_ou_id := l_line_requesting_ou_id;
1580: END IF;
1581:
1582: INSERT INTO po_req_distributions_all --
1584: LAST_UPDATE_DATE ,
1585: LAST_UPDATED_BY ,
1586: REQUISITION_LINE_ID ,
1714: TAX_RECOVERY_OVERRIDE_FLAG ,
1715: AWARD_ID ,
1716: OKE_CONTRACT_LINE_ID ,
1717: OKE_CONTRACT_DELIVERABLE_ID
1718: FROM po_req_distributions_all --
1720: requisition_line_id_rslt_tbl(l_create_dist_index);
1721:
1722: IF (FND_LOG.G_CURRENT_RUNTIME_LEVEL <= FND_LOG.LEVEL_STATEMENT) THEN
1870: req_line_id_round_tbl,
1871: min_dist_id_round_tbl,
1872: sum_req_line_qty_round_tbl,
1873: req_line_qty_round_tbl
1874: FROM po_req_distributions_all prd, --
1876: WHERE prd.requisition_line_id = prs.new_req_line_id
1877: AND prs.record_status in ('S','N')
1878: GROUP BY prd.requisition_line_id;
1912: -- with the excess/less of the sum of quantities of all
1913: -- the distribution lines.
1914: --sql why : To take care of rounding issue.
1915: FORALL l_qty_rounding_index in 1.. req_line_id_round_tbl.COUNT
1916: UPDATE po_req_distributions_all --
1918: (req_line_qty_round_tbl(l_qty_rounding_index)-
1919: sum_req_line_qty_round_tbl(l_qty_rounding_index))
1920: WHERE distribution_id=