[Home] [Help]
PACKAGE BODY: APPS.OKL_COPY_CONTRACT_PUB
Source
1 Package body okl_copy_contract_pub AS
2 /* $Header: OKLPCOPB.pls 120.3 2005/10/14 19:35:40 apaul noship $ */
3
4 G_API_VERSION CONSTANT NUMBER := 1;
5 G_SCOPE CONSTANT varchar2(4) := '_PUB';
6 G_INIT_MSG_LIST CONSTANT VARCHAR2(10) := OKL_API.G_FALSE;
7
8
9 FUNCTION is_copy_allowed(p_chr_id IN NUMBER,p_sts_code IN VARCHAR2 DEFAULT NULL) RETURN BOOLEAN IS
10 BEGIN
11 RETURN(OKL_COPY_CONTRACT_PVT.is_copy_allowed(p_chr_id,p_sts_code));
12 END is_copy_allowed;
13
14 FUNCTION is_subcontract_allowed(p_chr_id IN NUMBER,p_sts_code IN VARCHAR2) RETURN BOOLEAN IS
15 BEGIN
16 RETURN(OKL_COPY_CONTRACT_PVT.is_subcontract_allowed(p_chr_id,p_sts_code));
17 END is_subcontract_allowed;
18
19 FUNCTION update_target_contract(p_chr_id IN NUMBER) RETURN BOOLEAN IS
20 BEGIN
21 RETURN(OKL_COPY_CONTRACT_PVT.update_target_contract(p_chr_id));
22 END update_target_contract;
23
24 PROCEDURE derive_line_style(p_old_lse_id IN NUMBER,
25 p_old_jtot_code IN VARCHAR2,
26 p_new_subclass IN VARCHAR2,
27 p_new_parent_lse IN NUMBER,
28 x_new_lse_count OUT NOCOPY NUMBER,
29 x_new_lse_ids OUT NOCOPY VARCHAR2) IS
30 BEGIN
31 OKL_COPY_CONTRACT_PVT.derive_line_style(
32 p_old_lse_id => p_old_lse_id,
33 p_old_jtot_code => p_old_jtot_code,
34 p_new_subclass => p_new_subclass,
35 p_new_parent_lse => p_new_parent_lse,
36 x_new_lse_count => x_new_lse_count,
37 x_new_lse_ids => x_new_lse_ids);
38 END derive_line_style;
39
40 PROCEDURE copy_components(
41 p_api_version IN NUMBER,
42 p_init_msg_list IN VARCHAR2,
43 x_return_status OUT NOCOPY VARCHAR2,
44 x_msg_count OUT NOCOPY NUMBER,
45 x_msg_data OUT NOCOPY VARCHAR2,
46 p_from_chr_id IN NUMBER,
47 p_to_chr_id IN NUMBER,
48 p_contract_number IN VARCHAR2,
49 p_contract_number_modifier IN VARCHAR2,
50 p_to_template_yn IN VARCHAR2 DEFAULT 'N',
51 p_copy_reference IN VARCHAR2 DEFAULT 'COPY',
52 p_copy_line_party_yn IN VARCHAR2,
53 p_scs_code IN VARCHAR2,
54 p_intent IN VARCHAR2,
55 p_prospect IN VARCHAR2,
56 p_components_tbl IN api_components_tbl,
57 p_lines_tbl IN api_lines_tbl,
58 x_chr_id OUT NOCOPY NUMBER) IS
59
60 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_COMPONENTS';
61 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
62 BEGIN
63 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
64 G_PKG_NAME,
65 p_init_msg_list,
66 G_API_VERSION,
67 p_api_version,
68 G_SCOPE,
69 x_return_status);
70 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
71 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
72 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
73 RAISE OKL_API.G_EXCEPTION_ERROR;
74 END IF;
75
76 --Customer pre-processing Section
77 --Vertical Industry pre-processing Section
78 --Business Logic
79 OKL_COPY_CONTRACT_PVT.copy_components(
80 p_api_version => p_api_version,
81 p_init_msg_list => g_init_msg_list,
82 x_return_status => x_return_status,
83 x_msg_count => x_msg_count,
84 x_msg_data => x_msg_data,
85 p_from_chr_id => p_from_chr_id,
86 p_to_chr_id => p_to_chr_id,
87 p_contract_number => p_contract_number,
88 p_contract_number_modifier => p_contract_number_modifier,
89 p_to_template_yn => p_to_template_yn,
90 p_copy_reference => p_copy_reference,
91 p_copy_line_party_yn => p_copy_line_party_yn,
92 p_scs_code => p_scs_code,
93 p_intent => p_intent,
94 p_prospect => p_prospect,
95 p_components_tbl => p_components_tbl,
96 p_lines_tbl => p_lines_tbl,
97 x_chr_id => x_chr_id);
98
99 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
100 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
101 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
102 RAISE OKL_API.G_EXCEPTION_ERROR;
103 END IF;
104
105 --Vertical post-processing Section
106
107 --Customer post-processing Section
108
109 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
110
111 EXCEPTION
112 WHEN OKL_API.G_EXCEPTION_ERROR THEN
113 x_return_status := OKL_API.HANDLE_EXCEPTIONS
114 (substr(l_api_name,1,26),
115 G_PKG_NAME,
116 --bug# 2518454
117 --'OKC_API.G_RET_STS_ERROR',
118 'OKL_API.G_RET_STS_ERROR',
119 x_msg_count,
120 x_msg_data,
121 G_SCOPE);
122 -- Resetting the global transaction id.
123 okc_cvm_pvt.g_trans_id := 'XXX';
124 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
125 x_return_status := OKL_API.HANDLE_EXCEPTIONS
126 (substr(l_api_name,1,26),
127 G_PKG_NAME,
128 --bug# 2518454
129 --'OKC_API.G_RET_STS_ERROR',
130 'OKL_API.G_RET_STS_ERROR',
131 x_msg_count,
132 x_msg_data,
133 G_SCOPE);
134 -- Resetting the global transaction id.
135 okc_cvm_pvt.g_trans_id := 'XXX';
136 WHEN OTHERS THEN
137 -- store SQL error message on message stack for caller
138 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
139 x_return_status := OKL_API.HANDLE_EXCEPTIONS
140 (substr(l_api_name,1,26),
141 G_PKG_NAME,
142 'OTHERS',
143 x_msg_count,
144 x_msg_data,
145 G_SCOPE);
146 -- Resetting the global transaction id.
147 okc_cvm_pvt.g_trans_id := 'XXX';
148
149 END copy_components;
150
151 PROCEDURE copy_contract(
152 p_api_version IN NUMBER,
153 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
154 x_return_status OUT NOCOPY VARCHAR2,
155 x_msg_count OUT NOCOPY NUMBER,
156 x_msg_data OUT NOCOPY VARCHAR2,
157 p_commit IN VARCHAR2 DEFAULT 'F',
158 p_chr_id IN NUMBER,
159 p_contract_number IN VARCHAR2,
160 p_contract_number_modifier IN VARCHAR2,
161 p_to_template_yn IN VARCHAR2 DEFAULT 'N',
162 p_renew_ref_yn IN VARCHAR2,
163 p_override_org IN VARCHAR2 DEFAULT 'N',
164 x_chr_id OUT NOCOPY NUMBER) IS
165
166 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_CONTRACT';
167 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
168 BEGIN
169 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
170 G_PKG_NAME,
171 p_init_msg_list,
172 G_API_VERSION,
173 p_api_version,
174 G_SCOPE,
175 x_return_status);
176 --dbms_output.put_line('In Public :'||l_api_name||G_SCOPE);
177 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
178 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
179 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
180 RAISE OKL_API.G_EXCEPTION_ERROR;
181 END IF;
182
183 --Customer pre-processing Section
184
185 --Vertical pre-processing Section
186 --Business Logic
187 OKL_COPY_CONTRACT_PVT.copy_contract(
188 p_api_version => p_api_version,
189 p_init_msg_list => g_init_msg_list,
190 x_return_status => x_return_status,
191 x_msg_count => x_msg_count,
192 x_msg_data => x_msg_data,
193 p_commit => p_commit,
194 p_chr_id => p_chr_id,
195 p_contract_number => p_contract_number,
196 p_contract_number_modifier => p_contract_number_modifier,
197 p_to_template_yn => p_to_template_yn,
198 p_renew_ref_yn => p_renew_ref_yn,
199 p_copy_lines_yn => 'Y',
200 x_chr_id => x_chr_id);
201
202 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
203 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
204 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
205 RAISE OKL_API.G_EXCEPTION_ERROR;
206 END IF;
207
208
209
210 IF p_commit = OKL_API.G_TRUE THEN
211 commit;
212 END IF;
213
214 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
215
216 EXCEPTION
217 WHEN OKL_API.G_EXCEPTION_ERROR THEN
218 x_return_status := OKL_API.HANDLE_EXCEPTIONS
219 (substr(l_api_name,1,26),
220 G_PKG_NAME,
221 --bug# 2518454
222 --'OKC_API.G_RET_STS_ERROR',
223 'OKL_API.G_RET_STS_ERROR',
224 x_msg_count,
225 x_msg_data,
226 G_SCOPE);
227 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
228 x_return_status := OKL_API.HANDLE_EXCEPTIONS
229 (substr(l_api_name,1,26),
230 G_PKG_NAME,
231 'OKL_API.G_RET_STS_UNEXP_ERROR',
232 x_msg_count,
233 x_msg_data,
234 G_SCOPE);
235 WHEN OTHERS THEN
236 -- store SQL error message on message stack for caller
237 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
238 x_return_status := OKL_API.HANDLE_EXCEPTIONS
239 (substr(l_api_name,1,26),
240 G_PKG_NAME,
241 'OTHERS',
242 x_msg_count,
243 x_msg_data,
244 G_SCOPE);
245
246 END copy_contract;
247
248
249
250 PROCEDURE copy_lease_contract(
251 p_api_version IN NUMBER,
252 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
253 x_return_status OUT NOCOPY VARCHAR2,
254 x_msg_count OUT NOCOPY NUMBER,
255 x_msg_data OUT NOCOPY VARCHAR2,
256 p_commit IN VARCHAR2 DEFAULT 'F',
257 p_chr_id IN NUMBER,
258 p_contract_number IN VARCHAR2,
259 p_contract_number_modifier IN VARCHAR2,
260 p_to_template_yn IN VARCHAR2 DEFAULT 'N',
261 p_renew_ref_yn IN VARCHAR2,
262 p_override_org IN VARCHAR2 DEFAULT 'N',
263 p_trans_type IN VARCHAR2,
264 x_chr_id OUT NOCOPY NUMBER) IS
265
266 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_LEASE_CONTRACT';
267 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
268 BEGIN
269 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
270 G_PKG_NAME,
271 p_init_msg_list,
272 G_API_VERSION,
273 p_api_version,
274 G_SCOPE,
275 x_return_status);
276 --dbms_output.put_line('In Public :'||l_api_name||G_SCOPE);
277 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
278 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
279 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
280 RAISE OKL_API.G_EXCEPTION_ERROR;
281 END IF;
282
283 --Customer pre-processing Section
284
285 --Vertical pre-processing Section
286 --Business Logic
287 OKL_COPY_CONTRACT_PVT.copy_lease_contract(
288 p_api_version => p_api_version,
289 p_init_msg_list => g_init_msg_list,
290 x_return_status => x_return_status,
291 x_msg_count => x_msg_count,
292 x_msg_data => x_msg_data,
293 p_commit => p_commit,
294 p_chr_id => p_chr_id,
295 p_contract_number => p_contract_number,
296 p_contract_number_modifier => p_contract_number_modifier,
297 p_to_template_yn => p_to_template_yn,
298 p_renew_ref_yn => p_renew_ref_yn,
299 p_copy_lines_yn => 'Y',
300 p_override_org => p_override_org,
301 p_trans_type => p_trans_type,
302 x_chr_id => x_chr_id);
303 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
304 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
305 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
306 RAISE OKL_API.G_EXCEPTION_ERROR;
307 END IF;
308
309
310
311 IF p_commit = OKL_API.G_TRUE THEN
312 commit;
313 END IF;
314
315 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
316
317 EXCEPTION
318 WHEN OKL_API.G_EXCEPTION_ERROR THEN
319 x_return_status := OKL_API.HANDLE_EXCEPTIONS
320 (substr(l_api_name,1,26),
321 G_PKG_NAME,
322 --bug# 2518454
323 --'OKC_API.G_RET_STS_ERROR',
324 'OKL_API.G_RET_STS_ERROR',
325 x_msg_count,
326 x_msg_data,
327 G_SCOPE);
328 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
329 x_return_status := OKL_API.HANDLE_EXCEPTIONS
330 (substr(l_api_name,1,26),
331 G_PKG_NAME,
332 'OKL_API.G_RET_STS_UNEXP_ERROR',
333 x_msg_count,
334 x_msg_data,
335 G_SCOPE);
336 WHEN OTHERS THEN
337 -- store SQL error message on message stack for caller
338 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
339 x_return_status := OKL_API.HANDLE_EXCEPTIONS
340 (substr(l_api_name,1,26),
341 G_PKG_NAME,
342 'OTHERS',
343 x_msg_count,
344 x_msg_data,
345 G_SCOPE);
346
347 END copy_lease_contract;
348
349 PROCEDURE copy_lease_contract(
350 p_api_version IN NUMBER,
351 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
352 x_return_status OUT NOCOPY VARCHAR2,
353 x_msg_count OUT NOCOPY NUMBER,
354 x_msg_data OUT NOCOPY VARCHAR2,
355 p_commit IN VARCHAR2 DEFAULT 'F',
356 p_chr_id IN NUMBER,
357 p_contract_number IN VARCHAR2,
358 p_contract_number_modifier IN VARCHAR2,
359 p_to_template_yn IN VARCHAR2 DEFAULT 'N',
360 p_renew_ref_yn IN VARCHAR2,
361 p_copy_lines_yn IN VARCHAR2,
362 p_override_org IN VARCHAR2 DEFAULT 'N',
363 p_trans_type IN VARCHAR2,
364 x_chr_id OUT NOCOPY NUMBER) IS
365
366 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_LEASE_CONTRACT';
367 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
368 BEGIN
369 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
370 G_PKG_NAME,
371 p_init_msg_list,
372 G_API_VERSION,
373 p_api_version,
374 G_SCOPE,
375 x_return_status);
376 --dbms_output.put_line('In Public :'||l_api_name||G_SCOPE);
377 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
378 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
379 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
380 RAISE OKL_API.G_EXCEPTION_ERROR;
381 END IF;
382
383 --Customer pre-processing Section
384
385 --Vertical pre-processing Section
386 --Business Logic
387 OKL_COPY_CONTRACT_PVT.copy_lease_contract(
388 p_api_version => p_api_version,
389 p_init_msg_list => g_init_msg_list,
390 x_return_status => x_return_status,
391 x_msg_count => x_msg_count,
392 x_msg_data => x_msg_data,
393 p_commit => p_commit,
394 p_chr_id => p_chr_id,
395 p_contract_number => p_contract_number,
396 p_contract_number_modifier => p_contract_number_modifier,
397 p_to_template_yn => p_to_template_yn,
398 p_renew_ref_yn => p_renew_ref_yn,
399 p_copy_lines_yn => p_copy_lines_yn,
400 p_override_org => p_override_org,
401 p_trans_type => p_trans_type,
402 x_chr_id => x_chr_id);
403 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
404 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
405 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
406 RAISE OKL_API.G_EXCEPTION_ERROR;
407 END IF;
408
409
410
411 IF p_commit = OKL_API.G_TRUE THEN
412 commit;
413 END IF;
414
415 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
416
417 EXCEPTION
418 WHEN OKL_API.G_EXCEPTION_ERROR THEN
419 x_return_status := OKL_API.HANDLE_EXCEPTIONS
420 (substr(l_api_name,1,26),
421 G_PKG_NAME,
422 --bug# 2518454
423 --'OKC_API.G_RET_STS_ERROR',
424 'OKL_API.G_RET_STS_ERROR',
425 x_msg_count,
426 x_msg_data,
427 G_SCOPE);
428 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
429 x_return_status := OKL_API.HANDLE_EXCEPTIONS
430 (substr(l_api_name,1,26),
431 G_PKG_NAME,
432 'OKL_API.G_RET_STS_UNEXP_ERROR',
433 x_msg_count,
434 x_msg_data,
435 G_SCOPE);
436 WHEN OTHERS THEN
437 -- store SQL error message on message stack for caller
438 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
439 x_return_status := OKL_API.HANDLE_EXCEPTIONS
440 (substr(l_api_name,1,26),
441 G_PKG_NAME,
442 'OTHERS',
443 x_msg_count,
444 x_msg_data,
445 G_SCOPE);
446
447 END copy_lease_contract;
448
449
450 PROCEDURE copy_lease_contract_new(
451 p_api_version IN NUMBER,
452 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
453 x_return_status OUT NOCOPY VARCHAR2,
454 x_msg_count OUT NOCOPY NUMBER,
455 x_msg_data OUT NOCOPY VARCHAR2,
456 p_commit IN VARCHAR2 DEFAULT 'F',
457 p_chr_id IN NUMBER,
458 p_contract_number IN VARCHAR2,
459 p_contract_number_modifier IN VARCHAR2,
460 p_to_template_yn IN VARCHAR2 DEFAULT 'N',
461 p_renew_ref_yn IN VARCHAR2,
462 p_override_org IN VARCHAR2 DEFAULT 'N',
463 p_trans_type IN VARCHAR2,
464 x_chr_id OUT NOCOPY NUMBER,
465 p_rbk_date IN DATE DEFAULT NULL) IS
466
467 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_LEASE_CONTRACT';
468 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
469 BEGIN
470 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
471 G_PKG_NAME,
472 p_init_msg_list,
473 G_API_VERSION,
474 p_api_version,
475 G_SCOPE,
476 x_return_status);
477 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
478 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
479 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
480 RAISE OKL_API.G_EXCEPTION_ERROR;
481 END IF;
482
483 --Customer pre-processing Section
484
485 --Vertical pre-processing Section
486 --Business Logic
487 OKL_COPY_CONTRACT_PVT.copy_lease_contract_new(
488 p_api_version => p_api_version,
489 p_init_msg_list => g_init_msg_list,
490 x_return_status => x_return_status,
491 x_msg_count => x_msg_count,
492 x_msg_data => x_msg_data,
493 p_commit => p_commit,
494 p_chr_id => p_chr_id,
495 p_contract_number => p_contract_number,
496 p_contract_number_modifier => p_contract_number_modifier,
497 p_to_template_yn => p_to_template_yn,
498 p_renew_ref_yn => p_renew_ref_yn,
499 p_copy_lines_yn => 'Y',
500 p_override_org => p_override_org,
501 p_trans_type => p_trans_type,
502 x_chr_id => x_chr_id,
503 p_rbk_date => p_rbk_date);
504 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
505 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
506 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
507 RAISE OKL_API.G_EXCEPTION_ERROR;
508 END IF;
509
510
511
512 IF p_commit = OKL_API.G_TRUE THEN
513 commit;
514 END IF;
515
516 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
517
518 EXCEPTION
519 WHEN OKL_API.G_EXCEPTION_ERROR THEN
520 x_return_status := OKL_API.HANDLE_EXCEPTIONS
521 (substr(l_api_name,1,26),
522 G_PKG_NAME,
523 --bug# 2518454
524 --'OKC_API.G_RET_STS_ERROR',
525 'OKL_API.G_RET_STS_ERROR',
526 x_msg_count,
527 x_msg_data,
528 G_SCOPE);
529 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
530 x_return_status := OKL_API.HANDLE_EXCEPTIONS
531 (substr(l_api_name,1,26),
532 G_PKG_NAME,
533 'OKL_API.G_RET_STS_UNEXP_ERROR',
534 x_msg_count,
535 x_msg_data,
536 G_SCOPE);
537 WHEN OTHERS THEN
538 -- store SQL error message on message stack for caller
539 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
540 x_return_status := OKL_API.HANDLE_EXCEPTIONS
541 (substr(l_api_name,1,26),
542 G_PKG_NAME,
543 'OTHERS',
544 x_msg_count,
545 x_msg_data,
546 G_SCOPE);
547
548 END copy_lease_contract_new;
549
550 PROCEDURE copy_lease_contract_new(
551 p_api_version IN NUMBER,
552 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
553 x_return_status OUT NOCOPY VARCHAR2,
554 x_msg_count OUT NOCOPY NUMBER,
555 x_msg_data OUT NOCOPY VARCHAR2,
556 p_commit IN VARCHAR2 DEFAULT 'F',
557 p_chr_id IN NUMBER,
558 p_contract_number IN VARCHAR2,
559 p_contract_number_modifier IN VARCHAR2,
560 p_to_template_yn IN VARCHAR2 DEFAULT 'N',
561 p_renew_ref_yn IN VARCHAR2,
562 p_copy_lines_yn IN VARCHAR2,
563 p_override_org IN VARCHAR2 DEFAULT 'N',
564 p_trans_type IN VARCHAR2,
565 x_chr_id OUT NOCOPY NUMBER) IS
566
567 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_LEASE_CONTRACT';
568 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
569 BEGIN
570 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
571 G_PKG_NAME,
572 p_init_msg_list,
573 G_API_VERSION,
574 p_api_version,
575 G_SCOPE,
576 x_return_status);
577 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
578 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
579 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
580 RAISE OKL_API.G_EXCEPTION_ERROR;
581 END IF;
582
583 --Customer pre-processing Section
584
585 --Vertical pre-processing Section
586 --Business Logic
587 OKL_COPY_CONTRACT_PVT.copy_lease_contract_new(
588 p_api_version => p_api_version,
589 p_init_msg_list => g_init_msg_list,
590 x_return_status => x_return_status,
591 x_msg_count => x_msg_count,
592 x_msg_data => x_msg_data,
593 p_commit => p_commit,
594 p_chr_id => p_chr_id,
595 p_contract_number => p_contract_number,
596 p_contract_number_modifier => p_contract_number_modifier,
597 p_to_template_yn => p_to_template_yn,
598 p_renew_ref_yn => p_renew_ref_yn,
599 p_copy_lines_yn => p_copy_lines_yn,
600 p_override_org => p_override_org,
601 p_trans_type => p_trans_type,
602 x_chr_id => x_chr_id);
603 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
604 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
605 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
606 RAISE OKL_API.G_EXCEPTION_ERROR;
607 END IF;
608
609
610
611 IF p_commit = OKL_API.G_TRUE THEN
612 commit;
613 END IF;
614
615 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
616
617 EXCEPTION
618 WHEN OKL_API.G_EXCEPTION_ERROR THEN
619 x_return_status := OKL_API.HANDLE_EXCEPTIONS
620 (substr(l_api_name,1,26),
621 G_PKG_NAME,
622 --bug# 2518454
623 --'OKC_API.G_RET_STS_ERROR',
624 'OKL_API.G_RET_STS_ERROR',
625 x_msg_count,
626 x_msg_data,
627 G_SCOPE);
628 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
629 x_return_status := OKL_API.HANDLE_EXCEPTIONS
630 (substr(l_api_name,1,26),
631 G_PKG_NAME,
632 'OKL_API.G_RET_STS_UNEXP_ERROR',
633 x_msg_count,
634 x_msg_data,
635 G_SCOPE);
636 WHEN OTHERS THEN
637 -- store SQL error message on message stack for caller
638 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
639 x_return_status := OKL_API.HANDLE_EXCEPTIONS
640 (substr(l_api_name,1,26),
641 G_PKG_NAME,
642 'OTHERS',
643 x_msg_count,
644 x_msg_data,
645 G_SCOPE);
646
647 END copy_lease_contract_new;
648
649 PROCEDURE copy_contract(
650 p_api_version IN NUMBER,
651 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
652 x_return_status OUT NOCOPY VARCHAR2,
653 x_msg_count OUT NOCOPY NUMBER,
654 x_msg_data OUT NOCOPY VARCHAR2,
655 p_commit IN VARCHAR2 DEFAULT 'F',
656 p_chr_id IN NUMBER,
657 p_contract_number IN VARCHAR2,
658 p_contract_number_modifier IN VARCHAR2,
659 p_to_template_yn IN VARCHAR2 DEFAULT 'N',
660 p_renew_ref_yn IN VARCHAR2,
661 p_copy_lines_yn IN VARCHAR2,
662 p_override_org IN VARCHAR2 DEFAULT 'N',
663 x_chr_id OUT NOCOPY NUMBER) IS
664
665 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_CONTRACT';
666 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
667 BEGIN
668 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
669 G_PKG_NAME,
670 p_init_msg_list,
671 G_API_VERSION,
672 p_api_version,
673 G_SCOPE,
674 x_return_status);
675 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
676 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
677 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
678 RAISE OKL_API.G_EXCEPTION_ERROR;
679 END IF;
680
681 --Customer pre-processing Section
682 --Vertical pre_processing section
683
684 --Business Logic
685 OKL_COPY_CONTRACT_PVT.copy_contract(
686 p_api_version => p_api_version,
687 p_init_msg_list => g_init_msg_list,
688 x_return_status => x_return_status,
689 x_msg_count => x_msg_count,
690 x_msg_data => x_msg_data,
691 p_commit => p_commit,
692 p_chr_id => p_chr_id,
693 p_contract_number => p_contract_number,
694 p_contract_number_modifier => p_contract_number_modifier,
695 p_to_template_yn => p_to_template_yn,
696 p_renew_ref_yn => p_renew_ref_yn,
697 p_copy_lines_yn => p_copy_lines_yn,
698 x_chr_id => x_chr_id);
699
700 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
701 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
702 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
703 RAISE OKL_API.G_EXCEPTION_ERROR;
704 END IF;
705
706 --Vertical post_processing section
707
708 --User post_processing section
709
710 IF p_commit = 'T' THEN
711 commit;
712 END IF;
713
714 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
715
716 EXCEPTION
717 WHEN OKL_API.G_EXCEPTION_ERROR THEN
718 x_return_status := OKL_API.HANDLE_EXCEPTIONS
719 (substr(l_api_name,1,26),
720 G_PKG_NAME,
721 --bug# 2518454
722 --'OKC_API.G_RET_STS_ERROR',
723 'OKL_API.G_RET_STS_ERROR',
724 x_msg_count,
725 x_msg_data,
726 G_SCOPE);
727 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
728 x_return_status := OKL_API.HANDLE_EXCEPTIONS
729 (substr(l_api_name,1,26),
730 G_PKG_NAME,
731 'OKL_API.G_RET_STS_UNEXP_ERROR',
732 x_msg_count,
733 x_msg_data,
734 G_SCOPE);
735 WHEN OTHERS THEN
736 -- store SQL error message on message stack for caller
737 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
738 x_return_status := OKL_API.HANDLE_EXCEPTIONS
739 (substr(l_api_name,1,26),
740 G_PKG_NAME,
741 'OTHERS',
742 x_msg_count,
743 x_msg_data,
744 G_SCOPE);
745
746 END copy_contract;
747
748 PROCEDURE copy_contract_lines(
749 p_api_version IN NUMBER,
750 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
751 x_return_status OUT NOCOPY VARCHAR2,
752 x_msg_count OUT NOCOPY NUMBER,
753 x_msg_data OUT NOCOPY VARCHAR2,
754 p_from_cle_id IN NUMBER,
755 p_to_cle_id IN NUMBER,
756 p_to_chr_id IN NUMBER,
757 p_to_template_yn IN VARCHAR2,
758 p_copy_reference IN VARCHAR2,
759 p_copy_line_party_yn IN VARCHAR2,
760 p_renew_ref_yn IN VARCHAR2,
761 x_cle_id OUT NOCOPY NUMBER) is
762
763 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_CONTRACT_LINES';
764 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
765 BEGIN
766 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
767 G_PKG_NAME,
768 p_init_msg_list,
769 G_API_VERSION,
770 p_api_version,
771 G_SCOPE,
772 x_return_status);
773 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
774 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
775 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
776 RAISE OKL_API.G_EXCEPTION_ERROR;
777 END IF;
778
779 --Custom pre_processing section
780
781 --Vertical Industry pre_processing section
782
783 OKL_COPY_CONTRACT_PVT.copy_contract_lines(
784 p_api_version => p_api_version,
785 p_init_msg_list => p_init_msg_list,
786 x_return_status => x_return_status,
787 x_msg_count => x_msg_count,
788 x_msg_data => x_msg_data,
789 p_from_cle_id => p_from_cle_id,
790 p_to_cle_id => p_to_cle_id,
791 p_to_chr_id => p_to_chr_id,
792 p_to_template_yn => p_to_template_yn,
793 p_copy_reference => p_copy_reference,
794 p_copy_line_party_yn => p_copy_line_party_yn,
795 p_renew_ref_yn => p_renew_ref_yn,
796 x_cle_id => x_cle_id);
797
798 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
799 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
800 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
801 RAISE OKL_API.G_EXCEPTION_ERROR;
802 END IF;
803 --Vertical Industry post_processing section
804 --Custom post_processing section
805
806 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
807
808 EXCEPTION
809 WHEN OKL_API.G_EXCEPTION_ERROR THEN
810 x_return_status := OKL_API.HANDLE_EXCEPTIONS
811 (substr(l_api_name,1,26),
812 G_PKG_NAME,
813 'OKL_API.G_RET_STS_ERROR',
814 x_msg_count,
815 x_msg_data,
816 G_SCOPE);
817 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
818 x_return_status := OKL_API.HANDLE_EXCEPTIONS
819 (substr(l_api_name,1,26),
820 G_PKG_NAME,
821 'OKL_API.G_RET_STS_UNEXP_ERROR',
822 x_msg_count,
823 x_msg_data,
824 G_SCOPE);
825 WHEN OTHERS THEN
826 -- store SQL error message on message stack for caller
827 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
828 x_return_status := OKL_API.HANDLE_EXCEPTIONS
829 (substr(l_api_name,1,26),
830 G_PKG_NAME,
831 'OTHERS',
832 x_msg_count,
833 x_msg_data,
834 G_SCOPE);
835 END copy_contract_lines;
836
837 PROCEDURE copy_rules(
838 p_api_version IN NUMBER,
839 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
840 x_return_status OUT NOCOPY VARCHAR2,
841 x_msg_count OUT NOCOPY NUMBER,
842 x_msg_data OUT NOCOPY VARCHAR2,
843 p_rgp_id IN NUMBER,
844 p_cle_id IN NUMBER DEFAULT OKL_API.G_MISS_NUM,
845 p_chr_id IN NUMBER DEFAULT OKL_API.G_MISS_NUM,
846 p_to_template_yn IN VARCHAR2,
847 x_rgp_id OUT NOCOPY NUMBER) IS
848
849 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_RULES';
850 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
851 BEGIN
852 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
853 G_PKG_NAME,
854 p_init_msg_list,
855 G_API_VERSION,
856 p_api_version,
857 G_SCOPE,
858 x_return_status);
859 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
860 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
861 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
862 RAISE OKL_API.G_EXCEPTION_ERROR;
863 END IF;
864
865 --Custom pre_processing section
866
867 --Vertical Industry pre_processing section
868
869 OKL_COPY_CONTRACT_PVT.copy_rules(
870 p_api_version => p_api_version,
871 p_init_msg_list => g_init_msg_list,
872 x_return_status => x_return_status,
873 x_msg_count => x_msg_count,
874 x_msg_data => x_msg_data,
875 p_rgp_id => p_rgp_id,
876 p_cle_id => p_cle_id,
877 p_chr_id => p_chr_id,
878 p_to_template_yn => p_to_template_yn,
879 x_rgp_id => x_rgp_id);
880
881 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
882 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
883 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
884 RAISE OKL_API.G_EXCEPTION_ERROR;
885 END IF;
886
887 --Vertical Industry post_processing section
888
889 --Custom post_processing section
890
891 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
892
893 EXCEPTION
894 WHEN OKL_API.G_EXCEPTION_ERROR THEN
895 x_return_status := OKL_API.HANDLE_EXCEPTIONS
896 (substr(l_api_name,1,26),
897 G_PKG_NAME,
898 'OKL_API.G_RET_STS_ERROR',
899 x_msg_count,
900 x_msg_data,
901 G_SCOPE);
902 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
903 x_return_status := OKL_API.HANDLE_EXCEPTIONS
904 (substr(l_api_name,1,26),
905 G_PKG_NAME,
906 'OKL_API.G_RET_STS_UNEXP_ERROR',
907 x_msg_count,
908 x_msg_data,
909 G_SCOPE);
910 WHEN OTHERS THEN
911 -- store SQL error message on message stack for caller
912 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
913 x_return_status := OKL_API.HANDLE_EXCEPTIONS
914 (substr(l_api_name,1,26),
915 G_PKG_NAME,
916 'OTHERS',
917 x_msg_count,
918 x_msg_data,
919 G_SCOPE);
920
921 END copy_rules;
922
923 PROCEDURE copy_party_roles(
924 p_api_version IN NUMBER,
925 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
926 x_return_status OUT NOCOPY VARCHAR2,
927 x_msg_count OUT NOCOPY NUMBER,
928 x_msg_data OUT NOCOPY VARCHAR2,
929 p_cpl_id IN NUMBER,
930 p_cle_id IN NUMBER DEFAULT OKL_API.G_MISS_NUM,
931 p_chr_id IN NUMBER DEFAULT OKL_API.G_MISS_NUM,
932 P_rle_code IN VARCHAR2,
933 x_cpl_id OUT NOCOPY NUMBER) IS
934
935 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_PARTY_ROLES';
936 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
937 BEGIN
938 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
939 G_PKG_NAME,
940 p_init_msg_list,
941 G_API_VERSION,
942 p_api_version,
943 G_SCOPE,
944 x_return_status);
945 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
946 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
947 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
948 RAISE OKL_API.G_EXCEPTION_ERROR;
949 END IF;
950
951 --Custom pre processing section
952
953 --Vertical Industry pre processing section
954
955 OKL_COPY_CONTRACT_PVT.copy_party_roles(
956 p_api_version => p_api_version,
957 p_init_msg_list => g_init_msg_list,
958 x_return_status => x_return_status,
959 x_msg_count => x_msg_count,
960 x_msg_data => x_msg_data,
961 p_cpl_id => p_cpl_id,
962 p_cle_id => p_cle_id,
963 p_chr_id => p_chr_id,
964 p_rle_code => p_rle_code,
965 x_cpl_id => x_cpl_id);
966
967
968 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
969 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
970 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
971 RAISE OKL_API.G_EXCEPTION_ERROR;
972 END IF;
973
974 --Vertical Industry post processing section
975
976 --Custom post processing section
977
978 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
979
980 EXCEPTION
981 WHEN OKL_API.G_EXCEPTION_ERROR THEN
982 x_return_status := OKL_API.HANDLE_EXCEPTIONS
983 (substr(l_api_name,1,26),
984 G_PKG_NAME,
985 'OKL_API.G_RET_STS_ERROR',
986 x_msg_count,
987 x_msg_data,
988 G_SCOPE);
989 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
990 x_return_status := OKL_API.HANDLE_EXCEPTIONS
991 (substr(l_api_name,1,26),
992 G_PKG_NAME,
993 'OKL_API.G_RET_STS_UNEXP_ERROR',
994 x_msg_count,
995 x_msg_data,
996 G_SCOPE);
997 WHEN OTHERS THEN
998 -- store SQL error message on message stack for caller
999 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1000 x_return_status := OKL_API.HANDLE_EXCEPTIONS
1001 (substr(l_api_name,1,26),
1002 G_PKG_NAME,
1003 'OTHERS',
1004 x_msg_count,
1005 x_msg_data,
1006 G_SCOPE);
1007
1008 END copy_party_roles;
1009
1010 PROCEDURE copy_articles(
1011 p_api_version IN NUMBER,
1012 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1013 x_return_status OUT NOCOPY VARCHAR2,
1014 x_msg_count OUT NOCOPY NUMBER,
1015 x_msg_data OUT NOCOPY VARCHAR2,
1016 p_cat_id IN NUMBER,
1017 p_cle_id IN NUMBER DEFAULT OKL_API.G_MISS_NUM,
1018 p_chr_id IN NUMBER DEFAULT OKL_API.G_MISS_NUM,
1019 p_sav_sav_release IN VARCHAR2 DEFAULT NULL,
1020 x_cat_id OUT NOCOPY NUMBER) IS
1021
1022
1023 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_ARTICLES';
1024 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1025 BEGIN
1026 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
1027 G_PKG_NAME,
1028 p_init_msg_list,
1029 G_API_VERSION,
1030 p_api_version,
1031 G_SCOPE,
1032 x_return_status);
1033 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1034 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1035 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1036 RAISE OKL_API.G_EXCEPTION_ERROR;
1037 END IF;
1038
1039 --Custom pre processing section
1040
1041 --Vertical pre processing section
1042
1043 OKL_COPY_CONTRACT_PVT.copy_articles(
1044 p_api_version => p_api_version,
1045 p_init_msg_list => g_init_msg_list,
1046 x_return_status => x_return_status,
1047 x_msg_count => x_msg_count,
1048 x_msg_data => x_msg_data,
1049 p_cat_id => p_cat_id,
1050 p_cle_id => p_cle_id,
1051 p_chr_id => p_chr_id,
1052 p_sav_sav_release => p_sav_sav_release,
1053 x_cat_id => x_cat_id);
1054
1055 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1056 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1057 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
1058 RAISE OKL_API.G_EXCEPTION_ERROR;
1059 END IF;
1060
1061 --Vertical post processing section
1062
1063 --Custom post processing section
1064
1065 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1066
1067 EXCEPTION
1068 WHEN OKL_API.G_EXCEPTION_ERROR THEN
1069 x_return_status := OKL_API.HANDLE_EXCEPTIONS
1070 (substr(l_api_name,1,26),
1071 G_PKG_NAME,
1072 'OKL_API.G_RET_STS_ERROR',
1073 x_msg_count,
1074 x_msg_data,
1075 G_SCOPE);
1076 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1077 x_return_status := OKL_API.HANDLE_EXCEPTIONS
1078 (substr(l_api_name,1,26),
1079 G_PKG_NAME,
1080 'OKL_API.G_RET_STS_UNEXP_ERROR',
1081 x_msg_count,
1082 x_msg_data,
1083 G_SCOPE);
1084 WHEN OTHERS THEN
1085 -- store SQL error message on message stack for caller
1086 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1087 x_return_status := OKL_API.HANDLE_EXCEPTIONS
1088 (substr(l_api_name,1,26),
1089 G_PKG_NAME,
1090 'OTHERS',
1091 x_msg_count,
1092 x_msg_data,
1093 G_SCOPE);
1094
1095 END copy_articles;
1096
1097 PROCEDURE copy_latest_articles(
1098 p_api_version IN NUMBER,
1099 p_init_msg_list IN VARCHAR2 DEFAULT OKL_API.G_FALSE,
1100 x_return_status OUT NOCOPY VARCHAR2,
1101 x_msg_count OUT NOCOPY NUMBER,
1102 x_msg_data OUT NOCOPY VARCHAR2,
1103 p_cat_id IN NUMBER,
1104 p_cle_id IN NUMBER DEFAULT OKL_API.G_MISS_NUM,
1105 p_chr_id IN NUMBER DEFAULT OKL_API.G_MISS_NUM,
1106 x_cat_id OUT NOCOPY NUMBER) IS
1107
1108
1109 l_api_name CONSTANT VARCHAR2(30) := 'OKL_COPY_LATEST_ARTICLES';
1110 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1111 BEGIN
1112 l_return_status := OKL_API.START_ACTIVITY(substr(l_api_name,1,26),
1113 G_PKG_NAME,
1114 p_init_msg_list,
1115 G_API_VERSION,
1116 p_api_version,
1117 G_SCOPE,
1118 x_return_status);
1119 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1120 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1121 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
1122 RAISE OKL_API.G_EXCEPTION_ERROR;
1123 END IF;
1124
1125 --Custom pre processing section
1126
1127 --Vertical Industry pre processing section
1128
1129 OKL_COPY_CONTRACT_PVT.copy_latest_articles(
1130 p_api_version => p_api_version,
1131 p_init_msg_list => g_init_msg_list,
1132 x_return_status => x_return_status,
1133 x_msg_count => x_msg_count,
1134 x_msg_data => x_msg_data,
1135 p_cat_id => p_cat_id,
1136 p_cle_id => p_cle_id,
1137 p_chr_id => p_chr_id,
1138 x_cat_id => x_cat_id);
1139
1140 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
1141 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
1142 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
1143 RAISE OKL_API.G_EXCEPTION_ERROR;
1144 END IF;
1145
1146 --Vertical Industry post processing section
1147
1148 --Custom post processing section
1149
1150 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
1151
1152 EXCEPTION
1153 WHEN OKL_API.G_EXCEPTION_ERROR THEN
1154 x_return_status := OKL_API.HANDLE_EXCEPTIONS
1155 (substr(l_api_name,1,26),
1156 G_PKG_NAME,
1157 'OKL_API.G_RET_STS_ERROR',
1158 x_msg_count,
1159 x_msg_data,
1160 G_SCOPE);
1161 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1162 x_return_status := OKL_API.HANDLE_EXCEPTIONS
1163 (substr(l_api_name,1,26),
1164 G_PKG_NAME,
1165 'OKL_API.G_RET_STS_UNEXP_ERROR',
1166 x_msg_count,
1167 x_msg_data,
1168 G_SCOPE);
1169 WHEN OTHERS THEN
1170 -- store SQL error message on message stack for caller
1171 OKL_API.set_message(G_APP_NAME, G_UNEXPECTED_ERROR,G_SQLCODE_TOKEN,SQLCODE,G_SQLERRM_TOKEN,SQLERRM);
1172 x_return_status := OKL_API.HANDLE_EXCEPTIONS
1173 (substr(l_api_name,1,26),
1174 G_PKG_NAME,
1175 'OTHERS',
1176 x_msg_count,
1177 x_msg_data,
1178 G_SCOPE);
1179
1180 END copy_latest_articles;
1181
1182 END okl_copy_contract_pub;