[Home] [Help]
PACKAGE BODY: APPS.OKL_TTD_PVT
Source
1 PACKAGE BODY OKL_TTD_PVT AS
2 /* $Header: OKLSTTDB.pls 120.3 2007/01/15 11:16:46 dcshanmu noship $ */
3 ---------------------------------------------------------------------------
4 -- PROCEDURE load_error_tbl
5 ---------------------------------------------------------------------------
6 PROCEDURE load_error_tbl (
7 px_error_rec IN OUT NOCOPY OKL_API.ERROR_REC_TYPE,
8 px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
9
10 j INTEGER := NVL(px_error_tbl.LAST, 0) + 1;
11 last_msg_idx INTEGER := FND_MSG_PUB.COUNT_MSG;
12 l_msg_idx INTEGER := FND_MSG_PUB.G_NEXT;
13 BEGIN
14 -- FND_MSG_PUB has a small error in it. If we call FND_MSG_PUB.COUNT_AND_GET before
15 -- we call FND_MSG_PUB.GET, the variable FND_MSG_PUB uses to control the index of the
16 -- message stack gets set to 1. This makes sense until we call FND_MSG_PUB.GET which
17 -- automatically increments the index by 1, (making it 2), however, when the GET function
18 -- attempts to pull message 2, we get a NO_DATA_FOUND exception because there isn't any
19 -- message 2. To circumvent this problem, check the amount of messages and compensate.
20 -- Again, this error only occurs when 1 message is on the stack because COUNT_AND_GET
21 -- will only update the index variable when 1 and only 1 message is on the stack.
22 IF (last_msg_idx = 1) THEN
23 l_msg_idx := FND_MSG_PUB.G_FIRST;
24 END IF;
25 LOOP
26 fnd_msg_pub.get(
27 p_msg_index => l_msg_idx,
28 p_encoded => fnd_api.g_false,
29 p_data => px_error_rec.msg_data,
30 p_msg_index_out => px_error_rec.msg_count);
31 px_error_tbl(j) := px_error_rec;
32 j := j + 1;
33 EXIT WHEN (px_error_rec.msg_count = last_msg_idx);
34 END LOOP;
35 END load_error_tbl;
36 ---------------------------------------------------------------------------
37 -- FUNCTION find_highest_exception
38 ---------------------------------------------------------------------------
39 -- Finds the highest exception (G_RET_STS_UNEXP_ERROR)
40 -- in a OKL_API.ERROR_TBL_TYPE, and returns it.
41 FUNCTION find_highest_exception(
42 p_error_tbl IN OKL_API.ERROR_TBL_TYPE
43 ) RETURN VARCHAR2 IS
44 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
45 i INTEGER := 1;
46 BEGIN
47 IF (p_error_tbl.COUNT > 0) THEN
48 i := p_error_tbl.FIRST;
49 LOOP
50 IF (p_error_tbl(i).error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
51 IF (l_return_status <> OKL_API.G_RET_STS_UNEXP_ERROR) THEN
52 l_return_status := p_error_tbl(i).error_type;
53 END IF;
54 END IF;
55 EXIT WHEN (i = p_error_tbl.LAST);
56 i := p_error_tbl.NEXT(i);
57 END LOOP;
58 END IF;
59 RETURN(l_return_status);
60 END find_highest_exception;
61 ---------------------------------------------------------------------------
62 -- FUNCTION get_seq_id
63 ---------------------------------------------------------------------------
64 FUNCTION get_seq_id RETURN NUMBER IS
65 BEGIN
66 RETURN(okc_p_util.raw_to_number(sys_guid()));
67 END get_seq_id;
68
69 ---------------------------------------------------------------------------
70 -- PROCEDURE qc
71 ---------------------------------------------------------------------------
72 PROCEDURE qc IS
73 BEGIN
74 null;
75 END qc;
76
77 ---------------------------------------------------------------------------
78 -- PROCEDURE change_version
79 ---------------------------------------------------------------------------
80 PROCEDURE change_version IS
81 BEGIN
82 null;
83 END change_version;
84
85 ---------------------------------------------------------------------------
86 -- PROCEDURE api_copy
87 ---------------------------------------------------------------------------
88 PROCEDURE api_copy IS
89 BEGIN
90 null;
91 END api_copy;
92
93 ---------------------------------------------------------------------------
94 -- FUNCTION get_rec for: OKL_TAX_TRX_DETAILS_V
95 ---------------------------------------------------------------------------
96 FUNCTION get_rec (
97 p_ttdv_rec IN ttdv_rec_type,
98 x_no_data_found OUT NOCOPY BOOLEAN
99 ) RETURN ttdv_rec_type IS
100 CURSOR okl_ttdv_pk_csr (p_id IN NUMBER) IS
101 SELECT
102 ID,
103 TXS_ID,
104 TAX_DETERMINE_DATE,
105 TAX_RATE_ID,
106 TAX_RATE_CODE,
107 TAXABLE_AMT,
108 TAX_EXEMPTION_ID,
109 TAX_RATE,
110 TAX_AMT,
111 BILLED_YN,
112 TAX_CALL_TYPE_CODE,
113 PROGRAM_ID,
114 REQUEST_ID,
115 PROGRAM_APPLICATION_ID,
116 PROGRAM_UPDATE_DATE,
117 ATTRIBUTE_CATEGORY,
118 ATTRIBUTE1,
119 ATTRIBUTE2,
120 ATTRIBUTE3,
121 ATTRIBUTE4,
122 ATTRIBUTE5,
123 ATTRIBUTE6,
124 ATTRIBUTE7,
125 ATTRIBUTE8,
126 ATTRIBUTE9,
127 ATTRIBUTE10,
128 ATTRIBUTE11,
129 ATTRIBUTE12,
130 ATTRIBUTE13,
131 ATTRIBUTE14,
132 ATTRIBUTE15,
133 CREATED_BY,
134 CREATION_DATE,
135 LAST_UPDATED_BY,
136 LAST_UPDATE_DATE,
137 LAST_UPDATE_LOGIN,
138 OBJECT_VERSION_NUMBER,
139 -- Modified by dcshanmu for eBTax - modification starts
140 TAX_DATE,
141 LINE_AMT,
142 INTERNAL_ORGANIZATION_ID,
143 APPLICATION_ID,
144 ENTITY_CODE,
145 EVENT_CLASS_CODE,
146 EVENT_TYPE_CODE,
147 TRX_ID,
148 TRX_LINE_ID,
149 TRX_LEVEL_TYPE,
150 TRX_LINE_NUMBER,
151 TAX_LINE_NUMBER,
152 TAX_REGIME_ID,
153 TAX_REGIME_CODE,
154 TAX_ID,
155 TAX,
156 TAX_STATUS_ID,
157 TAX_STATUS_CODE,
158 TAX_APPORTIONMENT_LINE_NUMBER,
159 LEGAL_ENTITY_ID,
160 TRX_NUMBER,
161 TRX_DATE,
162 TAX_JURISDICTION_ID,
163 TAX_JURISDICTION_CODE,
164 TAX_TYPE_CODE,
165 TAX_CURRENCY_CODE,
166 TAXABLE_AMT_TAX_CURR,
167 TRX_CURRENCY_CODE,
168 MINIMUM_ACCOUNTABLE_UNIT,
169 PRECISION,
170 CURRENCY_CONVERSION_TYPE,
171 CURRENCY_CONVERSION_RATE,
172 CURRENCY_CONVERSION_DATE
173 -- Modified by dcshanmu for eBTax - modification end
174 FROM Okl_Tax_Trx_Details
175 WHERE okl_tax_trx_details.id = p_id;
176 l_okl_ttdv_pk okl_ttdv_pk_csr%ROWTYPE;
177 l_ttdv_rec ttdv_rec_type;
178 BEGIN
179 x_no_data_found := TRUE;
180 -- Get current database values
181 OPEN okl_ttdv_pk_csr (p_ttdv_rec.id);
182 FETCH okl_ttdv_pk_csr INTO
183 l_ttdv_rec.id,
184 l_ttdv_rec.txs_id,
185 l_ttdv_rec.tax_determine_date,
186 l_ttdv_rec.tax_rate_id,
187 l_ttdv_rec.tax_rate_code,
188 l_ttdv_rec.taxable_amt,
189 l_ttdv_rec.tax_exemption_id,
190 l_ttdv_rec.tax_rate,
191 l_ttdv_rec.tax_amt,
192 l_ttdv_rec.billed_yn,
193 l_ttdv_rec.tax_call_type_code,
194 l_ttdv_rec.program_id,
195 l_ttdv_rec.request_id,
196 l_ttdv_rec.program_application_id,
197 l_ttdv_rec.program_update_date,
198 l_ttdv_rec.attribute_category,
199 l_ttdv_rec.attribute1,
200 l_ttdv_rec.attribute2,
201 l_ttdv_rec.attribute3,
202 l_ttdv_rec.attribute4,
203 l_ttdv_rec.attribute5,
204 l_ttdv_rec.attribute6,
205 l_ttdv_rec.attribute7,
206 l_ttdv_rec.attribute8,
207 l_ttdv_rec.attribute9,
208 l_ttdv_rec.attribute10,
209 l_ttdv_rec.attribute11,
210 l_ttdv_rec.attribute12,
211 l_ttdv_rec.attribute13,
212 l_ttdv_rec.attribute14,
213 l_ttdv_rec.attribute15,
214 l_ttdv_rec.created_by,
215 l_ttdv_rec.creation_date,
216 l_ttdv_rec.last_updated_by,
217 l_ttdv_rec.last_update_date,
218 l_ttdv_rec.last_update_login,
219 l_ttdv_rec.object_version_number,
220 -- Modified by dcshanmu for eBTax - modification starts
221 l_ttdv_rec.tax_date,
222 l_ttdv_rec.line_amt,
223 l_ttdv_rec.internal_organization_id,
224 l_ttdv_rec.application_id,
225 l_ttdv_rec.entity_code,
226 l_ttdv_rec.event_class_code,
227 l_ttdv_rec.event_type_code,
228 l_ttdv_rec.trx_id,
229 l_ttdv_rec.trx_line_id,
230 l_ttdv_rec.trx_level_type,
231 l_ttdv_rec.trx_line_number,
232 l_ttdv_rec.tax_line_number,
233 l_ttdv_rec.tax_regime_id,
234 l_ttdv_rec.tax_regime_code,
235 l_ttdv_rec.tax_id,
236 l_ttdv_rec.tax,
237 l_ttdv_rec.tax_status_id,
238 l_ttdv_rec.tax_status_code,
239 l_ttdv_rec.tax_apportionment_line_number,
240 l_ttdv_rec.legal_entity_id,
241 l_ttdv_rec.trx_number,
242 l_ttdv_rec.trx_date,
243 l_ttdv_rec.tax_jurisdiction_id,
244 l_ttdv_rec.tax_jurisdiction_code,
245 l_ttdv_rec.tax_type_code,
246 l_ttdv_rec.tax_currency_code,
247 l_ttdv_rec.taxable_amt_tax_curr,
248 l_ttdv_rec.trx_currency_code,
249 l_ttdv_rec.minimum_accountable_unit,
250 l_ttdv_rec.precision,
251 l_ttdv_rec.currency_conversion_type,
252 l_ttdv_rec.currency_conversion_rate,
253 l_ttdv_rec.currency_conversion_date;
254 -- Modified by dcshanmu for eBTax - modification end
255 x_no_data_found := okl_ttdv_pk_csr%NOTFOUND;
256 CLOSE okl_ttdv_pk_csr;
257 RETURN(l_ttdv_rec);
258 END get_rec;
259
260 ------------------------------------------------------------------
261 -- This version of get_rec sets error messages if no data found --
262 ------------------------------------------------------------------
263 FUNCTION get_rec (
264 p_ttdv_rec IN ttdv_rec_type,
265 x_return_status OUT NOCOPY VARCHAR2
266 ) RETURN ttdv_rec_type IS
267 l_ttdv_rec ttdv_rec_type;
268 l_row_notfound BOOLEAN := TRUE;
269 BEGIN
270 x_return_status := OKL_API.G_RET_STS_SUCCESS;
271 l_ttdv_rec := get_rec(p_ttdv_rec, l_row_notfound);
272 IF (l_row_notfound) THEN
273 OKL_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'ID');
274 x_return_status := OKL_API.G_RET_STS_ERROR;
275 END IF;
276 RETURN(l_ttdv_rec);
277 END get_rec;
278 -----------------------------------------------------------
279 -- So we don't have to pass an "l_row_notfound" variable --
280 -----------------------------------------------------------
281 FUNCTION get_rec (
282 p_ttdv_rec IN ttdv_rec_type
283 ) RETURN ttdv_rec_type IS
284 l_row_not_found BOOLEAN := TRUE;
285 BEGIN
286 RETURN(get_rec(p_ttdv_rec, l_row_not_found));
287 END get_rec;
288 ---------------------------------------------------------------------------
289 -- FUNCTION get_rec for: OKL_TAX_TRX_DETAILS
290 ---------------------------------------------------------------------------
291 FUNCTION get_rec (
292 p_ttd_rec IN ttd_rec_type,
293 x_no_data_found OUT NOCOPY BOOLEAN
294 ) RETURN ttd_rec_type IS
295 CURSOR okl_ttd_pk_csr (p_id IN NUMBER) IS
296 SELECT
297 ID,
298 TXS_ID,
299 TAX_DETERMINE_DATE,
300 TAX_RATE_ID,
301 TAX_RATE_CODE,
302 TAXABLE_AMT,
303 TAX_EXEMPTION_ID,
304 TAX_RATE,
305 TAX_AMT,
306 BILLED_YN,
307 TAX_CALL_TYPE_CODE,
308 PROGRAM_ID,
309 REQUEST_ID,
310 PROGRAM_APPLICATION_ID,
311 PROGRAM_UPDATE_DATE,
312 ATTRIBUTE_CATEGORY,
313 ATTRIBUTE1,
314 ATTRIBUTE2,
315 ATTRIBUTE3,
316 ATTRIBUTE4,
317 ATTRIBUTE5,
318 ATTRIBUTE6,
319 ATTRIBUTE7,
320 ATTRIBUTE8,
321 ATTRIBUTE9,
322 ATTRIBUTE10,
323 ATTRIBUTE11,
324 ATTRIBUTE12,
325 ATTRIBUTE13,
326 ATTRIBUTE14,
327 ATTRIBUTE15,
328 CREATED_BY,
329 CREATION_DATE,
330 LAST_UPDATED_BY,
331 LAST_UPDATE_DATE,
332 LAST_UPDATE_LOGIN,
333 OBJECT_VERSION_NUMBER,
334 -- Modified by dcshanmu for eBTax - modification starts
335 TAX_DATE,
336 LINE_AMT,
337 INTERNAL_ORGANIZATION_ID,
338 APPLICATION_ID,
339 ENTITY_CODE,
340 EVENT_CLASS_CODE,
341 EVENT_TYPE_CODE,
342 TRX_ID,
343 TRX_LINE_ID,
344 TRX_LEVEL_TYPE,
345 TRX_LINE_NUMBER,
346 TAX_LINE_NUMBER,
347 TAX_REGIME_ID,
348 TAX_REGIME_CODE,
349 TAX_ID,
350 TAX,
351 TAX_STATUS_ID,
352 TAX_STATUS_CODE,
353 TAX_APPORTIONMENT_LINE_NUMBER,
354 LEGAL_ENTITY_ID,
355 TRX_NUMBER,
356 TRX_DATE,
357 TAX_JURISDICTION_ID,
358 TAX_JURISDICTION_CODE,
359 TAX_TYPE_CODE,
360 TAX_CURRENCY_CODE,
361 TAXABLE_AMT_TAX_CURR,
362 TRX_CURRENCY_CODE,
363 MINIMUM_ACCOUNTABLE_UNIT,
364 PRECISION,
365 CURRENCY_CONVERSION_TYPE,
366 CURRENCY_CONVERSION_RATE,
367 CURRENCY_CONVERSION_DATE
368 -- Modified by dcshanmu for eBTax - modification end
369
370 FROM Okl_Tax_Trx_Details
371 WHERE okl_tax_trx_details.id = p_id;
372 l_okl_ttd_pk okl_ttd_pk_csr%ROWTYPE;
373 l_ttd_rec ttd_rec_type;
374 BEGIN
375 x_no_data_found := TRUE;
376 -- Get current database values
377 OPEN okl_ttd_pk_csr (p_ttd_rec.id);
378 FETCH okl_ttd_pk_csr INTO
379 l_ttd_rec.id,
383 l_ttd_rec.tax_rate_code,
380 l_ttd_rec.txs_id,
381 l_ttd_rec.tax_determine_date,
382 l_ttd_rec.tax_rate_id,
384 l_ttd_rec.taxable_amt,
385 l_ttd_rec.tax_exemption_id,
386 l_ttd_rec.tax_rate,
387 l_ttd_rec.tax_amt,
388 l_ttd_rec.billed_yn,
389 l_ttd_rec.tax_call_type_code,
390 l_ttd_rec.program_id,
391 l_ttd_rec.request_id,
392 l_ttd_rec.program_application_id,
393 l_ttd_rec.program_update_date,
394 l_ttd_rec.attribute_category,
395 l_ttd_rec.attribute1,
396 l_ttd_rec.attribute2,
397 l_ttd_rec.attribute3,
398 l_ttd_rec.attribute4,
399 l_ttd_rec.attribute5,
400 l_ttd_rec.attribute6,
401 l_ttd_rec.attribute7,
402 l_ttd_rec.attribute8,
403 l_ttd_rec.attribute9,
404 l_ttd_rec.attribute10,
405 l_ttd_rec.attribute11,
406 l_ttd_rec.attribute12,
407 l_ttd_rec.attribute13,
408 l_ttd_rec.attribute14,
409 l_ttd_rec.attribute15,
410 l_ttd_rec.created_by,
411 l_ttd_rec.creation_date,
412 l_ttd_rec.last_updated_by,
413 l_ttd_rec.last_update_date,
414 l_ttd_rec.last_update_login,
415 l_ttd_rec.object_version_number,
416 -- Modified by dcshanmu for eBTax - modification starts
417 l_ttd_rec.tax_date,
418 l_ttd_rec.line_amt,
419 l_ttd_rec.internal_organization_id,
420 l_ttd_rec.application_id,
421 l_ttd_rec.entity_code,
422 l_ttd_rec.event_class_code,
423 l_ttd_rec.event_type_code,
424 l_ttd_rec.trx_id,
425 l_ttd_rec.trx_line_id,
426 l_ttd_rec.trx_level_type,
427 l_ttd_rec.trx_line_number,
428 l_ttd_rec.tax_line_number,
429 l_ttd_rec.tax_regime_id,
430 l_ttd_rec.tax_regime_code,
431 l_ttd_rec.tax_id,
432 l_ttd_rec.tax,
433 l_ttd_rec.tax_status_id,
434 l_ttd_rec.tax_status_code,
435 l_ttd_rec.tax_apportionment_line_number,
436 l_ttd_rec.legal_entity_id,
437 l_ttd_rec.trx_number,
438 l_ttd_rec.trx_date,
439 l_ttd_rec.tax_jurisdiction_id,
440 l_ttd_rec.tax_jurisdiction_code,
441 l_ttd_rec.tax_type_code,
442 l_ttd_rec.tax_currency_code,
443 l_ttd_rec.taxable_amt_tax_curr,
444 l_ttd_rec.trx_currency_code,
445 l_ttd_rec.minimum_accountable_unit,
446 l_ttd_rec.precision,
447 l_ttd_rec.currency_conversion_type,
448 l_ttd_rec.currency_conversion_rate,
449 l_ttd_rec.currency_conversion_date;
450 -- Modified by dcshanmu for eBTax - modification end
451 x_no_data_found := okl_ttd_pk_csr%NOTFOUND;
452 CLOSE okl_ttd_pk_csr;
453 RETURN(l_ttd_rec);
454 END get_rec;
455
456 ------------------------------------------------------------------
457 -- This version of get_rec sets error messages if no data found --
458 ------------------------------------------------------------------
459 FUNCTION get_rec (
460 p_ttd_rec IN ttd_rec_type,
461 x_return_status OUT NOCOPY VARCHAR2
462 ) RETURN ttd_rec_type IS
463 l_ttd_rec ttd_rec_type;
464 l_row_notfound BOOLEAN := TRUE;
465 BEGIN
466 x_return_status := OKL_API.G_RET_STS_SUCCESS;
467 l_ttd_rec := get_rec(p_ttd_rec, l_row_notfound);
468 IF (l_row_notfound) THEN
469 OKL_API.set_message(G_APP_NAME,G_INVALID_VALUE,G_COL_NAME_TOKEN,'ID');
470 x_return_status := OKL_API.G_RET_STS_ERROR;
471 END IF;
472 RETURN(l_ttd_rec);
473 END get_rec;
474 -----------------------------------------------------------
475 -- So we don't have to pass an "l_row_notfound" variable --
476 -----------------------------------------------------------
477 FUNCTION get_rec (
478 p_ttd_rec IN ttd_rec_type
479 ) RETURN ttd_rec_type IS
480 l_row_not_found BOOLEAN := TRUE;
481 BEGIN
482 RETURN(get_rec(p_ttd_rec, l_row_not_found));
483 END get_rec;
484 ---------------------------------------------------------------------------
485 -- FUNCTION null_out_defaults for: OKL_TAX_TRX_DETAILS_V
486 ---------------------------------------------------------------------------
487 FUNCTION null_out_defaults (
488 p_ttdv_rec IN ttdv_rec_type
489 ) RETURN ttdv_rec_type IS
490 l_ttdv_rec ttdv_rec_type := p_ttdv_rec;
491 BEGIN
492 IF (l_ttdv_rec.id = OKL_API.G_MISS_NUM ) THEN
493 l_ttdv_rec.id := NULL;
494 END IF;
495 IF (l_ttdv_rec.txs_id = OKL_API.G_MISS_NUM ) THEN
496 l_ttdv_rec.txs_id := NULL;
497 END IF;
498 IF (l_ttdv_rec.tax_determine_date = OKL_API.G_MISS_DATE ) THEN
499 l_ttdv_rec.tax_determine_date := NULL;
500 END IF;
501 IF (l_ttdv_rec.tax_rate_id = OKL_API.G_MISS_NUM ) THEN
502 l_ttdv_rec.tax_rate_id := NULL;
503 END IF;
504 IF (l_ttdv_rec.tax_rate_code = OKL_API.G_MISS_CHAR ) THEN
505 l_ttdv_rec.tax_rate_code := NULL;
506 END IF;
507 IF (l_ttdv_rec.taxable_amt = OKL_API.G_MISS_NUM ) THEN
508 l_ttdv_rec.taxable_amt := NULL;
509 END IF;
510 IF (l_ttdv_rec.tax_exemption_id = OKL_API.G_MISS_NUM ) THEN
511 l_ttdv_rec.tax_exemption_id := NULL;
512 END IF;
516 IF (l_ttdv_rec.tax_amt = OKL_API.G_MISS_NUM ) THEN
513 IF (l_ttdv_rec.tax_rate = OKL_API.G_MISS_NUM ) THEN
514 l_ttdv_rec.tax_rate := NULL;
515 END IF;
517 l_ttdv_rec.tax_amt := NULL;
518 END IF;
519 IF (l_ttdv_rec.billed_yn = OKL_API.G_MISS_CHAR ) THEN
520 l_ttdv_rec.billed_yn := NULL;
521 END IF;
522 IF (l_ttdv_rec.tax_call_type_code = OKL_API.G_MISS_CHAR ) THEN
523 l_ttdv_rec.tax_call_type_code := NULL;
524 END IF;
525 IF (l_ttdv_rec.program_id = OKL_API.G_MISS_NUM ) THEN
526 l_ttdv_rec.program_id := NULL;
527 END IF;
528 IF (l_ttdv_rec.request_id = OKL_API.G_MISS_NUM ) THEN
529 l_ttdv_rec.request_id := NULL;
530 END IF;
531 IF (l_ttdv_rec.program_application_id = OKL_API.G_MISS_NUM ) THEN
532 l_ttdv_rec.program_application_id := NULL;
533 END IF;
534 IF (l_ttdv_rec.program_update_date = OKL_API.G_MISS_DATE ) THEN
535 l_ttdv_rec.program_update_date := NULL;
536 END IF;
537 IF (l_ttdv_rec.attribute_category = OKL_API.G_MISS_CHAR ) THEN
538 l_ttdv_rec.attribute_category := NULL;
539 END IF;
540 IF (l_ttdv_rec.attribute1 = OKL_API.G_MISS_CHAR ) THEN
541 l_ttdv_rec.attribute1 := NULL;
542 END IF;
543 IF (l_ttdv_rec.attribute2 = OKL_API.G_MISS_CHAR ) THEN
544 l_ttdv_rec.attribute2 := NULL;
545 END IF;
546 IF (l_ttdv_rec.attribute3 = OKL_API.G_MISS_CHAR ) THEN
547 l_ttdv_rec.attribute3 := NULL;
548 END IF;
549 IF (l_ttdv_rec.attribute4 = OKL_API.G_MISS_CHAR ) THEN
550 l_ttdv_rec.attribute4 := NULL;
551 END IF;
552 IF (l_ttdv_rec.attribute5 = OKL_API.G_MISS_CHAR ) THEN
553 l_ttdv_rec.attribute5 := NULL;
554 END IF;
555 IF (l_ttdv_rec.attribute6 = OKL_API.G_MISS_CHAR ) THEN
556 l_ttdv_rec.attribute6 := NULL;
557 END IF;
558 IF (l_ttdv_rec.attribute7 = OKL_API.G_MISS_CHAR ) THEN
559 l_ttdv_rec.attribute7 := NULL;
560 END IF;
561 IF (l_ttdv_rec.attribute8 = OKL_API.G_MISS_CHAR ) THEN
562 l_ttdv_rec.attribute8 := NULL;
563 END IF;
564 IF (l_ttdv_rec.attribute9 = OKL_API.G_MISS_CHAR ) THEN
565 l_ttdv_rec.attribute9 := NULL;
566 END IF;
567 IF (l_ttdv_rec.attribute10 = OKL_API.G_MISS_CHAR ) THEN
568 l_ttdv_rec.attribute10 := NULL;
569 END IF;
570 IF (l_ttdv_rec.attribute11 = OKL_API.G_MISS_CHAR ) THEN
571 l_ttdv_rec.attribute11 := NULL;
572 END IF;
573 IF (l_ttdv_rec.attribute12 = OKL_API.G_MISS_CHAR ) THEN
574 l_ttdv_rec.attribute12 := NULL;
575 END IF;
576 IF (l_ttdv_rec.attribute13 = OKL_API.G_MISS_CHAR ) THEN
577 l_ttdv_rec.attribute13 := NULL;
578 END IF;
579 IF (l_ttdv_rec.attribute14 = OKL_API.G_MISS_CHAR ) THEN
580 l_ttdv_rec.attribute14 := NULL;
581 END IF;
582 IF (l_ttdv_rec.attribute15 = OKL_API.G_MISS_CHAR ) THEN
583 l_ttdv_rec.attribute15 := NULL;
584 END IF;
585 IF (l_ttdv_rec.created_by = OKL_API.G_MISS_NUM ) THEN
586 l_ttdv_rec.created_by := NULL;
587 END IF;
588 IF (l_ttdv_rec.creation_date = OKL_API.G_MISS_DATE ) THEN
589 l_ttdv_rec.creation_date := NULL;
590 END IF;
591 IF (l_ttdv_rec.last_updated_by = OKL_API.G_MISS_NUM ) THEN
592 l_ttdv_rec.last_updated_by := NULL;
593 END IF;
594 IF (l_ttdv_rec.last_update_date = OKL_API.G_MISS_DATE ) THEN
595 l_ttdv_rec.last_update_date := NULL;
596 END IF;
597 IF (l_ttdv_rec.last_update_login = OKL_API.G_MISS_NUM ) THEN
598 l_ttdv_rec.last_update_login := NULL;
599 END IF;
600 IF (l_ttdv_rec.object_version_number = OKL_API.G_MISS_NUM ) THEN
601 l_ttdv_rec.object_version_number := NULL;
602 END IF;
603
604 -- Modified by dcshanmu for eBTax - modification starts
605 -- Added default null out for newly added columns in the table
606
607 IF (l_ttdv_rec.tax_date = OKL_API.G_MISS_DATE ) THEN
608 l_ttdv_rec.tax_date := NULL;
609 END IF;
610 IF (l_ttdv_rec.line_amt = OKL_API.G_MISS_NUM ) THEN
611 l_ttdv_rec.line_amt := NULL;
612 END IF;
613 IF (l_ttdv_rec.internal_organization_id = OKL_API.G_MISS_NUM ) THEN
614 l_ttdv_rec.internal_organization_id := NULL;
615 END IF;
616 IF (l_ttdv_rec.application_id = OKL_API.G_MISS_NUM ) THEN
617 l_ttdv_rec.application_id := NULL;
618 END IF;
619 IF (l_ttdv_rec.entity_code = OKL_API.G_MISS_CHAR ) THEN
620 l_ttdv_rec.entity_code := NULL;
621 END IF;
622 IF (l_ttdv_rec.event_class_code = OKL_API.G_MISS_CHAR ) THEN
623 l_ttdv_rec.event_class_code := NULL;
624 END IF;
625 IF (l_ttdv_rec.event_type_code = OKL_API.G_MISS_CHAR ) THEN
626 l_ttdv_rec.event_type_code := NULL;
627 END IF;
628 IF (l_ttdv_rec.trx_id = OKL_API.G_MISS_NUM ) THEN
629 l_ttdv_rec.trx_id := NULL;
630 END IF;
631 IF (l_ttdv_rec.trx_line_id = OKL_API.G_MISS_NUM ) THEN
632 l_ttdv_rec.trx_line_id := NULL;
633 END IF;
634 IF (l_ttdv_rec.trx_level_type = OKL_API.G_MISS_CHAR ) THEN
635 l_ttdv_rec.trx_level_type := NULL;
636 END IF;
637 IF (l_ttdv_rec.trx_line_number = OKL_API.G_MISS_NUM ) THEN
638 l_ttdv_rec.trx_line_number := NULL;
639 END IF;
640 IF (l_ttdv_rec.tax_line_number = OKL_API.G_MISS_NUM ) THEN
641 l_ttdv_rec.tax_line_number := NULL;
642 END IF;
643 IF (l_ttdv_rec.tax_regime_id = OKL_API.G_MISS_NUM ) THEN
644 l_ttdv_rec.tax_regime_id := NULL;
645 END IF;
646 IF (l_ttdv_rec.tax_regime_code = OKL_API.G_MISS_CHAR ) THEN
647 l_ttdv_rec.tax_regime_code := NULL;
648 END IF;
649 IF (l_ttdv_rec.tax_id = OKL_API.G_MISS_NUM ) THEN
650 l_ttdv_rec.tax_id := NULL;
651 END IF;
655 IF (l_ttdv_rec.tax_status_id = OKL_API.G_MISS_NUM ) THEN
652 IF (l_ttdv_rec.tax = OKL_API.G_MISS_CHAR ) THEN
653 l_ttdv_rec.tax := NULL;
654 END IF;
656 l_ttdv_rec.tax_status_id := NULL;
657 END IF;
658 IF (l_ttdv_rec.tax_status_code = OKL_API.G_MISS_CHAR ) THEN
659 l_ttdv_rec.tax_status_code := NULL;
660 END IF;
661 IF (l_ttdv_rec.tax_apportionment_line_number = OKL_API.G_MISS_NUM ) THEN
662 l_ttdv_rec.tax_apportionment_line_number := NULL;
663 END IF;
664 IF (l_ttdv_rec.legal_entity_id = OKL_API.G_MISS_NUM ) THEN
665 l_ttdv_rec.legal_entity_id := NULL;
666 END IF;
667 IF (l_ttdv_rec.trx_number = OKL_API.G_MISS_CHAR ) THEN
668 l_ttdv_rec.trx_number := NULL;
669 END IF;
670 IF (l_ttdv_rec.trx_date = OKL_API.G_MISS_DATE ) THEN
671 l_ttdv_rec.trx_date := NULL;
672 END IF;
673 IF (l_ttdv_rec.tax_jurisdiction_id = OKL_API.G_MISS_NUM ) THEN
674 l_ttdv_rec.tax_jurisdiction_id := NULL;
675 END IF;
676 IF (l_ttdv_rec.tax_jurisdiction_code = OKL_API.G_MISS_CHAR ) THEN
677 l_ttdv_rec.tax_jurisdiction_code := NULL;
678 END IF;
679 IF (l_ttdv_rec.tax_type_code = OKL_API.G_MISS_CHAR ) THEN
680 l_ttdv_rec.tax_type_code := NULL;
681 END IF;
682 IF (l_ttdv_rec.tax_currency_code = OKL_API.G_MISS_CHAR ) THEN
683 l_ttdv_rec.tax_currency_code := NULL;
684 END IF;
685 IF (l_ttdv_rec.taxable_amt_tax_curr = OKL_API.G_MISS_NUM ) THEN
686 l_ttdv_rec.taxable_amt_tax_curr := NULL;
687 END IF;
688 IF (l_ttdv_rec.trx_currency_code = OKL_API.G_MISS_CHAR ) THEN
689 l_ttdv_rec.trx_currency_code := NULL;
690 END IF;
691 IF (l_ttdv_rec.minimum_accountable_unit = OKL_API.G_MISS_NUM ) THEN
692 l_ttdv_rec.minimum_accountable_unit := NULL;
693 END IF;
694 IF (l_ttdv_rec.precision = OKL_API.G_MISS_NUM ) THEN
695 l_ttdv_rec.precision := NULL;
696 END IF;
697 IF (l_ttdv_rec.currency_conversion_type = OKL_API.G_MISS_CHAR ) THEN
698 l_ttdv_rec.currency_conversion_type := NULL;
699 END IF;
700 IF (l_ttdv_rec.currency_conversion_rate = OKL_API.G_MISS_NUM ) THEN
701 l_ttdv_rec.currency_conversion_rate := NULL;
702 END IF;
703 IF (l_ttdv_rec.currency_conversion_date = OKL_API.G_MISS_DATE ) THEN
704 l_ttdv_rec.currency_conversion_date := NULL;
705 END IF;
706 -- Modified by dcshanmu for eBTax - modification end
707
708 RETURN(l_ttdv_rec);
709 END null_out_defaults;
710 ---------------------------------
711 -- Validate_Attributes for: ID --
712 ---------------------------------
713 PROCEDURE validate_id(
714 x_return_status OUT NOCOPY VARCHAR2,
715 p_ttdv_rec IN ttdv_rec_type) IS
716 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
717 BEGIN
718
719 IF (p_ttdv_rec.id = OKL_API.G_MISS_NUM OR p_ttdv_rec.id IS NULL)
720 THEN
721 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'id');
722 l_return_status := OKL_API.G_RET_STS_ERROR;
723
724 END IF;
725 x_return_status := l_return_status;
726 EXCEPTION
727
728 WHEN OTHERS THEN
729 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
730 ,p_msg_name => G_UNEXPECTED_ERROR
731 ,p_token1 => G_SQLCODE_TOKEN
732 ,p_token1_value => SQLCODE
733 ,p_token2 => G_SQLERRM_TOKEN
734 ,p_token2_value => SQLERRM);
735 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
736 END validate_id;
737 -------------------------------------
738 -- Validate_Attributes for: TXS_ID --
739 -------------------------------------
740 PROCEDURE validate_txs_id(
741 x_return_status OUT NOCOPY VARCHAR2,
742 p_ttdv_rec IN ttdv_rec_type) IS
743 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
744
745 l_dummy_var VARCHAR2(1) := '?' ;
746
747 CURSOR okl_ttdv_txs_id_fk_csr (p_id IN NUMBER) IS
748 SELECT 'x'
749 FROM Okl_tax_sources
750 WHERE id = p_id;
751 BEGIN
752
753 IF (p_ttdv_rec.txs_id = OKL_API.G_MISS_NUM OR p_ttdv_rec.txs_id IS NULL)
754 THEN
755 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'txs_id');
756 l_return_status := OKL_API.G_RET_STS_ERROR;
757 ELSE
758 OPEN okl_ttdv_txs_id_fk_csr(p_ttdv_rec.txs_id) ;
759 FETCH okl_ttdv_txs_id_fk_csr into l_dummy_var ;
760 CLOSE okl_ttdv_txs_id_fk_csr ;
761 -- still set to default means data was not found
762 IF ( l_dummy_var = '?' ) THEN
763 OKC_API.set_message(g_app_name,
764 g_no_parent_record,
765 g_col_name_token,
766 'txs_id',
767 g_child_table_token ,
768 'OKL_TAX_TRX_DETAILS',
769 g_parent_table_token ,
770 'OKL_TAX_SOURCES');
771 l_return_status := OKC_API.G_RET_STS_ERROR;
772
773 END IF;
774 END IF;
775 x_return_status := l_return_status;
776 EXCEPTION
777
778 WHEN OTHERS THEN
779 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
780 ,p_msg_name => G_UNEXPECTED_ERROR
781 ,p_token1 => G_SQLCODE_TOKEN
782 ,p_token1_value => SQLCODE
783 ,p_token2 => G_SQLERRM_TOKEN
784 ,p_token2_value => SQLERRM);
785 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
786 END validate_txs_id;
790 PROCEDURE validate_tax_call_type_code(
787 -------------------------------------------------
788 -- Validate_Attributes for: TAX_CALL_TYPE_CODE --
789 -------------------------------------------------
791 x_return_status OUT NOCOPY VARCHAR2,
792 p_ttdv_rec IN ttdv_rec_type) IS
793 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
794
795 l_dummy_var VARCHAR2(1) := '?' ;
796
797 CURSOR okl_ttdv_tctc_fk_csr (p_lookup_code IN VARCHAR2, p_lookup_type IN VARCHAR2) IS
798 SELECT 'x'
799 FROM Fnd_Lookup_Values
800 WHERE fnd_lookup_values.lookup_code = p_lookup_code
801 AND fnd_lookup_values.lookup_type = p_lookup_type;
802 BEGIN
803
804 IF (p_ttdv_rec.tax_call_type_code <> OKL_API.G_MISS_CHAR AND p_ttdv_rec.tax_call_type_code IS NOT NULL)
805 THEN
806 --OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'tax_call_type_code');
807 --l_return_status := OKL_API.G_RET_STS_ERROR;
808 OPEN okl_ttdv_tctc_fk_csr(p_ttdv_rec.tax_call_type_code, 'OKL_TAX_CALL_TYPE') ;
809 FETCH okl_ttdv_tctc_fk_csr into l_dummy_var ;
810 CLOSE okl_ttdv_tctc_fk_csr ;
811 -- still set to default means data was not found
812 IF ( l_dummy_var = '?' ) THEN
813
814 OKC_API.set_message(g_app_name,
815 g_no_parent_record,
816 g_col_name_token,
817 'tax_call_type_code',
818 g_child_table_token ,
819 'OKL_TAX_TRX_DETAILS',
820 g_parent_table_token ,
821 'FND_LOOKUP_VALUES');
822 l_return_status := OKC_API.G_RET_STS_ERROR;
823
824 END IF;
825
826 END IF;
827 x_return_status := l_return_status;
828 EXCEPTION
829
830 WHEN OTHERS THEN
831 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
832 ,p_msg_name => G_UNEXPECTED_ERROR
833 ,p_token1 => G_SQLCODE_TOKEN
834 ,p_token1_value => SQLCODE
835 ,p_token2 => G_SQLERRM_TOKEN
836 ,p_token2_value => SQLERRM);
837 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
838 END validate_tax_call_type_code;
839
840 -- Modified by dcshanmu for eBTax - modification starts
841 -- added validation methods for newly added columns
842 -------------------------------------------------
843 -- Validate_Attributes for: TAX_RATE_ID --
844 -------------------------------------------------
845 PROCEDURE validate_tax_rate_id(
846 x_return_status OUT NOCOPY VARCHAR2,
847 p_ttdv_rec IN ttdv_rec_type) IS
848 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
849
850 l_dummy_var VARCHAR2(1) := '?' ;
851
852 CURSOR okl_ttdv_tri_fk_csr (p_id IN NUMBER) IS
853 SELECT 'x'
854 FROM zx_rates_b
855 WHERE zx_rates_b.tax_rate_id = p_id;
856 BEGIN
857
858 IF (p_ttdv_rec.tax_rate_id <> OKL_API.G_MISS_NUM AND p_ttdv_rec.tax_rate_id IS NOT NULL)
859 THEN
860 --OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'tax_call_type_code');
861 --l_return_status := OKL_API.G_RET_STS_ERROR;
862 OPEN okl_ttdv_tri_fk_csr(p_ttdv_rec.tax_rate_id) ;
863 FETCH okl_ttdv_tri_fk_csr into l_dummy_var ;
864 CLOSE okl_ttdv_tri_fk_csr ;
865 -- still set to default means data was not found
866 IF ( l_dummy_var = '?' ) THEN
867
868 OKC_API.set_message(g_app_name,
869 g_no_parent_record,
870 g_col_name_token,
871 'tax_rate_id',
872 g_child_table_token ,
873 'OKL_TAX_TRX_DETAILS',
874 g_parent_table_token ,
875 'ZX_RATES_B');
876 l_return_status := OKC_API.G_RET_STS_ERROR;
877
878 END IF;
879
880 END IF;
881 x_return_status := l_return_status;
882 EXCEPTION
883
884 WHEN OTHERS THEN
885 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
886 ,p_msg_name => G_UNEXPECTED_ERROR
887 ,p_token1 => G_SQLCODE_TOKEN
888 ,p_token1_value => SQLCODE
889 ,p_token2 => G_SQLERRM_TOKEN
890 ,p_token2_value => SQLERRM);
891 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
892 END validate_tax_rate_id;
893 -------------------------------------------------
894 -- Validate_Attributes for: TAX_RATE_CODE --
895 -------------------------------------------------
896 PROCEDURE validate_tax_rate_code(
897 x_return_status OUT NOCOPY VARCHAR2,
898 p_ttdv_rec IN ttdv_rec_type) IS
899 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
900
901 l_dummy_var VARCHAR2(1) := '?' ;
902
903 CURSOR okl_ttdv_trc_fk_csr (p_code IN VARCHAR2) IS
904 SELECT 'x'
905 FROM zx_rates_b
906 WHERE zx_rates_b.tax_rate_code = p_code;
907 BEGIN
908
909 IF (p_ttdv_rec.tax_rate_code <> OKL_API.G_MISS_CHAR AND p_ttdv_rec.tax_rate_code IS NOT NULL)
910 THEN
911 --OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'tax_call_type_code');
912 --l_return_status := OKL_API.G_RET_STS_ERROR;
913 OPEN okl_ttdv_trc_fk_csr(p_ttdv_rec.tax_rate_code) ;
914 FETCH okl_ttdv_trc_fk_csr into l_dummy_var ;
915 CLOSE okl_ttdv_trc_fk_csr ;
916 -- still set to default means data was not found
920 g_no_parent_record,
917 IF ( l_dummy_var = '?' ) THEN
918
919 OKC_API.set_message(g_app_name,
921 g_col_name_token,
922 'tax_rate_code',
923 g_child_table_token ,
924 'OKL_TAX_TRX_DETAILS',
925 g_parent_table_token ,
926 'ZX_RATES_B');
927 l_return_status := OKC_API.G_RET_STS_ERROR;
928
929 END IF;
930
931 END IF;
932 x_return_status := l_return_status;
933 EXCEPTION
934
935 WHEN OTHERS THEN
936 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
937 ,p_msg_name => G_UNEXPECTED_ERROR
938 ,p_token1 => G_SQLCODE_TOKEN
939 ,p_token1_value => SQLCODE
940 ,p_token2 => G_SQLERRM_TOKEN
941 ,p_token2_value => SQLERRM);
942 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
943 END validate_tax_rate_code;
944 -------------------------------------------------
945 -- Validate_Attributes for: TAX_EXEMPTION_ID --
946 -------------------------------------------------
947 PROCEDURE validate_tax_exemption_id(
948 x_return_status OUT NOCOPY VARCHAR2,
949 p_ttdv_rec IN ttdv_rec_type) IS
950 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
951
952 l_dummy_var VARCHAR2(1) := '?' ;
953
954 CURSOR okl_ttdv_tei_fk_csr (p_id IN NUMBER) IS
955 SELECT 'x'
956 FROM zx_exemptions
957 WHERE zx_exemptions.tax_exemption_id = p_id;
958 BEGIN
959
960 IF (p_ttdv_rec.tax_exemption_id <> OKL_API.G_MISS_NUM AND p_ttdv_rec.tax_exemption_id IS NOT NULL)
961 THEN
962 --OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'tax_call_type_code');
963 --l_return_status := OKL_API.G_RET_STS_ERROR;
964 OPEN okl_ttdv_tei_fk_csr(p_ttdv_rec.tax_exemption_id) ;
965 FETCH okl_ttdv_tei_fk_csr into l_dummy_var ;
966 CLOSE okl_ttdv_tei_fk_csr ;
967 -- still set to default means data was not found
968 IF ( l_dummy_var = '?' ) THEN
969
970 OKC_API.set_message(g_app_name,
971 g_no_parent_record,
972 g_col_name_token,
973 'tax_exemption_id',
974 g_child_table_token ,
975 'OKL_TAX_TRX_DETAILS',
976 g_parent_table_token ,
977 'ZX_EXEMPTIONS');
978 l_return_status := OKC_API.G_RET_STS_ERROR;
979
980 END IF;
981
982 END IF;
983 x_return_status := l_return_status;
984 EXCEPTION
985
986 WHEN OTHERS THEN
987 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
988 ,p_msg_name => G_UNEXPECTED_ERROR
989 ,p_token1 => G_SQLCODE_TOKEN
990 ,p_token1_value => SQLCODE
991 ,p_token2 => G_SQLERRM_TOKEN
992 ,p_token2_value => SQLERRM);
993 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
994 END validate_tax_exemption_id;
995 -------------------------------------------------
996 -- Validate_Attributes for: INTERNAL_ORGANIZATION_ID --
997 -------------------------------------------------
998 PROCEDURE validate_int_org_id(
999 x_return_status OUT NOCOPY VARCHAR2,
1000 p_ttdv_rec IN ttdv_rec_type) IS
1001 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1002
1003 l_dummy_var VARCHAR2(1) := '?' ;
1004
1005 CURSOR okl_ttdv_ioi_fk_csr (p_id IN NUMBER) IS
1006 SELECT 'x'
1007 FROM hr_all_organization_units
1008 WHERE hr_all_organization_units.organization_id = p_id;
1009 BEGIN
1010
1011 IF (p_ttdv_rec.internal_organization_id <> OKL_API.G_MISS_NUM AND p_ttdv_rec.internal_organization_id IS NOT NULL)
1012 THEN
1013 --OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'tax_call_type_code');
1014 --l_return_status := OKL_API.G_RET_STS_ERROR;
1015 OPEN okl_ttdv_ioi_fk_csr(p_ttdv_rec.internal_organization_id) ;
1016 FETCH okl_ttdv_ioi_fk_csr into l_dummy_var ;
1017 CLOSE okl_ttdv_ioi_fk_csr ;
1018 -- still set to default means data was not found
1019 IF ( l_dummy_var = '?' ) THEN
1020
1021 OKC_API.set_message(g_app_name,
1022 g_no_parent_record,
1023 g_col_name_token,
1024 'internal_organization_id',
1025 g_child_table_token ,
1026 'OKL_TAX_TRX_DETAILS',
1027 g_parent_table_token ,
1028 'HR_ALL_ORGANIZATION_UNITS');
1029 l_return_status := OKC_API.G_RET_STS_ERROR;
1030
1031 END IF;
1032 ELSIF (p_ttdv_rec.internal_organization_id = OKL_API.G_MISS_NUM OR p_ttdv_rec.internal_organization_id IS NULL)
1033 THEN
1034 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'internal_organization_id');
1035 l_return_status := OKL_API.G_RET_STS_ERROR;
1036
1037 END IF;
1038 x_return_status := l_return_status;
1039 EXCEPTION
1040
1041 WHEN OTHERS THEN
1042 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1043 ,p_msg_name => G_UNEXPECTED_ERROR
1044 ,p_token1 => G_SQLCODE_TOKEN
1045 ,p_token1_value => SQLCODE
1046 ,p_token2 => G_SQLERRM_TOKEN
1047 ,p_token2_value => SQLERRM);
1051 -- Validate_Attributes for: APPLICATION_ID --
1048 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1049 END validate_int_org_id;
1050 -------------------------------------------------
1052 -------------------------------------------------
1053 PROCEDURE validate_application_id(
1054 x_return_status OUT NOCOPY VARCHAR2,
1055 p_ttdv_rec IN ttdv_rec_type) IS
1056 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1057
1058 l_dummy_var VARCHAR2(1) := '?' ;
1059
1060 CURSOR okl_ttdv_app_id_fk_csr (p_id IN NUMBER) IS
1061 SELECT 'x'
1062 FROM fnd_application
1063 WHERE fnd_application.application_id = p_id;
1064 BEGIN
1065
1066 IF (p_ttdv_rec.application_id <> OKL_API.G_MISS_NUM AND p_ttdv_rec.application_id IS NOT NULL)
1067 THEN
1068 --OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'tax_call_type_code');
1069 --l_return_status := OKL_API.G_RET_STS_ERROR;
1070 OPEN okl_ttdv_app_id_fk_csr(p_ttdv_rec.application_id) ;
1071 FETCH okl_ttdv_app_id_fk_csr into l_dummy_var ;
1072 CLOSE okl_ttdv_app_id_fk_csr ;
1073 -- still set to default means data was not found
1074 IF ( l_dummy_var = '?' ) THEN
1075
1076 OKC_API.set_message(g_app_name,
1077 g_no_parent_record,
1078 g_col_name_token,
1079 'application_id',
1080 g_child_table_token ,
1081 'OKL_TAX_TRX_DETAILS',
1082 g_parent_table_token ,
1083 'FND_APPLICATION');
1084 l_return_status := OKC_API.G_RET_STS_ERROR;
1085
1086 END IF;
1087 ELSIF (p_ttdv_rec.application_id = OKL_API.G_MISS_NUM OR p_ttdv_rec.application_id IS NULL)
1088 THEN
1089 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'application_id');
1090 l_return_status := OKL_API.G_RET_STS_ERROR;
1091
1092 END IF;
1093 x_return_status := l_return_status;
1094 EXCEPTION
1095
1096 WHEN OTHERS THEN
1097 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1098 ,p_msg_name => G_UNEXPECTED_ERROR
1099 ,p_token1 => G_SQLCODE_TOKEN
1100 ,p_token1_value => SQLCODE
1101 ,p_token2 => G_SQLERRM_TOKEN
1102 ,p_token2_value => SQLERRM);
1103 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1104 END validate_application_id;
1105 -------------------------------------------------
1106 -- Validate_Attributes for: ENTITY_CODE --
1107 -------------------------------------------------
1108 PROCEDURE validate_entity_code(
1109 x_return_status OUT NOCOPY VARCHAR2,
1110 p_ttdv_rec IN ttdv_rec_type) IS
1111 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1112 BEGIN
1113
1114 IF (p_ttdv_rec.entity_code = OKL_API.G_MISS_CHAR OR p_ttdv_rec.entity_code IS NULL)
1115 THEN
1116 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'entity_code');
1117 l_return_status := OKL_API.G_RET_STS_ERROR;
1118 END IF;
1119 x_return_status := l_return_status;
1120 EXCEPTION
1121
1122 WHEN OTHERS THEN
1123 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1124 ,p_msg_name => G_UNEXPECTED_ERROR
1125 ,p_token1 => G_SQLCODE_TOKEN
1126 ,p_token1_value => SQLCODE
1127 ,p_token2 => G_SQLERRM_TOKEN
1128 ,p_token2_value => SQLERRM);
1129 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1130 END validate_entity_code;
1131 -------------------------------------------------
1132 -- Validate_Attributes for: EVENT_CLASS_CODE --
1133 -------------------------------------------------
1134 PROCEDURE validate_event_class_code(
1135 x_return_status OUT NOCOPY VARCHAR2,
1136 p_ttdv_rec IN ttdv_rec_type) IS
1137 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1138 BEGIN
1139
1140 IF (p_ttdv_rec.event_class_code = OKL_API.G_MISS_CHAR OR p_ttdv_rec.event_class_code IS NULL)
1141 THEN
1142 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'event_class_code');
1143 l_return_status := OKL_API.G_RET_STS_ERROR;
1144 END IF;
1145 x_return_status := l_return_status;
1146 EXCEPTION
1147
1148 WHEN OTHERS THEN
1149 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1150 ,p_msg_name => G_UNEXPECTED_ERROR
1151 ,p_token1 => G_SQLCODE_TOKEN
1152 ,p_token1_value => SQLCODE
1153 ,p_token2 => G_SQLERRM_TOKEN
1154 ,p_token2_value => SQLERRM);
1155 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1156 END validate_event_class_code;
1157 -------------------------------------------------
1158 -- Validate_Attributes for: EVENT_TYPE_CODE --
1159 -------------------------------------------------
1160 PROCEDURE validate_event_type_code(
1161 x_return_status OUT NOCOPY VARCHAR2,
1162 p_ttdv_rec IN ttdv_rec_type) IS
1163 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1164 BEGIN
1165
1166 IF (p_ttdv_rec.event_type_code = OKL_API.G_MISS_CHAR OR p_ttdv_rec.event_type_code IS NULL)
1167 THEN
1168 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'event_type_code');
1169 l_return_status := OKL_API.G_RET_STS_ERROR;
1170 END IF;
1171 x_return_status := l_return_status;
1172 EXCEPTION
1173
1174 WHEN OTHERS THEN
1178 ,p_token1_value => SQLCODE
1175 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1176 ,p_msg_name => G_UNEXPECTED_ERROR
1177 ,p_token1 => G_SQLCODE_TOKEN
1179 ,p_token2 => G_SQLERRM_TOKEN
1180 ,p_token2_value => SQLERRM);
1181 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1182 END validate_event_type_code;
1183 -------------------------------------------------
1184 -- Validate_Attributes for: TRX_ID --
1185 -------------------------------------------------
1186 PROCEDURE validate_trx_id(
1187 x_return_status OUT NOCOPY VARCHAR2,
1188 p_ttdv_rec IN ttdv_rec_type) IS
1189 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1190 BEGIN
1191
1192 IF (p_ttdv_rec.trx_id = OKL_API.G_MISS_NUM OR p_ttdv_rec.trx_id IS NULL)
1193 THEN
1194 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'trx_id');
1195 l_return_status := OKL_API.G_RET_STS_ERROR;
1196 END IF;
1197 x_return_status := l_return_status;
1198 EXCEPTION
1199
1200 WHEN OTHERS THEN
1201 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1202 ,p_msg_name => G_UNEXPECTED_ERROR
1203 ,p_token1 => G_SQLCODE_TOKEN
1204 ,p_token1_value => SQLCODE
1205 ,p_token2 => G_SQLERRM_TOKEN
1206 ,p_token2_value => SQLERRM);
1207 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1208 END validate_trx_id;
1209 -------------------------------------------------
1210 -- Validate_Attributes for: TRX_LINE_ID --
1211 -------------------------------------------------
1212 PROCEDURE validate_trx_line_id(
1213 x_return_status OUT NOCOPY VARCHAR2,
1214 p_ttdv_rec IN ttdv_rec_type) IS
1215 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1216 BEGIN
1217
1218 IF (p_ttdv_rec.trx_line_id = OKL_API.G_MISS_NUM OR p_ttdv_rec.trx_line_id IS NULL)
1219 THEN
1220 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'trx_line_id');
1221 l_return_status := OKL_API.G_RET_STS_ERROR;
1222 END IF;
1223 x_return_status := l_return_status;
1224 EXCEPTION
1225
1226 WHEN OTHERS THEN
1227 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1228 ,p_msg_name => G_UNEXPECTED_ERROR
1229 ,p_token1 => G_SQLCODE_TOKEN
1230 ,p_token1_value => SQLCODE
1231 ,p_token2 => G_SQLERRM_TOKEN
1232 ,p_token2_value => SQLERRM);
1233 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1234 END validate_trx_line_id;
1235 -------------------------------------------------
1236 -- Validate_Attributes for: TRX_LEVEL_TYPE --
1237 -------------------------------------------------
1238 PROCEDURE validate_trx_level_type(
1239 x_return_status OUT NOCOPY VARCHAR2,
1240 p_ttdv_rec IN ttdv_rec_type) IS
1241 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1242 BEGIN
1243
1244 IF (p_ttdv_rec.trx_level_type = OKL_API.G_MISS_CHAR OR p_ttdv_rec.trx_level_type IS NULL)
1245 THEN
1246 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'trx_level_type');
1247 l_return_status := OKL_API.G_RET_STS_ERROR;
1248 END IF;
1249 x_return_status := l_return_status;
1250 EXCEPTION
1251
1252 WHEN OTHERS THEN
1253 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1254 ,p_msg_name => G_UNEXPECTED_ERROR
1255 ,p_token1 => G_SQLCODE_TOKEN
1256 ,p_token1_value => SQLCODE
1257 ,p_token2 => G_SQLERRM_TOKEN
1258 ,p_token2_value => SQLERRM);
1259 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1260 END validate_trx_level_type;
1261 -------------------------------------------------
1262 -- Validate_Attributes for: TAX_LINE_NUMBER --
1263 -------------------------------------------------
1264 PROCEDURE validate_tax_line_number(
1265 x_return_status OUT NOCOPY VARCHAR2,
1266 p_ttdv_rec IN ttdv_rec_type) IS
1267 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1268 BEGIN
1269
1270 IF (p_ttdv_rec.tax_line_number = OKL_API.G_MISS_NUM OR p_ttdv_rec.tax_line_number IS NULL)
1271 THEN
1272 OKC_API.set_message(G_APP_NAME, G_REQUIRED_VALUE, G_COL_NAME_TOKEN, 'tax_line_number');
1273 l_return_status := OKL_API.G_RET_STS_ERROR;
1274 END IF;
1275 x_return_status := l_return_status;
1276 EXCEPTION
1277
1278 WHEN OTHERS THEN
1279 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1280 ,p_msg_name => G_UNEXPECTED_ERROR
1281 ,p_token1 => G_SQLCODE_TOKEN
1282 ,p_token1_value => SQLCODE
1283 ,p_token2 => G_SQLERRM_TOKEN
1284 ,p_token2_value => SQLERRM);
1285 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1286 END validate_tax_line_number;
1287 -------------------------------------------------
1288 -- Validate_Attributes for: TAX_REGIME_ID --
1289 -------------------------------------------------
1290 PROCEDURE validate_tax_regime_id(
1291 x_return_status OUT NOCOPY VARCHAR2,
1292 p_ttdv_rec IN ttdv_rec_type) IS
1293 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1294
1295 l_dummy_var VARCHAR2(1) := '?' ;
1296
1297 CURSOR okl_ttdv_tx_reg_id_fk_csr (p_id IN NUMBER) IS
1298 SELECT 'x'
1299 FROM zx_regimes_b
1303 IF (p_ttdv_rec.tax_regime_id <> OKL_API.G_MISS_NUM AND p_ttdv_rec.tax_regime_id IS NOT NULL)
1300 WHERE zx_regimes_b.tax_regime_id = p_id;
1301 BEGIN
1302
1304 THEN
1305 OPEN okl_ttdv_tx_reg_id_fk_csr(p_ttdv_rec.tax_regime_id) ;
1306 FETCH okl_ttdv_tx_reg_id_fk_csr into l_dummy_var ;
1307 CLOSE okl_ttdv_tx_reg_id_fk_csr ;
1308 -- still set to default means data was not found
1309 IF ( l_dummy_var = '?' ) THEN
1310
1311 OKC_API.set_message(g_app_name,
1312 g_no_parent_record,
1313 g_col_name_token,
1314 'tax_regime_id',
1315 g_child_table_token ,
1316 'OKL_TAX_TRX_DETAILS',
1317 g_parent_table_token ,
1318 'ZX_REGIMES_B');
1319 l_return_status := OKC_API.G_RET_STS_ERROR;
1320
1321 END IF;
1322 END IF;
1323 x_return_status := l_return_status;
1324 EXCEPTION
1325
1326 WHEN OTHERS THEN
1327 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1328 ,p_msg_name => G_UNEXPECTED_ERROR
1329 ,p_token1 => G_SQLCODE_TOKEN
1330 ,p_token1_value => SQLCODE
1331 ,p_token2 => G_SQLERRM_TOKEN
1332 ,p_token2_value => SQLERRM);
1333 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1334 END validate_tax_regime_id;
1335 -------------------------------------------------
1336 -- Validate_Attributes for: TAX_REGIME_CODE --
1337 -------------------------------------------------
1338 PROCEDURE validate_tax_regime_code(
1339 x_return_status OUT NOCOPY VARCHAR2,
1340 p_ttdv_rec IN ttdv_rec_type) IS
1341 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1342
1343 l_dummy_var VARCHAR2(1) := '?' ;
1344
1345 CURSOR okl_ttdv_tx_reg_cd_fk_csr (p_code IN VARCHAR2) IS
1346 SELECT 'x'
1347 FROM zx_regimes_b
1348 WHERE zx_regimes_b.tax_regime_code = p_code;
1349 BEGIN
1350
1351 IF (p_ttdv_rec.tax_regime_code <> OKL_API.G_MISS_CHAR AND p_ttdv_rec.tax_regime_code IS NOT NULL)
1352 THEN
1353 OPEN okl_ttdv_tx_reg_cd_fk_csr(p_ttdv_rec.tax_regime_code) ;
1354 FETCH okl_ttdv_tx_reg_cd_fk_csr into l_dummy_var ;
1355 CLOSE okl_ttdv_tx_reg_cd_fk_csr ;
1356 -- still set to default means data was not found
1357 IF ( l_dummy_var = '?' ) THEN
1358
1359 OKC_API.set_message(g_app_name,
1360 g_no_parent_record,
1361 g_col_name_token,
1362 'tax_regime_code',
1363 g_child_table_token ,
1364 'OKL_TAX_TRX_DETAILS',
1365 g_parent_table_token ,
1366 'ZX_REGIMES_B');
1367 l_return_status := OKC_API.G_RET_STS_ERROR;
1368
1369 END IF;
1370 END IF;
1371 x_return_status := l_return_status;
1372 EXCEPTION
1373
1374 WHEN OTHERS THEN
1375 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1376 ,p_msg_name => G_UNEXPECTED_ERROR
1377 ,p_token1 => G_SQLCODE_TOKEN
1378 ,p_token1_value => SQLCODE
1379 ,p_token2 => G_SQLERRM_TOKEN
1380 ,p_token2_value => SQLERRM);
1381 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1382 END validate_tax_regime_code;
1383 -------------------------------------------------
1384 -- Validate_Attributes for: TAX_ID --
1385 -------------------------------------------------
1386 PROCEDURE validate_tax_id(
1387 x_return_status OUT NOCOPY VARCHAR2,
1388 p_ttdv_rec IN ttdv_rec_type) IS
1389 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1390
1391 l_dummy_var VARCHAR2(1) := '?' ;
1392
1393 CURSOR okl_ttdv_tx_id_fk_csr (p_id IN NUMBER) IS
1394 SELECT 'x'
1395 FROM zx_taxes_b
1396 WHERE zx_taxes_b.tax_id = p_id;
1397 BEGIN
1398
1399 IF (p_ttdv_rec.tax_id <> OKL_API.G_MISS_NUM AND p_ttdv_rec.tax_id IS NOT NULL)
1400 THEN
1401 OPEN okl_ttdv_tx_id_fk_csr(p_ttdv_rec.tax_id) ;
1402 FETCH okl_ttdv_tx_id_fk_csr into l_dummy_var ;
1403 CLOSE okl_ttdv_tx_id_fk_csr ;
1404 -- still set to default means data was not found
1405 IF ( l_dummy_var = '?' ) THEN
1406
1407 OKC_API.set_message(g_app_name,
1408 g_no_parent_record,
1409 g_col_name_token,
1410 'tax_id',
1411 g_child_table_token ,
1412 'OKL_TAX_TRX_DETAILS',
1413 g_parent_table_token ,
1414 'ZX_TAXES_B');
1415 l_return_status := OKC_API.G_RET_STS_ERROR;
1416
1417 END IF;
1418 END IF;
1419 x_return_status := l_return_status;
1420 EXCEPTION
1421
1422 WHEN OTHERS THEN
1423 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1424 ,p_msg_name => G_UNEXPECTED_ERROR
1425 ,p_token1 => G_SQLCODE_TOKEN
1426 ,p_token1_value => SQLCODE
1427 ,p_token2 => G_SQLERRM_TOKEN
1428 ,p_token2_value => SQLERRM);
1429 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1430 END validate_tax_id;
1431 -------------------------------------------------
1432 -- Validate_Attributes for: TAX_STATUS_ID --
1433 -------------------------------------------------
1437 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1434 PROCEDURE validate_tax_status_id(
1435 x_return_status OUT NOCOPY VARCHAR2,
1436 p_ttdv_rec IN ttdv_rec_type) IS
1438
1439 l_dummy_var VARCHAR2(1) := '?' ;
1440
1441 CURSOR okl_ttdv_tx_st_id_fk_csr (p_id IN NUMBER) IS
1442 SELECT 'x'
1443 FROM zx_status_b
1444 WHERE zx_status_b.tax_status_id = p_id;
1445 BEGIN
1446
1447 IF (p_ttdv_rec.tax_status_id <> OKL_API.G_MISS_NUM AND p_ttdv_rec.tax_status_id IS NOT NULL)
1448 THEN
1449 OPEN okl_ttdv_tx_st_id_fk_csr(p_ttdv_rec.tax_status_id) ;
1450 FETCH okl_ttdv_tx_st_id_fk_csr into l_dummy_var ;
1451 CLOSE okl_ttdv_tx_st_id_fk_csr ;
1452 -- still set to default means data was not found
1453 IF ( l_dummy_var = '?' ) THEN
1454
1455 OKC_API.set_message(g_app_name,
1456 g_no_parent_record,
1457 g_col_name_token,
1458 'tax_status_id',
1459 g_child_table_token ,
1460 'OKL_TAX_TRX_DETAILS',
1461 g_parent_table_token ,
1462 'ZX_STATUS_B');
1463 l_return_status := OKC_API.G_RET_STS_ERROR;
1464
1465 END IF;
1466 END IF;
1467 x_return_status := l_return_status;
1468 EXCEPTION
1469
1470 WHEN OTHERS THEN
1471 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1472 ,p_msg_name => G_UNEXPECTED_ERROR
1473 ,p_token1 => G_SQLCODE_TOKEN
1474 ,p_token1_value => SQLCODE
1475 ,p_token2 => G_SQLERRM_TOKEN
1476 ,p_token2_value => SQLERRM);
1477 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1478 END validate_tax_status_id;
1479 -------------------------------------------------
1480 -- Validate_Attributes for: TAX_JURISDICTION_ID --
1481 -------------------------------------------------
1482 PROCEDURE validate_tax_juris_id(
1483 x_return_status OUT NOCOPY VARCHAR2,
1484 p_ttdv_rec IN ttdv_rec_type) IS
1485 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1486
1487 l_dummy_var VARCHAR2(1) := '?' ;
1488
1489 CURSOR okl_ttdv_tx_jur_id_fk_csr (p_id IN NUMBER) IS
1490 SELECT 'x'
1491 FROM zx_jurisdictions_b
1492 WHERE zx_jurisdictions_b.tax_jurisdiction_id = p_id;
1493 BEGIN
1494
1495 IF (p_ttdv_rec.tax_jurisdiction_id <> OKL_API.G_MISS_NUM AND p_ttdv_rec.tax_jurisdiction_id IS NOT NULL)
1496 THEN
1497 OPEN okl_ttdv_tx_jur_id_fk_csr(p_ttdv_rec.tax_jurisdiction_id) ;
1498 FETCH okl_ttdv_tx_jur_id_fk_csr into l_dummy_var ;
1499 CLOSE okl_ttdv_tx_jur_id_fk_csr ;
1500 -- still set to default means data was not found
1501 IF ( l_dummy_var = '?' ) THEN
1502
1503 OKC_API.set_message(g_app_name,
1504 g_no_parent_record,
1505 g_col_name_token,
1506 'tax_jurisdiction_id',
1507 g_child_table_token ,
1508 'OKL_TAX_TRX_DETAILS',
1509 g_parent_table_token ,
1510 'ZX_JURISDICTIONS_B');
1511 l_return_status := OKC_API.G_RET_STS_ERROR;
1512
1513 END IF;
1514 END IF;
1515 x_return_status := l_return_status;
1516 EXCEPTION
1517
1518 WHEN OTHERS THEN
1519 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1520 ,p_msg_name => G_UNEXPECTED_ERROR
1521 ,p_token1 => G_SQLCODE_TOKEN
1522 ,p_token1_value => SQLCODE
1523 ,p_token2 => G_SQLERRM_TOKEN
1524 ,p_token2_value => SQLERRM);
1525 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1526 END validate_tax_juris_id;
1527 -------------------------------------------------
1528 -- Validate_Attributes for: TAX_CURRENCY_CODE --
1529 -------------------------------------------------
1530 PROCEDURE validate_tax_curr_code(
1531 x_return_status OUT NOCOPY VARCHAR2,
1532 p_ttdv_rec IN ttdv_rec_type) IS
1533 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1534
1535 l_dummy_var VARCHAR2(1) := '?' ;
1536
1537 CURSOR okl_ttdv_tx_cur_cd_fk_csr (p_code IN VARCHAR2) IS
1538 SELECT 'x'
1539 FROM fnd_currencies
1540 WHERE fnd_currencies.currency_code = p_code;
1541 BEGIN
1542
1543 IF (p_ttdv_rec.tax_currency_code <> OKL_API.G_MISS_CHAR AND p_ttdv_rec.tax_currency_code IS NOT NULL)
1544 THEN
1545 OPEN okl_ttdv_tx_cur_cd_fk_csr(p_ttdv_rec.tax_currency_code) ;
1546 FETCH okl_ttdv_tx_cur_cd_fk_csr into l_dummy_var ;
1547 CLOSE okl_ttdv_tx_cur_cd_fk_csr ;
1548 -- still set to default means data was not found
1549 IF ( l_dummy_var = '?' ) THEN
1550
1551 OKC_API.set_message(g_app_name,
1552 g_no_parent_record,
1553 g_col_name_token,
1554 'tax_currency_code',
1555 g_child_table_token ,
1556 'OKL_TAX_TRX_DETAILS',
1557 g_parent_table_token ,
1558 'FND_CURRENCIES');
1559 l_return_status := OKC_API.G_RET_STS_ERROR;
1560
1561 END IF;
1562 END IF;
1563 x_return_status := l_return_status;
1564 EXCEPTION
1565
1566 WHEN OTHERS THEN
1567 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1571 ,p_token2 => G_SQLERRM_TOKEN
1568 ,p_msg_name => G_UNEXPECTED_ERROR
1569 ,p_token1 => G_SQLCODE_TOKEN
1570 ,p_token1_value => SQLCODE
1572 ,p_token2_value => SQLERRM);
1573 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1574 END validate_tax_curr_code;
1575 -------------------------------------------------
1576 -- Validate_Attributes for: TRX_CURRENCY_CODE --
1577 -------------------------------------------------
1578 PROCEDURE validate_trx_curr_code(
1579 x_return_status OUT NOCOPY VARCHAR2,
1580 p_ttdv_rec IN ttdv_rec_type) IS
1581 l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
1582
1583 l_dummy_var VARCHAR2(1) := '?' ;
1584
1585 CURSOR okl_ttdv_trx_cur_cd_fk_csr (p_code IN VARCHAR2) IS
1586 SELECT 'x'
1587 FROM fnd_currencies
1588 WHERE fnd_currencies.currency_code = p_code;
1589 BEGIN
1590
1591 IF (p_ttdv_rec.trx_currency_code <> OKL_API.G_MISS_CHAR AND p_ttdv_rec.trx_currency_code IS NOT NULL)
1592 THEN
1593 OPEN okl_ttdv_trx_cur_cd_fk_csr(p_ttdv_rec.trx_currency_code) ;
1594 FETCH okl_ttdv_trx_cur_cd_fk_csr into l_dummy_var ;
1595 CLOSE okl_ttdv_trx_cur_cd_fk_csr ;
1596 -- still set to default means data was not found
1597 IF ( l_dummy_var = '?' ) THEN
1598
1599 OKC_API.set_message(g_app_name,
1600 g_no_parent_record,
1601 g_col_name_token,
1602 'trx_currency_code',
1603 g_child_table_token ,
1604 'OKL_TAX_TRX_DETAILS',
1605 g_parent_table_token ,
1606 'FND_CURRENCIES');
1607 l_return_status := OKC_API.G_RET_STS_ERROR;
1608
1609 END IF;
1610 END IF;
1611 x_return_status := l_return_status;
1612 EXCEPTION
1613
1614 WHEN OTHERS THEN
1615 OKC_API.SET_MESSAGE( p_app_name => G_APP_NAME
1616 ,p_msg_name => G_UNEXPECTED_ERROR
1617 ,p_token1 => G_SQLCODE_TOKEN
1618 ,p_token1_value => SQLCODE
1619 ,p_token2 => G_SQLERRM_TOKEN
1620 ,p_token2_value => SQLERRM);
1621 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1622 END validate_trx_curr_code;
1623
1624 -- Modified by dcshanmu for eBTax - modification end
1625
1626 ---------------------------------------------------------------------------
1627 -- FUNCTION Validate_Attributes
1628 ---------------------------------------------------------------------------
1629 ---------------------------------------------------
1630 -- Validate_Attributes for:OKL_TAX_TRX_DETAILS_V --
1631 ---------------------------------------------------
1632 FUNCTION Validate_Attributes (
1633 p_ttdv_rec IN ttdv_rec_type
1634 ) RETURN VARCHAR2 IS
1635 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1636 x_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1637 BEGIN
1638 -----------------------------
1639 -- Column Level Validation --
1640 -----------------------------
1641 -- ***
1642 -- id
1643 -- ***
1644 validate_id(l_return_status, p_ttdv_rec);
1645 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1646 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1647 x_return_status := l_return_status;
1648 RAISE G_EXCEPTION_HALT_VALIDATION;
1649 ELSE
1650 x_return_status := l_return_status;
1651 END IF;
1652 END IF;
1653
1654 -- Modified by dcshanmu for eBTax - modification starts
1655 -- calling validation methods for newly added columns in table
1656 -- ***
1657 -- txs_id
1658 -- ***
1659 validate_txs_id(l_return_status, p_ttdv_rec);
1660 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1661 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1662 x_return_status := l_return_status;
1663 RAISE G_EXCEPTION_HALT_VALIDATION;
1664 ELSE
1665 x_return_status := l_return_status;
1666 END IF;
1667 END IF;
1668
1669 -- ***
1670 -- tax_call_type_code
1671 -- ***
1672 validate_tax_call_type_code(l_return_status, p_ttdv_rec);
1673 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1674 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1675 x_return_status := l_return_status;
1676 RAISE G_EXCEPTION_HALT_VALIDATION;
1677 ELSE
1678 x_return_status := l_return_status;
1679 END IF;
1680 END IF;
1681
1682 -- ***
1683 -- tax_rate_id
1684 -- ***
1685 validate_tax_rate_id(l_return_status, p_ttdv_rec);
1686 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1687 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1688 x_return_status := l_return_status;
1689 RAISE G_EXCEPTION_HALT_VALIDATION;
1690 ELSE
1691 x_return_status := l_return_status;
1692 END IF;
1693 END IF;
1694
1695 -- ***
1696 -- tax_rate_code
1697 -- ***
1698 validate_tax_rate_code(l_return_status, p_ttdv_rec);
1699 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1700 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1701 x_return_status := l_return_status;
1702 RAISE G_EXCEPTION_HALT_VALIDATION;
1703 ELSE
1704 x_return_status := l_return_status;
1705 END IF;
1706 END IF;
1707
1708 -- ***
1712 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1709 -- tax_exemption_id
1710 -- ***
1711 validate_tax_exemption_id(l_return_status, p_ttdv_rec);
1713 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1714 x_return_status := l_return_status;
1715 RAISE G_EXCEPTION_HALT_VALIDATION;
1716 ELSE
1717 x_return_status := l_return_status;
1718 END IF;
1719 END IF;
1720
1721 -- ***
1722 -- internal_organization_id
1723 -- ***
1724 validate_int_org_id(l_return_status, p_ttdv_rec);
1725 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1726 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1727 x_return_status := l_return_status;
1728 RAISE G_EXCEPTION_HALT_VALIDATION;
1729 ELSE
1730 x_return_status := l_return_status;
1731 END IF;
1732 END IF;
1733
1734 -- ***
1735 -- application_id
1736 -- ***
1737 validate_application_id(l_return_status, p_ttdv_rec);
1738 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1739 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1740 x_return_status := l_return_status;
1741 RAISE G_EXCEPTION_HALT_VALIDATION;
1742 ELSE
1743 x_return_status := l_return_status;
1744 END IF;
1745 END IF;
1746
1747 -- ***
1748 -- entity_code
1749 -- ***
1750 validate_entity_code(l_return_status, p_ttdv_rec);
1751 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1752 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1753 x_return_status := l_return_status;
1754 RAISE G_EXCEPTION_HALT_VALIDATION;
1755 ELSE
1756 x_return_status := l_return_status;
1757 END IF;
1758 END IF;
1759
1760 -- ***
1761 -- event_class_code
1762 -- ***
1763 validate_event_class_code(l_return_status, p_ttdv_rec);
1764 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1765 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1766 x_return_status := l_return_status;
1767 RAISE G_EXCEPTION_HALT_VALIDATION;
1768 ELSE
1769 x_return_status := l_return_status;
1770 END IF;
1771 END IF;
1772
1773 -- ***
1774 -- event_type_code
1775 -- ***
1776 validate_event_type_code(l_return_status, p_ttdv_rec);
1777 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1778 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1779 x_return_status := l_return_status;
1780 RAISE G_EXCEPTION_HALT_VALIDATION;
1781 ELSE
1782 x_return_status := l_return_status;
1783 END IF;
1784 END IF;
1785
1786 -- ***
1787 -- trx_id
1788 -- ***
1789 validate_trx_id(l_return_status, p_ttdv_rec);
1790 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1791 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1792 x_return_status := l_return_status;
1793 RAISE G_EXCEPTION_HALT_VALIDATION;
1794 ELSE
1795 x_return_status := l_return_status;
1796 END IF;
1797 END IF;
1798
1799 -- ***
1800 -- trx_line_id
1801 -- ***
1802 validate_trx_line_id(l_return_status, p_ttdv_rec);
1803 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1804 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1805 x_return_status := l_return_status;
1806 RAISE G_EXCEPTION_HALT_VALIDATION;
1807 ELSE
1808 x_return_status := l_return_status;
1809 END IF;
1810 END IF;
1811
1812 -- ***
1813 -- trx_level_type
1814 -- ***
1815 validate_trx_level_type(l_return_status, p_ttdv_rec);
1816 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1817 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1818 x_return_status := l_return_status;
1819 RAISE G_EXCEPTION_HALT_VALIDATION;
1820 ELSE
1821 x_return_status := l_return_status;
1822 END IF;
1823 END IF;
1824
1825 -- ***
1826 -- tax_line_number
1827 -- ***
1828 validate_tax_line_number(l_return_status, p_ttdv_rec);
1829 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1830 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1831 x_return_status := l_return_status;
1832 RAISE G_EXCEPTION_HALT_VALIDATION;
1833 ELSE
1834 x_return_status := l_return_status;
1835 END IF;
1836 END IF;
1837
1838 -- ***
1839 -- tax_regime_id
1840 -- ***
1841 validate_tax_regime_id(l_return_status, p_ttdv_rec);
1842 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1843 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1844 x_return_status := l_return_status;
1845 RAISE G_EXCEPTION_HALT_VALIDATION;
1846 ELSE
1847 x_return_status := l_return_status;
1848 END IF;
1849 END IF;
1850
1851 -- ***
1852 -- tax_regime_code
1853 -- ***
1854 validate_tax_regime_code(l_return_status, p_ttdv_rec);
1855 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1856 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1857 x_return_status := l_return_status;
1858 RAISE G_EXCEPTION_HALT_VALIDATION;
1859 ELSE
1860 x_return_status := l_return_status;
1861 END IF;
1862 END IF;
1863
1864 -- ***
1865 -- tax_id
1866 -- ***
1867 validate_tax_id(l_return_status, p_ttdv_rec);
1871 RAISE G_EXCEPTION_HALT_VALIDATION;
1868 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1869 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1870 x_return_status := l_return_status;
1872 ELSE
1873 x_return_status := l_return_status;
1874 END IF;
1875 END IF;
1876
1877 -- ***
1878 -- tax_status_id
1879 -- ***
1880 validate_tax_status_id(l_return_status, p_ttdv_rec);
1881 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1882 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1883 x_return_status := l_return_status;
1884 RAISE G_EXCEPTION_HALT_VALIDATION;
1885 ELSE
1886 x_return_status := l_return_status;
1887 END IF;
1888 END IF;
1889
1890 -- ***
1891 -- tax_juris_id
1892 -- ***
1893 validate_tax_juris_id(l_return_status, p_ttdv_rec);
1894 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1895 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1896 x_return_status := l_return_status;
1897 RAISE G_EXCEPTION_HALT_VALIDATION;
1898 ELSE
1899 x_return_status := l_return_status;
1900 END IF;
1901 END IF;
1902
1903 -- ***
1904 -- tax_currency_code
1905 -- ***
1906 validate_tax_curr_code(l_return_status, p_ttdv_rec);
1907 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1908 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1909 x_return_status := l_return_status;
1910 RAISE G_EXCEPTION_HALT_VALIDATION;
1911 ELSE
1912 x_return_status := l_return_status;
1913 END IF;
1914 END IF;
1915
1916 -- ***
1917 -- trx_currency_code
1918 -- ***
1919 validate_trx_curr_code(l_return_status, p_ttdv_rec);
1920 IF (l_return_status <> OKC_API.G_RET_STS_SUCCESS) THEN
1921 IF (l_return_status = OKC_API.G_RET_STS_UNEXP_ERROR) THEN
1922 x_return_status := l_return_status;
1923 RAISE G_EXCEPTION_HALT_VALIDATION;
1924 ELSE
1925 x_return_status := l_return_status;
1926 END IF;
1927 END IF;
1928 -- Modified by dcshanmu for eBTax - modification end
1929
1930 RETURN(x_return_status);
1931 EXCEPTION
1932 WHEN G_EXCEPTION_HALT_VALIDATION THEN
1933 RETURN(x_return_status);
1934 WHEN OTHERS THEN
1935 OKL_API.SET_MESSAGE( p_app_name => G_APP_NAME
1936 ,p_msg_name => G_UNEXPECTED_ERROR
1937 ,p_token1 => G_SQLCODE_TOKEN
1938 ,p_token1_value => SQLCODE
1939 ,p_token2 => G_SQLERRM_TOKEN
1940 ,p_token2_value => SQLERRM);
1941 x_return_status := OKL_API.G_RET_STS_UNEXP_ERROR;
1942 RETURN(x_return_status);
1943 END Validate_Attributes;
1944 ---------------------------------------------------------------------------
1945 -- PROCEDURE Validate_Record
1946 ---------------------------------------------------------------------------
1947 /*-----------------------------------------------
1948 -- Validate Record for:OKL_TAX_TRX_DETAILS_V --
1949 -----------------------------------------------
1950 FUNCTION Validate_Record (
1951 p_ttdv_rec IN ttdv_rec_type,
1952 p_db_okl_tax_trx_details_v_rec IN ttdv_rec_type
1953 ) RETURN VARCHAR2 IS
1954 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
1955 ------------------------------------
1956 -- FUNCTION validate_foreign_keys --
1957 ------------------------------------
1958 FUNCTION validate_foreign_keys (
1959 p_ttdv_rec IN ttdv_rec_type,
1960 p_db_okl_tax_trx_details_v_rec IN ttdv_rec_type
1961 ) RETURN VARCHAR2 IS
1962 item_not_found_error EXCEPTION;
1963
1964 CURSOR okl_ttdv_tax_call_t1 (p_lookup_code IN VARCHAR2) IS
1965 SELECT 'x'
1966 FROM Fnd_Lookups
1967 WHERE fnd_lookups.lookup_code = p_lookup_code;
1968 l_okl_ttdv_tax_call_type_code okl_ttdv_tax_call_t1%ROWTYPE;
1969
1970 CURSOR okl_ttdv_txs_id_csr (p_id IN NUMBER) IS
1971 SELECT 'x'
1972 FROM Okl_Tax_Sources
1973 WHERE okl_tax_sources.id = p_id;
1974 l_okl_ttdv_txs_id okl_ttdv_txs_id_csr%ROWTYPE;
1975
1976 CURSOR okl_ttdv_tri_fk_csr (p_id IN NUMBER) IS
1977 SELECT 'x'
1978 FROM zx_rates_b
1979 WHERE zx_rates_b.tax_rate_id = p_id;
1980 l_okl_ttdv_tri okl_ttdv_tri_fk_csr%ROWTYPE;
1981
1982 CURSOR okl_ttdv_trc_fk_csr (p_code IN VARCHAR2) IS
1983 SELECT 'x'
1984 FROM zx_rates_b
1985 WHERE zx_rates_b.tax_rate_code = p_code;
1986 l_okl_ttdv_trc okl_ttdv_trc_fk_csr%ROWTYPE;
1987
1988 CURSOR okl_ttdv_tei_fk_csr (p_id IN NUMBER) IS
1989 SELECT 'x'
1990 FROM zx_exemptions
1991 WHERE zx_exemptions.tax_exemption_id = p_id;
1992 l_okl_ttdv_tei okl_ttdv_tei_fk_csr%ROWTYPE;
1993
1994 CURSOR okl_ttdv_ioi_fk_csr (p_id IN NUMBER) IS
1995 SELECT 'x'
1996 FROM hr_all_organization_units
1997 WHERE hr_all_organization_units.organization_id = p_id;
1998 l_okl_ttdv_ioi okl_ttdv_ioi_fk_csr%ROWTYPE;
1999
2000 CURSOR okl_ttdv_app_id_fk_csr (p_id IN NUMBER) IS
2001 SELECT 'x'
2002 FROM fnd_application
2003 WHERE fnd_application.application_id = p_id;
2004 l_okl_ttdv_app_id okl_ttdv_app_id_fk_csr%ROWTYPE;
2005
2006 CURSOR okl_ttdv_tx_reg_id_fk_csr (p_id IN NUMBER) IS
2007 SELECT 'x'
2008 FROM zx_regimes_b
2009 WHERE zx_regimes_b.tax_regime_id = p_id;
2010 l_okl_ttdv_tx_reg_id okl_ttdv_tx_reg_id_fk_csr%ROWTYPE;
2011
2015 WHERE zx_regimes_b.tax_regime_code = p_code;
2012 CURSOR okl_ttdv_tx_reg_cd_fk_csr (p_code IN VARCHAR2) IS
2013 SELECT 'x'
2014 FROM zx_regimes_b
2016 l_okl_ttdv_tx_reg_cd okl_ttdv_tx_reg_cd_fk_csr%ROWTYPE;
2017
2018 CURSOR okl_ttdv_tx_id_fk_csr (p_id IN NUMBER) IS
2019 SELECT 'x'
2020 FROM zx_taxes_b
2021 WHERE zx_taxes_b.tax_id = p_id;
2022 l_okl_ttdv_tx_id okl_ttdv_tx_id_fk_csr%ROWTYPE;
2023
2024 CURSOR okl_ttdv_tx_st_id_fk_csr (p_id IN NUMBER) IS
2025 SELECT 'x'
2026 FROM zx_status_b
2027 WHERE zx_status_b.tax_status_id = p_id;
2028 l_okl_ttdv_tx_st_id okl_ttdv_tx_st_id_fk_csr%ROWTYPE;
2029
2030 CURSOR okl_ttdv_tx_jur_id_fk_csr (p_id IN NUMBER) IS
2031 SELECT 'x'
2032 FROM zx_jurisdictions_b
2033 WHERE zx_jurisdictions_b.tax_jurisdiction_id = p_id;
2034 l_okl_ttdv_tx_jur_id okl_ttdv_tx_jur_id_fk_csr%ROWTYPE;
2035
2036 CURSOR okl_ttdv_tx_cur_cd_fk_csr (p_code IN VARCHAR2) IS
2037 SELECT 'x'
2038 FROM fnd_currencies
2039 WHERE fnd_currencies.currency_code = p_code;
2040 l_okl_ttdv_tx_cur_cd okl_ttdv_tx_cur_cd_fk_csr%ROWTYPE;
2041
2042 CURSOR okl_ttdv_trx_cur_cd_fk_csr (p_code IN VARCHAR2) IS
2043 SELECT 'x'
2044 FROM fnd_currencies
2045 WHERE fnd_currencies.currency_code = p_code;
2046 l_okl_ttdv_trx_cur_cd_fk_csr okl_ttdv_trx_cur_cd_fk_csr%ROWTYPE;
2047
2048
2049 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2050 l_row_notfound BOOLEAN := TRUE;
2051 BEGIN
2052
2053 IF ((p_ttdv_rec.TXS_ID IS NOT NULL)
2054 AND
2055 (p_ttdv_rec.TXS_ID <> p_db_okl_tax_trx_details_v_rec.TXS_ID))
2056 THEN
2057 OPEN okl_ttdv_txs_id_csr (p_ttdv_rec.TXS_ID);
2058 FETCH okl_ttdv_txs_id_csr INTO l_okl_ttdv_txs_id;
2059 l_row_notfound := okl_ttdv_txs_id_csr%NOTFOUND;
2060 CLOSE okl_ttdv_txs_id_csr;
2061 IF (l_row_notfound) THEN
2062 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TXS_ID');
2063 RAISE item_not_found_error;
2064 END IF;
2065 END IF;
2066
2067 IF ((p_ttdv_rec.TAX_CALL_TYPE_CODE IS NOT NULL)
2068 AND
2069 (p_ttdv_rec.TAX_CALL_TYPE_CODE <> p_db_okl_tax_trx_details_v_rec.TAX_CALL_TYPE_CODE))
2070 THEN
2071 OPEN okl_ttdv_tax_call_t1 (p_ttdv_rec.TAX_CALL_TYPE_CODE);
2072 FETCH okl_ttdv_tax_call_t1 INTO l_okl_ttdv_tax_call_type_code;
2073 l_row_notfound := okl_ttdv_tax_call_t1%NOTFOUND;
2074 CLOSE okl_ttdv_tax_call_t1;
2075 IF (l_row_notfound) THEN
2076 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_CALL_TYPE_CODE');
2077 RAISE item_not_found_error;
2078 END IF;
2079 END IF;
2080
2081 IF ((p_ttdv_rec.TAX_RATE_ID IS NOT NULL)
2082 AND
2083 (p_ttdv_rec.TAX_RATE_ID <> p_db_okl_tax_trx_details_v_rec.TAX_RATE_ID))
2084 THEN
2085 OPEN okl_ttdv_tri_fk_csr (p_ttdv_rec.TAX_RATE_ID);
2086 FETCH okl_ttdv_tri_fk_csr INTO l_okl_ttdv_tri;
2087 l_row_notfound := okl_ttdv_tri_fk_csr%NOTFOUND;
2088 CLOSE okl_ttdv_tri_fk_csr;
2089 IF (l_row_notfound) THEN
2090 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_RATE_ID');
2091 RAISE item_not_found_error;
2092 END IF;
2093 END IF;
2094
2095 IF ((p_ttdv_rec.TAX_RATE_CODE IS NOT NULL)
2096 AND
2097 (p_ttdv_rec.TAX_RATE_CODE <> p_db_okl_tax_trx_details_v_rec.TAX_RATE_CODE))
2098 THEN
2099 OPEN okl_ttdv_trc_fk_csr (p_ttdv_rec.TAX_RATE_CODE);
2100 FETCH okl_ttdv_trc_fk_csr INTO l_okl_ttdv_trc;
2101 l_row_notfound := okl_ttdv_trc_fk_csr%NOTFOUND;
2102 CLOSE okl_ttdv_trc_fk_csr;
2103 IF (l_row_notfound) THEN
2104 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_RATE_CODE');
2105 RAISE item_not_found_error;
2106 END IF;
2107 END IF;
2108
2109 IF ((p_ttdv_rec.TAX_EXEMPTION_ID IS NOT NULL)
2110 AND
2111 (p_ttdv_rec.TAX_EXEMPTION_ID <> p_db_okl_tax_trx_details_v_rec.TAX_EXEMPTION_ID))
2112 THEN
2113 OPEN okl_ttdv_tei_fk_csr (p_ttdv_rec.TAX_EXEMPTION_ID);
2114 FETCH okl_ttdv_tei_fk_csr INTO l_okl_ttdv_tei;
2115 l_row_notfound := okl_ttdv_tei_fk_csr%NOTFOUND;
2116 CLOSE okl_ttdv_tei_fk_csr;
2117 IF (l_row_notfound) THEN
2118 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_EXEMPTION_ID');
2119 RAISE item_not_found_error;
2120 END IF;
2121 END IF;
2122
2123 IF ((p_ttdv_rec.INTERNAL_ORGANIZATION_ID IS NOT NULL)
2124 AND
2125 (p_ttdv_rec.INTERNAL_ORGANIZATION_ID <> p_db_okl_tax_trx_details_v_rec.INTERNAL_ORGANIZATION_ID))
2126 THEN
2127 OPEN okl_ttdv_ioi_fk_csr (p_ttdv_rec.INTERNAL_ORGANIZATION_ID);
2128 FETCH okl_ttdv_ioi_fk_csr INTO l_okl_ttdv_ioi;
2129 l_row_notfound := okl_ttdv_ioi_fk_csr%NOTFOUND;
2130 CLOSE okl_ttdv_ioi_fk_csr;
2131 IF (l_row_notfound) THEN
2132 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'INTERNAL_ORGANIZATION_ID');
2133 RAISE item_not_found_error;
2134 END IF;
2135 END IF;
2136
2137 IF ((p_ttdv_rec.APPLICATION_ID IS NOT NULL)
2138 AND
2139 (p_ttdv_rec.APPLICATION_ID <> p_db_okl_tax_trx_details_v_rec.APPLICATION_ID))
2140 THEN
2141 OPEN okl_ttdv_app_id_fk_csr (p_ttdv_rec.APPLICATION_ID);
2142 FETCH okl_ttdv_app_id_fk_csr INTO l_okl_ttdv_app_id;
2143 l_row_notfound := okl_ttdv_app_id_fk_csr%NOTFOUND;
2144 CLOSE okl_ttdv_app_id_fk_csr;
2145 IF (l_row_notfound) THEN
2149 END IF;
2146 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'APPLICATION_ID');
2147 RAISE item_not_found_error;
2148 END IF;
2150
2151 IF ((p_ttdv_rec.TAX_REGIME_ID IS NOT NULL)
2152 AND
2153 (p_ttdv_rec.TAX_REGIME_ID <> p_db_okl_tax_trx_details_v_rec.TAX_REGIME_ID))
2154 THEN
2155 OPEN okl_ttdv_tx_reg_id_fk_csr (p_ttdv_rec.TAX_REGIME_ID);
2156 FETCH okl_ttdv_tx_reg_id_fk_csr INTO l_okl_ttdv_tx_reg_id;
2157 l_row_notfound := okl_ttdv_tx_reg_id_fk_csr%NOTFOUND;
2158 CLOSE okl_ttdv_tx_reg_id_fk_csr;
2159 IF (l_row_notfound) THEN
2160 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_REGIME_ID');
2161 RAISE item_not_found_error;
2162 END IF;
2163 END IF;
2164
2165 IF ((p_ttdv_rec.TAX_REGIME_CODE IS NOT NULL)
2166 AND
2167 (p_ttdv_rec.TAX_REGIME_CODE <> p_db_okl_tax_trx_details_v_rec.TAX_REGIME_CODE))
2168 THEN
2169 OPEN okl_ttdv_tx_reg_cd_fk_csr (p_ttdv_rec.TAX_REGIME_CODE);
2170 FETCH okl_ttdv_tx_reg_cd_fk_csr INTO l_okl_ttdv_tx_reg_cd;
2171 l_row_notfound := okl_ttdv_tx_reg_cd_fk_csr%NOTFOUND;
2172 CLOSE okl_ttdv_tx_reg_cd_fk_csr;
2173 IF (l_row_notfound) THEN
2174 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_REGIME_CODE');
2175 RAISE item_not_found_error;
2176 END IF;
2177 END IF;
2178
2179 IF ((p_ttdv_rec.TAX_ID IS NOT NULL)
2180 AND
2181 (p_ttdv_rec.TAX_ID <> p_db_okl_tax_trx_details_v_rec.TAX_ID))
2182 THEN
2183 OPEN okl_ttdv_tx_id_fk_csr (p_ttdv_rec.TAX_ID);
2184 FETCH okl_ttdv_tx_id_fk_csr INTO l_okl_ttdv_tx_id;
2185 l_row_notfound := okl_ttdv_tx_id_fk_csr%NOTFOUND;
2186 CLOSE okl_ttdv_tx_id_fk_csr;
2187 IF (l_row_notfound) THEN
2188 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_ID');
2189 RAISE item_not_found_error;
2190 END IF;
2191 END IF;
2192
2193 IF ((p_ttdv_rec.TAX_STATUS_ID IS NOT NULL)
2194 AND
2195 (p_ttdv_rec.TAX_STATUS_ID <> p_db_okl_tax_trx_details_v_rec.TAX_STATUS_ID))
2196 THEN
2197 OPEN okl_ttdv_tx_st_id_fk_csr (p_ttdv_rec.TAX_STATUS_ID);
2198 FETCH okl_ttdv_tx_st_id_fk_csr INTO l_okl_ttdv_tx_st_id;
2199 l_row_notfound := okl_ttdv_tx_st_id_fk_csr%NOTFOUND;
2200 CLOSE okl_ttdv_tx_st_id_fk_csr;
2201 IF (l_row_notfound) THEN
2202 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_STATUS_ID');
2203 RAISE item_not_found_error;
2204 END IF;
2205 END IF;
2206
2207 IF ((p_ttdv_rec.TAX_JURISDICTION_ID IS NOT NULL)
2208 AND
2209 (p_ttdv_rec.TAX_JURISDICTION_ID <> p_db_okl_tax_trx_details_v_rec.TAX_JURISDICTION_ID))
2210 THEN
2211 OPEN okl_ttdv_tx_jur_id_fk_csr (p_ttdv_rec.TAX_JURISDICTION_ID);
2212 FETCH okl_ttdv_tx_jur_id_fk_csr INTO l_okl_ttdv_tx_jur_id;
2213 l_row_notfound := okl_ttdv_tx_jur_id_fk_csr%NOTFOUND;
2214 CLOSE okl_ttdv_tx_jur_id_fk_csr;
2215 IF (l_row_notfound) THEN
2216 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_JURISDICTION_ID');
2217 RAISE item_not_found_error;
2218 END IF;
2219 END IF;
2220
2221 IF ((p_ttdv_rec.TAX_CURRENCY_CODE IS NOT NULL)
2222 AND
2223 (p_ttdv_rec.TAX_CURRENCY_CODE <> p_db_okl_tax_trx_details_v_rec.TAX_CURRENCY_CODE))
2224 THEN
2225 OPEN okl_ttdv_tx_cur_cd_fk_csr (p_ttdv_rec.TAX_CURRENCY_CODE);
2226 FETCH okl_ttdv_tx_cur_cd_fk_csr INTO l_okl_ttdv_tx_cur_cd;
2227 l_row_notfound := okl_ttdv_tx_cur_cd_fk_csr%NOTFOUND;
2228 CLOSE okl_ttdv_tx_cur_cd_fk_csr;
2229 IF (l_row_notfound) THEN
2230 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TAX_CURRENCY_CODE');
2231 RAISE item_not_found_error;
2232 END IF;
2233 END IF;
2234
2235 IF ((p_ttdv_rec.TRX_CURRENCY_CODE IS NOT NULL)
2236 AND
2237 (p_ttdv_rec.TRX_CURRENCY_CODE <> p_db_okl_tax_trx_details_v_rec.TRX_CURRENCY_CODE))
2238 THEN
2239 OPEN okl_ttdv_trx_cur_cd_fk_csr (p_ttdv_rec.TRX_CURRENCY_CODE);
2240 FETCH okl_ttdv_trx_cur_cd_fk_csr INTO l_okl_ttdv_trx_cur_cd;
2241 l_row_notfound := okl_ttdv_trx_cur_cd_fk_csr%NOTFOUND;
2242 CLOSE okl_ttdv_trx_cur_cd_fk_csr;
2243 IF (l_row_notfound) THEN
2244 OKL_API.set_message(G_APP_NAME, G_INVALID_VALUE,G_COL_NAME_TOKEN,'TRX_CURRENCY_CODE');
2245 RAISE item_not_found_error;
2246 END IF;
2247 END IF;
2248
2249 RETURN (l_return_status);
2250 EXCEPTION
2251 WHEN item_not_found_error THEN
2252 l_return_status := OKL_API.G_RET_STS_ERROR;
2253 RETURN (l_return_status);
2254 END validate_foreign_keys;
2255 BEGIN
2256 l_return_status := validate_foreign_keys(p_ttdv_rec, p_db_okl_tax_trx_details_v_rec);
2257 RETURN (l_return_status);
2258 END Validate_Record;
2259 FUNCTION Validate_Record (
2260 p_ttdv_rec IN ttdv_rec_type
2261 ) RETURN VARCHAR2 IS
2262 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2263 l_db_okl_tax_trx_details_v_rec ttdv_rec_type := get_rec(p_ttdv_rec);
2264 BEGIN
2265 l_return_status := Validate_Record(p_ttdv_rec => p_ttdv_rec,
2266 p_db_okl_tax_trx_details_v_rec => l_db_okl_tax_trx_details_v_rec);
2267 RETURN (l_return_status);
2268 END Validate_Record;
2269 */
2270 ---------------------------------------------------------------------------
2271 -- PROCEDURE Migrate
2272 ---------------------------------------------------------------------------
2273 PROCEDURE migrate (
2277 BEGIN
2274 p_from IN ttdv_rec_type,
2275 p_to IN OUT NOCOPY ttd_rec_type
2276 ) IS
2278 p_to.id := p_from.id;
2279 p_to.txs_id := p_from.txs_id;
2280 p_to.tax_determine_date := p_from.tax_determine_date;
2281 p_to.tax_rate_id := p_from.tax_rate_id;
2282 p_to.tax_rate_code := p_from.tax_rate_code;
2283 p_to.taxable_amt := p_from.taxable_amt;
2284 p_to.tax_exemption_id := p_from.tax_exemption_id;
2285 p_to.tax_rate := p_from.tax_rate;
2286 p_to.tax_amt := p_from.tax_amt;
2287 p_to.billed_yn := p_from.billed_yn;
2288 p_to.tax_call_type_code := p_from.tax_call_type_code;
2289 p_to.program_id := p_from.program_id;
2290 p_to.request_id := p_from.request_id;
2291 p_to.program_application_id := p_from.program_application_id;
2292 p_to.program_update_date := p_from.program_update_date;
2293 p_to.attribute_category := p_from.attribute_category;
2294 p_to.attribute1 := p_from.attribute1;
2295 p_to.attribute2 := p_from.attribute2;
2296 p_to.attribute3 := p_from.attribute3;
2297 p_to.attribute4 := p_from.attribute4;
2298 p_to.attribute5 := p_from.attribute5;
2299 p_to.attribute6 := p_from.attribute6;
2300 p_to.attribute7 := p_from.attribute7;
2301 p_to.attribute8 := p_from.attribute8;
2302 p_to.attribute9 := p_from.attribute9;
2303 p_to.attribute10 := p_from.attribute10;
2304 p_to.attribute11 := p_from.attribute11;
2305 p_to.attribute12 := p_from.attribute12;
2306 p_to.attribute13 := p_from.attribute13;
2307 p_to.attribute14 := p_from.attribute14;
2308 p_to.attribute15 := p_from.attribute15;
2309 p_to.created_by := p_from.created_by;
2310 p_to.creation_date := p_from.creation_date;
2311 p_to.last_updated_by := p_from.last_updated_by;
2312 p_to.last_update_date := p_from.last_update_date;
2313 p_to.last_update_login := p_from.last_update_login;
2314 p_to.object_version_number := p_from.object_version_number;
2315 -- Modified by dcshanmu for eBTax - modification starts
2316 p_to.tax_date := p_from.tax_date;
2317 p_to.line_amt := p_from.line_amt;
2318 p_to.internal_organization_id := p_from.internal_organization_id;
2319 p_to.application_id := p_from.application_id;
2320 p_to.entity_code := p_from.entity_code;
2321 p_to.event_class_code := p_from.event_class_code;
2322 p_to.event_type_code := p_from.event_type_code;
2323 p_to.trx_id := p_from.trx_id;
2324 p_to.trx_line_id := p_from.trx_line_id;
2325 p_to.trx_level_type := p_from.trx_level_type;
2326 p_to.trx_line_number := p_from.trx_line_number;
2327 p_to.tax_line_number := p_from.tax_line_number;
2328 p_to.tax_regime_id := p_from.tax_regime_id;
2329 p_to.tax_regime_code := p_from.tax_regime_code;
2330 p_to.tax_id := p_from.tax_id;
2331 p_to.tax := p_from.tax;
2332 p_to.tax_status_id := p_from.tax_status_id;
2333 p_to.tax_status_code := p_from.tax_status_code;
2334 p_to.tax_apportionment_line_number := p_from.tax_apportionment_line_number;
2335 p_to.legal_entity_id := p_from.legal_entity_id;
2336 p_to.trx_number := p_from.trx_number;
2337 p_to.trx_date := p_from.trx_date;
2338 p_to.tax_jurisdiction_id := p_from.tax_jurisdiction_id;
2339 p_to.tax_jurisdiction_code := p_from.tax_jurisdiction_code;
2340 p_to.tax_type_code := p_from.tax_type_code;
2341 p_to.tax_currency_code := p_from.tax_currency_code;
2342 p_to.taxable_amt_tax_curr := p_from.taxable_amt_tax_curr;
2343 p_to.trx_currency_code := p_from.trx_currency_code;
2344 p_to.minimum_accountable_unit := p_from.minimum_accountable_unit;
2345 p_to.precision := p_from.precision;
2346 p_to.currency_conversion_type := p_from.currency_conversion_type;
2347 p_to.currency_conversion_rate := p_from.currency_conversion_rate;
2348 p_to.currency_conversion_date := p_from.currency_conversion_date;
2349 -- Modified by dcshanmu for eBTax - modification end
2350
2351 END migrate;
2352 PROCEDURE migrate (
2353 p_from IN ttd_rec_type,
2354 p_to IN OUT NOCOPY ttdv_rec_type
2355 ) IS
2356 BEGIN
2357 p_to.id := p_from.id;
2358 p_to.txs_id := p_from.txs_id;
2359 p_to.tax_determine_date := p_from.tax_determine_date;
2360 p_to.tax_rate_id := p_from.tax_rate_id;
2361 p_to.tax_rate_code := p_from.tax_rate_code;
2362 p_to.taxable_amt := p_from.taxable_amt;
2363 p_to.tax_exemption_id := p_from.tax_exemption_id;
2364 p_to.tax_rate := p_from.tax_rate;
2365 p_to.tax_amt := p_from.tax_amt;
2366 p_to.billed_yn := p_from.billed_yn;
2367 p_to.tax_call_type_code := p_from.tax_call_type_code;
2368 p_to.program_id := p_from.program_id;
2369 p_to.request_id := p_from.request_id;
2370 p_to.program_application_id := p_from.program_application_id;
2371 p_to.program_update_date := p_from.program_update_date;
2372 p_to.attribute_category := p_from.attribute_category;
2373 p_to.attribute1 := p_from.attribute1;
2374 p_to.attribute2 := p_from.attribute2;
2375 p_to.attribute3 := p_from.attribute3;
2376 p_to.attribute4 := p_from.attribute4;
2377 p_to.attribute5 := p_from.attribute5;
2378 p_to.attribute6 := p_from.attribute6;
2379 p_to.attribute7 := p_from.attribute7;
2380 p_to.attribute8 := p_from.attribute8;
2381 p_to.attribute9 := p_from.attribute9;
2382 p_to.attribute10 := p_from.attribute10;
2383 p_to.attribute11 := p_from.attribute11;
2384 p_to.attribute12 := p_from.attribute12;
2385 p_to.attribute13 := p_from.attribute13;
2386 p_to.attribute14 := p_from.attribute14;
2387 p_to.attribute15 := p_from.attribute15;
2388 p_to.created_by := p_from.created_by;
2389 p_to.creation_date := p_from.creation_date;
2390 p_to.last_updated_by := p_from.last_updated_by;
2391 p_to.last_update_date := p_from.last_update_date;
2392 p_to.last_update_login := p_from.last_update_login;
2393 p_to.object_version_number := p_from.object_version_number;
2397 p_to.internal_organization_id := p_from.internal_organization_id;
2394 -- Modified by dcshanmu for eBTax - modification starts
2395 p_to.tax_date := p_from.tax_date;
2396 p_to.line_amt := p_from.line_amt;
2398 p_to.application_id := p_from.application_id;
2399 p_to.entity_code := p_from.entity_code;
2400 p_to.event_class_code := p_from.event_class_code;
2401 p_to.event_type_code := p_from.event_type_code;
2402 p_to.trx_id := p_from.trx_id;
2403 p_to.trx_line_id := p_from.trx_line_id;
2404 p_to.trx_level_type := p_from.trx_level_type;
2405 p_to.trx_line_number := p_from.trx_line_number;
2406 p_to.tax_line_number := p_from.tax_line_number;
2407 p_to.tax_regime_id := p_from.tax_regime_id;
2408 p_to.tax_regime_code := p_from.tax_regime_code;
2409 p_to.tax_id := p_from.tax_id;
2410 p_to.tax := p_from.tax;
2411 p_to.tax_status_id := p_from.tax_status_id;
2412 p_to.tax_status_code := p_from.tax_status_code;
2413 p_to.tax_apportionment_line_number := p_from.tax_apportionment_line_number;
2414 p_to.legal_entity_id := p_from.legal_entity_id;
2415 p_to.trx_number := p_from.trx_number;
2416 p_to.trx_date := p_from.trx_date;
2417 p_to.tax_jurisdiction_id := p_from.tax_jurisdiction_id;
2418 p_to.tax_jurisdiction_code := p_from.tax_jurisdiction_code;
2419 p_to.tax_type_code := p_from.tax_type_code;
2420 p_to.tax_currency_code := p_from.tax_currency_code;
2421 p_to.taxable_amt_tax_curr := p_from.taxable_amt_tax_curr;
2422 p_to.trx_currency_code := p_from.trx_currency_code;
2423 p_to.minimum_accountable_unit := p_from.minimum_accountable_unit;
2424 p_to.precision := p_from.precision;
2425 p_to.currency_conversion_type := p_from.currency_conversion_type;
2426 p_to.currency_conversion_rate := p_from.currency_conversion_rate;
2427 p_to.currency_conversion_date := p_from.currency_conversion_date;
2428 -- Modified by dcshanmu for eBTax - modification end
2429
2430 END migrate;
2431 ---------------------------------------------------------------------------
2432 -- PROCEDURE validate_row
2433 ---------------------------------------------------------------------------
2434 --------------------------------------------
2435 -- validate_row for:OKL_TAX_TRX_DETAILS_V --
2436 --------------------------------------------
2437 PROCEDURE validate_row(
2438 p_api_version IN NUMBER,
2439 p_init_msg_list IN VARCHAR2,
2440 x_return_status OUT NOCOPY VARCHAR2,
2441 x_msg_count OUT NOCOPY NUMBER,
2442 x_msg_data OUT NOCOPY VARCHAR2,
2443 p_ttdv_rec IN ttdv_rec_type) IS
2444
2445 l_api_version CONSTANT NUMBER := 1;
2446 l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
2447 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2448 l_ttdv_rec ttdv_rec_type := p_ttdv_rec;
2449 l_ttd_rec ttd_rec_type;
2450 l_ttd_rec ttd_rec_type;
2451 BEGIN
2452 l_return_status := OKL_API.START_ACTIVITY(l_api_name,
2453 G_PKG_NAME,
2454 p_init_msg_list,
2455 l_api_version,
2456 p_api_version,
2457 '_PVT',
2458 x_return_status);
2459 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2460 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2461 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
2462 RAISE OKL_API.G_EXCEPTION_ERROR;
2463 END IF;
2464 --- Validate all non-missing attributes (Item Level Validation)
2465 l_return_status := Validate_Attributes(l_ttdv_rec);
2466 --- If any errors happen abort API
2467 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2468 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2469 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
2470 RAISE OKL_API.G_EXCEPTION_ERROR;
2471 END IF;
2472
2473 /*l_return_status := Validate_Record(l_ttdv_rec);
2474 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2475 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2476 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
2477 RAISE OKL_API.G_EXCEPTION_ERROR;
2478 END IF;
2479 */
2480
2481 x_return_status := l_return_status;
2482 EXCEPTION
2483 WHEN OKL_API.G_EXCEPTION_ERROR THEN
2484 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2485 (
2486 l_api_name,
2487 G_PKG_NAME,
2488 'OKL_API.G_RET_STS_ERROR',
2489 x_msg_count,
2490 x_msg_data,
2491 '_PVT'
2492 );
2493 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2494 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2495 (
2496 l_api_name,
2497 G_PKG_NAME,
2498 'OKL_API.G_RET_STS_UNEXP_ERROR',
2499 x_msg_count,
2500 x_msg_data,
2501 '_PVT'
2502 );
2503 WHEN OTHERS THEN
2504 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2505 (
2506 l_api_name,
2507 G_PKG_NAME,
2508 'OTHERS',
2509 x_msg_count,
2510 x_msg_data,
2511 '_PVT'
2512 );
2513 END validate_row;
2514 -------------------------------------------------------
2515 -- PL/SQL TBL validate_row for:OKL_TAX_TRX_DETAILS_V --
2516 -------------------------------------------------------
2517 PROCEDURE validate_row(
2518 p_api_version IN NUMBER,
2519 p_init_msg_list IN VARCHAR2,
2520 x_return_status OUT NOCOPY VARCHAR2,
2521 x_msg_count OUT NOCOPY NUMBER,
2525
2522 x_msg_data OUT NOCOPY VARCHAR2,
2523 p_ttdv_tbl IN ttdv_tbl_type,
2524 px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
2526 l_api_version CONSTANT NUMBER := 1;
2527 l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_validate_row';
2528 i NUMBER := 0;
2529 BEGIN
2530 OKL_API.init_msg_list(p_init_msg_list);
2531 -- Make sure PL/SQL table has records in it before passing
2532 IF (p_ttdv_tbl.COUNT > 0) THEN
2533 i := p_ttdv_tbl.FIRST;
2534 LOOP
2535 DECLARE
2536 l_error_rec OKL_API.ERROR_REC_TYPE;
2537 BEGIN
2538 l_error_rec.api_name := l_api_name;
2539 l_error_rec.api_package := G_PKG_NAME;
2540 l_error_rec.idx := i;
2541 validate_row (
2542 p_api_version => p_api_version,
2543 p_init_msg_list => OKL_API.G_FALSE,
2544 x_return_status => l_error_rec.error_type,
2545 x_msg_count => l_error_rec.msg_count,
2546 x_msg_data => l_error_rec.msg_data,
2547 p_ttdv_rec => p_ttdv_tbl(i));
2548 IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
2549 l_error_rec.sqlcode := SQLCODE;
2550 load_error_tbl(l_error_rec, px_error_tbl);
2551 ELSE
2552 x_msg_count := l_error_rec.msg_count;
2553 x_msg_data := l_error_rec.msg_data;
2554 END IF;
2555 EXCEPTION
2556 WHEN OKL_API.G_EXCEPTION_ERROR THEN
2557 l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
2558 l_error_rec.sqlcode := SQLCODE;
2559 load_error_tbl(l_error_rec, px_error_tbl);
2560 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2561 l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
2562 l_error_rec.sqlcode := SQLCODE;
2563 load_error_tbl(l_error_rec, px_error_tbl);
2564 WHEN OTHERS THEN
2565 l_error_rec.error_type := 'OTHERS';
2566 l_error_rec.sqlcode := SQLCODE;
2567 load_error_tbl(l_error_rec, px_error_tbl);
2568 END;
2569 EXIT WHEN (i = p_ttdv_tbl.LAST);
2570 i := p_ttdv_tbl.NEXT(i);
2571 END LOOP;
2572 END IF;
2573 -- Loop through the error_tbl to find the error with the highest severity
2574 -- and return it.
2575 x_return_status := find_highest_exception(px_error_tbl);
2576 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
2577 EXCEPTION
2578 WHEN OKL_API.G_EXCEPTION_ERROR THEN
2579 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2580 (
2581 l_api_name,
2582 G_PKG_NAME,
2583 'OKL_API.G_RET_STS_ERROR',
2584 x_msg_count,
2585 x_msg_data,
2586 '_PVT'
2587 );
2588 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2589 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2590 (
2591 l_api_name,
2592 G_PKG_NAME,
2593 'OKL_API.G_RET_STS_UNEXP_ERROR',
2594 x_msg_count,
2595 x_msg_data,
2596 '_PVT'
2597 );
2598 WHEN OTHERS THEN
2599 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2600 (
2601 l_api_name,
2602 G_PKG_NAME,
2603 'OTHERS',
2604 x_msg_count,
2605 x_msg_data,
2606 '_PVT'
2607 );
2608 END validate_row;
2609
2610 -------------------------------------------------------
2611 -- PL/SQL TBL validate_row for:OKL_TAX_TRX_DETAILS_V --
2612 -------------------------------------------------------
2613 PROCEDURE validate_row(
2614 p_api_version IN NUMBER,
2615 p_init_msg_list IN VARCHAR2,
2616 x_return_status OUT NOCOPY VARCHAR2,
2617 x_msg_count OUT NOCOPY NUMBER,
2618 x_msg_data OUT NOCOPY VARCHAR2,
2619 p_ttdv_tbl IN ttdv_tbl_type) IS
2620
2621 l_api_version CONSTANT NUMBER := 1;
2622 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
2623 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2624 l_error_tbl OKL_API.ERROR_TBL_TYPE;
2625 BEGIN
2626 OKL_API.init_msg_list(p_init_msg_list);
2627 -- Make sure PL/SQL table has records in it before passing
2628 IF (p_ttdv_tbl.COUNT > 0) THEN
2629 validate_row (
2630 p_api_version => p_api_version,
2631 p_init_msg_list => OKL_API.G_FALSE,
2632 x_return_status => x_return_status,
2633 x_msg_count => x_msg_count,
2634 x_msg_data => x_msg_data,
2635 p_ttdv_tbl => p_ttdv_tbl,
2636 px_error_tbl => l_error_tbl);
2637 END IF;
2638 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
2639 EXCEPTION
2640 WHEN OKL_API.G_EXCEPTION_ERROR THEN
2641 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2642 (
2643 l_api_name,
2644 G_PKG_NAME,
2645 'OKL_API.G_RET_STS_ERROR',
2646 x_msg_count,
2647 x_msg_data,
2648 '_PVT'
2649 );
2650 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2651 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2652 (
2653 l_api_name,
2654 G_PKG_NAME,
2655 'OKL_API.G_RET_STS_UNEXP_ERROR',
2656 x_msg_count,
2657 x_msg_data,
2658 '_PVT'
2659 );
2660 WHEN OTHERS THEN
2661 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2662 (
2663 l_api_name,
2667 x_msg_data,
2664 G_PKG_NAME,
2665 'OTHERS',
2666 x_msg_count,
2668 '_PVT'
2669 );
2670 END validate_row;
2671
2672 ---------------------------------------------------------------------------
2673 -- PROCEDURE insert_row
2674 ---------------------------------------------------------------------------
2675 ----------------------------------------
2676 -- insert_row for:OKL_TAX_TRX_DETAILS --
2677 ----------------------------------------
2678 PROCEDURE insert_row(
2679 p_init_msg_list IN VARCHAR2,
2680 x_return_status OUT NOCOPY VARCHAR2,
2681 x_msg_count OUT NOCOPY NUMBER,
2682 x_msg_data OUT NOCOPY VARCHAR2,
2683 p_ttd_rec IN ttd_rec_type,
2684 x_ttd_rec OUT NOCOPY ttd_rec_type) IS
2685
2686 l_api_version CONSTANT NUMBER := 1;
2687 l_api_name CONSTANT VARCHAR2(30) := 'B_insert_row';
2688 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2689 l_ttd_rec ttd_rec_type := p_ttd_rec;
2690 l_def_ttd_rec ttd_rec_type;
2691 --------------------------------------------
2692 -- Set_Attributes for:OKL_TAX_TRX_DETAILS --
2693 --------------------------------------------
2694 FUNCTION Set_Attributes (
2695 p_ttd_rec IN ttd_rec_type,
2696 x_ttd_rec OUT NOCOPY ttd_rec_type
2697 ) RETURN VARCHAR2 IS
2698 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2699 BEGIN
2700 x_ttd_rec := p_ttd_rec;
2701 RETURN(l_return_status);
2702 END Set_Attributes;
2703 BEGIN
2704 l_return_status := OKL_API.START_ACTIVITY(l_api_name,
2705 p_init_msg_list,
2706 '_PVT',
2707 x_return_status);
2708 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2709 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2710 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
2711 RAISE OKL_API.G_EXCEPTION_ERROR;
2712 END IF;
2713 --- Setting item atributes
2714 l_return_status := Set_Attributes(
2715 p_ttd_rec, -- IN
2716 l_ttd_rec); -- OUT
2717 --- If any errors happen abort API
2718 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2719 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2720 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
2721 RAISE OKL_API.G_EXCEPTION_ERROR;
2722 END IF;
2723 INSERT INTO OKL_TAX_TRX_DETAILS(
2724 id,
2725 txs_id,
2726 tax_determine_date,
2727 tax_rate_id,
2728 tax_rate_code,
2729 taxable_amt,
2730 tax_exemption_id,
2731 tax_rate,
2732 tax_amt,
2733 billed_yn,
2734 tax_call_type_code,
2735 program_id,
2736 request_id,
2737 program_application_id,
2738 program_update_date,
2739 attribute_category,
2740 attribute1,
2741 attribute2,
2742 attribute3,
2743 attribute4,
2744 attribute5,
2745 attribute6,
2746 attribute7,
2747 attribute8,
2748 attribute9,
2749 attribute10,
2750 attribute11,
2751 attribute12,
2752 attribute13,
2753 attribute14,
2754 attribute15,
2755 created_by,
2756 creation_date,
2757 last_updated_by,
2758 last_update_date,
2759 last_update_login,
2760 object_version_number,
2761 -- Modified by dcshanmu for eBTax - modification starts
2762 tax_date,
2763 line_amt,
2764 internal_organization_id,
2765 application_id,
2766 entity_code,
2767 event_class_code,
2768 event_type_code,
2769 trx_id,
2770 trx_line_id,
2771 trx_level_type,
2772 trx_line_number,
2773 tax_line_number,
2774 tax_regime_id,
2775 tax_regime_code,
2776 tax_id,
2777 tax,
2778 tax_status_id,
2779 tax_status_code,
2780 tax_apportionment_line_number,
2781 legal_entity_id,
2782 trx_number,
2783 trx_date,
2784 tax_jurisdiction_id,
2785 tax_jurisdiction_code,
2786 tax_type_code,
2787 tax_currency_code,
2788 taxable_amt_tax_curr,
2789 trx_currency_code,
2790 minimum_accountable_unit,
2791 precision,
2792 currency_conversion_type,
2793 currency_conversion_rate,
2794 currency_conversion_date)
2795 -- Modified by dcshanmu for eBTax - modification end
2796 VALUES (
2797 l_ttd_rec.id,
2798 l_ttd_rec.txs_id,
2799 l_ttd_rec.tax_determine_date,
2800 l_ttd_rec.tax_rate_id,
2801 l_ttd_rec.tax_rate_code,
2802 l_ttd_rec.taxable_amt,
2803 l_ttd_rec.tax_exemption_id,
2804 l_ttd_rec.tax_rate,
2805 l_ttd_rec.tax_amt,
2806 l_ttd_rec.billed_yn,
2807 l_ttd_rec.tax_call_type_code,
2808 l_ttd_rec.program_id,
2809 l_ttd_rec.request_id,
2810 l_ttd_rec.program_application_id,
2811 l_ttd_rec.program_update_date,
2812 l_ttd_rec.attribute_category,
2813 l_ttd_rec.attribute1,
2814 l_ttd_rec.attribute2,
2815 l_ttd_rec.attribute3,
2816 l_ttd_rec.attribute4,
2817 l_ttd_rec.attribute5,
2818 l_ttd_rec.attribute6,
2819 l_ttd_rec.attribute7,
2820 l_ttd_rec.attribute8,
2821 l_ttd_rec.attribute9,
2822 l_ttd_rec.attribute10,
2826 l_ttd_rec.attribute14,
2823 l_ttd_rec.attribute11,
2824 l_ttd_rec.attribute12,
2825 l_ttd_rec.attribute13,
2827 l_ttd_rec.attribute15,
2828 l_ttd_rec.created_by,
2829 l_ttd_rec.creation_date,
2830 l_ttd_rec.last_updated_by,
2831 l_ttd_rec.last_update_date,
2832 l_ttd_rec.last_update_login,
2833 l_ttd_rec.object_version_number,
2834 -- Modified by dcshanmu for eBTax - modification starts
2835 l_ttd_rec.tax_date,
2836 l_ttd_rec.line_amt,
2837 l_ttd_rec.internal_organization_id,
2838 l_ttd_rec.application_id,
2839 l_ttd_rec.entity_code,
2840 l_ttd_rec.event_class_code,
2841 l_ttd_rec.event_type_code,
2842 l_ttd_rec.trx_id,
2843 l_ttd_rec.trx_line_id,
2844 l_ttd_rec.trx_level_type,
2845 l_ttd_rec.trx_line_number,
2846 l_ttd_rec.tax_line_number,
2847 l_ttd_rec.tax_regime_id,
2848 l_ttd_rec.tax_regime_code,
2849 l_ttd_rec.tax_id,
2850 l_ttd_rec.tax,
2851 l_ttd_rec.tax_status_id,
2852 l_ttd_rec.tax_status_code,
2853 l_ttd_rec.tax_apportionment_line_number,
2854 l_ttd_rec.legal_entity_id,
2855 l_ttd_rec.trx_number,
2856 l_ttd_rec.trx_date,
2857 l_ttd_rec.tax_jurisdiction_id,
2858 l_ttd_rec.tax_jurisdiction_code,
2859 l_ttd_rec.tax_type_code,
2860 l_ttd_rec.tax_currency_code,
2861 l_ttd_rec.taxable_amt_tax_curr,
2862 l_ttd_rec.trx_currency_code,
2863 l_ttd_rec.minimum_accountable_unit,
2864 l_ttd_rec.precision,
2865 l_ttd_rec.currency_conversion_type,
2866 l_ttd_rec.currency_conversion_rate,
2867 l_ttd_rec.currency_conversion_date);
2868 -- Modified by dcshanmu for eBTax - modification end
2869 -- Set OUT values
2870 x_ttd_rec := l_ttd_rec;
2871 x_return_status := l_return_status;
2872 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
2873 EXCEPTION
2874 WHEN OKL_API.G_EXCEPTION_ERROR THEN
2875 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2876 (
2877 l_api_name,
2878 G_PKG_NAME,
2879 'OKL_API.G_RET_STS_ERROR',
2880 x_msg_count,
2881 x_msg_data,
2882 '_PVT'
2883 );
2884 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2885 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2886 (
2887 l_api_name,
2888 G_PKG_NAME,
2889 'OKL_API.G_RET_STS_UNEXP_ERROR',
2890 x_msg_count,
2891 x_msg_data,
2892 '_PVT'
2893 );
2894 WHEN OTHERS THEN
2895 x_return_status := OKL_API.HANDLE_EXCEPTIONS
2896 (
2897 l_api_name,
2898 G_PKG_NAME,
2899 'OTHERS',
2900 x_msg_count,
2901 x_msg_data,
2902 '_PVT'
2903 );
2904 END insert_row;
2905 -------------------------------------------
2906 -- insert_row for :OKL_TAX_TRX_DETAILS_V --
2907 -------------------------------------------
2908 PROCEDURE insert_row(
2909 p_api_version IN NUMBER,
2910 p_init_msg_list IN VARCHAR2,
2911 x_return_status OUT NOCOPY VARCHAR2,
2912 x_msg_count OUT NOCOPY NUMBER,
2913 x_msg_data OUT NOCOPY VARCHAR2,
2914 p_ttdv_rec IN ttdv_rec_type,
2915 x_ttdv_rec OUT NOCOPY ttdv_rec_type) IS
2916
2917 l_api_version CONSTANT NUMBER := 1;
2918 l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
2919 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2920 l_ttdv_rec ttdv_rec_type := p_ttdv_rec;
2921 LDefOklTaxTrxDetailsVRec ttdv_rec_type;
2922 l_ttd_rec ttd_rec_type;
2923 lx_ttd_rec ttd_rec_type;
2924 -------------------------------
2925 -- FUNCTION fill_who_columns --
2926 -------------------------------
2927 FUNCTION fill_who_columns (
2928 p_ttdv_rec IN ttdv_rec_type
2929 ) RETURN ttdv_rec_type IS
2930 l_ttdv_rec ttdv_rec_type := p_ttdv_rec;
2931 BEGIN
2932 l_ttdv_rec.CREATION_DATE := SYSDATE;
2933 l_ttdv_rec.CREATED_BY := FND_GLOBAL.USER_ID;
2934 l_ttdv_rec.LAST_UPDATE_DATE := l_ttdv_rec.CREATION_DATE;
2935 l_ttdv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
2936 l_ttdv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
2937 RETURN(l_ttdv_rec);
2938 END fill_who_columns;
2939 ----------------------------------------------
2940 -- Set_Attributes for:OKL_TAX_TRX_DETAILS_V --
2941 ----------------------------------------------
2942 FUNCTION Set_Attributes (
2943 p_ttdv_rec IN ttdv_rec_type,
2944 x_ttdv_rec OUT NOCOPY ttdv_rec_type
2945 ) RETURN VARCHAR2 IS
2946 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
2947 BEGIN
2948 x_ttdv_rec := p_ttdv_rec;
2949 x_ttdv_rec.OBJECT_VERSION_NUMBER := 1;
2950 RETURN(l_return_status);
2951 END Set_Attributes;
2952 BEGIN
2953 l_return_status := OKL_API.START_ACTIVITY(l_api_name,
2954 G_PKG_NAME,
2955 p_init_msg_list,
2956 l_api_version,
2957 p_api_version,
2958 '_PVT',
2959 x_return_status);
2960 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2961 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2962 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
2963 RAISE OKL_API.G_EXCEPTION_ERROR;
2964 END IF;
2965 l_ttdv_rec := null_out_defaults(p_ttdv_rec);
2969 l_return_Status := Set_Attributes(
2966 -- Set primary key value
2967 l_ttdv_rec.ID := get_seq_id;
2968 -- Setting item attributes
2970 l_ttdv_rec, -- IN
2971 LDefOklTaxTrxDetailsVRec); -- OUT
2972 --- If any errors happen abort API
2973 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2974 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2975 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
2976 RAISE OKL_API.G_EXCEPTION_ERROR;
2977 END IF;
2978 LDefOklTaxTrxDetailsVRec := fill_who_columns(LDefOklTaxTrxDetailsVRec);
2979 --- Validate all non-missing attributes (Item Level Validation)
2980 l_return_status := Validate_Attributes(LDefOklTaxTrxDetailsVRec);
2981 --- If any errors happen abort API
2982 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2983 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2984 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
2985 RAISE OKL_API.G_EXCEPTION_ERROR;
2986 END IF;
2987 /*
2988 l_return_status := Validate_Record(LDefOklTaxTrxDetailsVRec);
2989 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
2990 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
2991 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
2992 RAISE OKL_API.G_EXCEPTION_ERROR;
2993 END IF;
2994 */
2995 -----------------------------------------
2996 -- Move VIEW record to "Child" records --
2997 -----------------------------------------
2998 migrate(LDefOklTaxTrxDetailsVRec, l_ttd_rec);
2999 -----------------------------------------------
3000 -- Call the INSERT_ROW for each child record --
3001 -----------------------------------------------
3002 insert_row(
3003 p_init_msg_list,
3004 l_return_status,
3005 x_msg_count,
3006 x_msg_data,
3007 l_ttd_rec,
3008 lx_ttd_rec
3009 );
3010 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3011 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
3012 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
3013 RAISE OKL_API.G_EXCEPTION_ERROR;
3014 END IF;
3015 migrate(lx_ttd_rec, LDefOklTaxTrxDetailsVRec);
3016 -- Set OUT values
3017 x_ttdv_rec := LDefOklTaxTrxDetailsVRec;
3018 x_return_status := l_return_status;
3019 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
3020 EXCEPTION
3021 WHEN OKL_API.G_EXCEPTION_ERROR THEN
3022 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3023 (
3024 l_api_name,
3025 G_PKG_NAME,
3026 'OKL_API.G_RET_STS_ERROR',
3027 x_msg_count,
3028 x_msg_data,
3029 '_PVT'
3030 );
3031 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3032 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3033 (
3034 l_api_name,
3035 G_PKG_NAME,
3036 'OKL_API.G_RET_STS_UNEXP_ERROR',
3037 x_msg_count,
3038 x_msg_data,
3039 '_PVT'
3040 );
3041 WHEN OTHERS THEN
3042 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3043 (
3044 l_api_name,
3045 G_PKG_NAME,
3046 'OTHERS',
3047 x_msg_count,
3048 x_msg_data,
3049 '_PVT'
3050 );
3051 END insert_row;
3052 ---------------------------------------------------------
3053 -- PL/SQL TBL insert_row for:OKL_TAX_TRX_DETAILS_V_TBL --
3054 ---------------------------------------------------------
3055 PROCEDURE insert_row(
3056 p_api_version IN NUMBER,
3057 p_init_msg_list IN VARCHAR2,
3058 x_return_status OUT NOCOPY VARCHAR2,
3059 x_msg_count OUT NOCOPY NUMBER,
3060 x_msg_data OUT NOCOPY VARCHAR2,
3061 p_ttdv_tbl IN ttdv_tbl_type,
3062 x_ttdv_tbl OUT NOCOPY ttdv_tbl_type,
3063 px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
3064
3065 l_api_version CONSTANT NUMBER := 1;
3066 l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_insert_row';
3067 i NUMBER := 0;
3068 BEGIN
3069 OKL_API.init_msg_list(p_init_msg_list);
3070 -- Make sure PL/SQL table has records in it before passing
3071 IF (p_ttdv_tbl.COUNT > 0) THEN
3072 i := p_ttdv_tbl.FIRST;
3073 LOOP
3074 DECLARE
3075 l_error_rec OKL_API.ERROR_REC_TYPE;
3076 BEGIN
3077 l_error_rec.api_name := l_api_name;
3078 l_error_rec.api_package := G_PKG_NAME;
3079 l_error_rec.idx := i;
3080 insert_row (
3081 p_api_version => p_api_version,
3082 p_init_msg_list => OKL_API.G_FALSE,
3083 x_return_status => l_error_rec.error_type,
3084 x_msg_count => l_error_rec.msg_count,
3085 x_msg_data => l_error_rec.msg_data,
3086 p_ttdv_rec => p_ttdv_tbl(i),
3087 x_ttdv_rec => x_ttdv_tbl(i));
3088 IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
3089 l_error_rec.sqlcode := SQLCODE;
3090 load_error_tbl(l_error_rec, px_error_tbl);
3091 ELSE
3092 x_msg_count := l_error_rec.msg_count;
3093 x_msg_data := l_error_rec.msg_data;
3094 END IF;
3095 EXCEPTION
3096 WHEN OKL_API.G_EXCEPTION_ERROR THEN
3097 l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
3098 l_error_rec.sqlcode := SQLCODE;
3099 load_error_tbl(l_error_rec, px_error_tbl);
3100 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3101 l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
3105 l_error_rec.error_type := 'OTHERS';
3102 l_error_rec.sqlcode := SQLCODE;
3103 load_error_tbl(l_error_rec, px_error_tbl);
3104 WHEN OTHERS THEN
3106 l_error_rec.sqlcode := SQLCODE;
3107 load_error_tbl(l_error_rec, px_error_tbl);
3108 END;
3109 EXIT WHEN (i = p_ttdv_tbl.LAST);
3110 i := p_ttdv_tbl.NEXT(i);
3111 END LOOP;
3112 END IF;
3113 -- Loop through the error_tbl to find the error with the highest severity
3114 -- and return it.
3115 x_return_status := find_highest_exception(px_error_tbl);
3116 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
3117 EXCEPTION
3118 WHEN OKL_API.G_EXCEPTION_ERROR THEN
3119 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3120 (
3121 l_api_name,
3122 G_PKG_NAME,
3123 'OKL_API.G_RET_STS_ERROR',
3124 x_msg_count,
3125 x_msg_data,
3126 '_PVT'
3127 );
3128 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3129 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3130 (
3131 l_api_name,
3132 G_PKG_NAME,
3133 'OKL_API.G_RET_STS_UNEXP_ERROR',
3134 x_msg_count,
3135 x_msg_data,
3136 '_PVT'
3137 );
3138 WHEN OTHERS THEN
3139 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3140 (
3141 l_api_name,
3142 G_PKG_NAME,
3143 'OTHERS',
3144 x_msg_count,
3145 x_msg_data,
3146 '_PVT'
3147 );
3148 END insert_row;
3149
3150 ---------------------------------------------------------
3151 -- PL/SQL TBL insert_row for:OKL_TAX_TRX_DETAILS_V_TBL --
3152 ---------------------------------------------------------
3153 -- This procedure is the same as the one above except it does not have a "px_error_tbl" argument.
3154 -- This procedure was create for backward compatibility and simply is a wrapper for the one above.
3155 PROCEDURE insert_row(
3156 p_api_version IN NUMBER,
3157 p_init_msg_list IN VARCHAR2,
3158 x_return_status OUT NOCOPY VARCHAR2,
3159 x_msg_count OUT NOCOPY NUMBER,
3160 x_msg_data OUT NOCOPY VARCHAR2,
3161 p_ttdv_tbl IN ttdv_tbl_type,
3162 x_ttdv_tbl OUT NOCOPY ttdv_tbl_type) IS
3163
3164 l_api_version CONSTANT NUMBER := 1;
3165 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
3166 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
3167 l_error_tbl OKL_API.ERROR_TBL_TYPE;
3168 BEGIN
3169 OKL_API.init_msg_list(p_init_msg_list);
3170 -- Make sure PL/SQL table has records in it before passing
3171 IF (p_ttdv_tbl.COUNT > 0) THEN
3172 insert_row (
3173 p_api_version => p_api_version,
3174 p_init_msg_list => OKL_API.G_FALSE,
3175 x_return_status => x_return_status,
3176 x_msg_count => x_msg_count,
3177 x_msg_data => x_msg_data,
3178 p_ttdv_tbl => p_ttdv_tbl,
3179 x_ttdv_tbl => x_ttdv_tbl,
3180 px_error_tbl => l_error_tbl);
3181 END IF;
3182 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
3183 EXCEPTION
3184 WHEN OKL_API.G_EXCEPTION_ERROR THEN
3185 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3186 (
3187 l_api_name,
3188 G_PKG_NAME,
3189 'OKL_API.G_RET_STS_ERROR',
3190 x_msg_count,
3191 x_msg_data,
3192 '_PVT'
3193 );
3194 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3195 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3196 (
3197 l_api_name,
3198 G_PKG_NAME,
3199 'OKL_API.G_RET_STS_UNEXP_ERROR',
3200 x_msg_count,
3201 x_msg_data,
3202 '_PVT'
3203 );
3204 WHEN OTHERS THEN
3205 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3206 (
3207 l_api_name,
3208 G_PKG_NAME,
3209 'OTHERS',
3210 x_msg_count,
3211 x_msg_data,
3212 '_PVT'
3213 );
3214 END insert_row;
3215
3216 ---------------------------------------------------------------------------
3217 -- PROCEDURE lock_row
3218 ---------------------------------------------------------------------------
3219 --------------------------------------
3220 -- lock_row for:OKL_TAX_TRX_DETAILS --
3221 --------------------------------------
3222 PROCEDURE lock_row(
3223 p_init_msg_list IN VARCHAR2,
3224 x_return_status OUT NOCOPY VARCHAR2,
3225 x_msg_count OUT NOCOPY NUMBER,
3226 x_msg_data OUT NOCOPY VARCHAR2,
3227 p_ttd_rec IN ttd_rec_type) IS
3228
3229 E_Resource_Busy EXCEPTION;
3230 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
3231 CURSOR lock_csr (p_ttd_rec IN ttd_rec_type) IS
3232 SELECT OBJECT_VERSION_NUMBER
3233 FROM OKL_TAX_TRX_DETAILS
3234 WHERE ID = p_ttd_rec.id
3235 AND OBJECT_VERSION_NUMBER = p_ttd_rec.object_version_number
3236 FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
3237
3238 CURSOR lchk_csr (p_ttd_rec IN ttd_rec_type) IS
3239 SELECT OBJECT_VERSION_NUMBER
3240 FROM OKL_TAX_TRX_DETAILS
3241 WHERE ID = p_ttd_rec.id;
3242 l_api_version CONSTANT NUMBER := 1;
3243 l_api_name CONSTANT VARCHAR2(30) := 'B_lock_row';
3244 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
3245 l_object_version_number OKL_TAX_TRX_DETAILS.OBJECT_VERSION_NUMBER%TYPE;
3249 BEGIN
3246 lc_object_version_number OKL_TAX_TRX_DETAILS.OBJECT_VERSION_NUMBER%TYPE;
3247 l_row_notfound BOOLEAN := FALSE;
3248 lc_row_notfound BOOLEAN := FALSE;
3250 l_return_status := OKL_API.START_ACTIVITY(l_api_name,
3251 p_init_msg_list,
3252 '_PVT',
3253 x_return_status);
3254 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3255 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
3256 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
3257 RAISE OKL_API.G_EXCEPTION_ERROR;
3258 END IF;
3259 BEGIN
3260 OPEN lock_csr(p_ttd_rec);
3261 FETCH lock_csr INTO l_object_version_number;
3262 l_row_notfound := lock_csr%NOTFOUND;
3263 CLOSE lock_csr;
3264 EXCEPTION
3265 WHEN E_Resource_Busy THEN
3266 IF (lock_csr%ISOPEN) THEN
3267 CLOSE lock_csr;
3268 END IF;
3269 OKL_API.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
3270 RAISE APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION;
3271 END;
3272
3273 IF ( l_row_notfound ) THEN
3274 OPEN lchk_csr(p_ttd_rec);
3275 FETCH lchk_csr INTO lc_object_version_number;
3276 lc_row_notfound := lchk_csr%NOTFOUND;
3277 CLOSE lchk_csr;
3278 END IF;
3279 IF (lc_row_notfound) THEN
3280 OKL_API.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
3281 RAISE OKL_API.G_EXCEPTION_ERROR;
3282 ELSIF lc_object_version_number > p_ttd_rec.object_version_number THEN
3283 OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
3284 RAISE OKL_API.G_EXCEPTION_ERROR;
3285 ELSIF lc_object_version_number <> p_ttd_rec.object_version_number THEN
3286 OKL_API.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
3287 RAISE OKL_API.G_EXCEPTION_ERROR;
3288 ELSIF lc_object_version_number = -1 THEN
3289 OKL_API.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
3290 RAISE OKL_API.G_EXCEPTION_ERROR;
3291 END IF;
3292 x_return_status := l_return_status;
3293 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
3294 EXCEPTION
3295 WHEN OKL_API.G_EXCEPTION_ERROR THEN
3296 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3297 (
3298 l_api_name,
3299 G_PKG_NAME,
3300 'OKL_API.G_RET_STS_ERROR',
3301 x_msg_count,
3302 x_msg_data,
3303 '_PVT'
3304 );
3305 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3306 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3307 (
3308 l_api_name,
3309 G_PKG_NAME,
3310 'OKL_API.G_RET_STS_UNEXP_ERROR',
3311 x_msg_count,
3312 x_msg_data,
3313 '_PVT'
3314 );
3315 WHEN OTHERS THEN
3316 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3317 (
3318 l_api_name,
3319 G_PKG_NAME,
3320 'OTHERS',
3321 x_msg_count,
3322 x_msg_data,
3323 '_PVT'
3324 );
3325 END lock_row;
3326 -----------------------------------------
3327 -- lock_row for: OKL_TAX_TRX_DETAILS_V --
3328 -----------------------------------------
3329 PROCEDURE lock_row(
3330 p_api_version IN NUMBER,
3331 p_init_msg_list IN VARCHAR2,
3332 x_return_status OUT NOCOPY VARCHAR2,
3333 x_msg_count OUT NOCOPY NUMBER,
3334 x_msg_data OUT NOCOPY VARCHAR2,
3335 p_ttdv_rec IN ttdv_rec_type) IS
3336
3337 l_api_version CONSTANT NUMBER := 1;
3338 l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
3339 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
3340 l_ttd_rec ttd_rec_type;
3341 BEGIN
3342 l_return_status := OKL_API.START_ACTIVITY(l_api_name,
3343 G_PKG_NAME,
3344 p_init_msg_list,
3345 l_api_version,
3346 p_api_version,
3347 '_PVT',
3348 x_return_status);
3349 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3350 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
3351 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
3352 RAISE OKL_API.G_EXCEPTION_ERROR;
3353 END IF;
3354 -----------------------------------------
3355 -- Move VIEW record to "Child" records --
3356 -----------------------------------------
3357 migrate(p_ttdv_rec, l_ttd_rec);
3358 ---------------------------------------------
3359 -- Call the LOCK_ROW for each child record --
3360 ---------------------------------------------
3361 lock_row(
3362 p_init_msg_list,
3363 l_return_status,
3364 x_msg_count,
3365 x_msg_data,
3366 l_ttd_rec
3367 );
3368 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3369 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
3370 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
3371 RAISE OKL_API.G_EXCEPTION_ERROR;
3372 END IF;
3373 x_return_status := l_return_status;
3374 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
3375 EXCEPTION
3376 WHEN OKL_API.G_EXCEPTION_ERROR THEN
3377 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3378 (
3379 l_api_name,
3380 G_PKG_NAME,
3381 'OKL_API.G_RET_STS_ERROR',
3382 x_msg_count,
3383 x_msg_data,
3384 '_PVT'
3385 );
3386 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3390 G_PKG_NAME,
3387 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3388 (
3389 l_api_name,
3391 'OKL_API.G_RET_STS_UNEXP_ERROR',
3392 x_msg_count,
3393 x_msg_data,
3394 '_PVT'
3395 );
3396 WHEN OTHERS THEN
3397 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3398 (
3399 l_api_name,
3400 G_PKG_NAME,
3401 'OTHERS',
3402 x_msg_count,
3403 x_msg_data,
3404 '_PVT'
3405 );
3406 END lock_row;
3407 -------------------------------------------------------
3408 -- PL/SQL TBL lock_row for:OKL_TAX_TRX_DETAILS_V_TBL --
3409 -------------------------------------------------------
3410 PROCEDURE lock_row(
3411 p_api_version IN NUMBER,
3412 p_init_msg_list IN VARCHAR2,
3413 x_return_status OUT NOCOPY VARCHAR2,
3414 x_msg_count OUT NOCOPY NUMBER,
3415 x_msg_data OUT NOCOPY VARCHAR2,
3416 p_ttdv_tbl IN ttdv_tbl_type,
3417 px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
3418
3419 l_api_version CONSTANT NUMBER := 1;
3420 l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_lock_row';
3421 i NUMBER := 0;
3422 BEGIN
3423 OKL_API.init_msg_list(p_init_msg_list);
3424 -- Make sure PL/SQL table has recrods in it before passing
3425 IF (p_ttdv_tbl.COUNT > 0) THEN
3426 i := p_ttdv_tbl.FIRST;
3427 LOOP
3428 DECLARE
3429 l_error_rec OKL_API.ERROR_REC_TYPE;
3430 BEGIN
3431 l_error_rec.api_name := l_api_name;
3432 l_error_rec.api_package := G_PKG_NAME;
3433 l_error_rec.idx := i;
3434 lock_row(
3435 p_api_version => p_api_version,
3436 p_init_msg_list => OKL_API.G_FALSE,
3437 x_return_status => l_error_rec.error_type,
3438 x_msg_count => l_error_rec.msg_count,
3439 x_msg_data => l_error_rec.msg_data,
3440 p_ttdv_rec => p_ttdv_tbl(i));
3441 IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
3442 l_error_rec.sqlcode := SQLCODE;
3443 load_error_tbl(l_error_rec, px_error_tbl);
3444 ELSE
3445 x_msg_count := l_error_rec.msg_count;
3446 x_msg_data := l_error_rec.msg_data;
3447 END IF;
3448 EXCEPTION
3449 WHEN OKL_API.G_EXCEPTION_ERROR THEN
3450 l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
3451 l_error_rec.sqlcode := SQLCODE;
3452 load_error_tbl(l_error_rec, px_error_tbl);
3453 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3454 l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
3455 l_error_rec.sqlcode := SQLCODE;
3456 load_error_tbl(l_error_rec, px_error_tbl);
3457 WHEN OTHERS THEN
3458 l_error_rec.error_type := 'OTHERS';
3459 l_error_rec.sqlcode := SQLCODE;
3460 load_error_tbl(l_error_rec, px_error_tbl);
3461 END;
3462 EXIT WHEN (i = p_ttdv_tbl.LAST);
3463 i := p_ttdv_tbl.NEXT(i);
3464 END LOOP;
3465 END IF;
3466 -- Loop through the error_tbl to find the error with the highest severity
3467 -- and return it.
3468 x_return_status := find_highest_exception(px_error_tbl);
3469 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
3470 EXCEPTION
3471 WHEN OKL_API.G_EXCEPTION_ERROR THEN
3472 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3473 (
3474 l_api_name,
3475 G_PKG_NAME,
3476 'OKL_API.G_RET_STS_ERROR',
3477 x_msg_count,
3478 x_msg_data,
3479 '_PVT'
3480 );
3481 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3482 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3483 (
3484 l_api_name,
3485 G_PKG_NAME,
3486 'OKL_API.G_RET_STS_UNEXP_ERROR',
3487 x_msg_count,
3488 x_msg_data,
3489 '_PVT'
3490 );
3491 WHEN OTHERS THEN
3492 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3493 (
3494 l_api_name,
3495 G_PKG_NAME,
3496 'OTHERS',
3497 x_msg_count,
3498 x_msg_data,
3499 '_PVT'
3500 );
3501 END lock_row;
3502 -------------------------------------------------------
3503 -- PL/SQL TBL lock_row for:OKL_TAX_TRX_DETAILS_V_TBL --
3504 -------------------------------------------------------
3505 PROCEDURE lock_row(
3506 p_api_version IN NUMBER,
3507 p_init_msg_list IN VARCHAR2,
3508 x_return_status OUT NOCOPY VARCHAR2,
3509 x_msg_count OUT NOCOPY NUMBER,
3510 x_msg_data OUT NOCOPY VARCHAR2,
3511 p_ttdv_tbl IN ttdv_tbl_type) IS
3512
3513 l_api_version CONSTANT NUMBER := 1;
3514 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
3515 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
3516 l_error_tbl OKL_API.ERROR_TBL_TYPE;
3517 BEGIN
3518 OKL_API.init_msg_list(p_init_msg_list);
3519 -- Make sure PL/SQL table has recrods in it before passing
3520 IF (p_ttdv_tbl.COUNT > 0) THEN
3521 lock_row(
3522 p_api_version => p_api_version,
3523 p_init_msg_list => OKL_API.G_FALSE,
3524 x_return_status => x_return_status,
3525 x_msg_count => x_msg_count,
3526 x_msg_data => x_msg_data,
3530 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
3527 p_ttdv_tbl => p_ttdv_tbl,
3528 px_error_tbl => l_error_tbl);
3529 END IF;
3531 EXCEPTION
3532 WHEN OKL_API.G_EXCEPTION_ERROR THEN
3533 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3534 (
3535 l_api_name,
3536 G_PKG_NAME,
3537 'OKL_API.G_RET_STS_ERROR',
3538 x_msg_count,
3539 x_msg_data,
3540 '_PVT'
3541 );
3542 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
3543 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3544 (
3545 l_api_name,
3546 G_PKG_NAME,
3547 'OKL_API.G_RET_STS_UNEXP_ERROR',
3548 x_msg_count,
3549 x_msg_data,
3550 '_PVT'
3551 );
3552 WHEN OTHERS THEN
3553 x_return_status := OKL_API.HANDLE_EXCEPTIONS
3554 (
3555 l_api_name,
3556 G_PKG_NAME,
3557 'OTHERS',
3558 x_msg_count,
3559 x_msg_data,
3560 '_PVT'
3561 );
3562 END lock_row;
3563 ---------------------------------------------------------------------------
3564 -- PROCEDURE update_row
3565 ---------------------------------------------------------------------------
3566 ----------------------------------------
3567 -- update_row for:OKL_TAX_TRX_DETAILS --
3568 ----------------------------------------
3569 PROCEDURE update_row(
3570 p_init_msg_list IN VARCHAR2,
3571 x_return_status OUT NOCOPY VARCHAR2,
3572 x_msg_count OUT NOCOPY NUMBER,
3573 x_msg_data OUT NOCOPY VARCHAR2,
3574 p_ttd_rec IN ttd_rec_type,
3575 x_ttd_rec OUT NOCOPY ttd_rec_type) IS
3576
3577 l_api_version CONSTANT NUMBER := 1;
3578 l_api_name CONSTANT VARCHAR2(30) := 'B_update_row';
3579 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
3580 l_ttd_rec ttd_rec_type := p_ttd_rec;
3581 l_def_ttd_rec ttd_rec_type;
3582 l_row_notfound BOOLEAN := TRUE;
3583 ----------------------------------
3584 -- FUNCTION populate_new_record --
3585 ----------------------------------
3586 FUNCTION populate_new_record (
3587 p_ttd_rec IN ttd_rec_type,
3588 x_ttd_rec OUT NOCOPY ttd_rec_type
3589 ) RETURN VARCHAR2 IS
3590 l_ttd_rec ttd_rec_type;
3591 l_row_notfound BOOLEAN := TRUE;
3592 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
3593 BEGIN
3594 x_ttd_rec := p_ttd_rec;
3595 -- Get current database values
3596 l_ttd_rec := get_rec(p_ttd_rec, l_return_status);
3597 IF (l_return_status = OKL_API.G_RET_STS_SUCCESS) THEN
3598 IF (x_ttd_rec.id = OKL_API.G_MISS_NUM)
3599 THEN
3600 x_ttd_rec.id := l_ttd_rec.id;
3601 END IF;
3602 IF (x_ttd_rec.txs_id = OKL_API.G_MISS_NUM)
3603 THEN
3604 x_ttd_rec.txs_id := l_ttd_rec.txs_id;
3605 END IF;
3606 IF (x_ttd_rec.tax_determine_date = OKL_API.G_MISS_DATE)
3607 THEN
3608 x_ttd_rec.tax_determine_date := l_ttd_rec.tax_determine_date;
3609 END IF;
3610 IF (x_ttd_rec.tax_rate_id = OKL_API.G_MISS_NUM)
3611 THEN
3612 x_ttd_rec.tax_rate_id := l_ttd_rec.tax_rate_id;
3613 END IF;
3614 IF (x_ttd_rec.tax_rate_code = OKL_API.G_MISS_CHAR)
3615 THEN
3616 x_ttd_rec.tax_rate_code := l_ttd_rec.tax_rate_code;
3617 END IF;
3618 IF (x_ttd_rec.taxable_amt = OKL_API.G_MISS_NUM)
3619 THEN
3620 x_ttd_rec.taxable_amt := l_ttd_rec.taxable_amt;
3621 END IF;
3622 IF (x_ttd_rec.tax_exemption_id = OKL_API.G_MISS_NUM)
3623 THEN
3624 x_ttd_rec.tax_exemption_id := l_ttd_rec.tax_exemption_id;
3625 END IF;
3626 IF (x_ttd_rec.tax_rate = OKL_API.G_MISS_NUM)
3627 THEN
3628 x_ttd_rec.tax_rate := l_ttd_rec.tax_rate;
3629 END IF;
3630 IF (x_ttd_rec.tax_amt = OKL_API.G_MISS_NUM)
3631 THEN
3632 x_ttd_rec.tax_amt := l_ttd_rec.tax_amt;
3633 END IF;
3634 IF (x_ttd_rec.billed_yn = OKL_API.G_MISS_CHAR)
3635 THEN
3636 x_ttd_rec.billed_yn := l_ttd_rec.billed_yn;
3637 END IF;
3638 IF (x_ttd_rec.tax_call_type_code = OKL_API.G_MISS_CHAR)
3639 THEN
3640 x_ttd_rec.tax_call_type_code := l_ttd_rec.tax_call_type_code;
3641 END IF;
3642 IF (x_ttd_rec.program_id = OKL_API.G_MISS_NUM)
3643 THEN
3644 x_ttd_rec.program_id := l_ttd_rec.program_id;
3645 END IF;
3646 IF (x_ttd_rec.request_id = OKL_API.G_MISS_NUM)
3647 THEN
3648 x_ttd_rec.request_id := l_ttd_rec.request_id;
3649 END IF;
3650 IF (x_ttd_rec.program_application_id = OKL_API.G_MISS_NUM)
3651 THEN
3652 x_ttd_rec.program_application_id := l_ttd_rec.program_application_id;
3653 END IF;
3654 IF (x_ttd_rec.program_update_date = OKL_API.G_MISS_DATE)
3655 THEN
3656 x_ttd_rec.program_update_date := l_ttd_rec.program_update_date;
3657 END IF;
3658 IF (x_ttd_rec.attribute_category = OKL_API.G_MISS_CHAR)
3659 THEN
3660 x_ttd_rec.attribute_category := l_ttd_rec.attribute_category;
3661 END IF;
3662 IF (x_ttd_rec.attribute1 = OKL_API.G_MISS_CHAR)
3663 THEN
3664 x_ttd_rec.attribute1 := l_ttd_rec.attribute1;
3665 END IF;
3666 IF (x_ttd_rec.attribute2 = OKL_API.G_MISS_CHAR)
3667 THEN
3671 THEN
3668 x_ttd_rec.attribute2 := l_ttd_rec.attribute2;
3669 END IF;
3670 IF (x_ttd_rec.attribute3 = OKL_API.G_MISS_CHAR)
3672 x_ttd_rec.attribute3 := l_ttd_rec.attribute3;
3673 END IF;
3674 IF (x_ttd_rec.attribute4 = OKL_API.G_MISS_CHAR)
3675 THEN
3676 x_ttd_rec.attribute4 := l_ttd_rec.attribute4;
3677 END IF;
3678 IF (x_ttd_rec.attribute5 = OKL_API.G_MISS_CHAR)
3679 THEN
3680 x_ttd_rec.attribute5 := l_ttd_rec.attribute5;
3681 END IF;
3682 IF (x_ttd_rec.attribute6 = OKL_API.G_MISS_CHAR)
3683 THEN
3684 x_ttd_rec.attribute6 := l_ttd_rec.attribute6;
3685 END IF;
3686 IF (x_ttd_rec.attribute7 = OKL_API.G_MISS_CHAR)
3687 THEN
3688 x_ttd_rec.attribute7 := l_ttd_rec.attribute7;
3689 END IF;
3690 IF (x_ttd_rec.attribute8 = OKL_API.G_MISS_CHAR)
3691 THEN
3692 x_ttd_rec.attribute8 := l_ttd_rec.attribute8;
3693 END IF;
3694 IF (x_ttd_rec.attribute9 = OKL_API.G_MISS_CHAR)
3695 THEN
3696 x_ttd_rec.attribute9 := l_ttd_rec.attribute9;
3697 END IF;
3698 IF (x_ttd_rec.attribute10 = OKL_API.G_MISS_CHAR)
3699 THEN
3700 x_ttd_rec.attribute10 := l_ttd_rec.attribute10;
3701 END IF;
3702 IF (x_ttd_rec.attribute11 = OKL_API.G_MISS_CHAR)
3703 THEN
3704 x_ttd_rec.attribute11 := l_ttd_rec.attribute11;
3705 END IF;
3706 IF (x_ttd_rec.attribute12 = OKL_API.G_MISS_CHAR)
3707 THEN
3708 x_ttd_rec.attribute12 := l_ttd_rec.attribute12;
3709 END IF;
3710 IF (x_ttd_rec.attribute13 = OKL_API.G_MISS_CHAR)
3711 THEN
3712 x_ttd_rec.attribute13 := l_ttd_rec.attribute13;
3713 END IF;
3714 IF (x_ttd_rec.attribute14 = OKL_API.G_MISS_CHAR)
3715 THEN
3716 x_ttd_rec.attribute14 := l_ttd_rec.attribute14;
3717 END IF;
3718 IF (x_ttd_rec.attribute15 = OKL_API.G_MISS_CHAR)
3719 THEN
3720 x_ttd_rec.attribute15 := l_ttd_rec.attribute15;
3721 END IF;
3722 IF (x_ttd_rec.created_by = OKL_API.G_MISS_NUM)
3723 THEN
3724 x_ttd_rec.created_by := l_ttd_rec.created_by;
3725 END IF;
3726 IF (x_ttd_rec.creation_date = OKL_API.G_MISS_DATE)
3727 THEN
3728 x_ttd_rec.creation_date := l_ttd_rec.creation_date;
3729 END IF;
3730 IF (x_ttd_rec.last_updated_by = OKL_API.G_MISS_NUM)
3731 THEN
3732 x_ttd_rec.last_updated_by := l_ttd_rec.last_updated_by;
3733 END IF;
3734 IF (x_ttd_rec.last_update_date = OKL_API.G_MISS_DATE)
3735 THEN
3736 x_ttd_rec.last_update_date := l_ttd_rec.last_update_date;
3737 END IF;
3738 IF (x_ttd_rec.last_update_login = OKL_API.G_MISS_NUM)
3739 THEN
3740 x_ttd_rec.last_update_login := l_ttd_rec.last_update_login;
3741 END IF;
3742 IF (x_ttd_rec.object_version_number = OKL_API.G_MISS_NUM)
3743 THEN
3744 x_ttd_rec.object_version_number := l_ttd_rec.object_version_number;
3745 END IF;
3746
3747 -- Modified by dcshanmu for eBTax - modification starts
3748 -- migrating values for the newly added columns in table
3749
3750 IF (x_ttd_rec.tax_date = OKL_API.G_MISS_DATE)
3751 THEN
3752 x_ttd_rec.tax_date := l_ttd_rec.tax_date;
3753 END IF;
3754 IF (x_ttd_rec.line_amt = OKL_API.G_MISS_NUM)
3755 THEN
3756 x_ttd_rec.line_amt := l_ttd_rec.line_amt;
3757 END IF;
3758 IF (x_ttd_rec.internal_organization_id = OKL_API.G_MISS_NUM)
3759 THEN
3760 x_ttd_rec.internal_organization_id := l_ttd_rec.internal_organization_id;
3761 END IF;
3762 IF (x_ttd_rec.application_id = OKL_API.G_MISS_NUM)
3763 THEN
3764 x_ttd_rec.application_id := l_ttd_rec.application_id;
3765 END IF;
3766 IF (x_ttd_rec.entity_code = OKL_API.G_MISS_CHAR)
3767 THEN
3768 x_ttd_rec.entity_code := l_ttd_rec.entity_code;
3769 END IF;
3770 IF (x_ttd_rec.event_class_code = OKL_API.G_MISS_CHAR)
3771 THEN
3772 x_ttd_rec.event_class_code := l_ttd_rec.event_class_code;
3773 END IF;
3774 IF (x_ttd_rec.event_type_code = OKL_API.G_MISS_CHAR)
3775 THEN
3776 x_ttd_rec.event_type_code := l_ttd_rec.event_type_code;
3777 END IF;
3778 IF (x_ttd_rec.trx_id = OKL_API.G_MISS_NUM)
3779 THEN
3780 x_ttd_rec.trx_id := l_ttd_rec.trx_id;
3781 END IF;
3782 IF (x_ttd_rec.trx_line_id = OKL_API.G_MISS_NUM)
3783 THEN
3784 x_ttd_rec.trx_line_id := l_ttd_rec.trx_line_id;
3785 END IF;
3786 IF (x_ttd_rec.trx_level_type = OKL_API.G_MISS_CHAR)
3787 THEN
3788 x_ttd_rec.trx_level_type := l_ttd_rec.trx_level_type;
3789 END IF;
3790 IF (x_ttd_rec.trx_line_number = OKL_API.G_MISS_NUM)
3791 THEN
3792 x_ttd_rec.trx_line_number := l_ttd_rec.trx_line_number;
3793 END IF;
3794 IF (x_ttd_rec.tax_line_number = OKL_API.G_MISS_NUM)
3795 THEN
3796 x_ttd_rec.tax_line_number := l_ttd_rec.tax_line_number;
3797 END IF;
3798 IF (x_ttd_rec.tax_regime_id = OKL_API.G_MISS_NUM)
3799 THEN
3800 x_ttd_rec.tax_regime_id := l_ttd_rec.tax_regime_id;
3801 END IF;
3802 IF (x_ttd_rec.tax_regime_code = OKL_API.G_MISS_CHAR)
3803 THEN
3804 x_ttd_rec.tax_regime_code := l_ttd_rec.tax_regime_code;
3805 END IF;
3806 IF (x_ttd_rec.tax_id = OKL_API.G_MISS_NUM)
3807 THEN
3808 x_ttd_rec.tax_id := l_ttd_rec.tax_id;
3809 END IF;
3810 IF (x_ttd_rec.tax = OKL_API.G_MISS_CHAR)
3814 IF (x_ttd_rec.tax_status_id = OKL_API.G_MISS_NUM)
3811 THEN
3812 x_ttd_rec.tax := l_ttd_rec.tax;
3813 END IF;
3815 THEN
3816 x_ttd_rec.tax_status_id := l_ttd_rec.tax_status_id;
3817 END IF;
3818 IF (x_ttd_rec.tax_status_code = OKL_API.G_MISS_CHAR)
3819 THEN
3820 x_ttd_rec.tax_status_code := l_ttd_rec.tax_status_code;
3821 END IF;
3822 IF (x_ttd_rec.tax_apportionment_line_number = OKL_API.G_MISS_NUM)
3823 THEN
3824 x_ttd_rec.tax_apportionment_line_number := l_ttd_rec.tax_apportionment_line_number;
3825 END IF;
3826 IF (x_ttd_rec.legal_entity_id = OKL_API.G_MISS_NUM)
3827 THEN
3828 x_ttd_rec.legal_entity_id := l_ttd_rec.legal_entity_id;
3829 END IF;
3830 IF (x_ttd_rec.trx_number = OKL_API.G_MISS_CHAR)
3831 THEN
3832 x_ttd_rec.trx_number := l_ttd_rec.trx_number;
3833 END IF;
3834 IF (x_ttd_rec.trx_date = OKL_API.G_MISS_DATE)
3835 THEN
3836 x_ttd_rec.trx_date := l_ttd_rec.trx_date;
3837 END IF;
3838 IF (x_ttd_rec.tax_jurisdiction_id = OKL_API.G_MISS_NUM)
3839 THEN
3840 x_ttd_rec.tax_jurisdiction_id := l_ttd_rec.tax_jurisdiction_id;
3841 END IF;
3842 IF (x_ttd_rec.tax_jurisdiction_code = OKL_API.G_MISS_CHAR)
3843 THEN
3844 x_ttd_rec.tax_jurisdiction_code := l_ttd_rec.tax_jurisdiction_code;
3845 END IF;
3846 IF (x_ttd_rec.tax_type_code = OKL_API.G_MISS_CHAR)
3847 THEN
3848 x_ttd_rec.tax_type_code := l_ttd_rec.tax_type_code;
3849 END IF;
3850 IF (x_ttd_rec.tax_currency_code = OKL_API.G_MISS_CHAR)
3851 THEN
3852 x_ttd_rec.tax_currency_code := l_ttd_rec.tax_currency_code;
3853 END IF;
3854 IF (x_ttd_rec.taxable_amt_tax_curr = OKL_API.G_MISS_NUM)
3855 THEN
3856 x_ttd_rec.taxable_amt_tax_curr := l_ttd_rec.taxable_amt_tax_curr;
3857 END IF;
3858 IF (x_ttd_rec.trx_currency_code = OKL_API.G_MISS_CHAR)
3859 THEN
3860 x_ttd_rec.trx_currency_code := l_ttd_rec.trx_currency_code;
3861 END IF;
3862 IF (x_ttd_rec.minimum_accountable_unit = OKL_API.G_MISS_NUM)
3863 THEN
3864 x_ttd_rec.minimum_accountable_unit := l_ttd_rec.minimum_accountable_unit;
3865 END IF;
3866 IF (x_ttd_rec.precision = OKL_API.G_MISS_NUM)
3867 THEN
3868 x_ttd_rec.precision := l_ttd_rec.precision;
3869 END IF;
3870 IF (x_ttd_rec.currency_conversion_type = OKL_API.G_MISS_CHAR)
3871 THEN
3872 x_ttd_rec.currency_conversion_type := l_ttd_rec.currency_conversion_type;
3873 END IF;
3874 IF (x_ttd_rec.currency_conversion_rate = OKL_API.G_MISS_NUM)
3875 THEN
3876 x_ttd_rec.currency_conversion_rate := l_ttd_rec.currency_conversion_rate;
3877 END IF;
3878 IF (x_ttd_rec.currency_conversion_date = OKL_API.G_MISS_DATE)
3879 THEN
3880 x_ttd_rec.currency_conversion_date := l_ttd_rec.currency_conversion_date;
3881 END IF;
3882 -- Modified by dcshanmu for eBTax - modification end
3883
3884 END IF;
3885 RETURN(l_return_status);
3886 END populate_new_record;
3887 --------------------------------------------
3888 -- Set_Attributes for:OKL_TAX_TRX_DETAILS --
3889 --------------------------------------------
3890 FUNCTION Set_Attributes (
3891 p_ttd_rec IN ttd_rec_type,
3892 x_ttd_rec OUT NOCOPY ttd_rec_type
3893 ) RETURN VARCHAR2 IS
3894 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
3895 BEGIN
3896 x_ttd_rec := p_ttd_rec;
3897 x_ttd_rec.OBJECT_VERSION_NUMBER := p_ttd_rec.OBJECT_VERSION_NUMBER + 1;
3898 RETURN(l_return_status);
3899 END Set_Attributes;
3900 BEGIN
3901 l_return_status := OKL_API.START_ACTIVITY(l_api_name,
3902 p_init_msg_list,
3903 '_PVT',
3904 x_return_status);
3905 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3906 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
3907 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
3908 RAISE OKL_API.G_EXCEPTION_ERROR;
3909 END IF;
3910 --- Setting item attributes
3911 l_return_status := Set_Attributes(
3912 p_ttd_rec, -- IN
3913 l_ttd_rec); -- OUT
3914 --- If any errors happen abort API
3915 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3916 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
3917 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
3918 RAISE OKL_API.G_EXCEPTION_ERROR;
3919 END IF;
3920 l_return_status := populate_new_record(l_ttd_rec, l_def_ttd_rec);
3921 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
3922 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
3923 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
3924 RAISE OKL_API.G_EXCEPTION_ERROR;
3925 END IF;
3926 UPDATE OKL_TAX_TRX_DETAILS
3927 SET TXS_ID = l_def_ttd_rec.txs_id,
3928 TAX_DETERMINE_DATE = l_def_ttd_rec.tax_determine_date,
3929 TAX_RATE_ID = l_def_ttd_rec.tax_rate_id,
3930 TAX_RATE_CODE = l_def_ttd_rec.tax_rate_code,
3931 TAXABLE_AMT = l_def_ttd_rec.taxable_amt,
3932 TAX_EXEMPTION_ID = l_def_ttd_rec.tax_exemption_id,
3933 TAX_RATE = l_def_ttd_rec.tax_rate,
3934 TAX_AMT = l_def_ttd_rec.tax_amt,
3935 BILLED_YN = l_def_ttd_rec.billed_yn,
3936 TAX_CALL_TYPE_CODE = l_def_ttd_rec.tax_call_type_code,
3937 PROGRAM_ID = l_def_ttd_rec.program_id,
3938 REQUEST_ID = l_def_ttd_rec.request_id,
3939 PROGRAM_APPLICATION_ID = l_def_ttd_rec.program_application_id,
3943 ATTRIBUTE2 = l_def_ttd_rec.attribute2,
3940 PROGRAM_UPDATE_DATE = l_def_ttd_rec.program_update_date,
3941 ATTRIBUTE_CATEGORY = l_def_ttd_rec.attribute_category,
3942 ATTRIBUTE1 = l_def_ttd_rec.attribute1,
3944 ATTRIBUTE3 = l_def_ttd_rec.attribute3,
3945 ATTRIBUTE4 = l_def_ttd_rec.attribute4,
3946 ATTRIBUTE5 = l_def_ttd_rec.attribute5,
3947 ATTRIBUTE6 = l_def_ttd_rec.attribute6,
3948 ATTRIBUTE7 = l_def_ttd_rec.attribute7,
3949 ATTRIBUTE8 = l_def_ttd_rec.attribute8,
3950 ATTRIBUTE9 = l_def_ttd_rec.attribute9,
3951 ATTRIBUTE10 = l_def_ttd_rec.attribute10,
3952 ATTRIBUTE11 = l_def_ttd_rec.attribute11,
3953 ATTRIBUTE12 = l_def_ttd_rec.attribute12,
3954 ATTRIBUTE13 = l_def_ttd_rec.attribute13,
3955 ATTRIBUTE14 = l_def_ttd_rec.attribute14,
3956 ATTRIBUTE15 = l_def_ttd_rec.attribute15,
3957 CREATED_BY = l_def_ttd_rec.created_by,
3958 CREATION_DATE = l_def_ttd_rec.creation_date,
3959 LAST_UPDATED_BY = l_def_ttd_rec.last_updated_by,
3960 LAST_UPDATE_DATE = l_def_ttd_rec.last_update_date,
3961 LAST_UPDATE_LOGIN = l_def_ttd_rec.last_update_login,
3962 OBJECT_VERSION_NUMBER = l_def_ttd_rec.object_version_number,
3963 -- Modified by dcshanmu for eBTax - modification starts
3964 TAX_DATE = l_def_ttd_rec.tax_date,
3965 LINE_AMT = l_def_ttd_rec.line_amt,
3966 INTERNAL_ORGANIZATION_ID = l_def_ttd_rec.internal_organization_id,
3967 APPLICATION_ID = l_def_ttd_rec.application_id,
3968 ENTITY_CODE = l_def_ttd_rec.entity_code,
3969 EVENT_CLASS_CODE = l_def_ttd_rec.event_class_code,
3970 EVENT_TYPE_CODE = l_def_ttd_rec.event_type_code,
3971 TRX_ID = l_def_ttd_rec.trx_id,
3972 TRX_LINE_ID = l_def_ttd_rec.trx_line_id,
3973 TRX_LEVEL_TYPE = l_def_ttd_rec.trx_level_type,
3974 TRX_LINE_NUMBER = l_def_ttd_rec.trx_line_number,
3975 TAX_LINE_NUMBER = l_def_ttd_rec.tax_line_number,
3976 TAX_REGIME_ID = l_def_ttd_rec.tax_regime_id,
3977 TAX_REGIME_CODE = l_def_ttd_rec.tax_regime_code,
3978 TAX_ID = l_def_ttd_rec.tax_id,
3979 TAX = l_def_ttd_rec.tax,
3980 TAX_STATUS_ID = l_def_ttd_rec.tax_status_id,
3981 TAX_STATUS_CODE = l_def_ttd_rec.tax_status_code,
3982 TAX_APPORTIONMENT_LINE_NUMBER = l_def_ttd_rec.tax_apportionment_line_number,
3983 LEGAL_ENTITY_ID = l_def_ttd_rec.legal_entity_id,
3984 TRX_NUMBER = l_def_ttd_rec.trx_number,
3985 TRX_DATE = l_def_ttd_rec.trx_date,
3986 TAX_JURISDICTION_ID = l_def_ttd_rec.tax_jurisdiction_id,
3987 TAX_JURISDICTION_CODE = l_def_ttd_rec.tax_jurisdiction_code,
3988 TAX_TYPE_CODE = l_def_ttd_rec.tax_type_code,
3989 TAX_CURRENCY_CODE = l_def_ttd_rec.tax_currency_code,
3990 TAXABLE_AMT_TAX_CURR = l_def_ttd_rec.taxable_amt_tax_curr,
3991 TRX_CURRENCY_CODE = l_def_ttd_rec.trx_currency_code,
3992 MINIMUM_ACCOUNTABLE_UNIT = l_def_ttd_rec.minimum_accountable_unit,
3993 PRECISION = l_def_ttd_rec.precision,
3994 CURRENCY_CONVERSION_TYPE = l_def_ttd_rec.currency_conversion_type,
3995 CURRENCY_CONVERSION_RATE = l_def_ttd_rec.currency_conversion_rate,
3996 CURRENCY_CONVERSION_DATE = l_def_ttd_rec.currency_conversion_date
3997 -- Modified by dcshanmu for eBTax - modification end
3998
3999 WHERE ID = l_def_ttd_rec.id;
4000
4001 x_ttd_rec := l_ttd_rec;
4002 x_return_status := l_return_status;
4003 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
4004 EXCEPTION
4005 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4006 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4007 (
4008 l_api_name,
4009 G_PKG_NAME,
4010 'OKL_API.G_RET_STS_ERROR',
4011 x_msg_count,
4012 x_msg_data,
4013 '_PVT'
4014 );
4015 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4016 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4017 (
4018 l_api_name,
4019 G_PKG_NAME,
4020 'OKL_API.G_RET_STS_UNEXP_ERROR',
4021 x_msg_count,
4022 x_msg_data,
4023 '_PVT'
4024 );
4025 WHEN OTHERS THEN
4026 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4027 (
4028 l_api_name,
4029 G_PKG_NAME,
4030 'OTHERS',
4031 x_msg_count,
4032 x_msg_data,
4033 '_PVT'
4034 );
4035 END update_row;
4036 ------------------------------------------
4037 -- update_row for:OKL_TAX_TRX_DETAILS_V --
4038 ------------------------------------------
4039 PROCEDURE update_row(
4040 p_api_version IN NUMBER,
4041 p_init_msg_list IN VARCHAR2,
4042 x_return_status OUT NOCOPY VARCHAR2,
4043 x_msg_count OUT NOCOPY NUMBER,
4044 x_msg_data OUT NOCOPY VARCHAR2,
4045 p_ttdv_rec IN ttdv_rec_type,
4046 x_ttdv_rec OUT NOCOPY ttdv_rec_type) IS
4047
4048 l_api_version CONSTANT NUMBER := 1;
4049 l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
4050 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
4051 l_ttdv_rec ttdv_rec_type := p_ttdv_rec;
4052 LDefOklTaxTrxDetailsVRec ttdv_rec_type;
4053 l_db_ttdv_rec ttdv_rec_type;
4054 l_ttd_rec ttd_rec_type;
4055 lx_ttd_rec ttd_rec_type;
4056 -------------------------------
4057 -- FUNCTION fill_who_columns --
4058 -------------------------------
4059 FUNCTION fill_who_columns (
4060 p_ttdv_rec IN ttdv_rec_type
4061 ) RETURN ttdv_rec_type IS
4062 l_ttdv_rec ttdv_rec_type := p_ttdv_rec;
4063 BEGIN
4064 l_ttdv_rec.LAST_UPDATE_DATE := SYSDATE;
4065 l_ttdv_rec.LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
4069 ----------------------------------
4066 l_ttdv_rec.LAST_UPDATE_LOGIN := FND_GLOBAL.LOGIN_ID;
4067 RETURN(l_ttdv_rec);
4068 END fill_who_columns;
4070 -- FUNCTION populate_new_record --
4071 ----------------------------------
4072 FUNCTION populate_new_record (
4073 p_ttdv_rec IN ttdv_rec_type,
4074 x_ttdv_rec OUT NOCOPY ttdv_rec_type
4075 ) RETURN VARCHAR2 IS
4076 l_row_notfound BOOLEAN := TRUE;
4077 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
4078 BEGIN
4079 x_ttdv_rec := p_ttdv_rec;
4080 -- Get current database values
4081 -- NOTE: Never assign the OBJECT_VERSION_NUMBER. Force the user to pass it
4082 -- so it may be verified through LOCK_ROW.
4083 l_db_ttdv_rec := get_rec(p_ttdv_rec, l_return_status);
4084 IF (l_return_status = OKL_API.G_RET_STS_SUCCESS) THEN
4085 IF (x_ttdv_rec.id = OKL_API.G_MISS_NUM)
4086 THEN
4087 x_ttdv_rec.id := l_db_ttdv_rec.id;
4088 END IF;
4089 IF (x_ttdv_rec.txs_id = OKL_API.G_MISS_NUM)
4090 THEN
4091 x_ttdv_rec.txs_id := l_db_ttdv_rec.txs_id;
4092 END IF;
4093
4094 --SECHAWLA : Added code to set Object Version No. because of the locking issue
4095 IF (x_ttdv_rec.object_version_number = OKL_API.G_MISS_NUM)
4096 THEN
4097 x_ttdv_rec.object_version_number := l_db_ttdv_rec.object_version_number;
4098 END IF;
4099
4100
4101 IF (x_ttdv_rec.tax_determine_date = OKL_API.G_MISS_DATE)
4102 THEN
4103 x_ttdv_rec.tax_determine_date := l_db_ttdv_rec.tax_determine_date;
4104 END IF;
4105 IF (x_ttdv_rec.tax_rate_id = OKL_API.G_MISS_NUM)
4106 THEN
4107 x_ttdv_rec.tax_rate_id := l_db_ttdv_rec.tax_rate_id;
4108 END IF;
4109 IF (x_ttdv_rec.tax_rate_code = OKL_API.G_MISS_CHAR)
4110 THEN
4111 x_ttdv_rec.tax_rate_code := l_db_ttdv_rec.tax_rate_code;
4112 END IF;
4113 IF (x_ttdv_rec.taxable_amt = OKL_API.G_MISS_NUM)
4114 THEN
4115 x_ttdv_rec.taxable_amt := l_db_ttdv_rec.taxable_amt;
4116 END IF;
4117 IF (x_ttdv_rec.tax_exemption_id = OKL_API.G_MISS_NUM)
4118 THEN
4119 x_ttdv_rec.tax_exemption_id := l_db_ttdv_rec.tax_exemption_id;
4120 END IF;
4121 IF (x_ttdv_rec.tax_rate = OKL_API.G_MISS_NUM)
4122 THEN
4123 x_ttdv_rec.tax_rate := l_db_ttdv_rec.tax_rate;
4124 END IF;
4125 IF (x_ttdv_rec.tax_amt = OKL_API.G_MISS_NUM)
4126 THEN
4127 x_ttdv_rec.tax_amt := l_db_ttdv_rec.tax_amt;
4128 END IF;
4129 IF (x_ttdv_rec.billed_yn = OKL_API.G_MISS_CHAR)
4130 THEN
4131 x_ttdv_rec.billed_yn := l_db_ttdv_rec.billed_yn;
4132 END IF;
4133 IF (x_ttdv_rec.tax_call_type_code = OKL_API.G_MISS_CHAR)
4134 THEN
4135 x_ttdv_rec.tax_call_type_code := l_db_ttdv_rec.tax_call_type_code;
4136 END IF;
4137 IF (x_ttdv_rec.program_id = OKL_API.G_MISS_NUM)
4138 THEN
4139 x_ttdv_rec.program_id := l_db_ttdv_rec.program_id;
4140 END IF;
4141 IF (x_ttdv_rec.request_id = OKL_API.G_MISS_NUM)
4142 THEN
4143 x_ttdv_rec.request_id := l_db_ttdv_rec.request_id;
4144 END IF;
4145 IF (x_ttdv_rec.program_application_id = OKL_API.G_MISS_NUM)
4146 THEN
4147 x_ttdv_rec.program_application_id := l_db_ttdv_rec.program_application_id;
4148 END IF;
4149 IF (x_ttdv_rec.program_update_date = OKL_API.G_MISS_DATE)
4150 THEN
4151 x_ttdv_rec.program_update_date := l_db_ttdv_rec.program_update_date;
4152 END IF;
4153 IF (x_ttdv_rec.attribute_category = OKL_API.G_MISS_CHAR)
4154 THEN
4155 x_ttdv_rec.attribute_category := l_db_ttdv_rec.attribute_category;
4156 END IF;
4157 IF (x_ttdv_rec.attribute1 = OKL_API.G_MISS_CHAR)
4158 THEN
4159 x_ttdv_rec.attribute1 := l_db_ttdv_rec.attribute1;
4160 END IF;
4161 IF (x_ttdv_rec.attribute2 = OKL_API.G_MISS_CHAR)
4162 THEN
4163 x_ttdv_rec.attribute2 := l_db_ttdv_rec.attribute2;
4164 END IF;
4165 IF (x_ttdv_rec.attribute3 = OKL_API.G_MISS_CHAR)
4166 THEN
4167 x_ttdv_rec.attribute3 := l_db_ttdv_rec.attribute3;
4168 END IF;
4169 IF (x_ttdv_rec.attribute4 = OKL_API.G_MISS_CHAR)
4170 THEN
4171 x_ttdv_rec.attribute4 := l_db_ttdv_rec.attribute4;
4172 END IF;
4173 IF (x_ttdv_rec.attribute5 = OKL_API.G_MISS_CHAR)
4174 THEN
4175 x_ttdv_rec.attribute5 := l_db_ttdv_rec.attribute5;
4176 END IF;
4177 IF (x_ttdv_rec.attribute6 = OKL_API.G_MISS_CHAR)
4178 THEN
4179 x_ttdv_rec.attribute6 := l_db_ttdv_rec.attribute6;
4180 END IF;
4181 IF (x_ttdv_rec.attribute7 = OKL_API.G_MISS_CHAR)
4182 THEN
4183 x_ttdv_rec.attribute7 := l_db_ttdv_rec.attribute7;
4184 END IF;
4185 IF (x_ttdv_rec.attribute8 = OKL_API.G_MISS_CHAR)
4186 THEN
4187 x_ttdv_rec.attribute8 := l_db_ttdv_rec.attribute8;
4188 END IF;
4189 IF (x_ttdv_rec.attribute9 = OKL_API.G_MISS_CHAR)
4190 THEN
4191 x_ttdv_rec.attribute9 := l_db_ttdv_rec.attribute9;
4192 END IF;
4193 IF (x_ttdv_rec.attribute10 = OKL_API.G_MISS_CHAR)
4194 THEN
4195 x_ttdv_rec.attribute10 := l_db_ttdv_rec.attribute10;
4196 END IF;
4197 IF (x_ttdv_rec.attribute11 = OKL_API.G_MISS_CHAR)
4198 THEN
4199 x_ttdv_rec.attribute11 := l_db_ttdv_rec.attribute11;
4200 END IF;
4201 IF (x_ttdv_rec.attribute12 = OKL_API.G_MISS_CHAR)
4205 IF (x_ttdv_rec.attribute13 = OKL_API.G_MISS_CHAR)
4202 THEN
4203 x_ttdv_rec.attribute12 := l_db_ttdv_rec.attribute12;
4204 END IF;
4206 THEN
4207 x_ttdv_rec.attribute13 := l_db_ttdv_rec.attribute13;
4208 END IF;
4209 IF (x_ttdv_rec.attribute14 = OKL_API.G_MISS_CHAR)
4210 THEN
4211 x_ttdv_rec.attribute14 := l_db_ttdv_rec.attribute14;
4212 END IF;
4213 IF (x_ttdv_rec.attribute15 = OKL_API.G_MISS_CHAR)
4214 THEN
4215 x_ttdv_rec.attribute15 := l_db_ttdv_rec.attribute15;
4216 END IF;
4217 IF (x_ttdv_rec.created_by = OKL_API.G_MISS_NUM)
4218 THEN
4219 x_ttdv_rec.created_by := l_db_ttdv_rec.created_by;
4220 END IF;
4221 IF (x_ttdv_rec.creation_date = OKL_API.G_MISS_DATE)
4222 THEN
4223 x_ttdv_rec.creation_date := l_db_ttdv_rec.creation_date;
4224 END IF;
4225 IF (x_ttdv_rec.last_updated_by = OKL_API.G_MISS_NUM)
4226 THEN
4227 x_ttdv_rec.last_updated_by := l_db_ttdv_rec.last_updated_by;
4228 END IF;
4229 IF (x_ttdv_rec.last_update_date = OKL_API.G_MISS_DATE)
4230 THEN
4231 x_ttdv_rec.last_update_date := l_db_ttdv_rec.last_update_date;
4232 END IF;
4233 IF (x_ttdv_rec.last_update_login = OKL_API.G_MISS_NUM)
4234 THEN
4235 x_ttdv_rec.last_update_login := l_db_ttdv_rec.last_update_login;
4236 END IF;
4237
4238 -- Modified by dcshanmu for eBTax - modification starts
4239 IF (x_ttdv_rec.tax_date = OKL_API.G_MISS_DATE)
4240 THEN
4241 x_ttdv_rec.tax_date := l_ttdv_rec.tax_date;
4242 END IF;
4243 IF (x_ttdv_rec.line_amt = OKL_API.G_MISS_NUM)
4244 THEN
4245 x_ttdv_rec.line_amt := l_ttdv_rec.line_amt;
4246 END IF;
4247 IF (x_ttdv_rec.internal_organization_id = OKL_API.G_MISS_NUM)
4248 THEN
4249 x_ttdv_rec.internal_organization_id := l_ttdv_rec.internal_organization_id;
4250 END IF;
4251 IF (x_ttdv_rec.application_id = OKL_API.G_MISS_NUM)
4252 THEN
4253 x_ttdv_rec.application_id := l_ttdv_rec.application_id;
4254 END IF;
4255 IF (x_ttdv_rec.entity_code = OKL_API.G_MISS_CHAR)
4256 THEN
4257 x_ttdv_rec.entity_code := l_ttdv_rec.entity_code;
4258 END IF;
4259 IF (x_ttdv_rec.event_class_code = OKL_API.G_MISS_CHAR)
4260 THEN
4261 x_ttdv_rec.event_class_code := l_ttdv_rec.event_class_code;
4262 END IF;
4263 IF (x_ttdv_rec.event_type_code = OKL_API.G_MISS_CHAR)
4264 THEN
4265 x_ttdv_rec.event_type_code := l_ttdv_rec.event_type_code;
4266 END IF;
4267 IF (x_ttdv_rec.trx_id = OKL_API.G_MISS_NUM)
4268 THEN
4269 x_ttdv_rec.trx_id := l_ttdv_rec.trx_id;
4270 END IF;
4271 IF (x_ttdv_rec.trx_line_id = OKL_API.G_MISS_NUM)
4272 THEN
4273 x_ttdv_rec.trx_line_id := l_ttdv_rec.trx_line_id;
4274 END IF;
4275 IF (x_ttdv_rec.trx_level_type = OKL_API.G_MISS_CHAR)
4276 THEN
4277 x_ttdv_rec.trx_level_type := l_ttdv_rec.trx_level_type;
4278 END IF;
4279 IF (x_ttdv_rec.trx_line_number = OKL_API.G_MISS_NUM)
4280 THEN
4281 x_ttdv_rec.trx_line_number := l_ttdv_rec.trx_line_number;
4282 END IF;
4283 IF (x_ttdv_rec.tax_line_number = OKL_API.G_MISS_NUM)
4284 THEN
4285 x_ttdv_rec.tax_line_number := l_ttdv_rec.tax_line_number;
4286 END IF;
4287 IF (x_ttdv_rec.tax_regime_id = OKL_API.G_MISS_NUM)
4288 THEN
4289 x_ttdv_rec.tax_regime_id := l_ttdv_rec.tax_regime_id;
4290 END IF;
4291 IF (x_ttdv_rec.tax_regime_code = OKL_API.G_MISS_CHAR)
4292 THEN
4293 x_ttdv_rec.tax_regime_code := l_ttdv_rec.tax_regime_code;
4294 END IF;
4295 IF (x_ttdv_rec.tax_id = OKL_API.G_MISS_NUM)
4296 THEN
4297 x_ttdv_rec.tax_id := l_ttdv_rec.tax_id;
4298 END IF;
4299 IF (x_ttdv_rec.tax = OKL_API.G_MISS_CHAR)
4300 THEN
4301 x_ttdv_rec.tax := l_ttdv_rec.tax;
4302 END IF;
4303 IF (x_ttdv_rec.tax_status_id = OKL_API.G_MISS_NUM)
4304 THEN
4305 x_ttdv_rec.tax_status_id := l_ttdv_rec.tax_status_id;
4306 END IF;
4307 IF (x_ttdv_rec.tax_status_code = OKL_API.G_MISS_CHAR)
4308 THEN
4309 x_ttdv_rec.tax_status_code := l_ttdv_rec.tax_status_code;
4310 END IF;
4311 IF (x_ttdv_rec.tax_apportionment_line_number = OKL_API.G_MISS_NUM)
4312 THEN
4313 x_ttdv_rec.tax_apportionment_line_number := l_ttdv_rec.tax_apportionment_line_number;
4314 END IF;
4315 IF (x_ttdv_rec.legal_entity_id = OKL_API.G_MISS_NUM)
4316 THEN
4317 x_ttdv_rec.legal_entity_id := l_ttdv_rec.legal_entity_id;
4318 END IF;
4319 IF (x_ttdv_rec.trx_number = OKL_API.G_MISS_CHAR)
4320 THEN
4321 x_ttdv_rec.trx_number := l_ttdv_rec.trx_number;
4322 END IF;
4323 IF (x_ttdv_rec.trx_date = OKL_API.G_MISS_DATE)
4324 THEN
4325 x_ttdv_rec.trx_date := l_ttdv_rec.trx_date;
4326 END IF;
4327 IF (x_ttdv_rec.tax_jurisdiction_id = OKL_API.G_MISS_NUM)
4328 THEN
4329 x_ttdv_rec.tax_jurisdiction_id := l_ttdv_rec.tax_jurisdiction_id;
4330 END IF;
4331 IF (x_ttdv_rec.tax_jurisdiction_code = OKL_API.G_MISS_CHAR)
4332 THEN
4333 x_ttdv_rec.tax_jurisdiction_code := l_ttdv_rec.tax_jurisdiction_code;
4334 END IF;
4335 IF (x_ttdv_rec.tax_type_code = OKL_API.G_MISS_CHAR)
4336 THEN
4337 x_ttdv_rec.tax_type_code := l_ttdv_rec.tax_type_code;
4341 x_ttdv_rec.tax_currency_code := l_ttdv_rec.tax_currency_code;
4338 END IF;
4339 IF (x_ttdv_rec.tax_currency_code = OKL_API.G_MISS_CHAR)
4340 THEN
4342 END IF;
4343 IF (x_ttdv_rec.taxable_amt_tax_curr = OKL_API.G_MISS_NUM)
4344 THEN
4345 x_ttdv_rec.taxable_amt_tax_curr := l_ttdv_rec.taxable_amt_tax_curr;
4346 END IF;
4347 IF (x_ttdv_rec.trx_currency_code = OKL_API.G_MISS_CHAR)
4348 THEN
4349 x_ttdv_rec.trx_currency_code := l_ttdv_rec.trx_currency_code;
4350 END IF;
4351 IF (x_ttdv_rec.minimum_accountable_unit = OKL_API.G_MISS_NUM)
4352 THEN
4353 x_ttdv_rec.minimum_accountable_unit := l_ttdv_rec.minimum_accountable_unit;
4354 END IF;
4355 IF (x_ttdv_rec.precision = OKL_API.G_MISS_NUM)
4356 THEN
4357 x_ttdv_rec.precision := l_ttdv_rec.precision;
4358 END IF;
4359 IF (x_ttdv_rec.currency_conversion_type = OKL_API.G_MISS_CHAR)
4360 THEN
4361 x_ttdv_rec.currency_conversion_type := l_ttdv_rec.currency_conversion_type;
4362 END IF;
4363 IF (x_ttdv_rec.currency_conversion_rate = OKL_API.G_MISS_NUM)
4364 THEN
4365 x_ttdv_rec.currency_conversion_rate := l_ttdv_rec.currency_conversion_rate;
4366 END IF;
4367 IF (x_ttdv_rec.currency_conversion_date = OKL_API.G_MISS_DATE)
4368 THEN
4369 x_ttdv_rec.currency_conversion_date := l_ttdv_rec.currency_conversion_date;
4370 END IF;
4371 -- Modified by dcshanmu for eBTax - modification end
4372
4373 END IF;
4374 RETURN(l_return_status);
4375 END populate_new_record;
4376 ----------------------------------------------
4377 -- Set_Attributes for:OKL_TAX_TRX_DETAILS_V --
4378 ----------------------------------------------
4379 FUNCTION Set_Attributes (
4380 p_ttdv_rec IN ttdv_rec_type,
4381 x_ttdv_rec OUT NOCOPY ttdv_rec_type
4382 ) RETURN VARCHAR2 IS
4383 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
4384 BEGIN
4385 x_ttdv_rec := p_ttdv_rec;
4386 RETURN(l_return_status);
4387 END Set_Attributes;
4388 BEGIN
4389 l_return_status := OKL_API.START_ACTIVITY(l_api_name,
4390 G_PKG_NAME,
4391 p_init_msg_list,
4392 l_api_version,
4393 p_api_version,
4394 '_PVT',
4395 x_return_status);
4396 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4397 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4398 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4399 RAISE OKL_API.G_EXCEPTION_ERROR;
4400 END IF;
4401 --- Setting item attributes
4402 l_return_status := Set_Attributes(
4403 p_ttdv_rec, -- IN
4404 x_ttdv_rec); -- OUT
4405 --- If any errors happen abort API
4406 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4407 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4408 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4409 RAISE OKL_API.G_EXCEPTION_ERROR;
4410 END IF;
4411 l_return_status := populate_new_record(l_ttdv_rec, LDefOklTaxTrxDetailsVRec);
4412 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4413 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4414 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4415 RAISE OKL_API.G_EXCEPTION_ERROR;
4416 END IF;
4417 LDefOklTaxTrxDetailsVRec := fill_who_columns(LDefOklTaxTrxDetailsVRec);
4418 --- Validate all non-missing attributes (Item Level Validation)
4419 l_return_status := Validate_Attributes(LDefOklTaxTrxDetailsVRec);
4420 --- If any errors happen abort API
4421 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4422 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4423 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4424 RAISE OKL_API.G_EXCEPTION_ERROR;
4425 END IF;
4426 /*
4427 l_return_status := Validate_Record(LDefOklTaxTrxDetailsVRec, l_db_ttdv_rec);
4428 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4429 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4430 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4431 RAISE OKL_API.G_EXCEPTION_ERROR;
4432 END IF;
4433 */
4434
4435 -- Lock the Record
4436 lock_row(
4437 p_api_version => p_api_version,
4438 p_init_msg_list => p_init_msg_list,
4439 x_return_status => l_return_status,
4440 x_msg_count => x_msg_count,
4441 x_msg_data => x_msg_data,
4442 p_ttdv_rec => LDefOklTaxTrxDetailsVRec); --p_ttdv_rec); -- SECHAWLA Changed to pass l_def_tbov_rec becoz of locking issue
4443 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4444 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4445 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4446 RAISE OKL_API.G_EXCEPTION_ERROR;
4447 END IF;
4448
4449 -----------------------------------------
4450 -- Move VIEW record to "Child" records --
4451 -----------------------------------------
4452 migrate(LDefOklTaxTrxDetailsVRec, l_ttd_rec);
4453 -----------------------------------------------
4454 -- Call the UPDATE_ROW for each child record --
4455 -----------------------------------------------
4456 update_row(
4457 p_init_msg_list,
4458 l_return_status,
4459 x_msg_count,
4460 x_msg_data,
4461 l_ttd_rec,
4462 lx_ttd_rec
4463 );
4464 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4468 END IF;
4465 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4466 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4467 RAISE OKL_API.G_EXCEPTION_ERROR;
4469 migrate(lx_ttd_rec, LDefOklTaxTrxDetailsVRec);
4470 x_ttdv_rec := LDefOklTaxTrxDetailsVRec;
4471 x_return_status := l_return_status;
4472 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
4473 EXCEPTION
4474 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4475 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4476 (
4477 l_api_name,
4478 G_PKG_NAME,
4479 'OKL_API.G_RET_STS_ERROR',
4480 x_msg_count,
4481 x_msg_data,
4482 '_PVT'
4483 );
4484 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4485 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4486 (
4487 l_api_name,
4488 G_PKG_NAME,
4489 'OKL_API.G_RET_STS_UNEXP_ERROR',
4490 x_msg_count,
4491 x_msg_data,
4492 '_PVT'
4493 );
4494 WHEN OTHERS THEN
4495 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4496 (
4497 l_api_name,
4498 G_PKG_NAME,
4499 'OTHERS',
4500 x_msg_count,
4501 x_msg_data,
4502 '_PVT'
4503 );
4504 END update_row;
4505 ---------------------------------------------------------
4506 -- PL/SQL TBL update_row for:okl_tax_trx_details_v_tbl --
4507 ---------------------------------------------------------
4508 PROCEDURE update_row(
4509 p_api_version IN NUMBER,
4510 p_init_msg_list IN VARCHAR2,
4511 x_return_status OUT NOCOPY VARCHAR2,
4512 x_msg_count OUT NOCOPY NUMBER,
4513 x_msg_data OUT NOCOPY VARCHAR2,
4514 p_ttdv_tbl IN ttdv_tbl_type,
4515 x_ttdv_tbl OUT NOCOPY ttdv_tbl_type,
4516 px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
4517
4518 l_api_version CONSTANT NUMBER := 1;
4519 l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_update_row';
4520 i NUMBER := 0;
4521 BEGIN
4522 OKL_API.init_msg_list(p_init_msg_list);
4523 -- Make sure PL/SQL table has records in it before passing
4524 IF (p_ttdv_tbl.COUNT > 0) THEN
4525 i := p_ttdv_tbl.FIRST;
4526 LOOP
4527 DECLARE
4528 l_error_rec OKL_API.ERROR_REC_TYPE;
4529 BEGIN
4530 l_error_rec.api_name := l_api_name;
4531 l_error_rec.api_package := G_PKG_NAME;
4532 l_error_rec.idx := i;
4533 update_row (
4534 p_api_version => p_api_version,
4535 p_init_msg_list => OKL_API.G_FALSE,
4536 x_return_status => l_error_rec.error_type,
4537 x_msg_count => l_error_rec.msg_count,
4538 x_msg_data => l_error_rec.msg_data,
4539 p_ttdv_rec => p_ttdv_tbl(i),
4540 x_ttdv_rec => x_ttdv_tbl(i));
4541 IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
4542 l_error_rec.sqlcode := SQLCODE;
4543 load_error_tbl(l_error_rec, px_error_tbl);
4544 ELSE
4545 x_msg_count := l_error_rec.msg_count;
4546 x_msg_data := l_error_rec.msg_data;
4547 END IF;
4548 EXCEPTION
4549 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4550 l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
4551 l_error_rec.sqlcode := SQLCODE;
4552 load_error_tbl(l_error_rec, px_error_tbl);
4553 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4554 l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
4555 l_error_rec.sqlcode := SQLCODE;
4556 load_error_tbl(l_error_rec, px_error_tbl);
4557 WHEN OTHERS THEN
4558 l_error_rec.error_type := 'OTHERS';
4559 l_error_rec.sqlcode := SQLCODE;
4560 load_error_tbl(l_error_rec, px_error_tbl);
4561 END;
4562 EXIT WHEN (i = p_ttdv_tbl.LAST);
4563 i := p_ttdv_tbl.NEXT(i);
4564 END LOOP;
4565 END IF;
4566 -- Loop through the error_tbl to find the error with the highest severity
4567 -- and return it.
4568 x_return_status := find_highest_exception(px_error_tbl);
4569 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
4570 EXCEPTION
4571 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4572 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4573 (
4574 l_api_name,
4575 G_PKG_NAME,
4576 'OKL_API.G_RET_STS_ERROR',
4577 x_msg_count,
4578 x_msg_data,
4579 '_PVT'
4580 );
4581 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4582 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4583 (
4584 l_api_name,
4585 G_PKG_NAME,
4586 'OKL_API.G_RET_STS_UNEXP_ERROR',
4587 x_msg_count,
4588 x_msg_data,
4589 '_PVT'
4590 );
4591 WHEN OTHERS THEN
4592 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4593 (
4594 l_api_name,
4595 G_PKG_NAME,
4596 'OTHERS',
4597 x_msg_count,
4598 x_msg_data,
4599 '_PVT'
4600 );
4601 END update_row;
4602
4603 ---------------------------------------------------------
4604 -- PL/SQL TBL update_row for:OKL_TAX_TRX_DETAILS_V_TBL --
4605 ---------------------------------------------------------
4606 -- This procedure is the same as the one above except it does not have a "px_error_tbl" argument.
4607 -- This procedure was create for backward compatibility and simply is a wrapper for the one above.
4608 PROCEDURE update_row(
4612 x_msg_count OUT NOCOPY NUMBER,
4609 p_api_version IN NUMBER,
4610 p_init_msg_list IN VARCHAR2,
4611 x_return_status OUT NOCOPY VARCHAR2,
4613 x_msg_data OUT NOCOPY VARCHAR2,
4614 p_ttdv_tbl IN ttdv_tbl_type,
4615 x_ttdv_tbl OUT NOCOPY ttdv_tbl_type) IS
4616
4617 l_api_version CONSTANT NUMBER := 1;
4618 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
4619 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
4620 l_error_tbl OKL_API.ERROR_TBL_TYPE;
4621 BEGIN
4622 OKL_API.init_msg_list(p_init_msg_list);
4623 -- Make sure PL/SQL table has records in it before passing
4624 IF (p_ttdv_tbl.COUNT > 0) THEN
4625 update_row (
4626 p_api_version => p_api_version,
4627 p_init_msg_list => OKL_API.G_FALSE,
4628 x_return_status => x_return_status,
4629 x_msg_count => x_msg_count,
4630 x_msg_data => x_msg_data,
4631 p_ttdv_tbl => p_ttdv_tbl,
4632 x_ttdv_tbl => x_ttdv_tbl,
4633 px_error_tbl => l_error_tbl);
4634 END IF;
4635 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
4636 EXCEPTION
4637 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4638 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4639 (
4640 l_api_name,
4641 G_PKG_NAME,
4642 'OKL_API.G_RET_STS_ERROR',
4643 x_msg_count,
4644 x_msg_data,
4645 '_PVT'
4646 );
4647 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4648 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4649 (
4650 l_api_name,
4651 G_PKG_NAME,
4652 'OKL_API.G_RET_STS_UNEXP_ERROR',
4653 x_msg_count,
4654 x_msg_data,
4655 '_PVT'
4656 );
4657 WHEN OTHERS THEN
4658 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4659 (
4660 l_api_name,
4661 G_PKG_NAME,
4662 'OTHERS',
4663 x_msg_count,
4664 x_msg_data,
4665 '_PVT'
4666 );
4667 END update_row;
4668
4669 ---------------------------------------------------------------------------
4670 -- PROCEDURE delete_row
4671 ---------------------------------------------------------------------------
4672 ----------------------------------------
4673 -- delete_row for:OKL_TAX_TRX_DETAILS --
4674 ----------------------------------------
4675 PROCEDURE delete_row(
4676 p_init_msg_list IN VARCHAR2,
4677 x_return_status OUT NOCOPY VARCHAR2,
4678 x_msg_count OUT NOCOPY NUMBER,
4679 x_msg_data OUT NOCOPY VARCHAR2,
4680 p_ttd_rec IN ttd_rec_type) IS
4681
4682 l_api_version CONSTANT NUMBER := 1;
4683 l_api_name CONSTANT VARCHAR2(30) := 'B_delete_row';
4684 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
4685 l_ttd_rec ttd_rec_type := p_ttd_rec;
4686 l_row_notfound BOOLEAN := TRUE;
4687 BEGIN
4688 l_return_status := OKL_API.START_ACTIVITY(l_api_name,
4689 p_init_msg_list,
4690 '_PVT',
4691 x_return_status);
4692 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4693 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4694 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4695 RAISE OKL_API.G_EXCEPTION_ERROR;
4696 END IF;
4697
4698 DELETE FROM OKL_TAX_TRX_DETAILS
4699 WHERE ID = p_ttd_rec.id;
4700
4701 x_return_status := l_return_status;
4702 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
4703 EXCEPTION
4704 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4705 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4706 (
4707 l_api_name,
4708 G_PKG_NAME,
4709 'OKL_API.G_RET_STS_ERROR',
4710 x_msg_count,
4711 x_msg_data,
4712 '_PVT'
4713 );
4714 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4715 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4716 (
4717 l_api_name,
4718 G_PKG_NAME,
4719 'OKL_API.G_RET_STS_UNEXP_ERROR',
4720 x_msg_count,
4721 x_msg_data,
4722 '_PVT'
4723 );
4724 WHEN OTHERS THEN
4725 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4726 (
4727 l_api_name,
4728 G_PKG_NAME,
4729 'OTHERS',
4730 x_msg_count,
4731 x_msg_data,
4732 '_PVT'
4733 );
4734 END delete_row;
4735 ------------------------------------------
4736 -- delete_row for:OKL_TAX_TRX_DETAILS_V --
4737 ------------------------------------------
4738 PROCEDURE delete_row(
4739 p_api_version IN NUMBER,
4740 p_init_msg_list IN VARCHAR2,
4741 x_return_status OUT NOCOPY VARCHAR2,
4742 x_msg_count OUT NOCOPY NUMBER,
4743 x_msg_data OUT NOCOPY VARCHAR2,
4744 p_ttdv_rec IN ttdv_rec_type) IS
4745
4746 l_api_version CONSTANT NUMBER := 1;
4747 l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
4748 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
4749 l_ttdv_rec ttdv_rec_type := p_ttdv_rec;
4750 l_ttd_rec ttd_rec_type;
4751 BEGIN
4752 l_return_status := OKL_API.START_ACTIVITY(l_api_name,
4756 p_api_version,
4753 G_PKG_NAME,
4754 p_init_msg_list,
4755 l_api_version,
4757 '_PVT',
4758 x_return_status);
4759 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4760 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4761 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4762 RAISE OKL_API.G_EXCEPTION_ERROR;
4763 END IF;
4764 -----------------------------------------
4765 -- Move VIEW record to "Child" records --
4766 -----------------------------------------
4767 migrate(l_ttdv_rec, l_ttd_rec);
4768 -----------------------------------------------
4769 -- Call the DELETE_ROW for each child record --
4770 -----------------------------------------------
4771 delete_row(
4772 p_init_msg_list,
4773 l_return_status,
4774 x_msg_count,
4775 x_msg_data,
4776 l_ttd_rec
4777 );
4778 IF (l_return_status = OKL_API.G_RET_STS_UNEXP_ERROR) THEN
4779 RAISE OKL_API.G_EXCEPTION_UNEXPECTED_ERROR;
4780 ELSIF (l_return_status = OKL_API.G_RET_STS_ERROR) THEN
4781 RAISE OKL_API.G_EXCEPTION_ERROR;
4782 END IF;
4783 x_return_status := l_return_status;
4784 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
4785 EXCEPTION
4786 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4787 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4788 (
4789 l_api_name,
4790 G_PKG_NAME,
4791 'OKL_API.G_RET_STS_ERROR',
4792 x_msg_count,
4793 x_msg_data,
4794 '_PVT'
4795 );
4796 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4797 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4798 (
4799 l_api_name,
4800 G_PKG_NAME,
4801 'OKL_API.G_RET_STS_UNEXP_ERROR',
4802 x_msg_count,
4803 x_msg_data,
4804 '_PVT'
4805 );
4806 WHEN OTHERS THEN
4807 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4808 (
4809 l_api_name,
4810 G_PKG_NAME,
4811 'OTHERS',
4812 x_msg_count,
4813 x_msg_data,
4814 '_PVT'
4815 );
4816 END delete_row;
4817 -----------------------------------------------------
4818 -- PL/SQL TBL delete_row for:OKL_TAX_TRX_DETAILS_V --
4819 -----------------------------------------------------
4820 PROCEDURE delete_row(
4821 p_api_version IN NUMBER,
4822 p_init_msg_list IN VARCHAR2,
4823 x_return_status OUT NOCOPY VARCHAR2,
4824 x_msg_count OUT NOCOPY NUMBER,
4825 x_msg_data OUT NOCOPY VARCHAR2,
4826 p_ttdv_tbl IN ttdv_tbl_type,
4827 px_error_tbl IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE) IS
4828
4829 l_api_version CONSTANT NUMBER := 1;
4830 l_api_name CONSTANT VARCHAR2(30) := 'V_error_tbl_delete_row';
4831 i NUMBER := 0;
4832 BEGIN
4833 OKL_API.init_msg_list(p_init_msg_list);
4834 -- Make sure PL/SQL table has records in it before passing
4835 IF (p_ttdv_tbl.COUNT > 0) THEN
4836 i := p_ttdv_tbl.FIRST;
4837 LOOP
4838 DECLARE
4839 l_error_rec OKL_API.ERROR_REC_TYPE;
4840 BEGIN
4841 l_error_rec.api_name := l_api_name;
4842 l_error_rec.api_package := G_PKG_NAME;
4843 l_error_rec.idx := i;
4844 delete_row (
4845 p_api_version => p_api_version,
4846 p_init_msg_list => OKL_API.G_FALSE,
4847 x_return_status => l_error_rec.error_type,
4848 x_msg_count => l_error_rec.msg_count,
4849 x_msg_data => l_error_rec.msg_data,
4850 p_ttdv_rec => p_ttdv_tbl(i));
4851 IF (l_error_rec.error_type <> OKL_API.G_RET_STS_SUCCESS) THEN
4852 l_error_rec.sqlcode := SQLCODE;
4853 load_error_tbl(l_error_rec, px_error_tbl);
4854 ELSE
4855 x_msg_count := l_error_rec.msg_count;
4856 x_msg_data := l_error_rec.msg_data;
4857 END IF;
4858 EXCEPTION
4859 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4860 l_error_rec.error_type := OKL_API.G_RET_STS_ERROR;
4861 l_error_rec.sqlcode := SQLCODE;
4862 load_error_tbl(l_error_rec, px_error_tbl);
4863 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4864 l_error_rec.error_type := OKL_API.G_RET_STS_UNEXP_ERROR;
4865 l_error_rec.sqlcode := SQLCODE;
4866 load_error_tbl(l_error_rec, px_error_tbl);
4867 WHEN OTHERS THEN
4868 l_error_rec.error_type := 'OTHERS';
4869 l_error_rec.sqlcode := SQLCODE;
4870 load_error_tbl(l_error_rec, px_error_tbl);
4871 END;
4872 EXIT WHEN (i = p_ttdv_tbl.LAST);
4873 i := p_ttdv_tbl.NEXT(i);
4874 END LOOP;
4875 END IF;
4876 -- Loop through the error_tbl to find the error with the highest severity
4877 -- and return it.
4878 x_return_status := find_highest_exception(px_error_tbl);
4879 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
4880 EXCEPTION
4881 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4882 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4883 (
4884 l_api_name,
4885 G_PKG_NAME,
4886 'OKL_API.G_RET_STS_ERROR',
4887 x_msg_count,
4888 x_msg_data,
4889 '_PVT'
4890 );
4891 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4895 G_PKG_NAME,
4892 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4893 (
4894 l_api_name,
4896 'OKL_API.G_RET_STS_UNEXP_ERROR',
4897 x_msg_count,
4898 x_msg_data,
4899 '_PVT'
4900 );
4901 WHEN OTHERS THEN
4902 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4903 (
4904 l_api_name,
4905 G_PKG_NAME,
4906 'OTHERS',
4907 x_msg_count,
4908 x_msg_data,
4909 '_PVT'
4910 );
4911 END delete_row;
4912
4913 -----------------------------------------------------
4914 -- PL/SQL TBL delete_row for:OKL_TAX_TRX_DETAILS_V --
4915 -----------------------------------------------------
4916 PROCEDURE delete_row(
4917 p_api_version IN NUMBER,
4918 p_init_msg_list IN VARCHAR2,
4919 x_return_status OUT NOCOPY VARCHAR2,
4920 x_msg_count OUT NOCOPY NUMBER,
4921 x_msg_data OUT NOCOPY VARCHAR2,
4922 p_ttdv_tbl IN ttdv_tbl_type) IS
4923
4924 l_api_version CONSTANT NUMBER := 1;
4925 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
4926 l_return_status VARCHAR2(1) := OKL_API.G_RET_STS_SUCCESS;
4927 l_error_tbl OKL_API.ERROR_TBL_TYPE;
4928 BEGIN
4929 OKL_API.init_msg_list(p_init_msg_list);
4930 -- Make sure PL/SQL table has records in it before passing
4931 IF (p_ttdv_tbl.COUNT > 0) THEN
4932 delete_row (
4933 p_api_version => p_api_version,
4934 p_init_msg_list => OKL_API.G_FALSE,
4935 x_return_status => x_return_status,
4936 x_msg_count => x_msg_count,
4937 x_msg_data => x_msg_data,
4938 p_ttdv_tbl => p_ttdv_tbl,
4939 px_error_tbl => l_error_tbl);
4940 END IF;
4941 OKL_API.END_ACTIVITY(x_msg_count, x_msg_data);
4942 EXCEPTION
4943 WHEN OKL_API.G_EXCEPTION_ERROR THEN
4944 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4945 (
4946 l_api_name,
4947 G_PKG_NAME,
4948 'OKL_API.G_RET_STS_ERROR',
4949 x_msg_count,
4950 x_msg_data,
4951 '_PVT'
4952 );
4953 WHEN OKL_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
4954 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4955 (
4956 l_api_name,
4957 G_PKG_NAME,
4958 'OKL_API.G_RET_STS_UNEXP_ERROR',
4959 x_msg_count,
4960 x_msg_data,
4961 '_PVT'
4962 );
4963 WHEN OTHERS THEN
4964 x_return_status := OKL_API.HANDLE_EXCEPTIONS
4965 (
4966 l_api_name,
4967 G_PKG_NAME,
4968 'OTHERS',
4969 x_msg_count,
4970 x_msg_data,
4971 '_PVT'
4972 );
4973 END delete_row;
4974
4975 END OKL_TTD_PVT;