[Home] [Help]
227: p_return_status := 'U';
228: End;
229:
230: /*---------------------------------------------------------------------------------------------------------
231: -- This procedure populates PA_DEDUCTION_TRANSACTIONS_ALL table after validating the data.
232: -- Input parameters
233: -- Parameters Type Required Description
234: -- p_dctn_dtl TABLE YES It stores the deduction transactions information
235: -- Out parameters
314: IF P_DEBUG_MODE = 'Y' THEN
315: log_message ('Before inserting into deduction transaction ', g_api_name);
316: END IF;
317:
318: INSERT INTO PA_DEDUCTION_TRANSACTIONS_ALL (
319: deduction_req_id
320: ,deduction_req_tran_id
321: ,project_id
322: ,task_id
372:
373: FORALL I in 1..l_dctn_tbl_hdrid.COUNT --l_dctn_hdrtbl.COUNT
374: UPDATE PA_DEDUCTIONS_ALL SET total_amount = nvl((
375: SELECT SUM(amount) FROM
376: PA_DEDUCTION_TRANSACTIONS_ALL
377: WHERE deduction_req_id = l_dctn_tbl_hdrid(i) --l_dctn_hdrtbl(i).p_dctn_hdr_id
378: ),0) ,
379: total_pfc_amount = nvl((
380: SELECT
378: ),0) ,
379: total_pfc_amount = nvl((
380: SELECT
381: SUM(nvl(override_projfunc_amount,orig_projfunc_amount)) FROM
382: PA_DEDUCTION_TRANSACTIONS_ALL
383: WHERE deduction_req_id = l_dctn_tbl_hdrid(i)
384: ),0)
385: WHERE deduction_req_id = l_dctn_tbl_hdrid(i);--l_dctn_hdrtbl(i).p_dctn_hdr_id;
386:
474: p_return_status := 'U';
475: End;
476:
477: /*---------------------------------------------------------------------------------------------------------
478: -- This procedure is to update existing data in PA_DEDUCTION_TRANSACTIONS_ALL table after
479: -- validating the data.
480: -- Input parameters
481: -- Parameters Type Required Description
482: -- p_dctn_dtl TABLE YES It stores the deduction transactions information
554: IF P_DEBUG_MODE = 'Y' THEN
555: log_message ('Before updating the deduction transaction table',g_api_name);
556: END IF;
557:
558: UPDATE pa_deduction_transactions_all
559: SET task_id = p_dctn_dtl(i).task_id
560: ,expenditure_type = p_dctn_dtl(i).expenditure_type
561: ,expenditure_org_id = p_dctn_dtl(i).expenditure_org_id
562: ,quantity = p_dctn_dtl(i).quantity
583:
584: FORALL I in 1..l_dctn_tbl_hdrid.COUNT
585: UPDATE PA_DEDUCTIONS_ALL SET total_amount = nvl((
586: SELECT SUM(amount) FROM
587: PA_DEDUCTION_TRANSACTIONS_ALL
588: WHERE deduction_req_id = l_dctn_tbl_hdrid(i) --l_dctn_hdrtbl(i).p_dctn_hdr_id
589: ),0),
590: total_pfc_amount = nvl((
591: SELECT SUM(nvl(override_projfunc_amount,orig_projfunc_amount)) FROM
588: WHERE deduction_req_id = l_dctn_tbl_hdrid(i) --l_dctn_hdrtbl(i).p_dctn_hdr_id
589: ),0),
590: total_pfc_amount = nvl((
591: SELECT SUM(nvl(override_projfunc_amount,orig_projfunc_amount)) FROM
592: PA_DEDUCTION_TRANSACTIONS_ALL
593: WHERE deduction_req_id = l_dctn_tbl_hdrid(i)
594: ),0)
595: WHERE deduction_req_id = l_dctn_tbl_hdrid(i);--l_dctn_hdrtbl(i).p_dctn_hdr_id;
596:
647: log_message ('Before deleting the transaction information',g_api_name);
648: END IF;
649:
650: FORALL I IN 1..p_dctn_hdrid.COUNT
651: DELETE PA_DEDUCTION_TRANSACTIONS_ALL WHERE deduction_req_id = p_dctn_hdrid(I) AND NOT EXISTS(
652: SELECT 1 FROM PA_DEDUCTIONS_ALL WHERE deduction_req_id = p_dctn_hdrid(I) );
653: --Commit;
654: EXCEPTION
655: WHEN OTHERS THEN
661: p_return_status := 'U';
662: End;
663:
664: /*---------------------------------------------------------------------------------------------------------
665: -- This procedure is to delete existing data in PA_DEDUCTION_TRANSACTIONS_ALL table
666: -- after validating the data.
667: -- Input parameters
668: -- Parameters Type Required Description
669: -- p_dctn_txnid TABLE YES It stores the array of deducion request transactions
697: END IF;
698:
699: FORALL I IN 1..p_dctn_txnid.COUNT
700: UPDATE PA_DEDUCTIONS_ALL dctn_hdr SET total_amount = total_amount-nvl(
701: (SELECT amount FROM PA_DEDUCTION_TRANSACTIONS_ALL dctn_txn
702: WHERE deduction_req_tran_id = p_dctn_txnid(I)
703: AND deduction_req_id = dctn_hdr.deduction_req_id
704: AND EXISTS (
705: SELECT 1 FROM PA_DEDUCTIONS_ALL WHERE deduction_req_id = dctn_txn.deduction_req_id
708: log_message ('Deleting the data from transaction table',g_api_name);
709: END IF;
710:
711: FORALL I IN 1..p_dctn_txnid.COUNT
712: DELETE PA_DEDUCTION_TRANSACTIONS_ALL dctn_txn WHERE deduction_req_tran_id = p_dctn_txnid(I)
713: AND EXISTS (
714: SELECT 1 FROM PA_DEDUCTIONS_ALL WHERE deduction_req_id = dctn_txn.deduction_req_id
715: AND status NOT IN('PROCESSED','SUBMITTED','APPROVED'));
716: --Commit;
952: WHERE deduction_req_id = p_dctn_req_id;
953:
954: CURSOR C2(c_exp_item_id NUMBER, p_dctn_txn_id NUMBER) IS
955: SELECT 'Y'
956: FROM PA_DEDUCTION_TRANSACTIONS_ALL
957: WHERE expenditure_item_id = c_exp_item_id
958: AND deduction_req_tran_id <> p_dctn_txn_id;
959:
960: CURSOR C3(p_po_header_id NUMBER) IS
1196: x_err_stage VARCHAR2(2000);
1197: x_err_code NUMBER;
1198:
1199: CURSOR C1 IS
1200: SELECT * FROM PA_DEDUCTION_TRANSACTIONS_ALL
1201: WHERE deduction_req_id = p_dctn_req_id;
1202:
1203: l_dctn_req_cnt NUMBER;
1204: p_next_number PA_DEDUCTIONS_ALL.debit_memo_num%TYPE;
1461: ) IS
1462:
1463: CURSOR C2(p_dctn_req_id PA_DEDUCTIONS_ALL.deduction_req_id%TYPE) IS
1464: SELECT *
1465: FROM PA_DEDUCTION_TRANSACTIONS_ALL WHERE deduction_req_id = p_dctn_req_id;
1466:
1467: l_int_invoice_id NUMBER;
1468: l_int_invoice_line_id NUMBER;
1469: