[Home] [Help]
PACKAGE BODY: APPS.OKL_CONTRACT_BOOK_PUB
Source
1 Package body okl_contract_book_PUB as
2 /* $Header: OKLPBKGB.pls 120.4 2007/05/11 22:42:55 asahoo ship $ */
3
4 -------------------------------------------------------------------------------------------------
5 -- GLOBAL MESSAGE CONSTANTS
6 -------------------------------------------------------------------------------------------------
7 G_NO_PARENT_RECORD CONSTANT VARCHAR2(200) := 'OKL_NO_PARENT_RECORD';
8 G_FND_APP CONSTANT VARCHAR2(200) := OKL_API.G_FND_APP;
9 G_REQUIRED_VALUE CONSTANT VARCHAR2(200) := OKL_API.G_REQUIRED_VALUE;
10 G_INVALID_VALUE CONSTANT VARCHAR2(200) := OKL_API.G_INVALID_VALUE;
11 G_UNEXPECTED_ERROR CONSTANT VARCHAR2(200) := 'OKL_CONTRACTS_UNEXP_ERROR';
12 G_SQLERRM_TOKEN CONSTANT VARCHAR2(200) := 'SQLerrm';
13 G_SQLCODE_TOKEN CONSTANT VARCHAR2(200) := 'SQLcode';
14 G_UPPERCASE_REQUIRED CONSTANT VARCHAR2(200) := 'OKL_CONTRACTS_UPPERCASE_REQ';
15 G_COL_NAME_TOKEN CONSTANT VARCHAR2(200) := OKL_API.G_COL_NAME_TOKEN;
16 ------------------------------------------------------------------------------------
17 -- GLOBAL EXCEPTION
18 ------------------------------------------------------------------------------------
19 G_EXCEPTION_HALT_VALIDATION EXCEPTION;
20 G_EXCEPTION_STOP_VALIDATION EXCEPTION;
21 G_API_TYPE CONSTANT VARCHAR2(4) := '_PUB';
22 G_API_VERSION CONSTANT NUMBER := 1.0;
23 G_SCOPE CONSTANT VARCHAR2(4) := '_PUB';
24
25 -- GLOBAL VARIABLES
26 -----------------------------------------------------------------------------------
27
28 Procedure execute_qa_check_list(
29 p_api_version IN NUMBER,
30 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
31 x_return_status OUT NOCOPY VARCHAR2,
32 x_msg_count OUT NOCOPY NUMBER,
33 x_msg_data OUT NOCOPY VARCHAR2,
34 p_qcl_id IN NUMBER,
35 p_chr_id IN NUMBER,
36 x_msg_tbl OUT NOCOPY OKL_QA_CHECK_PUB.msg_tbl_type) IS
37
38 l_api_name CONSTANT VARCHAR2(30) := 'EXECUTE_QA_CHECK_LIST';
39 l_api_version CONSTANT NUMBER := 1;
40 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
41
42 l_qcl_id NUMBER := p_qcl_id;
43 l_chr_id NUMBER := p_chr_id;
44
45 BEGIN
46
47
48
49
50 OKL_CONTRACT_BOOK_PVT.execute_qa_check_list(
51 p_api_version => p_api_version,
52 p_init_msg_list => p_init_msg_list,
53 x_return_status => x_return_status,
54 x_msg_count => x_msg_count,
55 x_msg_data => x_msg_data,
56 p_qcl_id => p_qcl_id,
57 p_chr_id => p_chr_id,
58 x_msg_tbl => x_msg_tbl);
59
60
61 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
62 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
63 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
64 RAISE OKL_API.G_EXCEPTION_ERROR;
65 END IF;
66
67
68
69 END execute_qa_check_list;
70
71 Procedure generate_journal_entries(
72 p_api_version IN NUMBER,
73 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
74 p_commit IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
75 p_contract_id IN NUMBER,
76 p_transaction_type IN VARCHAR2,
77 p_draft_yn IN VARCHAR2 DEFAULT OKC_Api.G_TRUE,
78 x_return_status OUT NOCOPY VARCHAR2,
79 x_msg_count OUT NOCOPY NUMBER,
80 x_msg_data OUT NOCOPY VARCHAR2) IS
81
82 l_api_name CONSTANT VARCHAR2(30) := 'GENERATE_JNL_ENTRIES';
83 l_api_version CONSTANT NUMBER := 1;
84 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
85
86 l_commit VARCHAR(1) := p_commit;
87 l_contract_id NUMBER := p_contract_id;
88 l_transaction_type VARCHAR2(256) := p_transaction_type;
89 l_draft_yn VARCHAR2(1) := p_draft_yn;
90 l_memo_yn VARCHAR2(1) := OKL_API.G_TRUE;
91
92 BEGIN
93
94
95
96 OKL_CONTRACT_BOOK_PVT.generate_journal_entries(
97 p_api_version,
98 p_init_msg_list,
99 p_commit,
100 p_contract_id,
101 p_transaction_type,
102 p_draft_yn,
103 x_return_status,
104 x_msg_count,
105 x_msg_data);
106
107 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
108 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
109 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
110 RAISE OKL_API.G_EXCEPTION_ERROR;
111 END IF;
112
113
114
115 END generate_journal_entries;
116
117 Procedure generate_streams(
118 p_api_version IN NUMBER,
119 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
120 p_chr_id IN VARCHAR2,
121 p_generation_context IN VARCHAR2,
122 x_return_status OUT NOCOPY VARCHAR2,
123 x_msg_count OUT NOCOPY NUMBER,
124 x_msg_data OUT NOCOPY VARCHAR2) IS
125
126 l_api_name CONSTANT VARCHAR2(30) := 'MAP_AND_GEN_STREAMS';
127 l_api_version CONSTANT NUMBER := 1;
128 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
129
130 l_chr_id VARCHAR2(256) := p_chr_id;
131 l_generation_context VARCHAR2(256) := p_generation_context;
132 l_skip_prc_engine VARCHAR2(1) := OKL_API.G_TRUE;
133 x_trx_number NUMBER;
134 x_trx_status VARCHAR2(30);
135
136 BEGIN
137
138 OKL_CONTRACT_BOOK_PVT.generate_streams(
139 p_api_version => p_api_version,
140 p_init_msg_list => p_init_msg_list,
141 p_chr_id => p_chr_id,
142 p_generation_context => p_generation_context,
143 x_return_status => x_return_status,
144 x_msg_count => x_msg_count,
145 x_msg_data => x_msg_data,
146 x_trx_number => x_trx_number,
147 x_trx_status => x_trx_status);
148
149 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
150 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
151 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
152 RAISE OKL_API.G_EXCEPTION_ERROR;
153 END IF;
154
155 END generate_streams;
156
157 Procedure submit_for_approval(
158 p_api_version IN NUMBER,
159 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
160 x_return_status OUT NOCOPY VARCHAR2,
161 x_msg_count OUT NOCOPY NUMBER,
162 x_msg_data OUT NOCOPY VARCHAR2,
163 p_chr_id IN VARCHAR2) IS
164
165 l_api_name CONSTANT VARCHAR2(30) := 'SUBMIT_FOR_APPROVAL';
166 l_api_version CONSTANT NUMBER := 1;
167 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
168 l_chr_id VARCHAR2(256) := p_chr_id;
169
170 BEGIN
171
172
173
174
175 OKL_CONTRACT_BOOK_PVT.submit_for_approval(
176 p_api_version,
177 p_init_msg_list,
178 x_return_status,
179 x_msg_count,
180 x_msg_data,
181 p_chr_id);
182
183 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
184 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
185 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
186 RAISE OKL_API.G_EXCEPTION_ERROR;
187 END IF;
188
189
190
191
192 END submit_for_approval;
193
194 Procedure activate_contract(
195 p_api_version IN NUMBER,
196 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
197 x_return_status OUT NOCOPY VARCHAR2,
198 x_msg_count OUT NOCOPY NUMBER,
199 x_msg_data OUT NOCOPY VARCHAR2,
200 p_chr_id IN VARCHAR2) IS
201
202 l_api_name CONSTANT VARCHAR2(30) := 'ACTIVATE_CONTRACT';
203 l_api_version CONSTANT NUMBER := 1;
204 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
205
206 l_chr_id VARCHAR2(256) := p_chr_id;
207 BEGIN
208
209
210
211
212
213 OKL_CONTRACT_BOOK_PVT.activate_contract(
214 p_api_version,
215 p_init_msg_list,
216 x_return_status,
217 x_msg_count,
218 x_msg_data,
219 p_chr_id);
220
221 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
222 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
223 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
224 RAISE OKL_API.G_EXCEPTION_ERROR;
225 END IF;
226
227
228
229 END activate_contract;
230
231 ----------------------------------------------------------------
232 --Bug# 3556674 : validate contract api to be called as an api to
233 -- run qa check list
234 -----------------------------------------------------------------
235 Procedure validate_contract(
236 p_api_version IN NUMBER,
237 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
238 x_return_status OUT NOCOPY VARCHAR2,
239 x_msg_count OUT NOCOPY NUMBER,
240 x_msg_data OUT NOCOPY VARCHAR2,
241 p_qcl_id IN NUMBER,
242 p_chr_id IN NUMBER,
243 x_msg_tbl OUT NOCOPY OKL_QA_CHECK_PUB.msg_tbl_type) IS
244
245 l_api_name CONSTANT VARCHAR2(30) := 'VALIDATE_CONTRACT';
246 l_api_version CONSTANT NUMBER := 1;
247 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
248
249 Begin
250 x_return_status := OKL_API.G_RET_STS_SUCCESS;
251 x_return_status := OKL_API.START_ACTIVITY(
252 p_api_name => l_api_name,
253 p_pkg_name => g_pkg_name,
254 p_init_msg_list => p_init_msg_list,
255 l_api_version => l_api_version,
256 p_api_version => p_api_version,
257 p_api_type => G_API_TYPE,
258 x_return_status => x_return_status);
259
260 -- check if activity started successfully
261 If (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) then
262 raise OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
263 ElSIF (x_return_status = OKL_API.G_RET_STS_ERROR) then
264 raise OKL_API.G_EXCEPTION_ERROR;
265 End If;
266
267 OKL_CONTRACT_BOOK_PVT.validate_contract(
268 p_api_version => p_api_version,
269 p_init_msg_list => p_init_msg_list,
270 x_return_status => x_return_status,
271 x_msg_count => x_msg_count,
272 x_msg_data => x_msg_data,
273 p_chr_id => p_chr_id,
274 p_qcl_id => p_qcl_id,
275 x_msg_tbl => x_msg_tbl);
276
277 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
278 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
279 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
280 RAISE OKL_API.G_EXCEPTION_ERROR;
281 END IF;
282
283 OKL_API.END_ACTIVITY(x_msg_count => x_msg_count, x_msg_data => x_msg_data);
284 Exception
285 when OKL_API.G_EXCEPTION_ERROR then
286 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
287 p_api_name => l_api_name,
288 p_pkg_name => g_pkg_name,
289 p_exc_name => 'OKL_API.G_RET_STS_ERROR',
290 x_msg_count => x_msg_count,
291 x_msg_data => x_msg_data,
292 p_api_type => g_api_type);
293
294 when OKL_API.G_EXCEPTION_UNEXPECTED_ERROR then
295 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
296 p_api_name => l_api_name,
297 p_pkg_name => g_pkg_name,
298 p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
299 x_msg_count => x_msg_count,
300 x_msg_data => x_msg_data,
301 p_api_type => g_api_type);
302
303 when OTHERS then
304 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
305 p_api_name => l_api_name,
306 p_pkg_name => g_pkg_name,
307 p_exc_name => 'OTHERS',
308 x_msg_count => x_msg_count,
309 x_msg_data => x_msg_data,
310 p_api_type => g_api_type);
311
312 End validate_contract;
313
314 ----------------------------------------------------------------
315 --Bug# 3556674 : generate_draft_accounting to be called as an api to
316 -- generate draft 'Booking' accounting entries
317 -----------------------------------------------------------------
318 Procedure generate_draft_accounting(
319 p_api_version IN NUMBER,
320 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
321 x_return_status OUT NOCOPY VARCHAR2,
322 x_msg_count OUT NOCOPY NUMBER,
323 x_msg_data OUT NOCOPY VARCHAR2,
324 p_chr_id IN NUMBER) IS
325
326 l_api_name CONSTANT VARCHAR2(30) := 'GENERATE_DRAFT_ACCT';
327 l_api_version CONSTANT NUMBER := 1;
328 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
329 Begin
330
331 x_return_status := OKL_API.G_RET_STS_SUCCESS;
332 x_return_status := OKL_API.START_ACTIVITY(
333 p_api_name => l_api_name,
334 p_pkg_name => g_pkg_name,
335 p_init_msg_list => p_init_msg_list,
336 l_api_version => l_api_version,
337 p_api_version => p_api_version,
338 p_api_type => G_API_TYPE,
339 x_return_status => x_return_status);
340
341 -- check if activity started successfully
342 If (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) then
343 raise OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
344 ElSIF (x_return_status = OKL_API.G_RET_STS_ERROR) then
345 raise OKL_API.G_EXCEPTION_ERROR;
346 End If;
347
348 OKL_CONTRACT_BOOK_PVT.generate_draft_accounting(
349 p_api_version => p_api_version,
350 p_init_msg_list => p_init_msg_list,
351 x_return_status => x_return_status,
352 x_msg_count => x_msg_count,
353 x_msg_data => x_msg_data,
354 p_chr_id => p_chr_id);
355
356 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
357 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
358 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
359 RAISE OKL_API.G_EXCEPTION_ERROR;
360 END IF;
361
362 OKL_API.END_ACTIVITY(x_msg_count => x_msg_count, x_msg_data => x_msg_data);
363
364 Exception
365 when OKL_API.G_EXCEPTION_ERROR then
366 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
367 p_api_name => l_api_name,
368 p_pkg_name => g_pkg_name,
369 p_exc_name => 'OKL_API.G_RET_STS_ERROR',
370 x_msg_count => x_msg_count,
371 x_msg_data => x_msg_data,
372 p_api_type => g_api_type);
373
374 when OKL_API.G_EXCEPTION_UNEXPECTED_ERROR then
375 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
376 p_api_name => l_api_name,
377 p_pkg_name => g_pkg_name,
378 p_exc_name => 'OKL_API.G_RET_STS_UNEXP_ERROR',
379 x_msg_count => x_msg_count,
380 x_msg_data => x_msg_data,
381 p_api_type => g_api_type);
382
383 when OTHERS then
384 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
385 p_api_name => l_api_name,
386 p_pkg_name => g_pkg_name,
387 p_exc_name => 'OTHERS',
388 x_msg_count => x_msg_count,
389 x_msg_data => x_msg_data,
390 p_api_type => g_api_type);
391
392 End generate_draft_Accounting;
393 End okl_contract_book_PUB;