[Home] [Help]
PACKAGE BODY: APPS.OKL_LA_PROPERTY_TAX_PVT
Source
1 PACKAGE BODY OKL_LA_PROPERTY_TAX_PVT AS
2 /* $Header: OKLRPTXB.pls 120.3 2005/06/06 17:30:33 rseela noship $ */
3
4 -- Start of comments
5 --
6 -- Procedure Name : create_est_prop_tax_rules
7 -- Description : Creates Estimated Property Tax rules basing on the setup
8 -- value.
9 -- Business Rules :
10 -- Parameters :
11 -- Version : 1.0
12 -- End of comments
13 PROCEDURE create_est_prop_tax_rules(
14 p_api_version IN NUMBER,
15 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
16 x_return_status OUT NOCOPY VARCHAR2,
17 x_msg_count OUT NOCOPY NUMBER,
18 x_msg_data OUT NOCOPY VARCHAR2,
19 p_chr_id IN NUMBER,
20 p_cle_id IN NUMBER)
21
22 IS
23 l_rgpv_rec rgpv_rec_type;
24 l_rulv_rec rulv_rec_type;
25 lx_rgpv_rec rgpv_rec_type;
26 lx_rulv_rec rulv_rec_type;
27
28 l_chr_id okc_k_headers_b.id%TYPE;
29 l_cle_id okc_k_lines_v.id%TYPE;
30 l_rgp_id NUMBER;
31 lv_enable_asset_default okl_property_tax_setups.enable_asset_default%TYPE;
32 lv_property_tax_applicable okl_property_tax_setups.property_tax_applicable%TYPE;
33 lv_bill_property_tax okl_property_tax_setups.bill_property_tax%TYPE;
34 -- Start 4042157 fmiao 12/03/04 added update_from_contract --
35 lv_update_from_contract okl_property_tax_setups.update_from_contract%TYPE;
36 -- End 4042157 fmiao 12/03/04 added update_from_contract --
37
38 l_api_name CONSTANT VARCHAR2(30) := 'CREATE_EST_PROP_TAX_RULES';
39
40 -- Start 4042157 fmiao 12/03/04 added update_from_contract --
41 CURSOR get_est_prop_tax_info(p_chr_id okc_k_headers_b.id%TYPE) IS
42 SELECT enable_asset_default, property_tax_applicable,
43 bill_property_tax,update_from_contract
44 FROM okl_property_tax_setups
45 WHERE org_id = (SELECT authoring_org_id
46 FROM okc_k_headers_b
47 WHERE id = p_chr_id);
48 -- End 4042157 fmiao 12/03/04 added update_from_contract --
49 BEGIN
50
51 x_return_status := OKL_API.G_RET_STS_SUCCESS;
52
53 l_chr_id := p_chr_id;
54 l_cle_id := p_cle_id;
55 -- 4374085
56 /*
57 IF okl_context.get_okc_org_id IS NULL THEN
58 okl_context.set_okc_org_context(p_chr_id => l_chr_id);
59 END IF;
60 */
61
62 -- call START_ACTIVITY to create savepoint, check compatibility
63 -- and initialize message list
64 x_return_status := OKL_API.START_ACTIVITY (
65 l_api_name
66 ,p_init_msg_list
67 ,g_api_type
68 ,x_return_status);
69
70 -- check if activity started successfully
71 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
72 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
73 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
74 RAISE OKL_API.G_EXCEPTION_ERROR;
75 END IF;
76
77 OPEN get_est_prop_tax_info(l_chr_id);
78 FETCH get_est_prop_tax_info into lv_enable_asset_default,
79 lv_property_tax_applicable,
80 lv_bill_property_tax,
81 lv_update_from_contract;
82 IF (get_est_prop_tax_info%NOTFOUND) THEN
83 RETURN;
84 END IF;
85 CLOSE get_est_prop_tax_info;
86
87 IF(lv_enable_asset_default = 'YES') THEN
88
89 -- Create the rule group for Estimated Property Tax
90 l_rgpv_rec.rgd_code := 'LAASTX';
91 l_rgpv_rec.chr_id := null;
92 l_rgpv_rec.dnz_chr_id := l_chr_id;
93 l_rgpv_rec.cle_id := l_cle_id;
94 l_rgpv_rec.rgp_type := 'KRG';
95
96 OKL_RULE_PUB.create_rule_group(
97 p_api_version => p_api_version,
98 p_init_msg_list => p_init_msg_list,
99 x_return_status => x_return_status,
100 x_msg_count => x_msg_count,
101 x_msg_data => x_msg_data,
102 p_rgpv_rec => l_rgpv_rec,
103 x_rgpv_rec => lx_rgpv_rec);
104
105 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
106 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
107 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
108 RAISE OKL_API.G_EXCEPTION_ERROR;
109 END IF;
110
111 l_rgp_id := lx_rgpv_rec.id;
112
113 -- Create the Estimated Property Tax rule
114 l_rulv_rec.sfwt_flag := 'N';
115 l_rulv_rec.dnz_chr_id := l_chr_id;
116 l_rulv_rec.rgp_id := l_rgp_id;
117 l_rulv_rec.std_template_yn := 'N';
118 l_rulv_rec.warn_yn := 'N';
119 l_rulv_rec.template_yn := 'N';
120 l_rulv_rec.rule_information_category := 'LAPRTX';
121
122 IF (lv_property_tax_applicable = 'YES') THEN
123 l_rulv_rec.rule_information1 := 'Y';
124 ELSE
125 l_rulv_rec.rule_information1 := 'N';
126 END IF;
127 l_rulv_rec.rule_information2 := 'N'; -- Lessee to Report
128 l_rulv_rec.rule_information3 := lv_bill_property_tax;
129
130 OKL_RULE_PUB.create_rule(
131 p_api_version => p_api_version,
132 p_init_msg_list => p_init_msg_list,
133 x_return_status => x_return_status,
134 x_msg_count => x_msg_count,
135 x_msg_data => x_msg_data,
136 p_rulv_rec => l_rulv_rec,
137 x_rulv_rec => lx_rulv_rec);
138 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
139 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
140 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
141 RAISE OKL_API.G_EXCEPTION_ERROR;
142 END IF;
143
144 -- Start 4042157 fmiao 12/03/04 added update_from_contract --
145 l_rulv_rec.rule_information_category := 'LAASTK';
146
147 IF (lv_update_from_contract = 'YES') THEN
148 l_rulv_rec.rule_information1 := 'Y';
149 ELSE
150 l_rulv_rec.rule_information1 := 'N';
151 END IF;
152
153 OKL_RULE_PUB.create_rule(
154 p_api_version => p_api_version,
155 p_init_msg_list => p_init_msg_list,
156 x_return_status => x_return_status,
157 x_msg_count => x_msg_count,
158 x_msg_data => x_msg_data,
159 p_rulv_rec => l_rulv_rec,
160 x_rulv_rec => lx_rulv_rec);
161 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
162 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
163 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
164 RAISE OKL_API.G_EXCEPTION_ERROR;
165 END IF;
166 -- Start 4042157 fmiao 12/03/04 added update_from_contract --
167 END IF;
168
169 OKL_API.END_ACTIVITY (x_msg_count => x_msg_count,
170 x_msg_data => x_msg_data);
171 EXCEPTION
172 WHEN OKL_API.G_EXCEPTION_ERROR THEN
173 IF get_est_prop_tax_info%ISOPEN THEN
174 CLOSE get_est_prop_tax_info;
175 END IF;
176 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
177 p_api_name => l_api_name,
178 p_pkg_name => g_pkg_name,
179 p_exc_name => 'OKC_API.G_RET_STS_ERROR',
180 x_msg_count => x_msg_count,
181 x_msg_data => x_msg_data,
182 p_api_type => g_api_type);
183
184 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
185 IF get_est_prop_tax_info%ISOPEN THEN
186 CLOSE get_est_prop_tax_info;
187 END IF;
188 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
189 p_api_name => l_api_name,
190 p_pkg_name => g_pkg_name,
191 p_exc_name => 'OKC_API.G_RET_STS_UNEXP_ERROR',
192 x_msg_count => x_msg_count,
193 x_msg_data => x_msg_data,
194 p_api_type => g_api_type);
195
196 WHEN OTHERS THEN
197 IF get_est_prop_tax_info%ISOPEN THEN
198 CLOSE get_est_prop_tax_info;
199 END IF;
200 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
201 p_api_name => l_api_name,
202 p_pkg_name => g_pkg_name,
203 p_exc_name => 'OTHERS',
204 x_msg_count => x_msg_count,
205 x_msg_data => x_msg_data,
206 p_api_type => g_api_type);
207 END create_est_prop_tax_rules;
208
209 -- Start of comments
210 --
211 -- Procedure Name : create_est_prop_tax_rules
212 -- Description : Bug 4086808 added the default value for bill tax
213 -- for user to modify
214 -- Business Rules :
215 -- Parameters :
216 -- Version : 1.0
217 -- End of comments
218 PROCEDURE create_est_prop_tax_rules(
219 p_api_version IN NUMBER,
220 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
221 x_return_status OUT NOCOPY VARCHAR2,
222 x_msg_count OUT NOCOPY NUMBER,
223 x_msg_data OUT NOCOPY VARCHAR2,
224 p_chr_id IN NUMBER)
225
226 IS
227 l_rgpv_rec rgpv_rec_type;
228 l_rulv_rec rulv_rec_type;
229 lx_rgpv_rec rgpv_rec_type;
230 lx_rulv_rec rulv_rec_type;
231
232 l_chr_id okc_k_headers_b.id%TYPE;
233 l_rgp_id NUMBER;
234 lv_property_tax_applicable okl_property_tax_setups.property_tax_applicable%TYPE;
235 lv_bill_property_tax okl_property_tax_setups.bill_property_tax%TYPE;
236 l_api_name CONSTANT VARCHAR2(30) := 'CREATE_EST_PROP_TAX_RULES';
237
238 CURSOR get_est_prop_tax_info(p_chr_id okc_k_headers_b.id%TYPE) IS
239 SELECT property_tax_applicable,
240 bill_property_tax
241 FROM okl_property_tax_setups
242 WHERE org_id = (SELECT authoring_org_id
243 FROM okc_k_headers_b
244 WHERE id = p_chr_id);
245
246 BEGIN
247
248 x_return_status := OKL_API.G_RET_STS_SUCCESS;
249
250 l_chr_id := p_chr_id;
251
252 IF okl_context.get_okc_org_id IS NULL THEN
253 okl_context.set_okc_org_context(p_chr_id => l_chr_id);
254 END IF;
255
256 -- call START_ACTIVITY to create savepoint, check compatibility
257 -- and initialize message list
258 x_return_status := OKL_API.START_ACTIVITY (
259 l_api_name
260 ,p_init_msg_list
261 ,g_api_type
262 ,x_return_status);
263
264 -- check if activity started successfully
265 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
266 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
267 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
268 RAISE OKL_API.G_EXCEPTION_ERROR;
269 END IF;
270
271 OPEN get_est_prop_tax_info(l_chr_id);
272 FETCH get_est_prop_tax_info into lv_property_tax_applicable,
273 lv_bill_property_tax;
274 IF (get_est_prop_tax_info%NOTFOUND) THEN
275 RETURN;
276 END IF;
277 CLOSE get_est_prop_tax_info;
278
279 -- Create the rule group for Estimated Property Tax
280 l_rgpv_rec.rgd_code := 'LAHDTX';
281 l_rgpv_rec.chr_id := l_chr_id;
282 l_rgpv_rec.dnz_chr_id := l_chr_id;
283 l_rgpv_rec.cle_id := null;
284 l_rgpv_rec.rgp_type := 'KRG';
285
286 OKL_RULE_PUB.create_rule_group(
287 p_api_version => p_api_version,
288 p_init_msg_list => p_init_msg_list,
289 x_return_status => x_return_status,
290 x_msg_count => x_msg_count,
291 x_msg_data => x_msg_data,
292 p_rgpv_rec => l_rgpv_rec,
293 x_rgpv_rec => lx_rgpv_rec);
294
295 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
296 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
297 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
298 RAISE OKL_API.G_EXCEPTION_ERROR;
299 END IF;
300
301 l_rgp_id := lx_rgpv_rec.id;
302
303 -- Create the Estimated Property Tax rule
304 l_rulv_rec.sfwt_flag := 'N';
305 l_rulv_rec.dnz_chr_id := l_chr_id;
306 l_rulv_rec.rgp_id := l_rgp_id;
307 l_rulv_rec.std_template_yn := 'N';
308 l_rulv_rec.warn_yn := 'N';
309 l_rulv_rec.template_yn := 'N';
310 l_rulv_rec.rule_information_category := 'LAPRTX';
311
312 IF (lv_property_tax_applicable = 'YES') THEN
313 l_rulv_rec.rule_information1 := 'Y';
314 ELSE
315 l_rulv_rec.rule_information1 := 'N';
316 END IF;
317 l_rulv_rec.rule_information3 := lv_bill_property_tax;
318 l_rulv_rec.rule_information2 := 'N';
319
320 OKL_RULE_PUB.create_rule(
321 p_api_version => p_api_version,
322 p_init_msg_list => p_init_msg_list,
323 x_return_status => x_return_status,
324 x_msg_count => x_msg_count,
325 x_msg_data => x_msg_data,
326 p_rulv_rec => l_rulv_rec,
327 x_rulv_rec => lx_rulv_rec);
328
329 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
330 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
331 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
332 RAISE OKL_API.G_EXCEPTION_ERROR;
333 END IF;
334
335 OKL_API.END_ACTIVITY (x_msg_count => x_msg_count,
336 x_msg_data => x_msg_data);
337 EXCEPTION
338 WHEN OKL_API.G_EXCEPTION_ERROR THEN
339 IF get_est_prop_tax_info%ISOPEN THEN
340 CLOSE get_est_prop_tax_info;
341 END IF;
342 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
343 p_api_name => l_api_name,
344 p_pkg_name => g_pkg_name,
345 p_exc_name => 'OKC_API.G_RET_STS_ERROR',
346 x_msg_count => x_msg_count,
347 x_msg_data => x_msg_data,
348 p_api_type => g_api_type);
349
350 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
351 IF get_est_prop_tax_info%ISOPEN THEN
352 CLOSE get_est_prop_tax_info;
353 END IF;
354 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
355 p_api_name => l_api_name,
356 p_pkg_name => g_pkg_name,
357 p_exc_name => 'OKC_API.G_RET_STS_UNEXP_ERROR',
358 x_msg_count => x_msg_count,
359 x_msg_data => x_msg_data,
360 p_api_type => g_api_type);
361
362 WHEN OTHERS THEN
363 IF get_est_prop_tax_info%ISOPEN THEN
364 CLOSE get_est_prop_tax_info;
365 END IF;
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 => 'OTHERS',
370 x_msg_count => x_msg_count,
371 x_msg_data => x_msg_data,
372 p_api_type => g_api_type);
373 END create_est_prop_tax_rules;
374
375
376 -- Procedure Name : sync_contract_property_tax
377 -- Description : Sync the asset property tax rule information with that of
378 -- the contract, if the flag at the asset level is checked.
379 -- Business Rules :
380 -- Parameters :
381 -- Version : 1.0
382 -- End of comments
383 PROCEDURE sync_contract_property_tax(
384 p_api_version IN NUMBER,
385 p_init_msg_list IN VARCHAR2 DEFAULT OKC_API.G_FALSE,
386 x_return_status OUT NOCOPY VARCHAR2,
387 x_msg_count OUT NOCOPY NUMBER,
388 x_msg_data OUT NOCOPY VARCHAR2,
389 p_chr_id IN NUMBER)
390 IS
391 l_rulv_rec rulv_rec_type;
392 lx_rulv_rec rulv_rec_type;
393
394 ln_cle_id okc_k_lines_v.id%TYPE;
395
396 ln_rule_id okc_rules_v.id%TYPE;
397 lv_asset_k_rule_information1 okc_rules_v.rule_information1%TYPE;
398
399 lv_k_rule_information1 okc_rules_v.rule_information1%TYPE;
400 lv_k_rule_information2 okc_rules_v.rule_information2%TYPE;
401 lv_k_rule_information3 okc_rules_v.rule_information3%TYPE;
402
403 l_api_name CONSTANT VARCHAR2(30) := 'SYNC_CONTRACT_PROPERTY_TAX';
404
405 CURSOR get_contract_property_tax_info(p_chr_id okc_k_headers_b.id%TYPE) IS
406 SELECT rul.rule_information1, rul.rule_information2, rul.rule_information3
407 FROM OKC_RULES_V rul,
408 OKC_RULE_GROUPS_V rgp
409 WHERE rul.rgp_id = rgp.id
410 AND rgp.dnz_chr_id = p_chr_id
411 AND rgp.cle_id is NULL
412 AND rgp.rgd_code = 'LAHDTX'
413 AND rul.rule_information_category = 'LAPRTX';
414
415 CURSOR get_contract_lines(p_chr_id okc_k_headers_b.id%TYPE) IS
416 SELECT cle.id
417 FROM OKC_K_LINES_V cle,
418 OKC_LINE_STYLES_V lse
419 WHERE cle.lse_id = lse.id
420 AND lse.lty_code = 'FREE_FORM1'
421 AND lse.lse_type = 'TLS'
422 AND cle.dnz_chr_id = p_chr_id;
423
424 CURSOR get_asset_contract_tax_info(p_chr_id okc_k_headers_b.id%TYPE,
425 p_cle_id okc_k_lines_v.id%TYPE) IS
426 SELECT rul.rule_information1
427 FROM OKC_RULES_V rul,
428 OKC_RULE_GROUPS_V rgp
429 WHERE rul.rgp_id = rgp.id
430 AND rgp.dnz_chr_id = p_chr_id
431 AND rgp.cle_id = p_cle_id
432 AND rgp.rgd_code = 'LAASTX'
433 AND rul.rule_information_category = 'LAASTK';
434
435 CURSOR get_asset_property_tax_info(p_chr_id okc_k_headers_b.id%TYPE,
436 p_cle_id okc_k_lines_v.id%TYPE) IS
437 SELECT rul.id
438 FROM OKC_RULES_V rul,
439 OKC_RULE_GROUPS_V rgp
440 WHERE rul.rgp_id = rgp.id
441 AND rgp.dnz_chr_id = p_chr_id
442 AND rgp.cle_id = p_cle_id
443 AND rgp.rgd_code = 'LAASTX'
444 AND rul.rule_information_category = 'LAPRTX';
445
446 BEGIN
447
448 x_return_status := OKL_API.G_RET_STS_SUCCESS;
449
450 IF okl_context.get_okc_org_id IS NULL THEN
451 okl_context.set_okc_org_context(p_chr_id => p_chr_id);
452 END IF;
453
454 -- call START_ACTIVITY to create savepoint, check compatibility
455 -- and initialize message list
456 x_return_status := OKL_API.START_ACTIVITY (
457 l_api_name
458 ,p_init_msg_list
459 ,g_api_type
460 ,x_return_status);
461
462 -- check if activity started successfully
463 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
464 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
465 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
466 RAISE OKL_API.G_EXCEPTION_ERROR;
467 END IF;
468
469 OPEN get_contract_property_tax_info(p_chr_id);
470 FETCH get_contract_property_tax_info into lv_k_rule_information1,
471 lv_k_rule_information2,
472 lv_k_rule_information3;
473 IF (get_contract_property_tax_info%NOTFOUND) THEN
474 RETURN;
475 END IF;
476 CLOSE get_contract_property_tax_info;
477
478 FOR r_get_contract_lines IN get_contract_lines(p_chr_id => p_chr_id) LOOP
479
480 OPEN get_asset_contract_tax_info(p_chr_id => p_chr_id,
481 p_cle_id => r_get_contract_lines.id);
482 FETCH get_asset_contract_tax_info into lv_asset_k_rule_information1;
483 CLOSE get_asset_contract_tax_info;
484
485 IF (lv_asset_k_rule_information1 IS NOT NULL AND
486 lv_asset_k_rule_information1 = 'Y') THEN
487
488 lv_asset_k_rule_information1 := null; -- Reset the value
489
490 OPEN get_asset_property_tax_info(p_chr_id => p_chr_id,
491 p_cle_id => r_get_contract_lines.id);
492 FETCH get_asset_property_tax_info into ln_rule_id;
493 CLOSE get_asset_property_tax_info;
494
495 l_rulv_rec.id := ln_rule_id;
496 l_rulv_rec.rule_information1 := lv_k_rule_information1;
497 l_rulv_rec.rule_information2 := lv_k_rule_information2;
498 l_rulv_rec.rule_information3 := lv_k_rule_information3;
499
500 OKL_RULE_PUB.update_rule(
501 p_api_version => p_api_version,
502 p_init_msg_list => p_init_msg_list,
503 x_return_status => x_return_status,
504 x_msg_count => x_msg_count,
505 x_msg_data => x_msg_data,
506 p_rulv_rec => l_rulv_rec,
507 x_rulv_rec => lx_rulv_rec);
508
509 IF (x_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
510 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
511 ELSIF (x_return_status = OKL_API.G_RET_STS_ERROR) THEN
512 RAISE OKL_API.G_EXCEPTION_ERROR;
513 END IF;
514 END IF;
515 END LOOP;
516
517 OKL_API.END_ACTIVITY (x_msg_count => x_msg_count,
518 x_msg_data => x_msg_data);
519 EXCEPTION
520 WHEN OKL_API.G_EXCEPTION_ERROR THEN
521 IF get_contract_property_tax_info%ISOPEN THEN
522 CLOSE get_contract_property_tax_info;
523 END IF;
524 IF get_asset_contract_tax_info%ISOPEN THEN
525 CLOSE get_asset_contract_tax_info;
526 END IF;
527 IF get_contract_lines%ISOPEN THEN
528 CLOSE get_contract_lines;
529 END IF;
530 IF get_asset_property_tax_info%ISOPEN THEN
531 CLOSE get_asset_property_tax_info;
532 END IF;
533 x_return_status := OKL_API.HANDLE_EXCEPTIONS(
534 l_api_name,
535 g_pkg_name,
536 'OKL_API.G_RET_STS_ERROR',
537 x_msg_count,
538 x_msg_data,
539 g_api_type);
540 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
541 IF get_contract_property_tax_info%ISOPEN THEN
542 CLOSE get_contract_property_tax_info;
543 END IF;
544 IF get_asset_contract_tax_info%ISOPEN THEN
545 CLOSE get_asset_contract_tax_info;
546 END IF;
547 IF get_contract_lines%ISOPEN THEN
548 CLOSE get_contract_lines;
549 END IF;
550 IF get_asset_property_tax_info%ISOPEN THEN
551 CLOSE get_asset_property_tax_info;
552 END IF;
553 x_return_status :=OKL_API.HANDLE_EXCEPTIONS(
554 l_api_name,
555 g_pkg_name,
556 'OKL_API.G_RET_STS_UNEXP_ERROR',
557 x_msg_count,
558 x_msg_data,
559 g_api_type);
560 WHEN OTHERS THEN
561 IF get_contract_property_tax_info%ISOPEN THEN
562 CLOSE get_contract_property_tax_info;
563 END IF;
564 IF get_asset_contract_tax_info%ISOPEN THEN
565 CLOSE get_asset_contract_tax_info;
566 END IF;
567 IF get_contract_lines%ISOPEN THEN
568 CLOSE get_contract_lines;
569 END IF;
570 IF get_asset_property_tax_info%ISOPEN THEN
571 CLOSE get_asset_property_tax_info;
572 END IF;
573 x_return_status :=OKL_API.HANDLE_EXCEPTIONS(
574 l_api_name,
575 g_pkg_name,
576 'OTHERS',
577 x_msg_count,
578 x_msg_data,
579 g_api_type);
580 END sync_contract_property_tax;
581
582 END OKL_LA_PROPERTY_TAX_PVT;