[Home] [Help]
28: AND document_type = p_doc_type;
29: TYPE t_tbl_igc_cc_int IS TABLE OF c_igc_cc_int%ROWTYPE index by PLS_INTEGER;
30: g_tbl_igc_cc_int t_tbl_igc_cc_int;
31:
32: CURSOR c_gl_bc_packets(p_event_id NUMBER, p_ledger_id in NUMBER,p_document_type IN VARCHAR2) IS
33: SELECT
34: xte.source_id_int_1 CC_HEADER_ID
35: ,pck.source_distribution_id_num_1 CC_ACCT_LINE_ID
36: ,pck.code_combination_id CODE_COMBINATION_ID
61: ,xah.creation_date CREATION_DATE
62: FROM xla_ae_headers xah
63: ,xla_ae_lines xal
64: ,xla_transaction_entities xte
65: ,gl_bc_packets pck
66: WHERE xah.ae_header_id = pck.ae_header_id
67: AND xal.ae_header_id = pck.ae_header_id
68: AND xal.ae_line_num = pck.ae_line_num
69: AND xte.entity_id = xah.entity_id
70: AND pck.event_id = p_event_id
71: AND pck.ledger_id = p_ledger_id
72: Order by pck.event_id,pck.source_distribution_id_num_1;
73:
74: TYPE t_tbl_gl_bc_packets IS TABLE OF c_gl_bc_packets%ROWTYPE index by PLS_INTEGER;
75:
76: g_gl_pck_count NUMBER;
77:
78:
85: p_document_type IN VARCHAR2, p_document_id IN NUMBER
86: );
87:
88: PROCEDURE populate_sbc_records(
89: p_t_tbl_gl_pck IN t_tbl_gl_bc_packets
90: );
91:
92: PROCEDURE populate_igc_cc_int (
93: p_tbl_igc_cc_int IN t_tbl_igc_cc_int
144: END;
145:
146:
147: PROCEDURE populate_sbc_records(
148: p_t_tbl_gl_pck IN t_tbl_gl_bc_packets
149: ) IS
150: PRAGMA AUTONOMOUS_TRANSACTION;
151: l_batch_line_num NUMBER := g_gl_pck_count;
152: l_user_id NUMBER := fnd_global.user_id ;
362: l_event_details t_event_details;
363:
364: CURSOR c_ledger_details(p_event_id in NUMBER) is
365: Select distinct ledger_id, nvl(cbc_po_enable, 'N') cbc_enable
366: From gl_bc_packets pck,
367: igc_cc_bc_enable cbc
368: where event_id = p_event_id
369: and actual_flag = 'E'
370: and pck.ledger_id = cbc.set_of_books_id(+)
442: l_bc_return_status VARCHAR2(2) := null ;
443: l_batch_result_code VARCHAR2(3) ;
444: l_tbl_igc_cc_int t_tbl_igc_cc_int;
445:
446: l_t_gl_bc_packets_sbc t_tbl_gl_bc_packets;
447:
448: l_process_record VARCHAR2(1) := 'N';
449: l_return_status VARCHAR2(1) ;
450: l_msg_count NUMBER ;
648:
649: /* Delete old records from IGC_CC_INTERFACE table */
650: purge_igc_cc_int(l_main_type, l_main_doc_id);
651:
652: open c_gl_bc_packets(l_event_details(i_evt).event_id, l_ledger_id, l_document_type);
653: FETCH c_gl_bc_packets
654: BULK COLLECT INTO l_t_gl_bc_packets_sbc;
655: CLOSE c_gl_bc_packets;
656:
649: /* Delete old records from IGC_CC_INTERFACE table */
650: purge_igc_cc_int(l_main_type, l_main_doc_id);
651:
652: open c_gl_bc_packets(l_event_details(i_evt).event_id, l_ledger_id, l_document_type);
653: FETCH c_gl_bc_packets
654: BULK COLLECT INTO l_t_gl_bc_packets_sbc;
655: CLOSE c_gl_bc_packets;
656:
657: g_gl_pck_count := l_t_gl_bc_packets_sbc.LAST;
650: purge_igc_cc_int(l_main_type, l_main_doc_id);
651:
652: open c_gl_bc_packets(l_event_details(i_evt).event_id, l_ledger_id, l_document_type);
653: FETCH c_gl_bc_packets
654: BULK COLLECT INTO l_t_gl_bc_packets_sbc;
655: CLOSE c_gl_bc_packets;
656:
657: g_gl_pck_count := l_t_gl_bc_packets_sbc.LAST;
658:
651:
652: open c_gl_bc_packets(l_event_details(i_evt).event_id, l_ledger_id, l_document_type);
653: FETCH c_gl_bc_packets
654: BULK COLLECT INTO l_t_gl_bc_packets_sbc;
655: CLOSE c_gl_bc_packets;
656:
657: g_gl_pck_count := l_t_gl_bc_packets_sbc.LAST;
658:
659: /* Number of records in gl_bc_packets */
653: FETCH c_gl_bc_packets
654: BULK COLLECT INTO l_t_gl_bc_packets_sbc;
655: CLOSE c_gl_bc_packets;
656:
657: g_gl_pck_count := l_t_gl_bc_packets_sbc.LAST;
658:
659: /* Number of records in gl_bc_packets */
660:
661: IF (g_debug_mode = 'Y') THEN
655: CLOSE c_gl_bc_packets;
656:
657: g_gl_pck_count := l_t_gl_bc_packets_sbc.LAST;
658:
659: /* Number of records in gl_bc_packets */
660:
661: IF (g_debug_mode = 'Y') THEN
662: Put_Debug_Msg(l_full_path, 'Document Id'||l_main_doc_id || ' Records in gl_bc_packets '||l_t_gl_bc_packets_sbc.LAST);
663: END IF;
658:
659: /* Number of records in gl_bc_packets */
660:
661: IF (g_debug_mode = 'Y') THEN
662: Put_Debug_Msg(l_full_path, 'Document Id'||l_main_doc_id || ' Records in gl_bc_packets '||l_t_gl_bc_packets_sbc.LAST);
663: END IF;
664:
665: FOR l_ind IN l_t_gl_bc_packets_sbc.FIRST..l_t_gl_bc_packets_sbc.LAST
666: LOOP
661: IF (g_debug_mode = 'Y') THEN
662: Put_Debug_Msg(l_full_path, 'Document Id'||l_main_doc_id || ' Records in gl_bc_packets '||l_t_gl_bc_packets_sbc.LAST);
663: END IF;
664:
665: FOR l_ind IN l_t_gl_bc_packets_sbc.FIRST..l_t_gl_bc_packets_sbc.LAST
666: LOOP
667: IF l_document_type = 'REL' THEN
668: l_t_gl_bc_packets_sbc(l_ind).CC_HEADER_ID := l_main_doc_id;
669: l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE := l_main_type ;
664:
665: FOR l_ind IN l_t_gl_bc_packets_sbc.FIRST..l_t_gl_bc_packets_sbc.LAST
666: LOOP
667: IF l_document_type = 'REL' THEN
668: l_t_gl_bc_packets_sbc(l_ind).CC_HEADER_ID := l_main_doc_id;
669: l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE := l_main_type ;
670: END IF;
671: Insert into igc_cc_interface
672: (
665: FOR l_ind IN l_t_gl_bc_packets_sbc.FIRST..l_t_gl_bc_packets_sbc.LAST
666: LOOP
667: IF l_document_type = 'REL' THEN
668: l_t_gl_bc_packets_sbc(l_ind).CC_HEADER_ID := l_main_doc_id;
669: l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE := l_main_type ;
670: END IF;
671: Insert into igc_cc_interface
672: (
673: CC_HEADER_ID
696: ,CREATED_BY
697: )
698: Values
699: (
700: l_t_gl_bc_packets_sbc(l_ind).CC_HEADER_ID
701: ,l_t_gl_bc_packets_sbc(l_ind).CC_ACCT_LINE_ID
702: ,l_t_gl_bc_packets_sbc(l_ind).CODE_COMBINATION_ID
703: ,g_batch_line_const + l_ind
704: ,l_accounting_date
697: )
698: Values
699: (
700: l_t_gl_bc_packets_sbc(l_ind).CC_HEADER_ID
701: ,l_t_gl_bc_packets_sbc(l_ind).CC_ACCT_LINE_ID
702: ,l_t_gl_bc_packets_sbc(l_ind).CODE_COMBINATION_ID
703: ,g_batch_line_const + l_ind
704: ,l_accounting_date
705: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_DR_AMT
698: Values
699: (
700: l_t_gl_bc_packets_sbc(l_ind).CC_HEADER_ID
701: ,l_t_gl_bc_packets_sbc(l_ind).CC_ACCT_LINE_ID
702: ,l_t_gl_bc_packets_sbc(l_ind).CODE_COMBINATION_ID
703: ,g_batch_line_const + l_ind
704: ,l_accounting_date
705: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_DR_AMT
706: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_CR_AMT
701: ,l_t_gl_bc_packets_sbc(l_ind).CC_ACCT_LINE_ID
702: ,l_t_gl_bc_packets_sbc(l_ind).CODE_COMBINATION_ID
703: ,g_batch_line_const + l_ind
704: ,l_accounting_date
705: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_DR_AMT
706: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_CR_AMT
707: ,l_t_gl_bc_packets_sbc(l_ind).ACTUAL_FLAG
708: ,'C'
709: ,l_t_gl_bc_packets_sbc(l_ind).SET_OF_BOOKS_ID
702: ,l_t_gl_bc_packets_sbc(l_ind).CODE_COMBINATION_ID
703: ,g_batch_line_const + l_ind
704: ,l_accounting_date
705: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_DR_AMT
706: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_CR_AMT
707: ,l_t_gl_bc_packets_sbc(l_ind).ACTUAL_FLAG
708: ,'C'
709: ,l_t_gl_bc_packets_sbc(l_ind).SET_OF_BOOKS_ID
710: ,l_t_gl_bc_packets_sbc(l_ind).CURRENCY_CODE
703: ,g_batch_line_const + l_ind
704: ,l_accounting_date
705: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_DR_AMT
706: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_CR_AMT
707: ,l_t_gl_bc_packets_sbc(l_ind).ACTUAL_FLAG
708: ,'C'
709: ,l_t_gl_bc_packets_sbc(l_ind).SET_OF_BOOKS_ID
710: ,l_t_gl_bc_packets_sbc(l_ind).CURRENCY_CODE
711: ,l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE
705: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_DR_AMT
706: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_CR_AMT
707: ,l_t_gl_bc_packets_sbc(l_ind).ACTUAL_FLAG
708: ,'C'
709: ,l_t_gl_bc_packets_sbc(l_ind).SET_OF_BOOKS_ID
710: ,l_t_gl_bc_packets_sbc(l_ind).CURRENCY_CODE
711: ,l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE
712: ,l_t_gl_bc_packets_sbc(l_ind).TRANSACTION_DESCRIPTION
713: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_1
706: ,l_t_gl_bc_packets_sbc(l_ind).CC_FUNC_CR_AMT
707: ,l_t_gl_bc_packets_sbc(l_ind).ACTUAL_FLAG
708: ,'C'
709: ,l_t_gl_bc_packets_sbc(l_ind).SET_OF_BOOKS_ID
710: ,l_t_gl_bc_packets_sbc(l_ind).CURRENCY_CODE
711: ,l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE
712: ,l_t_gl_bc_packets_sbc(l_ind).TRANSACTION_DESCRIPTION
713: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_1
714: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_2
707: ,l_t_gl_bc_packets_sbc(l_ind).ACTUAL_FLAG
708: ,'C'
709: ,l_t_gl_bc_packets_sbc(l_ind).SET_OF_BOOKS_ID
710: ,l_t_gl_bc_packets_sbc(l_ind).CURRENCY_CODE
711: ,l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE
712: ,l_t_gl_bc_packets_sbc(l_ind).TRANSACTION_DESCRIPTION
713: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_1
714: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_2
715: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_3
708: ,'C'
709: ,l_t_gl_bc_packets_sbc(l_ind).SET_OF_BOOKS_ID
710: ,l_t_gl_bc_packets_sbc(l_ind).CURRENCY_CODE
711: ,l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE
712: ,l_t_gl_bc_packets_sbc(l_ind).TRANSACTION_DESCRIPTION
713: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_1
714: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_2
715: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_3
716: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_4
709: ,l_t_gl_bc_packets_sbc(l_ind).SET_OF_BOOKS_ID
710: ,l_t_gl_bc_packets_sbc(l_ind).CURRENCY_CODE
711: ,l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE
712: ,l_t_gl_bc_packets_sbc(l_ind).TRANSACTION_DESCRIPTION
713: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_1
714: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_2
715: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_3
716: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_4
717: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_5
710: ,l_t_gl_bc_packets_sbc(l_ind).CURRENCY_CODE
711: ,l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE
712: ,l_t_gl_bc_packets_sbc(l_ind).TRANSACTION_DESCRIPTION
713: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_1
714: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_2
715: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_3
716: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_4
717: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_5
718: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_6
711: ,l_t_gl_bc_packets_sbc(l_ind).DOCUMENT_TYPE
712: ,l_t_gl_bc_packets_sbc(l_ind).TRANSACTION_DESCRIPTION
713: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_1
714: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_2
715: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_3
716: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_4
717: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_5
718: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_6
719: ,'N'
712: ,l_t_gl_bc_packets_sbc(l_ind).TRANSACTION_DESCRIPTION
713: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_1
714: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_2
715: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_3
716: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_4
717: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_5
718: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_6
719: ,'N'
720: ,l_t_gl_bc_packets_sbc(l_ind).LAST_UPDATE_DATE
713: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_1
714: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_2
715: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_3
716: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_4
717: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_5
718: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_6
719: ,'N'
720: ,l_t_gl_bc_packets_sbc(l_ind).LAST_UPDATE_DATE
721: ,l_user_id
714: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_2
715: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_3
716: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_4
717: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_5
718: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_6
719: ,'N'
720: ,l_t_gl_bc_packets_sbc(l_ind).LAST_UPDATE_DATE
721: ,l_user_id
722: ,l_t_gl_bc_packets_sbc(l_ind).CREATION_DATE
716: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_4
717: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_5
718: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_6
719: ,'N'
720: ,l_t_gl_bc_packets_sbc(l_ind).LAST_UPDATE_DATE
721: ,l_user_id
722: ,l_t_gl_bc_packets_sbc(l_ind).CREATION_DATE
723: ,l_user_id
724: );
718: ,l_t_gl_bc_packets_sbc(l_ind).REFERENCE_6
719: ,'N'
720: ,l_t_gl_bc_packets_sbc(l_ind).LAST_UPDATE_DATE
721: ,l_user_id
722: ,l_t_gl_bc_packets_sbc(l_ind).CREATION_DATE
723: ,l_user_id
724: );
725: END LOOP;
726:
725: END LOOP;
726:
727:
728: IF (g_debug_mode = 'Y') THEN
729: Put_Debug_Msg(l_full_path, 'Calling PSA Budgetary Control : '||l_t_gl_bc_packets_sbc.LAST);
730: END IF;
731:
732: l_bc_success := igc_cbc_pa_bc_pkg.igcpafck(
733: l_ledger_id,
777: This procedure will be called in autonomous transaction mode
778: */
779: populate_igc_cc_int(l_tbl_igc_cc_int);
780:
781: populate_sbc_records(l_t_gl_bc_packets_sbc);
782:
783: IF (g_debug_mode = 'Y') THEN
784: Put_Debug_Msg(l_full_path, 'Call to populate_igc_cc_int is successful');
785: END IF;