[Home] [Help]
PACKAGE: APPS.OKL_GENERATE_ACCRUALS_PVT
Source
1 PACKAGE OKL_GENERATE_ACCRUALS_PVT AUTHID CURRENT_USER AS
2 /* $Header: OKLRACRS.pls 120.14.12010000.4 2009/12/15 09:58:01 racheruv ship $ */
3 ---------------------------------------------------------------------------
4 -- GLOBAL DATASTRUCTURES
5 ---------------------------------------------------------------------------
6
7 -- commenting stream_type_name as not needed. SGIYER 27-APR-2005
8 TYPE stream_rec_type IS RECORD (
9 stream_type_id OKL_STRM_TYPE_V.id%TYPE,
10 stream_type_name OKL_STRM_TYPE_V.name%TYPE,
11 stream_id OKL_STREAMS_V.id%TYPE,
12 stream_element_id OKL_STRM_ELEMENTS_V.id%TYPE,
13 stream_amount OKL_STRM_ELEMENTS_V.amount%TYPE,
14 kle_id OKL_STREAMS.KLE_ID%TYPE);
15
16 TYPE accrual_rec_type IS RECORD (
17 contract_id OKL_K_HEADERS_FULL_V.ID%TYPE,
18 sty_id OKL_TXL_CNTRCT_LNS.sty_id%TYPE,
19 set_of_books_id OKL_TRX_CONTRACTS.SET_OF_BOOKS_ID%TYPE,
20 reverse_date_to DATE,
21 accrual_date DATE,
22 trx_date DATE,
23 contract_number OKL_K_HEADERS_FULL_V.CONTRACT_NUMBER%TYPE,
24 rule_result OKL_TRX_CONTRACTS.ACCRUAL_STATUS_YN%TYPE,
25 override_status OKL_TRX_CONTRACTS.UPDATE_STATUS_YN%TYPE,
26 description OKL_TRX_CONTRACTS.DESCRIPTION%TYPE,
27 amount OKL_TRX_CONTRACTS.AMOUNT%TYPE,
28 currency_code OKL_TRX_CONTRACTS.CURRENCY_CODE%TYPE,
29 currency_conversion_type OKL_TRX_CONTRACTS.CURRENCY_CONVERSION_TYPE%TYPE,
30 currency_conversion_rate OKL_TRX_CONTRACTS.CURRENCY_CONVERSION_RATE%TYPE,
31 currency_conversion_date OKL_TRX_CONTRACTS.CURRENCY_CONVERSION_DATE%TYPE,
32 product_id OKL_PRODUCTS_V.ID%TYPE,
33 trx_type_id OKL_TRX_TYPES_V.ID%TYPE,
34 advance_arrears OKL_AE_TEMPLATES.ADVANCE_ARREARS%TYPE,
35 factoring_synd_flag OKL_AE_TEMPLATES.FACTORING_SYND_FLAG%TYPE,
36 post_to_gl VARCHAR2(1),
37 gl_reversal_flag VARCHAR2(1),
38 memo_yn VARCHAR2(1),
39 accrual_activity OKL_TRX_CONTRACTS.ACCRUAL_ACTIVITY%TYPE,
40 accrual_rule_yn VARCHAR2(1),
41 source_trx_id OKL_TRX_CONTRACTS.SOURCE_TRX_ID%TYPE,
42 source_trx_type OKL_TRX_CONTRACTS.SOURCE_TRX_TYPE%TYPE,
43 -- Bug 5707866 Added by dpsingh
44 accrual_reversal_date OKL_TRX_CONTRACTS.ACCRUAL_REVERSAL_DATE%TYPE,
45 trx_number OKL_TRX_CONTRACTS.TRX_NUMBER%TYPE,
46 primary_rep_trx_id OKL_TRX_CONTRACTS.PRIMARY_REP_TRX_ID%TYPE);
47 -- Added new field accelerate_from_date by akrangan for bug 5526955
48 TYPE acceleration_rec_type IS RECORD (
49 khr_id OKL_K_HEADERS_FULL_V.id%TYPE,
50 kle_id OKL_K_LINES_FULL_V.id%TYPE,
51 sty_id OKL_STRM_TYPE_V.id%TYPE,
52 acceleration_date DATE,
53 accelerate_till_date DATE,
54 description OKL_TRX_CONTRACTS.description%TYPE,
55 accrual_rule_yn OKL_TXL_CNTRCT_LNS.accrual_rule_yn%TYPE,
56 accelerate_from_date DATE DEFAULT NULL,
57 trx_number OKL_TRX_CONTRACTS.TRX_NUMBER%TYPE DEFAULT NULL); --MGAAP 7263041
58
59 TYPE adjust_accrual_rec_type IS RECORD(
60 contract_id OKL_K_HEADERS_FULL_V.ID%TYPE,
61 accrual_date OKL_TRX_CONTRACTS.DATE_ACCRUAL%TYPE,
62 description OKL_TRX_CONTRACTS.DESCRIPTION%TYPE,
63 source_trx_id OKL_TRX_CONTRACTS.SOURCE_TRX_ID%TYPE,
64 source_trx_type OKL_TRX_CONTRACTS.SOURCE_TRX_TYPE%TYPE,
65 trx_number OKL_TRX_CONTRACTS.TRX_NUMBER%TYPE);
66
67 TYPE stream_tbl_type IS TABLE OF stream_rec_type
68 INDEX BY BINARY_INTEGER;
69
70 TYPE acceleration_tbl_type IS TABLE OF acceleration_rec_type
71 INDEX BY BINARY_INTEGER;
72
73 -- Bug 9191475
74 TYPE trxnum_tbl_type is table of okl_trx_contracts.trx_number%TYPE
75 index by varchar2(20);
76
77 ---------------------------------------------------------------------------
78 -- GLOBAL MESSAGE CONSTANTS
79 ---------------------------------------------------------------------------
80 G_FND_APP CONSTANT VARCHAR2(200) := Okl_Api.G_FND_APP;
81 G_COL_NAME_TOKEN CONSTANT VARCHAR2(200) := Okl_Api.G_COL_NAME_TOKEN;
82 G_PARENT_TABLE_TOKEN CONSTANT VARCHAR2(200) := Okl_Api.G_PARENT_TABLE_TOKEN;
83 G_CHILD_TABLE_TOKEN CONSTANT VARCHAR2(200) := Okl_Api.G_CHILD_TABLE_TOKEN;
84 G_REQUIRED_VALUE CONSTANT VARCHAR2(200) := Okl_Api.G_REQUIRED_VALUE;
85 G_INVALID_VALUE CONSTANT VARCHAR2(200) := Okl_Api.G_INVALID_VALUE;
86 G_UNEXPECTED_ERROR CONSTANT VARCHAR2(200) := 'OKL_CONTRACTS_UNEXPECTED_ERROR';
87 G_SQLERRM_TOKEN CONSTANT VARCHAR2(200) := 'OKL_SQLerrm';
88 G_SQLCODE_TOKEN CONSTANT VARCHAR2(200) := 'OKL_SQLcode';
89 G_CONTRACT_NUMBER_TOKEN CONSTANT VARCHAR2(200) := 'CONTRACT_NUMBER';
90 G_STREAM_NAME_TOKEN CONSTANT VARCHAR2(200) := 'STREAM_NAME';
91 G_NO_MATCHING_RECORD CONSTANT VARCHAR2(2000) := 'OKL_LLA_NO_MATCHING_RECORD';
92 ---------------------------------------------------------------------------
93 -- GLOBAL EXCEPTION
94 ---------------------------------------------------------------------------
95 G_EXCEPTION_HALT_VALIDATION EXCEPTION;
96 ---------------------------------------------------------------------------
97
98 ---------------------------------------------------------------------------
99 -- GLOBAL VARIABLES
100 ---------------------------------------------------------------------------
101 G_PKG_NAME CONSTANT VARCHAR2(200) := 'OKL_GENERATE_ACCRUALS_PVT';
102 G_APP_NAME CONSTANT VARCHAR2(3) := Okl_Api.G_APP_NAME;
103 G_COMMIT_CYCLE CONSTANT NUMBER := 500;
104 ---------------------------------------------------------------------------
105 -- Procedures and Functions
106 ---------------------------------------------------------------------------
107
108 FUNCTION SUBMIT_ACCRUALS(
109 x_return_status OUT NOCOPY VARCHAR2,
110 x_msg_count OUT NOCOPY NUMBER,
111 x_msg_data OUT NOCOPY VARCHAR2,
112 p_api_version IN NUMBER,
113 p_accrual_date IN DATE,
114 p_batch_name IN VARCHAR2) RETURN NUMBER;
115
116
117 FUNCTION CALCULATE_OPERAND_VALUE(p_ctr_id IN OKL_K_HEADERS_FULL_V.ID%TYPE
118 ,p_operand_code IN VARCHAR2) RETURN NUMBER;
119
120 PROCEDURE GET_ACCRUAL_STREAMS(x_return_status OUT NOCOPY VARCHAR2
121 ,x_stream_tbl OUT NOCOPY stream_tbl_type
122 ,p_khr_id IN OKL_K_HEADERS.ID%TYPE
123 ,p_product_id IN OKL_PRODUCTS_V.ID%TYPE
124 ,p_ctr_start_date IN DATE
125 ,p_period_end_date IN DATE
126 ,p_accrual_rule_yn IN VARCHAR2);
127
128 PROCEDURE VALIDATE_ACCRUAL_RULE(x_return_status OUT NOCOPY VARCHAR2
129 ,x_result OUT NOCOPY VARCHAR2
130 ,p_ctr_id IN OKL_K_HEADERS.id%TYPE);
131
132 FUNCTION CALCULATE_CNTRCT_REC(p_ctr_id IN NUMBER) RETURN NUMBER;
133
134 FUNCTION GET_SYNDICATE_FLAG(p_contract_id IN NUMBER,
135 x_syndicate_flag OUT NOCOPY VARCHAR2) RETURN VARCHAR2;
136
137 FUNCTION GET_FACTORING_FLAG(p_contract_id IN NUMBER,
138 x_factoring_flag OUT NOCOPY VARCHAR2) RETURN VARCHAR2;
139
140 FUNCTION CHECK_DATE_ACCRUED_TILL(p_khr_id IN OKL_K_HEADERS_FULL_V.ID%TYPE
141 ,p_date IN DATE) RETURN VARCHAR2;
142
143 PROCEDURE GENERATE_ACCRUALS(errbuf OUT NOCOPY VARCHAR2
144 ,retcode OUT NOCOPY NUMBER
145 ,p_accrual_date IN VARCHAR2
146 ,p_batch_name IN VARCHAR2
147 ,p_contract_number IN VARCHAR2
148 ,p_rev_rec_method IN VARCHAR2);
149
150 PROCEDURE GENERATE_ACCRUALS_PARALLEL
151 (errbuf OUT NOCOPY VARCHAR2
152 ,retcode OUT NOCOPY NUMBER
153 ,p_accrual_date IN VARCHAR2
154 ,p_batch_name IN VARCHAR2
155 ,p_worker_id IN VARCHAR2
156 ,p_rev_rec_method IN VARCHAR2);
157
158 PROCEDURE CATCHUP_ACCRUALS (
159 p_api_version IN NUMBER,
160 p_init_msg_list IN VARCHAR2,
161 p_catchup_rec IN accrual_rec_type,
162 x_return_status OUT NOCOPY VARCHAR2,
163 x_msg_count OUT NOCOPY NUMBER,
164 x_msg_data OUT NOCOPY VARCHAR2,
165 x_tcnv_tbl OUT NOCOPY OKL_TRX_CONTRACTS_PUB.tcnv_tbl_type,
166 x_tclv_tbl OUT NOCOPY OKL_TRX_CONTRACTS_PUB.tclv_tbl_type,
167 p_representation_type IN VARCHAR2 DEFAULT 'PRIMARY'); --MGAAP 7263041
168
169 PROCEDURE REVERSE_ACCRUALS (
170 p_api_version IN NUMBER,
171 p_init_msg_list IN VARCHAR2,
172 p_reverse_rec IN accrual_rec_type,
173 x_return_status OUT NOCOPY VARCHAR2,
174 x_msg_count OUT NOCOPY NUMBER,
175 x_msg_data OUT NOCOPY VARCHAR2,
176 x_tcnv_tbl OUT NOCOPY OKL_TRX_CONTRACTS_PUB.tcnv_tbl_type,
177 x_tclv_tbl OUT NOCOPY OKL_TRX_CONTRACTS_PUB.tclv_tbl_type,
178 p_representation_type IN VARCHAR2 DEFAULT 'PRIMARY'); --MGAAP 7263041
179
180 PROCEDURE REVERSE_ACCRUALS (
181 p_api_version IN NUMBER,
182 p_init_msg_list IN VARCHAR2,
183 x_return_status OUT NOCOPY VARCHAR2,
184 x_msg_count OUT NOCOPY NUMBER,
185 x_msg_data OUT NOCOPY VARCHAR2,
186 p_khr_id IN NUMBER,
187 p_reversal_date IN DATE,
188 p_accounting_date IN DATE,
189 p_reverse_from IN DATE,
190 p_reverse_to IN DATE,
191 p_tcn_type IN VARCHAR2);
192
193 PROCEDURE REVERSE_ALL_ACCRUALS (
194 p_api_version IN NUMBER,
195 p_init_msg_list IN VARCHAR2,
196 p_khr_id IN NUMBER,
197 p_reverse_date IN DATE,
198 p_description IN VARCHAR2,
199 x_return_status OUT NOCOPY VARCHAR2,
200 x_msg_count OUT NOCOPY NUMBER,
201 x_msg_data OUT NOCOPY VARCHAR2);
202
203
204 PROCEDURE REVERSE_ACCRUALS (
205 p_api_version IN NUMBER,
206 p_init_msg_list IN VARCHAR2,
207 p_reverse_rec IN accrual_rec_type,
208 x_return_status OUT NOCOPY VARCHAR2,
209 x_msg_count OUT NOCOPY NUMBER,
210 x_msg_data OUT NOCOPY VARCHAR2,
211 x_rev_tcnv_tbl OUT NOCOPY OKL_TRX_CONTRACTS_PUB.tcnv_tbl_type,
212 x_rev_tclv_tbl OUT NOCOPY OKL_TRX_CONTRACTS_PUB.tclv_tbl_type,
213 x_memo_tcnv_tbl OUT NOCOPY OKL_TRX_CONTRACTS_PUB.tcnv_tbl_type,
214 x_memo_tclv_tbl OUT NOCOPY OKL_TRX_CONTRACTS_PUB.tclv_tbl_type,
215 p_representation_type IN VARCHAR2 DEFAULT 'PRIMARY'
216 );
217
218 PROCEDURE ACCELERATE_ACCRUALS (
219 p_api_version IN NUMBER,
220 p_init_msg_list IN VARCHAR2,
221 x_return_status OUT NOCOPY VARCHAR2,
222 x_msg_count OUT NOCOPY NUMBER,
223 x_msg_data OUT NOCOPY VARCHAR2,
224 p_acceleration_rec IN acceleration_rec_type,
225 p_representation_type IN VARCHAR2 DEFAULT 'PRIMARY', --MGAAP 7263041
226 x_trx_number OUT NOCOPY OKL_TRX_CONTRACTS.TRX_NUMBER%TYPE); --MGAAP 7263041
227
228 PROCEDURE ADJUST_ACCRUALS (
229 p_api_version IN NUMBER,
230 p_init_msg_list IN VARCHAR2,
231 x_return_status OUT NOCOPY VARCHAR2,
232 x_msg_count OUT NOCOPY NUMBER,
233 x_msg_data OUT NOCOPY VARCHAR2,
234 --x_trx_number OUT NOCOPY VARCHAR2,
235 x_trx_tbl IN OUT NOCOPY trxnum_tbl_type,
236 p_accrual_rec IN adjust_accrual_rec_type,
237 p_stream_tbl IN stream_tbl_type,
238 p_representation_type IN VARCHAR2 DEFAULT 'PRIMARY');
239
240 PROCEDURE GENERATE_ACCRUALS (
241 p_api_version IN NUMBER,
242 p_init_msg_list IN VARCHAR2,
243 x_return_status OUT NOCOPY VARCHAR2,
244 x_msg_count OUT NOCOPY NUMBER,
245 x_msg_data OUT NOCOPY VARCHAR2,
246 p_accrual_rec IN adjust_accrual_rec_type);
247
248 END OKL_GENERATE_ACCRUALS_PVT;