[Home] [Help]
PACKAGE BODY: APPS.OKL_XCR_PVT
Source
1 PACKAGE BODY OKL_XCR_PVT AS
2 /* $Header: OKLSXCRB.pls 120.4 2007/08/08 12:55:50 arajagop ship $ */
3 ---------------------------------------------------------------------------
4 -- FUNCTION get_seq_id
5 ---------------------------------------------------------------------------
6 FUNCTION get_seq_id RETURN NUMBER IS
7 BEGIN
8 RETURN(Okc_P_Util.raw_to_number(sys_guid()));
9 END get_seq_id;
10
11 ---------------------------------------------------------------------------
12 -- PROCEDURE qc
13 ---------------------------------------------------------------------------
14 PROCEDURE qc IS
15 BEGIN
16 NULL;
17 END qc;
18
19 ---------------------------------------------------------------------------
20 -- PROCEDURE change_version
21 ---------------------------------------------------------------------------
22 PROCEDURE change_version IS
23 BEGIN
24 NULL;
25 END change_version;
26
27 ---------------------------------------------------------------------------
28 -- PROCEDURE api_copy
29 ---------------------------------------------------------------------------
30 PROCEDURE api_copy IS
31 BEGIN
32 NULL;
33 END api_copy;
34
35 ---------------------------------------------------------------------------
36 -- PROCEDURE add_language
37 ---------------------------------------------------------------------------
38 PROCEDURE add_language IS
39 BEGIN
40 DELETE FROM OKL_EXT_CSH_RCPTS_TL T
41 WHERE NOT EXISTS (
42 SELECT NULL
43 FROM OKL_EXT_CSH_RCPTS_ALL_B B
44 WHERE B.ID = T.ID
45 AND T.LANGUAGE = USERENV('LANG')
46 );
47
48 UPDATE OKL_EXT_CSH_RCPTS_TL T SET (
49 COMMENTS) = (SELECT
50 B.COMMENTS
51 FROM OKL_EXT_CSH_RCPTS_TL B
52 WHERE B.ID = T.ID
53 AND B.LANGUAGE = T.SOURCE_LANG)
54 WHERE (
55 T.ID,
56 T.LANGUAGE)
57 IN (SELECT
58 SUBT.ID,
59 SUBT.LANGUAGE
60 FROM OKL_EXT_CSH_RCPTS_TL SUBB, OKL_EXT_CSH_RCPTS_TL SUBT
61 WHERE SUBB.ID = SUBT.ID
62 AND SUBB.LANGUAGE = SUBT.SOURCE_LANG
63 AND (SUBB.COMMENTS <> SUBT.COMMENTS
64 OR (SUBB.COMMENTS IS NULL AND SUBT.COMMENTS IS NOT NULL)
65 OR (SUBB.COMMENTS IS NOT NULL AND SUBT.COMMENTS IS NULL)
66 ));
67
68 INSERT INTO OKL_EXT_CSH_RCPTS_TL (
69 ID,
70 LANGUAGE,
71 SOURCE_LANG,
72 SFWT_FLAG,
73 COMMENTS,
74 CREATED_BY,
75 CREATION_DATE,
76 LAST_UPDATED_BY,
77 LAST_UPDATE_DATE,
78 LAST_UPDATE_LOGIN)
79 SELECT
80 B.ID,
81 L.LANGUAGE_CODE,
82 B.SOURCE_LANG,
83 B.SFWT_FLAG,
84 B.COMMENTS,
85 B.CREATED_BY,
86 B.CREATION_DATE,
87 B.LAST_UPDATED_BY,
88 B.LAST_UPDATE_DATE,
89 B.LAST_UPDATE_LOGIN
90 FROM OKL_EXT_CSH_RCPTS_TL B, FND_LANGUAGES L
91 WHERE L.INSTALLED_FLAG IN ('I', 'B')
92 AND B.LANGUAGE = USERENV('LANG')
93 AND NOT EXISTS(
94 SELECT NULL
95 FROM OKL_EXT_CSH_RCPTS_TL T
96 WHERE T.ID = B.ID
97 AND T.LANGUAGE = L.LANGUAGE_CODE
98 );
99
100 END add_language;
101
102 ---------------------------------------------------------------------------
103 -- FUNCTION get_rec for: OKL_EXT_CSH_RCPTS_B
104 ---------------------------------------------------------------------------
105 ---------------------------------------------------------------------------
106 -- Start of comments
107 --
108 -- Function Name : get_rec
109 -- Description : To get the record from the Okl_Ext_Csh_Rcpts_B table.
110 -- Business Rules :
111 -- Parameters : p_xcr_rec, x_no_data_found
112 -- Version : 1.0
113 -- History : 25-AUG-04 abindal modified to include the two new
114 -- columns receipt type and fully applied.
115 -- End of comments
116 ---------------------------------------------------------------------------
117
118 FUNCTION get_rec (
119 p_xcr_rec IN xcr_rec_type,
120 x_no_data_found OUT NOCOPY BOOLEAN
121 ) RETURN xcr_rec_type IS
122 CURSOR xcr_pk_csr (p_id IN NUMBER) IS
123 SELECT
124 ID,
125 XCB_ID,
126 RCT_ID,
127 ICR_ID,
128 OBJECT_VERSION_NUMBER,
129 GL_DATE,
130 ITEM_NUMBER,
131 REMITTANCE_AMOUNT,
132 CURRENCY_CODE,
133 RECEIPT_DATE,
134 RECEIPT_METHOD,
135 CHECK_NUMBER,
136 CUSTOMER_NUMBER,
137 BILL_TO_LOCATION,
138 EXCHANGE_RATE_TYPE,
139 EXCHANGE_RATE_DATE,
140 EXCHANGE_RATE,
141 TRANSIT_ROUTING_NUMBER,
142 ACCOUNT,
143 CUSTOMER_BANK_NAME,
144 CUSTOMER_BANK_BRANCH_NAME,
145 REMITTANCE_BANK_NAME,
146 REMITTANCE_BANK_BRANCH_NAME,
147 REQUEST_ID,
148 PROGRAM_APPLICATION_ID,
149 PROGRAM_ID,
150 PROGRAM_UPDATE_DATE,
151 ORG_ID,
152 ATTRIBUTE_CATEGORY,
153 ATTRIBUTE1,
154 ATTRIBUTE2,
155 ATTRIBUTE3,
156 ATTRIBUTE4,
157 ATTRIBUTE5,
158 ATTRIBUTE6,
159 ATTRIBUTE7,
160 ATTRIBUTE8,
161 ATTRIBUTE9,
162 ATTRIBUTE10,
163 ATTRIBUTE11,
164 ATTRIBUTE12,
165 ATTRIBUTE13,
166 ATTRIBUTE14,
167 ATTRIBUTE15,
168 CREATED_BY,
169 CREATION_DATE,
170 LAST_UPDATED_BY,
171 LAST_UPDATE_DATE,
172 LAST_UPDATE_LOGIN,
173 -- New column receipt type and fully applied added.
174 RECEIPT_TYPE,
175 FULLY_APPLIED_FLAG,
176 EXPIRED_FLAG
177 FROM Okl_Ext_Csh_Rcpts_B
178 WHERE okl_ext_csh_rcpts_b.id = p_id;
179 l_xcr_pk xcr_pk_csr%ROWTYPE;
180 l_xcr_rec xcr_rec_type;
181 BEGIN
182 x_no_data_found := TRUE;
183 -- Get current database values
184 OPEN xcr_pk_csr (p_xcr_rec.id);
185 FETCH xcr_pk_csr INTO
186 l_xcr_rec.ID,
187 l_xcr_rec.XCB_ID,
188 l_xcr_rec.RCT_ID,
189 l_xcr_rec.ICR_ID,
190 l_xcr_rec.OBJECT_VERSION_NUMBER,
191 l_xcr_rec.GL_DATE,
192 l_xcr_rec.ITEM_NUMBER,
193 l_xcr_rec.REMITTANCE_AMOUNT,
194 l_xcr_rec.CURRENCY_CODE,
195 l_xcr_rec.RECEIPT_DATE,
196 l_xcr_rec.RECEIPT_METHOD,
197 l_xcr_rec.CHECK_NUMBER,
198 l_xcr_rec.CUSTOMER_NUMBER,
199 l_xcr_rec.BILL_TO_LOCATION,
200 l_xcr_rec.EXCHANGE_RATE_TYPE,
201 l_xcr_rec.EXCHANGE_RATE_DATE,
202 l_xcr_rec.EXCHANGE_RATE,
203 l_xcr_rec.TRANSIT_ROUTING_NUMBER,
204 l_xcr_rec.ACCOUNT,
205 l_xcr_rec.CUSTOMER_BANK_NAME,
206 l_xcr_rec.CUSTOMER_BANK_BRANCH_NAME,
207 l_xcr_rec.REMITTANCE_BANK_NAME,
208 l_xcr_rec.REMITTANCE_BANK_BRANCH_NAME,
209 l_xcr_rec.REQUEST_ID,
210 l_xcr_rec.PROGRAM_APPLICATION_ID,
211 l_xcr_rec.PROGRAM_ID,
212 l_xcr_rec.PROGRAM_UPDATE_DATE,
213 l_xcr_rec.ORG_ID,
214 l_xcr_rec.ATTRIBUTE_CATEGORY,
215 l_xcr_rec.ATTRIBUTE1,
216 l_xcr_rec.ATTRIBUTE2,
217 l_xcr_rec.ATTRIBUTE3,
218 l_xcr_rec.ATTRIBUTE4,
219 l_xcr_rec.ATTRIBUTE5,
220 l_xcr_rec.ATTRIBUTE6,
221 l_xcr_rec.ATTRIBUTE7,
222 l_xcr_rec.ATTRIBUTE8,
223 l_xcr_rec.ATTRIBUTE9,
224 l_xcr_rec.ATTRIBUTE10,
225 l_xcr_rec.ATTRIBUTE11,
226 l_xcr_rec.ATTRIBUTE12,
227 l_xcr_rec.ATTRIBUTE13,
228 l_xcr_rec.ATTRIBUTE14,
229 l_xcr_rec.ATTRIBUTE15,
230 l_xcr_rec.CREATED_BY,
231 l_xcr_rec.CREATION_DATE,
232 l_xcr_rec.LAST_UPDATED_BY,
233 l_xcr_rec.LAST_UPDATE_DATE,
234 l_xcr_rec.LAST_UPDATE_LOGIN,
235 -- New column receipt type and fully applied added.
236 l_xcr_rec.RECEIPT_TYPE,
237 l_xcr_rec.FULLY_APPLIED_FLAG,
238 l_xcr_rec.EXPIRED_FLAG;
239 x_no_data_found := xcr_pk_csr%NOTFOUND;
240 CLOSE xcr_pk_csr;
241 RETURN(l_xcr_rec);
242 END get_rec;
243
244 FUNCTION get_rec (
245 p_xcr_rec IN xcr_rec_type
246 ) RETURN xcr_rec_type IS
247 l_row_notfound BOOLEAN := TRUE;
248 BEGIN
249 RETURN(get_rec(p_xcr_rec, l_row_notfound));
250 END get_rec;
251 ---------------------------------------------------------------------------
252 -- FUNCTION get_rec for: OKL_EXT_CSH_RCPTS_TL
253 ---------------------------------------------------------------------------
254 FUNCTION get_rec (
255 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type,
256 x_no_data_found OUT NOCOPY BOOLEAN
257 ) RETURN okl_ext_csh_rcpts_tl_rec_type IS
258 CURSOR okl_ext_csh_rcpts_tl_pk_csr (p_id IN NUMBER,
259 p_language IN VARCHAR2) IS
260 SELECT
261 ID,
262 LANGUAGE,
263 SOURCE_LANG,
264 SFWT_FLAG,
265 COMMENTS,
266 CREATED_BY,
267 CREATION_DATE,
268 LAST_UPDATED_BY,
269 LAST_UPDATE_DATE,
270 LAST_UPDATE_LOGIN
271 FROM Okl_Ext_Csh_Rcpts_Tl
272 WHERE okl_ext_csh_rcpts_tl.id = p_id
273 AND okl_ext_csh_rcpts_tl.LANGUAGE = p_language;
274 l_okl_ext_csh_rcpts_tl_pk okl_ext_csh_rcpts_tl_pk_csr%ROWTYPE;
275 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type;
276 BEGIN
277 x_no_data_found := TRUE;
278 -- Get current database values
279 OPEN okl_ext_csh_rcpts_tl_pk_csr (p_okl_ext_csh_rcpts_tl_rec.id,
280 p_okl_ext_csh_rcpts_tl_rec.LANGUAGE);
281 FETCH okl_ext_csh_rcpts_tl_pk_csr INTO
282 l_okl_ext_csh_rcpts_tl_rec.ID,
283 l_okl_ext_csh_rcpts_tl_rec.LANGUAGE,
284 l_okl_ext_csh_rcpts_tl_rec.SOURCE_LANG,
285 l_okl_ext_csh_rcpts_tl_rec.SFWT_FLAG,
286 l_okl_ext_csh_rcpts_tl_rec.COMMENTS,
287 l_okl_ext_csh_rcpts_tl_rec.CREATED_BY,
288 l_okl_ext_csh_rcpts_tl_rec.CREATION_DATE,
289 l_okl_ext_csh_rcpts_tl_rec.LAST_UPDATED_BY,
290 l_okl_ext_csh_rcpts_tl_rec.LAST_UPDATE_DATE,
291 l_okl_ext_csh_rcpts_tl_rec.LAST_UPDATE_LOGIN;
292 x_no_data_found := okl_ext_csh_rcpts_tl_pk_csr%NOTFOUND;
293 CLOSE okl_ext_csh_rcpts_tl_pk_csr;
294 RETURN(l_okl_ext_csh_rcpts_tl_rec);
295 END get_rec;
296
297 FUNCTION get_rec (
298 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type
299 ) RETURN okl_ext_csh_rcpts_tl_rec_type IS
300 l_row_notfound BOOLEAN := TRUE;
301 BEGIN
302 RETURN(get_rec(p_okl_ext_csh_rcpts_tl_rec, l_row_notfound));
303 END get_rec;
304 ---------------------------------------------------------------------------
305 -- FUNCTION get_rec for: OKL_EXT_CSH_RCPTS_V
306 ---------------------------------------------------------------------------
307 ---------------------------------------------------------------------------
308 -- Start of comments
309 --
310 -- Function Name : get_rec
311 -- Description : To get the record from the Okl_Ext_Csh_Rcpts_B table.
312 -- Business Rules :
313 -- Parameters : p_xcrv_rec, x_no_data_found
314 -- Version : 1.0
315 -- History : 25-AUG-04 abindal modified to include the two new
316 -- columns receipt type and fully applied.
317 -- End of comments
318 ---------------------------------------------------------------------------
319
320 FUNCTION get_rec (
321 p_xcrv_rec IN xcrv_rec_type,
322 x_no_data_found OUT NOCOPY BOOLEAN
323 ) RETURN xcrv_rec_type IS
324 CURSOR okl_xcrv_pk_csr (p_id IN NUMBER) IS
325 SELECT
326 ID,
327 OBJECT_VERSION_NUMBER,
328 SFWT_FLAG,
329 XCB_ID,
330 RCT_ID,
331 ICR_ID,
332 GL_DATE,
333 ITEM_NUMBER,
334 REMITTANCE_AMOUNT,
335 CURRENCY_CODE,
336 RECEIPT_DATE,
337 RECEIPT_METHOD,
338 CHECK_NUMBER,
339 COMMENTS,
340 CUSTOMER_NUMBER,
341 BILL_TO_LOCATION,
342 EXCHANGE_RATE_TYPE,
343 EXCHANGE_RATE_DATE,
344 EXCHANGE_RATE,
345 TRANSIT_ROUTING_NUMBER,
346 ACCOUNT,
347 CUSTOMER_BANK_NAME,
348 CUSTOMER_BANK_BRANCH_NAME,
349 REMITTANCE_BANK_NAME,
350 REMITTANCE_BANK_BRANCH_NAME,
351 ATTRIBUTE_CATEGORY,
352 ATTRIBUTE1,
353 ATTRIBUTE2,
354 ATTRIBUTE3,
355 ATTRIBUTE4,
356 ATTRIBUTE5,
357 ATTRIBUTE6,
358 ATTRIBUTE7,
359 ATTRIBUTE8,
360 ATTRIBUTE9,
361 ATTRIBUTE10,
362 ATTRIBUTE11,
363 ATTRIBUTE12,
364 ATTRIBUTE13,
365 ATTRIBUTE14,
366 ATTRIBUTE15,
367 REQUEST_ID,
368 PROGRAM_APPLICATION_ID,
369 PROGRAM_ID,
370 PROGRAM_UPDATE_DATE,
371 ORG_ID,
372 CREATED_BY,
373 CREATION_DATE,
374 LAST_UPDATED_BY,
375 LAST_UPDATE_DATE,
376 LAST_UPDATE_LOGIN,
377 -- New column receipt type and fully applied added.
378 RECEIPT_TYPE,
379 FULLY_APPLIED_FLAG,
380 EXPIRED_FLAG
381 FROM Okl_Ext_Csh_Rcpts_V
382 WHERE okl_ext_csh_rcpts_v.id = p_id;
383 l_okl_xcrv_pk okl_xcrv_pk_csr%ROWTYPE;
384 l_xcrv_rec xcrv_rec_type;
385 BEGIN
386 x_no_data_found := TRUE;
387 -- Get current database values
388 OPEN okl_xcrv_pk_csr (p_xcrv_rec.id);
389 FETCH okl_xcrv_pk_csr INTO
390 l_xcrv_rec.ID,
391 l_xcrv_rec.OBJECT_VERSION_NUMBER,
392 l_xcrv_rec.SFWT_FLAG,
393 l_xcrv_rec.XCB_ID,
394 l_xcrv_rec.RCT_ID,
395 l_xcrv_rec.ICR_ID,
396 l_xcrv_rec.GL_DATE,
397 l_xcrv_rec.ITEM_NUMBER,
398 l_xcrv_rec.REMITTANCE_AMOUNT,
399 l_xcrv_rec.CURRENCY_CODE,
400 l_xcrv_rec.RECEIPT_DATE,
401 l_xcrv_rec.RECEIPT_METHOD,
402 l_xcrv_rec.CHECK_NUMBER,
403 l_xcrv_rec.COMMENTS,
404 l_xcrv_rec.CUSTOMER_NUMBER,
405 l_xcrv_rec.BILL_TO_LOCATION,
406 l_xcrv_rec.EXCHANGE_RATE_TYPE,
407 l_xcrv_rec.EXCHANGE_RATE_DATE,
408 l_xcrv_rec.EXCHANGE_RATE,
409 l_xcrv_rec.TRANSIT_ROUTING_NUMBER,
410 l_xcrv_rec.ACCOUNT,
411 l_xcrv_rec.CUSTOMER_BANK_NAME,
412 l_xcrv_rec.CUSTOMER_BANK_BRANCH_NAME,
413 l_xcrv_rec.REMITTANCE_BANK_NAME,
414 l_xcrv_rec.REMITTANCE_BANK_BRANCH_NAME,
415 l_xcrv_rec.ATTRIBUTE_CATEGORY,
416 l_xcrv_rec.ATTRIBUTE1,
417 l_xcrv_rec.ATTRIBUTE2,
418 l_xcrv_rec.ATTRIBUTE3,
419 l_xcrv_rec.ATTRIBUTE4,
420 l_xcrv_rec.ATTRIBUTE5,
421 l_xcrv_rec.ATTRIBUTE6,
422 l_xcrv_rec.ATTRIBUTE7,
423 l_xcrv_rec.ATTRIBUTE8,
424 l_xcrv_rec.ATTRIBUTE9,
425 l_xcrv_rec.ATTRIBUTE10,
426 l_xcrv_rec.ATTRIBUTE11,
427 l_xcrv_rec.ATTRIBUTE12,
428 l_xcrv_rec.ATTRIBUTE13,
429 l_xcrv_rec.ATTRIBUTE14,
430 l_xcrv_rec.ATTRIBUTE15,
431 l_xcrv_rec.REQUEST_ID,
432 l_xcrv_rec.PROGRAM_APPLICATION_ID,
433 l_xcrv_rec.PROGRAM_ID,
434 l_xcrv_rec.PROGRAM_UPDATE_DATE,
435 l_xcrv_rec.ORG_ID,
436 l_xcrv_rec.CREATED_BY,
437 l_xcrv_rec.CREATION_DATE,
438 l_xcrv_rec.LAST_UPDATED_BY,
439 l_xcrv_rec.LAST_UPDATE_DATE,
440 l_xcrv_rec.LAST_UPDATE_LOGIN,
441 -- New column receipt type and fully applied added.
442 l_xcrv_rec.RECEIPT_TYPE,
443 l_xcrv_rec.FULLY_APPLIED_FLAG,
444 l_xcrv_rec.EXPIRED_FLAG;
445 x_no_data_found := okl_xcrv_pk_csr%NOTFOUND;
446 CLOSE okl_xcrv_pk_csr;
447 RETURN(l_xcrv_rec);
448 END get_rec;
449
450 FUNCTION get_rec (
451 p_xcrv_rec IN xcrv_rec_type
452 ) RETURN xcrv_rec_type IS
453 l_row_notfound BOOLEAN := TRUE;
454 BEGIN
455 RETURN(get_rec(p_xcrv_rec, l_row_notfound)); -- removed by bruno 04192001
456 END get_rec;
457
458 ---------------------------------------------------------
459 -- FUNCTION null_out_defaults for: OKL_EXT_CSH_RCPTS_V --
460 ---------------------------------------------------------
461 ---------------------------------------------------------------------------
462 -- Start of comments
463 --
464 -- Function Name : null_out_defaults
465 -- Description : If the field has default values then equate it to null.
466 -- Business Rules :
467 -- Parameters : p_xcrv_rec
468 -- Version : 1.0
469 -- History : 25-AUG-04 abindal modified to include the two new
470 -- columns receipt type and fully applied.
471 -- End of comments
472 ---------------------------------------------------------------------------
473
474 FUNCTION null_out_defaults (p_xcrv_rec IN xcrv_rec_type)
475 RETURN xcrv_rec_type IS
476
477 l_xcrv_rec xcrv_rec_type := p_xcrv_rec;
478
479 BEGIN
480 IF (l_xcrv_rec.object_version_number = Okl_Api.G_MISS_NUM) THEN
481 l_xcrv_rec.object_version_number := NULL;
482 END IF;
483 IF (l_xcrv_rec.sfwt_flag = Okl_Api.G_MISS_CHAR) THEN
484 l_xcrv_rec.sfwt_flag := NULL;
485 END IF;
486 IF (l_xcrv_rec.xcb_id = Okl_Api.G_MISS_NUM) THEN
487 l_xcrv_rec.xcb_id := NULL;
488 END IF;
489 IF (l_xcrv_rec.rct_id = Okl_Api.G_MISS_NUM) THEN
490 l_xcrv_rec.rct_id := NULL;
491 END IF;
492 IF (l_xcrv_rec.icr_id = Okl_Api.G_MISS_NUM) THEN
493 l_xcrv_rec.icr_id := NULL;
494 END IF;
495 IF (l_xcrv_rec.gl_date = Okl_Api.G_MISS_DATE) THEN
496 l_xcrv_rec.gl_date := NULL;
497 END IF;
498 IF (l_xcrv_rec.item_number = Okl_Api.G_MISS_NUM) THEN
499 l_xcrv_rec.item_number := NULL;
500 END IF;
501 IF (l_xcrv_rec.remittance_amount = Okl_Api.G_MISS_NUM) THEN
502 l_xcrv_rec.remittance_amount := NULL;
503 END IF;
504 IF (l_xcrv_rec.currency_code = Okl_Api.G_MISS_CHAR) THEN
505 l_xcrv_rec.currency_code := NULL;
506 END IF;
507 IF (l_xcrv_rec.receipt_date = Okl_Api.G_MISS_DATE) THEN
508 l_xcrv_rec.receipt_date := NULL;
509 END IF;
510 IF (l_xcrv_rec.receipt_method = Okl_Api.G_MISS_CHAR) THEN
511 l_xcrv_rec.receipt_method := NULL;
512 END IF;
513 IF (l_xcrv_rec.check_number = Okl_Api.G_MISS_CHAR) THEN
514 l_xcrv_rec.check_number := NULL;
515 END IF;
516 IF (l_xcrv_rec.comments = Okl_Api.G_MISS_CHAR) THEN
517 l_xcrv_rec.comments := NULL;
518 END IF;
519 IF (l_xcrv_rec.customer_number = Okl_Api.G_MISS_CHAR) THEN
520 l_xcrv_rec.customer_number := NULL;
521 END IF;
522 IF (l_xcrv_rec.bill_to_location = Okl_Api.G_MISS_CHAR) THEN
523 l_xcrv_rec.bill_to_location := NULL;
524 END IF;
525 IF (l_xcrv_rec.exchange_rate_type = Okl_Api.G_MISS_CHAR) THEN
526 l_xcrv_rec.exchange_rate_type := NULL;
527 END IF;
528 IF (l_xcrv_rec.exchange_rate_date = Okl_Api.G_MISS_DATE) THEN
529 l_xcrv_rec.exchange_rate_date := NULL;
530 END IF;
531 IF (l_xcrv_rec.exchange_rate = Okl_Api.G_MISS_NUM) THEN
532 l_xcrv_rec.exchange_rate := NULL;
533 END IF;
534 IF (l_xcrv_rec.transit_routing_number = Okl_Api.G_MISS_CHAR) THEN
535 l_xcrv_rec.transit_routing_number := NULL;
536 END IF;
537 IF (l_xcrv_rec.account = Okl_Api.G_MISS_CHAR) THEN
538 l_xcrv_rec.account := NULL;
539 END IF;
540 IF (l_xcrv_rec.customer_bank_name = Okl_Api.G_MISS_CHAR) THEN
541 l_xcrv_rec.customer_bank_name := NULL;
542 END IF;
543 IF (l_xcrv_rec.customer_bank_branch_name = Okl_Api.G_MISS_CHAR) THEN
544 l_xcrv_rec.customer_bank_branch_name := NULL;
545 END IF;
546 IF (l_xcrv_rec.remittance_bank_name = Okl_Api.G_MISS_CHAR) THEN
547 l_xcrv_rec.remittance_bank_name := NULL;
548 END IF;
549 IF (l_xcrv_rec.remittance_bank_branch_name = Okl_Api.G_MISS_CHAR) THEN
550 l_xcrv_rec.remittance_bank_branch_name := NULL;
551 END IF;
552 IF (l_xcrv_rec.attribute_category = Okl_Api.G_MISS_CHAR) THEN
553 l_xcrv_rec.attribute_category := NULL;
554 END IF;
555 IF (l_xcrv_rec.attribute1 = Okl_Api.G_MISS_CHAR) THEN
556 l_xcrv_rec.attribute1 := NULL;
557 END IF;
558 IF (l_xcrv_rec.attribute2 = Okl_Api.G_MISS_CHAR) THEN
559 l_xcrv_rec.attribute2 := NULL;
560 END IF;
561 IF (l_xcrv_rec.attribute3 = Okl_Api.G_MISS_CHAR) THEN
562 l_xcrv_rec.attribute3 := NULL;
563 END IF;
564 IF (l_xcrv_rec.attribute4 = Okl_Api.G_MISS_CHAR) THEN
565 l_xcrv_rec.attribute4 := NULL;
566 END IF;
567 IF (l_xcrv_rec.attribute5 = Okl_Api.G_MISS_CHAR) THEN
568 l_xcrv_rec.attribute5 := NULL;
569 END IF;
570 IF (l_xcrv_rec.attribute6 = Okl_Api.G_MISS_CHAR) THEN
571 l_xcrv_rec.attribute6 := NULL;
572 END IF;
573 IF (l_xcrv_rec.attribute7 = Okl_Api.G_MISS_CHAR) THEN
574 l_xcrv_rec.attribute7 := NULL;
575 END IF;
576 IF (l_xcrv_rec.attribute8 = Okl_Api.G_MISS_CHAR) THEN
577 l_xcrv_rec.attribute8 := NULL;
578 END IF;
579 IF (l_xcrv_rec.attribute9 = Okl_Api.G_MISS_CHAR) THEN
580 l_xcrv_rec.attribute9 := NULL;
581 END IF;
582 IF (l_xcrv_rec.attribute10 = Okl_Api.G_MISS_CHAR) THEN
583 l_xcrv_rec.attribute10 := NULL;
584 END IF;
585 IF (l_xcrv_rec.attribute11 = Okl_Api.G_MISS_CHAR) THEN
586 l_xcrv_rec.attribute11 := NULL;
587 END IF;
588 IF (l_xcrv_rec.attribute12 = Okl_Api.G_MISS_CHAR) THEN
589 l_xcrv_rec.attribute12 := NULL;
590 END IF;
591 IF (l_xcrv_rec.attribute13 = Okl_Api.G_MISS_CHAR) THEN
592 l_xcrv_rec.attribute13 := NULL;
593 END IF;
594 IF (l_xcrv_rec.attribute14 = Okl_Api.G_MISS_CHAR) THEN
595 l_xcrv_rec.attribute14 := NULL;
596 END IF;
597 IF (l_xcrv_rec.attribute15 = Okl_Api.G_MISS_CHAR) THEN
598 l_xcrv_rec.attribute15 := NULL;
599 END IF;
600 IF (l_xcrv_rec.request_id = Okl_Api.G_MISS_NUM) THEN
601 l_xcrv_rec.request_id := NULL;
602 END IF;
603 IF (l_xcrv_rec.program_application_id = Okl_Api.G_MISS_NUM) THEN
604 l_xcrv_rec.program_application_id := NULL;
605 END IF;
606 IF (l_xcrv_rec.program_id = Okl_Api.G_MISS_NUM) THEN
607 l_xcrv_rec.program_id := NULL;
608 END IF;
609 IF (l_xcrv_rec.program_update_date = Okl_Api.G_MISS_DATE) THEN
610 l_xcrv_rec.program_update_date := NULL;
611 END IF;
612 IF (l_xcrv_rec.org_id = Okl_Api.G_MISS_NUM) THEN
613 l_xcrv_rec.org_id := NULL;
614 END IF;
615 IF (l_xcrv_rec.created_by = Okl_Api.G_MISS_NUM) THEN
616 l_xcrv_rec.created_by := NULL;
617 END IF;
618 IF (l_xcrv_rec.creation_date = Okl_Api.G_MISS_DATE) THEN
619 l_xcrv_rec.creation_date := NULL;
620 END IF;
621 IF (l_xcrv_rec.last_updated_by = Okl_Api.G_MISS_NUM) THEN
622 l_xcrv_rec.last_updated_by := NULL;
623 END IF;
624 IF (l_xcrv_rec.last_update_date = Okl_Api.G_MISS_DATE) THEN
625 l_xcrv_rec.last_update_date := NULL;
626 END IF;
627 IF (l_xcrv_rec.last_update_login = Okl_Api.G_MISS_NUM) THEN
628 l_xcrv_rec.last_update_login := NULL;
629 END IF;
630 -- New column receipt type and fully applied added.
631 IF (l_xcrv_rec.receipt_type = Okl_Api.G_MISS_CHAR) THEN
632 l_xcrv_rec.receipt_type := NULL;
633 END IF;
634 IF (l_xcrv_rec.fully_applied_flag = Okl_Api.G_MISS_CHAR) THEN
635 l_xcrv_rec.fully_applied_flag := NULL;
636 END IF;
637 IF (l_xcrv_rec.expired_flag = Okl_Api.G_MISS_CHAR) THEN
638 l_xcrv_rec.expired_flag := NULL;
639 END IF;
640
641 RETURN(l_xcrv_rec);
642 END null_out_defaults;
643
644
645 ---------------------------------------------------------------------------
646 -- POST TAPI CODE 04/17/2001
647 ---------------------------------------------------------------------------
648
649 -- Start of comments
650 -- Procedure Name : validate_id
651 -- Description :
652 -- Business Rules :
653 -- Parameters :
654 -- Version : 1.0
655 -- End of comments
656
657 PROCEDURE validate_id(p_xcrv_rec IN xcrv_rec_type,
658 x_return_status OUT NOCOPY VARCHAR2) IS
659
660 BEGIN
661 x_return_status:=Okl_Api.G_RET_STS_SUCCESS;
662 --check not null
663 IF (p_xcrv_rec.id IS NULL) OR (p_xcrv_rec.id = Okl_Api.G_MISS_NUM) THEN
664 x_return_status:=Okl_Api.G_RET_STS_ERROR;
665 --set error message in message stack
666 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
667 p_msg_name => G_REQUIRED_VALUE,
668 p_token1 => G_COL_NAME_TOKEN,
669 p_token1_value => 'ID');
670 -- RAISE G_EXCEPTION_HALT_VALIDATION;
671 END IF;
672
673 EXCEPTION
674 WHEN G_EXCEPTION_HALT_VALIDATION THEN
675 --just come out with return status
676 NULL;
677 -- other appropriate handlers
678 WHEN OTHERS THEN
679 -- store SQL error message on message stack
680 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
681 p_msg_name => G_UNEXPECTED_ERROR,
682 p_token1 => G_SQLCODE_TOKEN,
683 p_token1_value => SQLCODE,
684 p_token2 => G_SQLERRM_TOKEN,
685 p_token2_value => SQLERRM);
686
687 -- notify UNEXPECTED error
688 x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
689
690 END validate_id;
691
692 -- Start of comments
693 -- Procedure Name : validate_org_id
694 -- Description :
695 -- Business Rules :
696 -- Parameters :
697 -- Version : 1.0
698 -- End of comments
699
700 PROCEDURE validate_org_id (p_xcrv_rec IN xcrv_rec_type,
701
702 x_return_status OUT NOCOPY VARCHAR2) IS
703 BEGIN
704
705 x_return_status := Okl_Api.G_RET_STS_SUCCESS;
706
707 x_return_status := Okl_Util.check_org_id(p_xcrv_rec.org_id);
708
709 END validate_org_id;
710
711 /*
712 -- Start of comments
713 -- Procedure Name : validate_xcb_id
714 -- Description :
715 -- Business Rules :
716 -- Parameters :
717 -- Version : 1.0
718 -- End of comments
719
720 PROCEDURE validate_xcb_id(p_xcrv_rec IN xcrv_rec_type,
721 x_return_status OUT NOCOPY VARCHAR2) IS
722
723 CURSOR l_xcb_id_csr IS
724 SELECT '1'
725 FROM okl_ext_csh_btchs_b
726 WHERE id = p_xcrv_rec.xcb_id;
727
728 l_dummy_var VARCHAR2(1):='0';
729
730 BEGIN
731 x_return_status:=Okl_Api.G_RET_STS_SUCCESS;
732
733 IF p_xcrv_rec.xcb_id IS NOT NULL THEN
734
735 --check FK Relation with okl_trx_csh_batch_b
736 OPEN l_xcb_id_csr;
737 FETCH l_xcb_id_csr INTO l_dummy_var;
738 CLOSE l_xcb_id_csr;
739 IF (l_dummy_var<>'1') THEN
740
741 --Corresponding Column value not found
742 x_return_status:= Okl_Api.G_RET_STS_ERROR;
743 --set error message in message stack
744 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
745 p_msg_name => G_NO_PARENT_RECORD,
746 p_token1 => G_COL_NAME_TOKEN,
747 p_token1_value => 'XCB_ID',
748 p_token2 => G_CHILD_TABLE_TOKEN,
749 p_token2_value => G_VIEW,
750 p_token3 => G_PARENT_TABLE_TOKEN,
751 p_token3_value => 'OKL_EXT_CSH_BTCHS_B');
752 RAISE G_EXCEPTION_HALT_VALIDATION;
753 END IF;
754
755 END IF;
756
757 EXCEPTION
758 WHEN G_EXCEPTION_HALT_VALIDATION THEN
759 --just come out with return status
760 NULL;
761 -- other appropriate handlers
762 WHEN OTHERS THEN
763 -- store SQL error message on message stack
764 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
765 p_msg_name => G_UNEXPECTED_ERROR,
766 p_token1 => G_SQLCODE_TOKEN,
767 p_token1_value => SQLCODE,
768 p_token2 => G_SQLERRM_TOKEN,
769 p_token2_value => SQLERRM);
770
771 -- notify UNEXPECTED error
772 x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
773
774 END validate_xcb_id;
775 */
776 -- Start of comments
777 -- Procedure Name : validate_rct_id
778 -- Description :
779 -- Business Rules :
780 -- Parameters :
781 -- Version : 1.0
782 -- End of comments
783
784 PROCEDURE validate_rct_id(p_xcrv_rec IN xcrv_rec_type,
785 x_return_status OUT NOCOPY VARCHAR2) IS
786
787 CURSOR l_rct_id_csr IS
788 SELECT '1'
789 FROM okl_trx_csh_receipt_b
790 WHERE id = p_xcrv_rec.rct_id;
791
792 l_dummy_var VARCHAR2(1):='0';
793
794 BEGIN
795 x_return_status:=Okl_Api.G_RET_STS_SUCCESS;
796
797 IF p_xcrv_rec.rct_id IS NOT NULL THEN
798
799 --check FK Relation with okl_trx_csh_batch_b
800 OPEN l_rct_id_csr;
801 FETCH l_rct_id_csr INTO l_dummy_var;
802 CLOSE l_rct_id_csr;
803 IF (l_dummy_var<>'1') THEN
804
805 --Corresponding Column value not found
806 x_return_status:= Okl_Api.G_RET_STS_ERROR;
807 --set error message in message stack
808 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
809 p_msg_name => G_NO_PARENT_RECORD,
810 p_token1 => G_COL_NAME_TOKEN,
811 p_token1_value => 'RCT_ID',
812 p_token2 => G_CHILD_TABLE_TOKEN,
813 p_token2_value => G_VIEW,
814 p_token3 => G_PARENT_TABLE_TOKEN,
815 p_token3_value => 'OKL_TRX_CSH_RECEIPT_B');
816 RAISE G_EXCEPTION_HALT_VALIDATION;
817 END IF;
818
819 END IF;
820
821 EXCEPTION
822 WHEN G_EXCEPTION_HALT_VALIDATION THEN
823 --just come out with return status
824 NULL;
825 -- other appropriate handlers
826 WHEN OTHERS THEN
827 -- store SQL error message on message stack
828 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
829 p_msg_name => G_UNEXPECTED_ERROR,
830 p_token1 => G_SQLCODE_TOKEN,
831 p_token1_value => SQLCODE,
832 p_token2 => G_SQLERRM_TOKEN,
833 p_token2_value => SQLERRM);
834
835 -- notify UNEXPECTED error
836 x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
837
838 END validate_rct_id;
839
840 ---------------------------------------------------------------------------
841 -- Start of comments
842 -- Procedure Name : validate_receipt_type
843 -- Description : Receipt type can have only two values 'ADV and 'REG'.
844 -- Business Rules :
845 -- Parameters : p_xcrv_rec, x_return_status
846 -- Version : 1.0
847 -- History : 25-AUG-04 abindal created.
848 -- End of comments
849 ----------------------------------------------------------------------------
850
851 PROCEDURE validate_receipt_type(p_xcrv_rec IN xcrv_rec_type,
852 x_return_status OUT NOCOPY VARCHAR2) IS
853
854 BEGIN
855 x_return_status:=Okl_Api.G_RET_STS_SUCCESS;
856 --check not null
857 IF (p_xcrv_rec.receipt_type <> 'REG') AND (p_xcrv_rec.receipt_type <> 'ADV') THEN
858 x_return_status:=Okl_Api.G_RET_STS_ERROR;
859 --set error message in message stack
860 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
861 p_msg_name => G_USER_MESSAGE,
862 p_token1 => G_COL_NAME_TOKEN,
863 p_token1_value => 'RECEIPT TYPE');
864 RAISE G_EXCEPTION_HALT_VALIDATION;
865 END IF;
866
867 EXCEPTION
868 WHEN G_EXCEPTION_HALT_VALIDATION THEN
869 --just come out with return status
870 NULL;
871 -- other appropriate handlers
872 WHEN OTHERS THEN
873 -- store SQL error message on message stack
874 Okl_Api.SET_MESSAGE(p_app_name => G_APP_NAME,
875 p_msg_name => G_UNEXPECTED_ERROR,
876 p_token1 => G_SQLCODE_TOKEN,
877 p_token1_value => SQLCODE,
878 p_token2 => G_SQLERRM_TOKEN,
879 p_token2_value => SQLERRM);
880
881 -- notify UNEXPECTED error
882 x_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
883
884 END validate_receipt_type;
885
886 ---------------------------------------------------------------------------
887 -- POST TAPI CODE ENDS HERE 04/17/2001
888 ---------------------------------------------------------------------------
889
890 ---------------------------------------------------------------------------
891 -- PROCEDURE Validate_Attributes
892 ---------------------------------------------------------------------------
893 -------------------------------------------------
894 -- Validate_Attributes for:OKL_EXT_CSH_RCPTS_V --
895 -------------------------------------------------
896 FUNCTION Validate_Attributes (
897 p_xcrv_rec IN xcrv_rec_type
898 ) RETURN VARCHAR2 IS
899 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
900 -- Added 04/16/2001 -- Bruno Vaghela
901 x_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
902
903 BEGIN
904
905 --Added 04/17/2001 Bruno Vaghela ---
906
907 validate_id(p_xcrv_rec, x_return_status);
908 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
909 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
910 l_return_status := x_return_status;
911 RAISE G_EXCEPTION_HALT_VALIDATION;
912 ELSE
913 l_return_status := x_return_status; -- record that there was an error
914 END IF;
915 END IF;
916
917 validate_org_id(p_xcrv_rec, x_return_status);
918 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
919 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
920 l_return_status := x_return_status;
921 RAISE G_EXCEPTION_HALT_VALIDATION;
922 ELSE
923 l_return_status := x_return_status; -- record that there was an error
924 END IF;
925 END IF;
926 /*
927 validate_xcb_id(p_xcrv_rec, x_return_status);
928 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
929 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
930 l_return_status := x_return_status;
931 RAISE G_EXCEPTION_HALT_VALIDATION;
932 ELSE
933 l_return_status := x_return_status; -- record that there was an error
934 END IF;
935 END IF;
936 */
937 validate_rct_id(p_xcrv_rec, x_return_status);
938 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
939 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
940 l_return_status := x_return_status;
941 RAISE G_EXCEPTION_HALT_VALIDATION;
942 ELSE
943 l_return_status := x_return_status; -- record that there was an error
944 END IF;
945 END IF;
946
947
948 -- end 04/17/2001 Bruno Vaghela ---
949
950 -- added 05-AUG-04 abindal--
951 validate_receipt_type(p_xcrv_rec, x_return_status);
952 IF (x_return_status <> Okl_Api.G_RET_STS_SUCCESS) THEN
953 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN -- need to leave
954 l_return_status := x_return_status;
955 RAISE G_EXCEPTION_HALT_VALIDATION;
956 ELSE
957 l_return_status := x_return_status; -- record that there was an error
958 END IF;
959 END IF;
960 --end 05-AUG-04 abindal--
961
962
963 IF p_xcrv_rec.id = Okl_Api.G_MISS_NUM OR
964 p_xcrv_rec.id IS NULL
965 THEN
966 Okl_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'id');
967 l_return_status := Okl_Api.G_RET_STS_ERROR;
968 ELSIF p_xcrv_rec.object_version_number = Okl_Api.G_MISS_NUM OR
969 p_xcrv_rec.object_version_number IS NULL
970 THEN
971 Okl_Api.set_message(G_APP_NAME, G_REQUIRED_VALUE,G_COL_NAME_TOKEN,'object_version_number');
972 l_return_status := Okl_Api.G_RET_STS_ERROR;
973 END IF;
974 RETURN(l_return_status);
975 END Validate_Attributes;
976
977 ---------------------------------------------------------------------------
978 -- PROCEDURE Validate_Record
979 ---------------------------------------------------------------------------
980 ---------------------------------------------
981 -- Validate_Record for:OKL_EXT_CSH_RCPTS_V --
982 ---------------------------------------------
983 FUNCTION Validate_Record (
984 p_xcrv_rec IN xcrv_rec_type
985 ) RETURN VARCHAR2 IS
986 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
987 BEGIN
988 RETURN (l_return_status);
989 END Validate_Record;
990
991 ---------------------------------------------------------------------------
992 -- PROCEDURE Migrate
993 ---------------------------------------------------------------------------
994 ---------------------------------------------------------------------------
995 -- Start of comments
996 --
997 -- Function Name : migrate
998 -- Description : This procedure is used for copying the record structure.
999 -- Business Rules :
1000 -- Parameters : p_from, p_to
1001 -- Version : 1.0
1002 -- History : 25-AUG-04 abindal modified to include the two new
1003 -- columns receipt type and fully applied.
1004 -- End of comments
1005 ---------------------------------------------------------------------------
1006
1007 PROCEDURE migrate (
1008 p_from IN xcrv_rec_type,
1009 p_to IN OUT NOCOPY xcr_rec_type
1010 ) IS
1011 BEGIN
1012 p_to.id := p_from.id;
1013 p_to.xcb_id := p_from.xcb_id;
1014 p_to.rct_id := p_from.rct_id;
1015 p_to.icr_id := p_from.icr_id;
1016 p_to.object_version_number := p_from.object_version_number;
1017 p_to.gl_date := p_from.gl_date;
1018 p_to.item_number := p_from.item_number;
1019 p_to.remittance_amount := p_from.remittance_amount;
1020 p_to.currency_code := p_from.currency_code;
1021 p_to.receipt_date := p_from.receipt_date;
1022 p_to.receipt_method := p_from.receipt_method;
1023 p_to.check_number := p_from.check_number;
1024 p_to.customer_number := p_from.customer_number;
1025 p_to.bill_to_location := p_from.bill_to_location;
1026 p_to.exchange_rate_type := p_from.exchange_rate_type;
1027 p_to.exchange_rate_date := p_from.exchange_rate_date;
1028 p_to.exchange_rate := p_from.exchange_rate;
1029 p_to.transit_routing_number := p_from.transit_routing_number;
1030 p_to.account := p_from.account;
1031 p_to.customer_bank_name := p_from.customer_bank_name;
1032 p_to.customer_bank_branch_name := p_from.customer_bank_branch_name;
1033 p_to.remittance_bank_name := p_from.remittance_bank_name;
1034 p_to.remittance_bank_branch_name := p_from.remittance_bank_branch_name;
1035 p_to.request_id := p_from.request_id;
1036 p_to.program_application_id := p_from.program_application_id;
1037 p_to.program_id := p_from.program_id;
1038 p_to.program_update_date := p_from.program_update_date;
1039 p_to.org_id := p_from.org_id;
1040 p_to.attribute_category := p_from.attribute_category;
1041 p_to.attribute1 := p_from.attribute1;
1042 p_to.attribute2 := p_from.attribute2;
1043 p_to.attribute3 := p_from.attribute3;
1044 p_to.attribute4 := p_from.attribute4;
1045 p_to.attribute5 := p_from.attribute5;
1046 p_to.attribute6 := p_from.attribute6;
1047 p_to.attribute7 := p_from.attribute7;
1048 p_to.attribute8 := p_from.attribute8;
1049 p_to.attribute9 := p_from.attribute9;
1050 p_to.attribute10 := p_from.attribute10;
1051 p_to.attribute11 := p_from.attribute11;
1052 p_to.attribute12 := p_from.attribute12;
1053 p_to.attribute13 := p_from.attribute13;
1054 p_to.attribute14 := p_from.attribute14;
1055 p_to.attribute15 := p_from.attribute15;
1056 p_to.created_by := p_from.created_by;
1057 p_to.creation_date := p_from.creation_date;
1058 p_to.last_updated_by := p_from.last_updated_by;
1059 p_to.last_update_date := p_from.last_update_date;
1060 p_to.last_update_login := p_from.last_update_login;
1061 -- New column receipt type and fully applied added.
1062 p_to.receipt_type := p_from.receipt_type;
1063 p_to.fully_applied_flag := p_from.fully_applied_flag;
1064 p_to.expired_flag := p_from.expired_flag;
1065 END migrate;
1066 ---------------------------------------------------------------------------
1067 -- Start of comments
1068 --
1069 -- Function Name : migrate
1070 -- Description : This procedure is used for copying the record structure.
1071 -- Business Rules :
1072 -- Parameters : p_from, p_to
1073 -- Version : 1.0
1074 -- History : 25-AUG-04 abindal modified to include the two new
1075 -- columns receipt type and fully applied.
1076 -- End of comments
1077 ---------------------------------------------------------------------------
1078
1079 PROCEDURE migrate (
1080 p_from IN xcr_rec_type,
1081 p_to IN OUT NOCOPY xcrv_rec_type
1082 ) IS
1083 BEGIN
1084 p_to.id := p_from.id;
1085 p_to.xcb_id := p_from.xcb_id;
1086 p_to.rct_id := p_from.rct_id;
1087 p_to.icr_id := p_from.icr_id;
1088 p_to.object_version_number := p_from.object_version_number;
1089 p_to.gl_date := p_from.gl_date;
1090 p_to.item_number := p_from.item_number;
1091 p_to.remittance_amount := p_from.remittance_amount;
1092 p_to.currency_code := p_from.currency_code;
1093 p_to.receipt_date := p_from.receipt_date;
1094 p_to.receipt_method := p_from.receipt_method;
1095 p_to.check_number := p_from.check_number;
1096 p_to.customer_number := p_from.customer_number;
1097 p_to.bill_to_location := p_from.bill_to_location;
1098 p_to.exchange_rate_type := p_from.exchange_rate_type;
1099 p_to.exchange_rate_date := p_from.exchange_rate_date;
1100 p_to.exchange_rate := p_from.exchange_rate;
1101 p_to.transit_routing_number := p_from.transit_routing_number;
1102 p_to.account := p_from.account;
1103 p_to.customer_bank_name := p_from.customer_bank_name;
1104 p_to.customer_bank_branch_name := p_from.customer_bank_branch_name;
1105 p_to.remittance_bank_name := p_from.remittance_bank_name;
1106 p_to.remittance_bank_branch_name := p_from.remittance_bank_branch_name;
1107 p_to.request_id := p_from.request_id;
1108 p_to.program_application_id := p_from.program_application_id;
1109 p_to.program_id := p_from.program_id;
1110 p_to.program_update_date := p_from.program_update_date;
1111 p_to.org_id := p_from.org_id;
1112 p_to.attribute_category := p_from.attribute_category;
1113 p_to.attribute1 := p_from.attribute1;
1114 p_to.attribute2 := p_from.attribute2;
1115 p_to.attribute3 := p_from.attribute3;
1116 p_to.attribute4 := p_from.attribute4;
1117 p_to.attribute5 := p_from.attribute5;
1118 p_to.attribute6 := p_from.attribute6;
1119 p_to.attribute7 := p_from.attribute7;
1120 p_to.attribute8 := p_from.attribute8;
1121 p_to.attribute9 := p_from.attribute9;
1122 p_to.attribute10 := p_from.attribute10;
1123 p_to.attribute11 := p_from.attribute11;
1124 p_to.attribute12 := p_from.attribute12;
1125 p_to.attribute13 := p_from.attribute13;
1126 p_to.attribute14 := p_from.attribute14;
1127 p_to.attribute15 := p_from.attribute15;
1128 p_to.created_by := p_from.created_by;
1129 p_to.creation_date := p_from.creation_date;
1130 p_to.last_updated_by := p_from.last_updated_by;
1131 p_to.last_update_date := p_from.last_update_date;
1132 p_to.last_update_login := p_from.last_update_login;
1133 -- New column receipt type and fully applied added.
1134 p_to.receipt_type := p_from.receipt_type;
1135 p_to.fully_applied_flag := p_from.fully_applied_flag;
1136 p_to.expired_flag := p_from.expired_flag;
1137 END migrate;
1138 PROCEDURE migrate (
1139 p_from IN xcrv_rec_type,
1140 p_to IN OUT NOCOPY okl_ext_csh_rcpts_tl_rec_type
1141 ) IS
1142 BEGIN
1143 p_to.id := p_from.id;
1144 p_to.sfwt_flag := p_from.sfwt_flag;
1145 p_to.comments := p_from.comments;
1146 p_to.created_by := p_from.created_by;
1147 p_to.creation_date := p_from.creation_date;
1148 p_to.last_updated_by := p_from.last_updated_by;
1149 p_to.last_update_date := p_from.last_update_date;
1150 p_to.last_update_login := p_from.last_update_login;
1151 END migrate;
1152 PROCEDURE migrate (
1153 p_from IN okl_ext_csh_rcpts_tl_rec_type,
1154 p_to IN OUT NOCOPY xcrv_rec_type
1155 ) IS
1156 BEGIN
1157 p_to.id := p_from.id;
1158 p_to.sfwt_flag := p_from.sfwt_flag;
1159 p_to.comments := p_from.comments;
1160 p_to.created_by := p_from.created_by;
1161 p_to.creation_date := p_from.creation_date;
1162 p_to.last_updated_by := p_from.last_updated_by;
1163 p_to.last_update_date := p_from.last_update_date;
1164 p_to.last_update_login := p_from.last_update_login;
1165 END migrate;
1166
1167 ---------------------------------------------------------------------------
1168 -- PROCEDURE validate_row
1169 ---------------------------------------------------------------------------
1170 ------------------------------------------
1171 -- validate_row for:OKL_EXT_CSH_RCPTS_V --
1172 ------------------------------------------
1173 PROCEDURE validate_row(
1174 p_api_version IN NUMBER,
1175 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
1176 x_return_status OUT NOCOPY VARCHAR2,
1177 x_msg_count OUT NOCOPY NUMBER,
1178 x_msg_data OUT NOCOPY VARCHAR2,
1179 p_xcrv_rec IN xcrv_rec_type) IS
1180
1181 l_api_version CONSTANT NUMBER := 1;
1182 l_api_name CONSTANT VARCHAR2(30) := 'V_validate_row';
1183 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1184 l_xcrv_rec xcrv_rec_type := p_xcrv_rec;
1185 l_xcr_rec xcr_rec_type;
1186 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type;
1187 BEGIN
1188 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
1189 G_PKG_NAME,
1190 p_init_msg_list,
1191 l_api_version,
1192 p_api_version,
1193 '_PVT',
1194 x_return_status);
1195 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1196 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1197 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1198 RAISE Okl_Api.G_EXCEPTION_ERROR;
1199 END IF;
1200 --- Validate all non-missing attributes (Item Level Validation)
1201 l_return_status := Validate_Attributes(l_xcrv_rec);
1202 --- If any errors happen abort API
1203 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1204 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1205 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1206 RAISE Okl_Api.G_EXCEPTION_ERROR;
1207 END IF;
1208 -- l_return_status := Validate_Record(l_xcrv_rec);
1209 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1210 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1211 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1212 RAISE Okl_Api.G_EXCEPTION_ERROR;
1213 END IF;
1214 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1215 EXCEPTION
1216 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1217 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1218 (
1219 l_api_name,
1220 G_PKG_NAME,
1221 'Okl_API.G_RET_STS_ERROR',
1222 x_msg_count,
1223 x_msg_data,
1224 '_PVT'
1225 );
1226 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1227 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1228 (
1229 l_api_name,
1230 G_PKG_NAME,
1231 'Okl_API.G_RET_STS_UNEXP_ERROR',
1232 x_msg_count,
1233 x_msg_data,
1234 '_PVT'
1235 );
1236 WHEN OTHERS THEN
1237 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1238 (
1239 l_api_name,
1240 G_PKG_NAME,
1241 'OTHERS',
1242 x_msg_count,
1243 x_msg_data,
1244 '_PVT'
1245 );
1246 END validate_row;
1247 ------------------------------------------
1248 -- PL/SQL TBL validate_row for:XCRV_TBL --
1249 ------------------------------------------
1250 PROCEDURE validate_row(
1251 p_api_version IN NUMBER,
1252 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
1253 x_return_status OUT NOCOPY VARCHAR2,
1254 x_msg_count OUT NOCOPY NUMBER,
1255 x_msg_data OUT NOCOPY VARCHAR2,
1256 p_xcrv_tbl IN xcrv_tbl_type) IS
1257
1258 l_api_version CONSTANT NUMBER := 1;
1259 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_validate_row';
1260 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1261 i NUMBER := 0;
1262 -- Begin Post-Generation Change
1263 -- overall error status
1264 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1265 -- End Post-Generation Change
1266 BEGIN
1267 Okl_Api.init_msg_list(p_init_msg_list);
1268 -- Make sure PL/SQL table has records in it before passing
1269 IF (p_xcrv_tbl.COUNT > 0) THEN
1270 i := p_xcrv_tbl.FIRST;
1271 LOOP
1272 validate_row (
1273 p_api_version => p_api_version,
1274 p_init_msg_list => Okl_Api.G_FALSE,
1275 x_return_status => x_return_status,
1276 x_msg_count => x_msg_count,
1277 x_msg_data => x_msg_data,
1278 p_xcrv_rec => p_xcrv_tbl(i));
1279
1280 -- Begin Post-Generation Change
1281 -- store the highest degree of error
1282 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
1283 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
1284 l_overall_status := x_return_status;
1285 END IF;
1286 END IF;
1287 -- End Post-Generation Change
1288
1289 EXIT WHEN (i = p_xcrv_tbl.LAST);
1290 i := p_xcrv_tbl.NEXT(i);
1291 END LOOP;
1292
1293 -- Begin Post-Generation Change
1294 -- return overall status
1295 x_return_status := l_overall_status;
1296 -- End Post-Generation Change
1297
1298 END IF;
1299 EXCEPTION
1300 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1301 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1302 (
1303 l_api_name,
1304 G_PKG_NAME,
1305 'Okl_API.G_RET_STS_ERROR',
1306 x_msg_count,
1307 x_msg_data,
1308 '_PVT'
1309 );
1310 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1311 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1312 (
1313 l_api_name,
1314 G_PKG_NAME,
1315 'Okl_API.G_RET_STS_UNEXP_ERROR',
1316 x_msg_count,
1317 x_msg_data,
1318 '_PVT'
1319 );
1320 WHEN OTHERS THEN
1321 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1322 (
1323 l_api_name,
1324 G_PKG_NAME,
1325 'OTHERS',
1326 x_msg_count,
1327 x_msg_data,
1328 '_PVT'
1329 );
1330 END validate_row;
1331
1332 ---------------------------------------------------------------------------
1333 -- PROCEDURE insert_row
1334 ---------------------------------------------------------------------------
1335 ----------------------------------------
1336 -- insert_row for:OKL_EXT_CSH_RCPTS_B --
1337 ----------------------------------------
1338 ---------------------------------------------------------------------------
1339 -- Start of comments
1340 --
1341 -- Procedure Name : insert_row
1342 -- Description : Inserts the row in the table Okl_Ext_Csh_Rcpts_B.
1343 -- Business Rules :
1344 -- Parameters : p_init_msg_list, x_return_status, x_msg_count, x_msg_data,
1345 -- p_xcr_rec, x_xcr_rec
1346 -- Version : 1.0
1347 -- History : 25-AUG-04 abindal modified to include the two new
1348 -- columns receipt type and fully applied.
1349 -- End of comments
1350 ---------------------------------------------------------------------------
1351
1352 PROCEDURE insert_row(
1353 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
1354 x_return_status OUT NOCOPY VARCHAR2,
1355 x_msg_count OUT NOCOPY NUMBER,
1356 x_msg_data OUT NOCOPY VARCHAR2,
1357 p_xcr_rec IN xcr_rec_type,
1358 x_xcr_rec OUT NOCOPY xcr_rec_type) IS
1359
1360 l_api_version CONSTANT NUMBER := 1;
1361 l_api_name CONSTANT VARCHAR2(30) := 'B_insert_row';
1362 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1363 l_xcr_rec xcr_rec_type := p_xcr_rec;
1364 l_def_xcr_rec xcr_rec_type;
1365 --------------------------------------------
1366 -- Set_Attributes for:OKL_EXT_CSH_RCPTS_B --
1367 --------------------------------------------
1368
1369 FUNCTION Set_Attributes (
1370 p_xcr_rec IN xcr_rec_type,
1371 x_xcr_rec OUT NOCOPY xcr_rec_type
1372 ) RETURN VARCHAR2 IS
1373 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1374 BEGIN
1375 x_xcr_rec := p_xcr_rec;
1376 RETURN(l_return_status);
1377 END Set_Attributes;
1378 BEGIN
1379 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
1380 p_init_msg_list,
1381 '_PVT',
1382 x_return_status);
1383 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1384 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1385 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1386 RAISE Okl_Api.G_EXCEPTION_ERROR;
1387 END IF;
1388 --- Setting item attributes
1389 l_return_status := Set_Attributes(
1390 p_xcr_rec, -- IN
1391 l_xcr_rec); -- OUT
1392 --- If any errors happen abort API
1393 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1394 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1395 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1396 RAISE Okl_Api.G_EXCEPTION_ERROR;
1397 END IF;
1398 INSERT INTO OKL_EXT_CSH_RCPTS_B(
1399 id,
1400 xcb_id,
1401 rct_id,
1402 icr_id,
1403 object_version_number,
1404 gl_date,
1405 item_number,
1406 remittance_amount,
1407 currency_code,
1408 receipt_date,
1409 receipt_method,
1410 check_number,
1411 customer_number,
1412 bill_to_location,
1413 exchange_rate_type,
1414 exchange_rate_date,
1415 exchange_rate,
1416 transit_routing_number,
1417 account,
1418 customer_bank_name,
1419 customer_bank_branch_name,
1420 remittance_bank_name,
1421 remittance_bank_branch_name,
1422 request_id,
1423 program_application_id,
1424 program_id,
1425 program_update_date,
1426 org_id,
1427 attribute_category,
1428 attribute1,
1429 attribute2,
1430 attribute3,
1431 attribute4,
1432 attribute5,
1433 attribute6,
1434 attribute7,
1435 attribute8,
1436 attribute9,
1437 attribute10,
1438 attribute11,
1439 attribute12,
1440 attribute13,
1441 attribute14,
1442 attribute15,
1443 created_by,
1444 creation_date,
1445 last_updated_by,
1446 last_update_date,
1447 last_update_login,
1448 -- New column receipt type and fully applied added.
1449 receipt_type,
1450 fully_applied_flag,
1451 expired_flag)
1452 VALUES (
1453 l_xcr_rec.id,
1454 l_xcr_rec.xcb_id,
1455 l_xcr_rec.rct_id,
1456 l_xcr_rec.icr_id,
1457 l_xcr_rec.object_version_number,
1458 l_xcr_rec.gl_date,
1459 l_xcr_rec.item_number,
1460 l_xcr_rec.remittance_amount,
1461 l_xcr_rec.currency_code,
1462 l_xcr_rec.receipt_date,
1463 l_xcr_rec.receipt_method,
1464 l_xcr_rec.check_number,
1465 l_xcr_rec.customer_number,
1466 l_xcr_rec.bill_to_location,
1467 l_xcr_rec.exchange_rate_type,
1468 l_xcr_rec.exchange_rate_date,
1469 l_xcr_rec.exchange_rate,
1470 l_xcr_rec.transit_routing_number,
1471 l_xcr_rec.account,
1472 l_xcr_rec.customer_bank_name,
1473 l_xcr_rec.customer_bank_branch_name,
1474 l_xcr_rec.remittance_bank_name,
1475 l_xcr_rec.remittance_bank_branch_name,
1476 l_xcr_rec.request_id,
1477 l_xcr_rec.program_application_id,
1478 l_xcr_rec.program_id,
1479 l_xcr_rec.program_update_date,
1480 l_xcr_rec.org_id,
1481 l_xcr_rec.attribute_category,
1482 l_xcr_rec.attribute1,
1483 l_xcr_rec.attribute2,
1484 l_xcr_rec.attribute3,
1485 l_xcr_rec.attribute4,
1486 l_xcr_rec.attribute5,
1487 l_xcr_rec.attribute6,
1488 l_xcr_rec.attribute7,
1489 l_xcr_rec.attribute8,
1490 l_xcr_rec.attribute9,
1491 l_xcr_rec.attribute10,
1492 l_xcr_rec.attribute11,
1493 l_xcr_rec.attribute12,
1494 l_xcr_rec.attribute13,
1495 l_xcr_rec.attribute14,
1496 l_xcr_rec.attribute15,
1497 l_xcr_rec.created_by,
1498 l_xcr_rec.creation_date,
1499 l_xcr_rec.last_updated_by,
1500 l_xcr_rec.last_update_date,
1501 l_xcr_rec.last_update_login,
1502 -- New column receipt type and fully applied added.
1503 l_xcr_rec.receipt_type,
1504 l_xcr_rec.fully_applied_flag,
1505 l_xcr_rec.expired_flag);
1506 -- Set OUT values
1507 x_xcr_rec := l_xcr_rec;
1508 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1509 EXCEPTION
1510 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1511 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1512 (
1513 l_api_name,
1514 G_PKG_NAME,
1515 'Okl_API.G_RET_STS_ERROR',
1516 x_msg_count,
1517 x_msg_data,
1518 '_PVT'
1519 );
1520 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1521 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1522 (
1523 l_api_name,
1524 G_PKG_NAME,
1525 'Okl_API.G_RET_STS_UNEXP_ERROR',
1526 x_msg_count,
1527 x_msg_data,
1528 '_PVT'
1529 );
1530 WHEN OTHERS THEN
1531 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1532 (
1533 l_api_name,
1534 G_PKG_NAME,
1535 'OTHERS',
1536 x_msg_count,
1537 x_msg_data,
1538 '_PVT'
1539 );
1540 END insert_row;
1541 -----------------------------------------
1542 -- insert_row for:OKL_EXT_CSH_RCPTS_TL --
1543 -----------------------------------------
1544 PROCEDURE insert_row(
1545 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
1546 x_return_status OUT NOCOPY VARCHAR2,
1547 x_msg_count OUT NOCOPY NUMBER,
1548 x_msg_data OUT NOCOPY VARCHAR2,
1549 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type,
1550 x_okl_ext_csh_rcpts_tl_rec OUT NOCOPY okl_ext_csh_rcpts_tl_rec_type) IS
1551
1552 l_api_version CONSTANT NUMBER := 1;
1553 l_api_name CONSTANT VARCHAR2(30) := 'TL_insert_row';
1554 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1555 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type := p_okl_ext_csh_rcpts_tl_rec;
1556 ldefoklextcshrcptstlrec okl_ext_csh_rcpts_tl_rec_type;
1557 CURSOR get_languages IS
1558 SELECT *
1559 FROM FND_LANGUAGES
1560 WHERE INSTALLED_FLAG IN ('I', 'B');
1561 ---------------------------------------------
1562 -- Set_Attributes for:OKL_EXT_CSH_RCPTS_TL --
1563 ---------------------------------------------
1564 FUNCTION Set_Attributes (
1565 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type,
1566 x_okl_ext_csh_rcpts_tl_rec OUT NOCOPY okl_ext_csh_rcpts_tl_rec_type
1567 ) RETURN VARCHAR2 IS
1568 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1569 BEGIN
1570 x_okl_ext_csh_rcpts_tl_rec := p_okl_ext_csh_rcpts_tl_rec;
1571 x_okl_ext_csh_rcpts_tl_rec.LANGUAGE := USERENV('LANG');
1572 x_okl_ext_csh_rcpts_tl_rec.SOURCE_LANG := USERENV('LANG');
1573 RETURN(l_return_status);
1574 END Set_Attributes;
1575 BEGIN
1576 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
1577 p_init_msg_list,
1578 '_PVT',
1579 x_return_status);
1580 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1581 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1582 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1583 RAISE Okl_Api.G_EXCEPTION_ERROR;
1584 END IF;
1585 --- Setting item attributes
1586 l_return_status := Set_Attributes(
1587 p_okl_ext_csh_rcpts_tl_rec, -- IN
1588 l_okl_ext_csh_rcpts_tl_rec); -- OUT
1589 --- If any errors happen abort API
1590 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1591 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1592 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1593 RAISE Okl_Api.G_EXCEPTION_ERROR;
1594 END IF;
1595 FOR l_lang_rec IN get_languages LOOP
1596 l_okl_ext_csh_rcpts_tl_rec.LANGUAGE := l_lang_rec.language_code;
1597 INSERT INTO OKL_EXT_CSH_RCPTS_TL(
1598 id,
1599 LANGUAGE,
1600 source_lang,
1601 sfwt_flag,
1602 comments,
1603 created_by,
1604 creation_date,
1605 last_updated_by,
1606 last_update_date,
1607 last_update_login)
1608 VALUES (
1609 l_okl_ext_csh_rcpts_tl_rec.id,
1610 l_okl_ext_csh_rcpts_tl_rec.LANGUAGE,
1611 l_okl_ext_csh_rcpts_tl_rec.source_lang,
1612 l_okl_ext_csh_rcpts_tl_rec.sfwt_flag,
1613 l_okl_ext_csh_rcpts_tl_rec.comments,
1614 l_okl_ext_csh_rcpts_tl_rec.created_by,
1615 l_okl_ext_csh_rcpts_tl_rec.creation_date,
1616 l_okl_ext_csh_rcpts_tl_rec.last_updated_by,
1617 l_okl_ext_csh_rcpts_tl_rec.last_update_date,
1618 l_okl_ext_csh_rcpts_tl_rec.last_update_login);
1619 END LOOP;
1620 -- Set OUT values
1621 x_okl_ext_csh_rcpts_tl_rec := l_okl_ext_csh_rcpts_tl_rec;
1622 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1623 EXCEPTION
1624 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1625 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1626 (
1627 l_api_name,
1628 G_PKG_NAME,
1629 'Okl_API.G_RET_STS_ERROR',
1630 x_msg_count,
1631 x_msg_data,
1632 '_PVT'
1633 );
1634 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1635 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1636 (
1637 l_api_name,
1638 G_PKG_NAME,
1639 'Okl_API.G_RET_STS_UNEXP_ERROR',
1640 x_msg_count,
1641 x_msg_data,
1642 '_PVT'
1643 );
1644 WHEN OTHERS THEN
1645 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1646 (
1647 l_api_name,
1648 G_PKG_NAME,
1649 'OTHERS',
1650 x_msg_count,
1651 x_msg_data,
1652 '_PVT'
1653 );
1654 END insert_row;
1655 ----------------------------------------
1656 -- insert_row for:OKL_EXT_CSH_RCPTS_V --
1657 ----------------------------------------
1658 PROCEDURE insert_row(
1659 p_api_version IN NUMBER,
1660 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
1661 x_return_status OUT NOCOPY VARCHAR2,
1662 x_msg_count OUT NOCOPY NUMBER,
1663 x_msg_data OUT NOCOPY VARCHAR2,
1664 p_xcrv_rec IN xcrv_rec_type,
1665 x_xcrv_rec OUT NOCOPY xcrv_rec_type) IS
1666
1667 l_api_version CONSTANT NUMBER := 1;
1668 l_api_name CONSTANT VARCHAR2(30) := 'V_insert_row';
1669 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1670 l_xcrv_rec xcrv_rec_type;
1671 l_def_xcrv_rec xcrv_rec_type;
1672 l_xcr_rec xcr_rec_type;
1673 lx_xcr_rec xcr_rec_type;
1674 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type;
1675 lx_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type;
1676 -------------------------------
1677 -- FUNCTION fill_who_columns --
1678 -------------------------------
1679 FUNCTION fill_who_columns (
1680 p_xcrv_rec IN xcrv_rec_type
1681 ) RETURN xcrv_rec_type IS
1682 l_xcrv_rec xcrv_rec_type := p_xcrv_rec;
1683 BEGIN
1684 l_xcrv_rec.CREATION_DATE := SYSDATE;
1685 l_xcrv_rec.CREATED_BY := Fnd_Global.USER_ID;
1686 l_xcrv_rec.LAST_UPDATE_DATE := l_xcrv_rec.CREATION_DATE;
1687 l_xcrv_rec.LAST_UPDATED_BY := Fnd_Global.USER_ID;
1688 l_xcrv_rec.LAST_UPDATE_LOGIN := Fnd_Global.LOGIN_ID;
1689 RETURN(l_xcrv_rec);
1690 END fill_who_columns;
1691 --------------------------------------------
1692 -- Set_Attributes for:OKL_EXT_CSH_RCPTS_V --
1693 --------------------------------------------
1694 FUNCTION Set_Attributes (
1695 p_xcrv_rec IN xcrv_rec_type,
1696 x_xcrv_rec OUT NOCOPY xcrv_rec_type
1697 ) RETURN VARCHAR2 IS
1698 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1699 BEGIN
1700 x_xcrv_rec := p_xcrv_rec;
1701 x_xcrv_rec.OBJECT_VERSION_NUMBER := 1;
1702 x_xcrv_rec.SFWT_FLAG := 'N';
1703 RETURN(l_return_status);
1704
1705 -- POST TAPI GENERATED CODE BEGINS 04/25/2001 Bruno.
1706
1707 IF (x_xcrv_rec.request_id IS NULL OR x_xcrv_rec.request_id = Okl_Api.G_MISS_NUM) THEN
1708 SELECT DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,Fnd_Global.CONC_REQUEST_ID),
1709 DECODE(Fnd_Global.PROG_APPL_ID,-1,NULL,Fnd_Global.PROG_APPL_ID),
1710 DECODE(Fnd_Global.CONC_PROGRAM_ID,-1,NULL,Fnd_Global.CONC_PROGRAM_ID),
1711 DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,SYSDATE)
1712 INTO
1713 x_xcrv_rec.request_id,
1714 x_xcrv_rec.program_application_id,
1715 x_xcrv_rec.program_id,
1716 x_xcrv_rec.program_update_date
1717 FROM dual;
1718 END IF;
1719
1720 -- POST TAPI GENERATED CODE ENDS 04/25/2001 Bruno.
1721
1722 END Set_Attributes;
1723 BEGIN
1724
1725 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
1726 G_PKG_NAME,
1727 p_init_msg_list,
1728 l_api_version,
1729 p_api_version,
1730 '_PVT',
1731 x_return_status);
1732
1733
1734 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1735 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1736 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1737 RAISE Okl_Api.G_EXCEPTION_ERROR;
1738 END IF;
1739
1740 l_xcrv_rec := null_out_defaults(p_xcrv_rec);
1741 -- Set primary key value
1742 l_xcrv_rec.ID := get_seq_id;
1743 --- Setting item attributes
1744 l_return_status := Set_Attributes(
1745 l_xcrv_rec, -- IN
1746 l_def_xcrv_rec); -- OUT
1747 --- If any errors happen abort API
1748 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1749 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1750 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1751 RAISE Okl_Api.G_EXCEPTION_ERROR;
1752 END IF;
1753 l_def_xcrv_rec := fill_who_columns(l_def_xcrv_rec);
1754 --- Validate all non-missing attributes (Item Level Validation)
1755 l_return_status := Validate_Attributes(l_def_xcrv_rec);
1756 --- If any errors happen abort API
1757 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1758 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1759 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1760 RAISE Okl_Api.G_EXCEPTION_ERROR;
1761 END IF;
1762 l_return_status := Validate_Record(l_def_xcrv_rec);
1763 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1764 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1765 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1766 RAISE Okl_Api.G_EXCEPTION_ERROR;
1767 END IF;
1768
1769 --------------------------------------
1770 -- Move VIEW record to "Child" records
1771 --------------------------------------
1772 migrate(l_def_xcrv_rec, l_xcr_rec);
1773 migrate(l_def_xcrv_rec, l_okl_ext_csh_rcpts_tl_rec);
1774 --------------------------------------------
1775 -- Call the INSERT_ROW for each child record
1776 --------------------------------------------
1777 insert_row(
1778 p_init_msg_list,
1779 x_return_status,
1780 x_msg_count,
1781 x_msg_data,
1782 l_xcr_rec,
1783 lx_xcr_rec
1784 );
1785
1786 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1787 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1788 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1789 RAISE Okl_Api.G_EXCEPTION_ERROR;
1790 END IF;
1791 migrate(lx_xcr_rec, l_def_xcrv_rec);
1792 insert_row(
1793 p_init_msg_list,
1794 x_return_status,
1795 x_msg_count,
1796 x_msg_data,
1797 l_okl_ext_csh_rcpts_tl_rec,
1798 lx_okl_ext_csh_rcpts_tl_rec
1799 );
1800 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1801 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1802 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1803 RAISE Okl_Api.G_EXCEPTION_ERROR;
1804 END IF;
1805 migrate(lx_okl_ext_csh_rcpts_tl_rec, l_def_xcrv_rec);
1806 -- Set OUT values
1807 x_xcrv_rec := l_def_xcrv_rec;
1808 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
1809 EXCEPTION
1810 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1811 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1812 (
1813 l_api_name,
1814 G_PKG_NAME,
1815 'Okl_API.G_RET_STS_ERROR',
1816 x_msg_count,
1817 x_msg_data,
1818 '_PVT'
1819 );
1820 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1821 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1822 (
1823 l_api_name,
1824 G_PKG_NAME,
1825 'Okl_API.G_RET_STS_UNEXP_ERROR',
1826 x_msg_count,
1827 x_msg_data,
1828 '_PVT'
1829 );
1830 WHEN OTHERS THEN
1831 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1832 (
1833 l_api_name,
1834 G_PKG_NAME,
1835 'OTHERS',
1836 x_msg_count,
1837 x_msg_data,
1838 '_PVT'
1839 );
1840 END insert_row;
1841 ----------------------------------------
1842 -- PL/SQL TBL insert_row for:XCRV_TBL --
1843 ----------------------------------------
1844 PROCEDURE insert_row(
1845 p_api_version IN NUMBER,
1846 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
1847 x_return_status OUT NOCOPY VARCHAR2,
1848 x_msg_count OUT NOCOPY NUMBER,
1849 x_msg_data OUT NOCOPY VARCHAR2,
1850 p_xcrv_tbl IN xcrv_tbl_type,
1851 x_xcrv_tbl OUT NOCOPY xcrv_tbl_type) IS
1852
1853 l_api_version CONSTANT NUMBER := 1;
1854 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_insert_row';
1855 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1856 i NUMBER := 0;
1857 -- Begin Post-Generation Change
1858 -- overall error status
1859 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1860 -- End Post-Generation Change
1861 BEGIN
1862 Okl_Api.init_msg_list(p_init_msg_list);
1863 -- Make sure PL/SQL table has records in it before passing
1864 IF (p_xcrv_tbl.COUNT > 0) THEN
1865 i := p_xcrv_tbl.FIRST;
1866 LOOP
1867 insert_row (
1868 p_api_version => p_api_version,
1869 p_init_msg_list => Okl_Api.G_FALSE,
1870 x_return_status => x_return_status,
1871 x_msg_count => x_msg_count,
1872 x_msg_data => x_msg_data,
1873 p_xcrv_rec => p_xcrv_tbl(i),
1874 x_xcrv_rec => x_xcrv_tbl(i));
1875
1876 -- Begin Post-Generation Change
1877 -- store the highest degree of error
1878 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
1879 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
1880 l_overall_status := x_return_status;
1881 END IF;
1882 END IF;
1883 -- End Post-Generation Change
1884
1885 EXIT WHEN (i = p_xcrv_tbl.LAST);
1886 i := p_xcrv_tbl.NEXT(i);
1887 END LOOP;
1888
1889 -- Begin Post-Generation Change
1890 -- return overall status
1891 x_return_status := l_overall_status;
1892 -- End Post-Generation Change
1893
1894 END IF;
1895 EXCEPTION
1896 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
1897 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
1898 (
1899 l_api_name,
1900 G_PKG_NAME,
1901 'Okl_API.G_RET_STS_ERROR',
1902 x_msg_count,
1903 x_msg_data,
1904 '_PVT'
1905 );
1906 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
1907 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1908 (
1909 l_api_name,
1910 G_PKG_NAME,
1911 'Okl_API.G_RET_STS_UNEXP_ERROR',
1912 x_msg_count,
1913 x_msg_data,
1914 '_PVT'
1915 );
1916 WHEN OTHERS THEN
1917 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
1918 (
1919 l_api_name,
1920 G_PKG_NAME,
1921 'OTHERS',
1922 x_msg_count,
1923 x_msg_data,
1924 '_PVT'
1925 );
1926 END insert_row;
1927
1928 ---------------------------------------------------------------------------
1929 -- PROCEDURE lock_row
1930 ---------------------------------------------------------------------------
1931 --------------------------------------
1932 -- lock_row for:OKL_EXT_CSH_RCPTS_B --
1933 --------------------------------------
1934 PROCEDURE lock_row(
1935 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
1936 x_return_status OUT NOCOPY VARCHAR2,
1937 x_msg_count OUT NOCOPY NUMBER,
1938 x_msg_data OUT NOCOPY VARCHAR2,
1939 p_xcr_rec IN xcr_rec_type) IS
1940
1941 E_Resource_Busy EXCEPTION;
1942 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
1943 CURSOR lock_csr (p_xcr_rec IN xcr_rec_type) IS
1944 SELECT OBJECT_VERSION_NUMBER
1945 FROM OKL_EXT_CSH_RCPTS_B
1946 WHERE ID = p_xcr_rec.id
1947 AND OBJECT_VERSION_NUMBER = p_xcr_rec.object_version_number
1948 FOR UPDATE OF OBJECT_VERSION_NUMBER NOWAIT;
1949
1950 CURSOR lchk_csr (p_xcr_rec IN xcr_rec_type) IS
1951 SELECT OBJECT_VERSION_NUMBER
1952 FROM OKL_EXT_CSH_RCPTS_B
1953 WHERE ID = p_xcr_rec.id;
1954 l_api_version CONSTANT NUMBER := 1;
1955 l_api_name CONSTANT VARCHAR2(30) := 'B_lock_row';
1956 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
1957 l_object_version_number OKL_EXT_CSH_RCPTS_B.OBJECT_VERSION_NUMBER%TYPE;
1958 lc_object_version_number OKL_EXT_CSH_RCPTS_B.OBJECT_VERSION_NUMBER%TYPE;
1959 l_row_notfound BOOLEAN := FALSE;
1960 lc_row_notfound BOOLEAN := FALSE;
1961 BEGIN
1962 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
1963 p_init_msg_list,
1964 '_PVT',
1965 x_return_status);
1966 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
1967 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
1968 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
1969 RAISE Okl_Api.G_EXCEPTION_ERROR;
1970 END IF;
1971 BEGIN
1972 OPEN lock_csr(p_xcr_rec);
1973 FETCH lock_csr INTO l_object_version_number;
1974 l_row_notfound := lock_csr%NOTFOUND;
1975 CLOSE lock_csr;
1976 EXCEPTION
1977 WHEN E_Resource_Busy THEN
1978 IF (lock_csr%ISOPEN) THEN
1979 CLOSE lock_csr;
1980 END IF;
1981 Okl_Api.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
1982 RAISE App_Exceptions.RECORD_LOCK_EXCEPTION;
1983 END;
1984
1985 IF ( l_row_notfound ) THEN
1986 OPEN lchk_csr(p_xcr_rec);
1987 FETCH lchk_csr INTO lc_object_version_number;
1988 lc_row_notfound := lchk_csr%NOTFOUND;
1989 CLOSE lchk_csr;
1990 END IF;
1991 IF (lc_row_notfound) THEN
1992 Okl_Api.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
1993 RAISE Okl_Api.G_EXCEPTION_ERROR;
1994 ELSIF lc_object_version_number > p_xcr_rec.object_version_number THEN
1995 Okl_Api.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1996 RAISE Okl_Api.G_EXCEPTION_ERROR;
1997 ELSIF lc_object_version_number <> p_xcr_rec.object_version_number THEN
1998 Okl_Api.set_message(G_FND_APP,G_FORM_RECORD_CHANGED);
1999 RAISE Okl_Api.G_EXCEPTION_ERROR;
2000 ELSIF lc_object_version_number = -1 THEN
2001 Okl_Api.set_message(G_APP_NAME,G_RECORD_LOGICALLY_DELETED);
2002 RAISE Okl_Api.G_EXCEPTION_ERROR;
2003 END IF;
2004 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2005 EXCEPTION
2006 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2007 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2008 (
2009 l_api_name,
2010 G_PKG_NAME,
2011 'Okl_API.G_RET_STS_ERROR',
2012 x_msg_count,
2013 x_msg_data,
2014 '_PVT'
2015 );
2016 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2017 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2018 (
2019 l_api_name,
2020 G_PKG_NAME,
2021 'Okl_API.G_RET_STS_UNEXP_ERROR',
2022 x_msg_count,
2023 x_msg_data,
2024 '_PVT'
2025 );
2026 WHEN OTHERS THEN
2027 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2028 (
2029 l_api_name,
2030 G_PKG_NAME,
2031 'OTHERS',
2032 x_msg_count,
2033 x_msg_data,
2034 '_PVT'
2035 );
2036 END lock_row;
2037 ---------------------------------------
2038 -- lock_row for:OKL_EXT_CSH_RCPTS_TL --
2039 ---------------------------------------
2040 PROCEDURE lock_row(
2041 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
2042 x_return_status OUT NOCOPY VARCHAR2,
2043 x_msg_count OUT NOCOPY NUMBER,
2044 x_msg_data OUT NOCOPY VARCHAR2,
2045 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type) IS
2046
2047 E_Resource_Busy EXCEPTION;
2048 PRAGMA EXCEPTION_INIT(E_Resource_Busy, -00054);
2049 CURSOR lock_csr (p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type) IS
2050 SELECT *
2051 FROM OKL_EXT_CSH_RCPTS_TL
2052 WHERE ID = p_okl_ext_csh_rcpts_tl_rec.id
2053 FOR UPDATE NOWAIT;
2054
2055 l_api_version CONSTANT NUMBER := 1;
2056 l_api_name CONSTANT VARCHAR2(30) := 'TL_lock_row';
2057 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2058 l_lock_var lock_csr%ROWTYPE;
2059 l_row_notfound BOOLEAN := FALSE;
2060 lc_row_notfound BOOLEAN := FALSE;
2061 BEGIN
2062 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
2063 p_init_msg_list,
2064 '_PVT',
2065 x_return_status);
2066 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2067 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2068 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2069 RAISE Okl_Api.G_EXCEPTION_ERROR;
2070 END IF;
2071 BEGIN
2072 OPEN lock_csr(p_okl_ext_csh_rcpts_tl_rec);
2073 FETCH lock_csr INTO l_lock_var;
2074 l_row_notfound := lock_csr%NOTFOUND;
2075 CLOSE lock_csr;
2076 EXCEPTION
2077 WHEN E_Resource_Busy THEN
2078 IF (lock_csr%ISOPEN) THEN
2079 CLOSE lock_csr;
2080 END IF;
2081 Okl_Api.set_message(G_FND_APP,G_FORM_UNABLE_TO_RESERVE_REC);
2082 RAISE App_Exceptions.RECORD_LOCK_EXCEPTION;
2083 END;
2084
2085 IF ( l_row_notfound ) THEN
2086 Okl_Api.set_message(G_FND_APP,G_FORM_RECORD_DELETED);
2087 RAISE Okl_Api.G_EXCEPTION_ERROR;
2088 END IF;
2089 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2090 EXCEPTION
2091 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2092 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2093 (
2094 l_api_name,
2095 G_PKG_NAME,
2096 'Okl_API.G_RET_STS_ERROR',
2097 x_msg_count,
2098 x_msg_data,
2099 '_PVT'
2100 );
2101 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2102 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2103 (
2104 l_api_name,
2105 G_PKG_NAME,
2106 'Okl_API.G_RET_STS_UNEXP_ERROR',
2107 x_msg_count,
2108 x_msg_data,
2109 '_PVT'
2110 );
2111 WHEN OTHERS THEN
2112 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2113 (
2114 l_api_name,
2115 G_PKG_NAME,
2116 'OTHERS',
2117 x_msg_count,
2118 x_msg_data,
2119 '_PVT'
2120 );
2121 END lock_row;
2122 --------------------------------------
2123 -- lock_row for:OKL_EXT_CSH_RCPTS_V --
2124 --------------------------------------
2125 PROCEDURE lock_row(
2126 p_api_version IN NUMBER,
2127 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
2128 x_return_status OUT NOCOPY VARCHAR2,
2129 x_msg_count OUT NOCOPY NUMBER,
2130 x_msg_data OUT NOCOPY VARCHAR2,
2131 p_xcrv_rec IN xcrv_rec_type) IS
2132
2133 l_api_version CONSTANT NUMBER := 1;
2134 l_api_name CONSTANT VARCHAR2(30) := 'V_lock_row';
2135 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2136 l_xcr_rec xcr_rec_type;
2137 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type;
2138 BEGIN
2139 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
2140 G_PKG_NAME,
2141 p_init_msg_list,
2142 l_api_version,
2143 p_api_version,
2144 '_PVT',
2145 x_return_status);
2146 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2147 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2148 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2149 RAISE Okl_Api.G_EXCEPTION_ERROR;
2150 END IF;
2151 --------------------------------------
2152 -- Move VIEW record to "Child" records
2153 --------------------------------------
2154 migrate(p_xcrv_rec, l_xcr_rec);
2155 migrate(p_xcrv_rec, l_okl_ext_csh_rcpts_tl_rec);
2156 --------------------------------------------
2157 -- Call the LOCK_ROW for each child record
2158 --------------------------------------------
2159 lock_row(
2160 p_init_msg_list,
2161 x_return_status,
2162 x_msg_count,
2163 x_msg_data,
2164 l_xcr_rec
2165 );
2166 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2167 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2168 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2169 RAISE Okl_Api.G_EXCEPTION_ERROR;
2170 END IF;
2171 lock_row(
2172 p_init_msg_list,
2173 x_return_status,
2174 x_msg_count,
2175 x_msg_data,
2176 l_okl_ext_csh_rcpts_tl_rec
2177 );
2178 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2179 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2180 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2181 RAISE Okl_Api.G_EXCEPTION_ERROR;
2182 END IF;
2183 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2184 EXCEPTION
2185 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2186 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2187 (
2188 l_api_name,
2189 G_PKG_NAME,
2190 'Okl_API.G_RET_STS_ERROR',
2191 x_msg_count,
2192 x_msg_data,
2193 '_PVT'
2194 );
2195 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2196 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2197 (
2198 l_api_name,
2199 G_PKG_NAME,
2200 'Okl_API.G_RET_STS_UNEXP_ERROR',
2201 x_msg_count,
2202 x_msg_data,
2203 '_PVT'
2204 );
2205 WHEN OTHERS THEN
2206 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2207 (
2208 l_api_name,
2209 G_PKG_NAME,
2210 'OTHERS',
2211 x_msg_count,
2212 x_msg_data,
2213 '_PVT'
2214 );
2215 END lock_row;
2216 --------------------------------------
2217 -- PL/SQL TBL lock_row for:XCRV_TBL --
2218 --------------------------------------
2219 PROCEDURE lock_row(
2220 p_api_version IN NUMBER,
2221 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
2222 x_return_status OUT NOCOPY VARCHAR2,
2223 x_msg_count OUT NOCOPY NUMBER,
2224 x_msg_data OUT NOCOPY VARCHAR2,
2225 p_xcrv_tbl IN xcrv_tbl_type) IS
2226
2227 l_api_version CONSTANT NUMBER := 1;
2228 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_lock_row';
2229 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2230 i NUMBER := 0;
2231 -- Begin Post-Generation Change
2232 -- overall error status
2233 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2234 -- End Post-Generation Change
2235 BEGIN
2236 Okl_Api.init_msg_list(p_init_msg_list);
2237 -- Make sure PL/SQL table has records in it before passing
2238 IF (p_xcrv_tbl.COUNT > 0) THEN
2239 i := p_xcrv_tbl.FIRST;
2240 LOOP
2241 lock_row (
2242 p_api_version => p_api_version,
2243 p_init_msg_list => Okl_Api.G_FALSE,
2244 x_return_status => x_return_status,
2245 x_msg_count => x_msg_count,
2246 x_msg_data => x_msg_data,
2247 p_xcrv_rec => p_xcrv_tbl(i));
2248
2249 -- Begin Post-Generation Change
2250 -- store the highest degree of error
2251 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
2252 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
2253 l_overall_status := x_return_status;
2254 END IF;
2255 END IF;
2256 -- End Post-Generation Change
2257
2258 EXIT WHEN (i = p_xcrv_tbl.LAST);
2259 i := p_xcrv_tbl.NEXT(i);
2260 END LOOP;
2261
2262 -- Begin Post-Generation Change
2263 -- return overall status
2264 x_return_status := l_overall_status;
2265 -- End Post-Generation Change
2266
2267 END IF;
2268 EXCEPTION
2269 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2270 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2271 (
2272 l_api_name,
2273 G_PKG_NAME,
2274 'Okl_API.G_RET_STS_ERROR',
2275 x_msg_count,
2276 x_msg_data,
2277 '_PVT'
2278 );
2279 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2280 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2281 (
2282 l_api_name,
2283 G_PKG_NAME,
2284 'Okl_API.G_RET_STS_UNEXP_ERROR',
2285 x_msg_count,
2286 x_msg_data,
2287 '_PVT'
2288 );
2289 WHEN OTHERS THEN
2290 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2291 (
2292 l_api_name,
2293 G_PKG_NAME,
2294 'OTHERS',
2295 x_msg_count,
2296 x_msg_data,
2297 '_PVT'
2298 );
2299 END lock_row;
2300
2301 ---------------------------------------------------------------------------
2302 -- PROCEDURE update_row
2303 ---------------------------------------------------------------------------
2304 ----------------------------------------
2305 -- update_row for:OKL_EXT_CSH_RCPTS_B --
2306 ----------------------------------------
2307 ---------------------------------------------------------------------------
2308 -- Start of comments
2309 --
2310 -- Procedure Name : update_row
2311 -- Description : Updates the row in the table Okl_Ext_Csh_Rcpts_B.
2312 -- Business Rules :
2313 -- Parameters : p_init_msg_list, x_return_status, x_msg_count, x_msg_data,
2314 -- p_xcr_rec, x_xcr_rec
2315 -- Version : 1.0
2316 -- History : 25-AUG-04 abindal modified to include the two new
2317 -- columns receipt type and fully applied.
2318 -- End of comments
2319 ---------------------------------------------------------------------------
2320
2321 PROCEDURE update_row(
2322 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
2323 x_return_status OUT NOCOPY VARCHAR2,
2324 x_msg_count OUT NOCOPY NUMBER,
2325 x_msg_data OUT NOCOPY VARCHAR2,
2326 p_xcr_rec IN xcr_rec_type,
2327 x_xcr_rec OUT NOCOPY xcr_rec_type) IS
2328
2329 l_api_version CONSTANT NUMBER := 1;
2330 l_api_name CONSTANT VARCHAR2(30) := 'B_update_row';
2331 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2332 l_xcr_rec xcr_rec_type := p_xcr_rec;
2333 l_def_xcr_rec xcr_rec_type;
2334 l_row_notfound BOOLEAN := TRUE;
2335 ----------------------------------
2336 -- FUNCTION populate_new_record --
2337 ----------------------------------
2338
2339 FUNCTION populate_new_record (
2340 p_xcr_rec IN xcr_rec_type,
2341 x_xcr_rec OUT NOCOPY xcr_rec_type
2342 ) RETURN VARCHAR2 IS
2343 l_xcr_rec xcr_rec_type;
2344 l_row_notfound BOOLEAN := TRUE;
2345 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2346 BEGIN
2347 x_xcr_rec := p_xcr_rec;
2348 -- Get current database values
2349 l_xcr_rec := get_rec(p_xcr_rec, l_row_notfound);
2350 IF (l_row_notfound) THEN
2351 l_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
2352 END IF;
2353 IF (x_xcr_rec.id = Okl_Api.G_MISS_NUM)
2354 THEN
2355 x_xcr_rec.id := l_xcr_rec.id;
2356 END IF;
2357 IF (x_xcr_rec.xcb_id = Okl_Api.G_MISS_NUM)
2358 THEN
2359 x_xcr_rec.xcb_id := l_xcr_rec.xcb_id;
2360 END IF;
2361 IF (x_xcr_rec.rct_id = Okl_Api.G_MISS_NUM)
2362 THEN
2363 x_xcr_rec.rct_id := l_xcr_rec.rct_id;
2364 END IF;
2365 IF (x_xcr_rec.icr_id = Okl_Api.G_MISS_NUM)
2366 THEN
2367 x_xcr_rec.icr_id := l_xcr_rec.icr_id;
2368 END IF;
2369 IF (x_xcr_rec.object_version_number = Okl_Api.G_MISS_NUM)
2370 THEN
2371 x_xcr_rec.object_version_number := l_xcr_rec.object_version_number;
2372 END IF;
2373 IF (x_xcr_rec.gl_date = Okl_Api.G_MISS_DATE)
2374 THEN
2375 x_xcr_rec.gl_date := l_xcr_rec.gl_date;
2376 END IF;
2377 IF (x_xcr_rec.item_number = Okl_Api.G_MISS_NUM)
2378 THEN
2379 x_xcr_rec.item_number := l_xcr_rec.item_number;
2380 END IF;
2381 IF (x_xcr_rec.remittance_amount = Okl_Api.G_MISS_NUM)
2382 THEN
2383 x_xcr_rec.remittance_amount := l_xcr_rec.remittance_amount;
2384 END IF;
2385 IF (x_xcr_rec.currency_code = Okl_Api.G_MISS_CHAR)
2386 THEN
2387 x_xcr_rec.currency_code := l_xcr_rec.currency_code;
2388 END IF;
2389 IF (x_xcr_rec.receipt_date = Okl_Api.G_MISS_DATE)
2390 THEN
2391 x_xcr_rec.receipt_date := l_xcr_rec.receipt_date;
2392 END IF;
2393 IF (x_xcr_rec.receipt_method = Okl_Api.G_MISS_CHAR)
2394 THEN
2395 x_xcr_rec.receipt_method := l_xcr_rec.receipt_method;
2396 END IF;
2397 IF (x_xcr_rec.check_number = Okl_Api.G_MISS_CHAR)
2398 THEN
2399 x_xcr_rec.check_number := l_xcr_rec.check_number;
2400 END IF;
2401 IF (x_xcr_rec.customer_number = Okl_Api.G_MISS_CHAR)
2402 THEN
2403 x_xcr_rec.customer_number := l_xcr_rec.customer_number;
2404 END IF;
2405 IF (x_xcr_rec.bill_to_location = Okl_Api.G_MISS_CHAR)
2406 THEN
2407 x_xcr_rec.bill_to_location := l_xcr_rec.bill_to_location;
2408 END IF;
2409 IF (x_xcr_rec.exchange_rate_type = Okl_Api.G_MISS_CHAR)
2410 THEN
2411 x_xcr_rec.exchange_rate_type := l_xcr_rec.exchange_rate_type;
2412 END IF;
2413 IF (x_xcr_rec.exchange_rate_date = Okl_Api.G_MISS_DATE)
2414 THEN
2415 x_xcr_rec.exchange_rate_date := l_xcr_rec.exchange_rate_date;
2416 END IF;
2417 IF (x_xcr_rec.exchange_rate = Okl_Api.G_MISS_NUM)
2418 THEN
2419 x_xcr_rec.exchange_rate := l_xcr_rec.exchange_rate;
2420 END IF;
2421 IF (x_xcr_rec.transit_routing_number = Okl_Api.G_MISS_CHAR)
2422 THEN
2423 x_xcr_rec.transit_routing_number := l_xcr_rec.transit_routing_number;
2424 END IF;
2425 IF (x_xcr_rec.account = Okl_Api.G_MISS_CHAR)
2426 THEN
2427 x_xcr_rec.account := l_xcr_rec.account;
2428 END IF;
2429 IF (x_xcr_rec.customer_bank_name = Okl_Api.G_MISS_CHAR)
2430 THEN
2431 x_xcr_rec.customer_bank_name := l_xcr_rec.customer_bank_name;
2432 END IF;
2433 IF (x_xcr_rec.customer_bank_branch_name = Okl_Api.G_MISS_CHAR)
2434 THEN
2435 x_xcr_rec.customer_bank_branch_name := l_xcr_rec.customer_bank_branch_name;
2436 END IF;
2437 IF (x_xcr_rec.remittance_bank_name = Okl_Api.G_MISS_CHAR)
2438 THEN
2439 x_xcr_rec.remittance_bank_name := l_xcr_rec.remittance_bank_name;
2440 END IF;
2441 IF (x_xcr_rec.remittance_bank_branch_name = Okl_Api.G_MISS_CHAR)
2442 THEN
2443 x_xcr_rec.remittance_bank_branch_name := l_xcr_rec.remittance_bank_branch_name;
2444 END IF;
2445 IF (x_xcr_rec.request_id = Okl_Api.G_MISS_NUM)
2446 THEN
2447 x_xcr_rec.request_id := l_xcr_rec.request_id;
2448 END IF;
2449 IF (x_xcr_rec.program_application_id = Okl_Api.G_MISS_NUM)
2450 THEN
2451 x_xcr_rec.program_application_id := l_xcr_rec.program_application_id;
2452 END IF;
2453 IF (x_xcr_rec.program_id = Okl_Api.G_MISS_NUM)
2454 THEN
2455 x_xcr_rec.program_id := l_xcr_rec.program_id;
2456 END IF;
2457 IF (x_xcr_rec.program_update_date = Okl_Api.G_MISS_DATE)
2458 THEN
2459 x_xcr_rec.program_update_date := l_xcr_rec.program_update_date;
2460 END IF;
2461 IF (x_xcr_rec.org_id = Okl_Api.G_MISS_NUM)
2462 THEN
2463 x_xcr_rec.org_id := l_xcr_rec.org_id;
2464 END IF;
2465 IF (x_xcr_rec.attribute_category = Okl_Api.G_MISS_CHAR)
2466 THEN
2467 x_xcr_rec.attribute_category := l_xcr_rec.attribute_category;
2468 END IF;
2469 IF (x_xcr_rec.attribute1 = Okl_Api.G_MISS_CHAR)
2470 THEN
2471 x_xcr_rec.attribute1 := l_xcr_rec.attribute1;
2472 END IF;
2473 IF (x_xcr_rec.attribute2 = Okl_Api.G_MISS_CHAR)
2474 THEN
2475 x_xcr_rec.attribute2 := l_xcr_rec.attribute2;
2476 END IF;
2477 IF (x_xcr_rec.attribute3 = Okl_Api.G_MISS_CHAR)
2478 THEN
2479 x_xcr_rec.attribute3 := l_xcr_rec.attribute3;
2480 END IF;
2481 IF (x_xcr_rec.attribute4 = Okl_Api.G_MISS_CHAR)
2482 THEN
2483 x_xcr_rec.attribute4 := l_xcr_rec.attribute4;
2484 END IF;
2485 IF (x_xcr_rec.attribute5 = Okl_Api.G_MISS_CHAR)
2486 THEN
2487 x_xcr_rec.attribute5 := l_xcr_rec.attribute5;
2488 END IF;
2489 IF (x_xcr_rec.attribute6 = Okl_Api.G_MISS_CHAR)
2490 THEN
2491 x_xcr_rec.attribute6 := l_xcr_rec.attribute6;
2492 END IF;
2493 IF (x_xcr_rec.attribute7 = Okl_Api.G_MISS_CHAR)
2494 THEN
2495 x_xcr_rec.attribute7 := l_xcr_rec.attribute7;
2496 END IF;
2497 IF (x_xcr_rec.attribute8 = Okl_Api.G_MISS_CHAR)
2498 THEN
2499 x_xcr_rec.attribute8 := l_xcr_rec.attribute8;
2500 END IF;
2501 IF (x_xcr_rec.attribute9 = Okl_Api.G_MISS_CHAR)
2502 THEN
2503 x_xcr_rec.attribute9 := l_xcr_rec.attribute9;
2504 END IF;
2505 IF (x_xcr_rec.attribute10 = Okl_Api.G_MISS_CHAR)
2506 THEN
2507 x_xcr_rec.attribute10 := l_xcr_rec.attribute10;
2508 END IF;
2509 IF (x_xcr_rec.attribute11 = Okl_Api.G_MISS_CHAR)
2510 THEN
2511 x_xcr_rec.attribute11 := l_xcr_rec.attribute11;
2512 END IF;
2513 IF (x_xcr_rec.attribute12 = Okl_Api.G_MISS_CHAR)
2514 THEN
2515 x_xcr_rec.attribute12 := l_xcr_rec.attribute12;
2516 END IF;
2517 IF (x_xcr_rec.attribute13 = Okl_Api.G_MISS_CHAR)
2518 THEN
2519 x_xcr_rec.attribute13 := l_xcr_rec.attribute13;
2520 END IF;
2521 IF (x_xcr_rec.attribute14 = Okl_Api.G_MISS_CHAR)
2522 THEN
2523 x_xcr_rec.attribute14 := l_xcr_rec.attribute14;
2524 END IF;
2525 IF (x_xcr_rec.attribute15 = Okl_Api.G_MISS_CHAR)
2526 THEN
2527 x_xcr_rec.attribute15 := l_xcr_rec.attribute15;
2528 END IF;
2529 IF (x_xcr_rec.created_by = Okl_Api.G_MISS_NUM)
2530 THEN
2531 x_xcr_rec.created_by := l_xcr_rec.created_by;
2532 END IF;
2533 IF (x_xcr_rec.creation_date = Okl_Api.G_MISS_DATE)
2534 THEN
2535 x_xcr_rec.creation_date := l_xcr_rec.creation_date;
2536 END IF;
2537 IF (x_xcr_rec.last_updated_by = Okl_Api.G_MISS_NUM)
2538 THEN
2539 x_xcr_rec.last_updated_by := l_xcr_rec.last_updated_by;
2540 END IF;
2541 IF (x_xcr_rec.last_update_date = Okl_Api.G_MISS_DATE)
2542 THEN
2543 x_xcr_rec.last_update_date := l_xcr_rec.last_update_date;
2544 END IF;
2545 IF (x_xcr_rec.last_update_login = Okl_Api.G_MISS_NUM)
2546 THEN
2547 x_xcr_rec.last_update_login := l_xcr_rec.last_update_login;
2548 END IF;
2549 -- New column receipt type and fully applied added.
2550 IF (x_xcr_rec.receipt_type = Okl_Api.G_MISS_CHAR)
2551 THEN
2552 x_xcr_rec.receipt_type := l_xcr_rec.receipt_type;
2553 END IF;
2554 IF (x_xcr_rec.fully_applied_flag = Okl_Api.G_MISS_CHAR)
2555 THEN
2556 x_xcr_rec.fully_applied_flag := l_xcr_rec.fully_applied_flag;
2557 END IF;
2558 IF (x_xcr_rec.expired_flag = Okl_Api.G_MISS_CHAR)
2559 THEN
2560 x_xcr_rec.expired_flag := l_xcr_rec.expired_flag;
2561 END IF;
2562
2563 RETURN(l_return_status);
2564 END populate_new_record;
2565 --------------------------------------------
2566 -- Set_Attributes for:OKL_EXT_CSH_RCPTS_B --
2567 --------------------------------------------
2568
2569 FUNCTION Set_Attributes (
2570 p_xcr_rec IN xcr_rec_type,
2571 x_xcr_rec OUT NOCOPY xcr_rec_type
2572 ) RETURN VARCHAR2 IS
2573 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2574 BEGIN
2575 x_xcr_rec := p_xcr_rec;
2576 RETURN(l_return_status);
2577 END Set_Attributes;
2578 BEGIN
2579 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
2580 p_init_msg_list,
2581 '_PVT',
2582 x_return_status);
2583 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2584 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2585 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2586 RAISE Okl_Api.G_EXCEPTION_ERROR;
2587 END IF;
2588 --- Setting item attributes
2589 l_return_status := Set_Attributes(
2590 p_xcr_rec, -- IN
2591 l_xcr_rec); -- OUT
2592 --- If any errors happen abort API
2593 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2594 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2595 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2596 RAISE Okl_Api.G_EXCEPTION_ERROR;
2597 END IF;
2598 l_return_status := populate_new_record(l_xcr_rec, l_def_xcr_rec);
2599 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2600 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2601 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2602 RAISE Okl_Api.G_EXCEPTION_ERROR;
2603 END IF;
2604 UPDATE OKL_EXT_CSH_RCPTS_B
2605 SET XCB_ID = l_def_xcr_rec.xcb_id,
2606 RCT_ID = l_def_xcr_rec.rct_id,
2607 ICR_ID = l_def_xcr_rec.icr_id,
2608 OBJECT_VERSION_NUMBER = l_def_xcr_rec.object_version_number,
2609 GL_DATE = l_def_xcr_rec.gl_date,
2610 ITEM_NUMBER = l_def_xcr_rec.item_number,
2611 REMITTANCE_AMOUNT = l_def_xcr_rec.remittance_amount,
2612 CURRENCY_CODE = l_def_xcr_rec.currency_code,
2613 RECEIPT_DATE = l_def_xcr_rec.receipt_date,
2614 RECEIPT_METHOD = l_def_xcr_rec.receipt_method,
2615 CHECK_NUMBER = l_def_xcr_rec.check_number,
2616 CUSTOMER_NUMBER = l_def_xcr_rec.customer_number,
2617 BILL_TO_LOCATION = l_def_xcr_rec.bill_to_location,
2618 EXCHANGE_RATE_TYPE = l_def_xcr_rec.exchange_rate_type,
2619 EXCHANGE_RATE_DATE = l_def_xcr_rec.exchange_rate_date,
2620 EXCHANGE_RATE = l_def_xcr_rec.exchange_rate,
2621 TRANSIT_ROUTING_NUMBER = l_def_xcr_rec.transit_routing_number,
2622 ACCOUNT = l_def_xcr_rec.account,
2623 CUSTOMER_BANK_NAME = l_def_xcr_rec.customer_bank_name,
2624 CUSTOMER_BANK_BRANCH_NAME = l_def_xcr_rec.customer_bank_branch_name,
2625 REMITTANCE_BANK_NAME = l_def_xcr_rec.remittance_bank_name,
2626 REMITTANCE_BANK_BRANCH_NAME = l_def_xcr_rec.remittance_bank_branch_name,
2627 REQUEST_ID = l_def_xcr_rec.request_id,
2628 PROGRAM_APPLICATION_ID = l_def_xcr_rec.program_application_id,
2629 PROGRAM_ID = l_def_xcr_rec.program_id,
2630 PROGRAM_UPDATE_DATE = l_def_xcr_rec.program_update_date,
2631 ORG_ID = l_def_xcr_rec.org_id,
2632 ATTRIBUTE_CATEGORY = l_def_xcr_rec.attribute_category,
2633 ATTRIBUTE1 = l_def_xcr_rec.attribute1,
2634 ATTRIBUTE2 = l_def_xcr_rec.attribute2,
2635 ATTRIBUTE3 = l_def_xcr_rec.attribute3,
2636 ATTRIBUTE4 = l_def_xcr_rec.attribute4,
2637 ATTRIBUTE5 = l_def_xcr_rec.attribute5,
2638 ATTRIBUTE6 = l_def_xcr_rec.attribute6,
2639 ATTRIBUTE7 = l_def_xcr_rec.attribute7,
2640 ATTRIBUTE8 = l_def_xcr_rec.attribute8,
2641 ATTRIBUTE9 = l_def_xcr_rec.attribute9,
2642 ATTRIBUTE10 = l_def_xcr_rec.attribute10,
2643 ATTRIBUTE11 = l_def_xcr_rec.attribute11,
2644 ATTRIBUTE12 = l_def_xcr_rec.attribute12,
2645 ATTRIBUTE13 = l_def_xcr_rec.attribute13,
2646 ATTRIBUTE14 = l_def_xcr_rec.attribute14,
2647 ATTRIBUTE15 = l_def_xcr_rec.attribute15,
2648 CREATED_BY = l_def_xcr_rec.created_by,
2649 CREATION_DATE = l_def_xcr_rec.creation_date,
2650 LAST_UPDATED_BY = l_def_xcr_rec.last_updated_by,
2651 LAST_UPDATE_DATE = l_def_xcr_rec.last_update_date,
2652 LAST_UPDATE_LOGIN = l_def_xcr_rec.last_update_login,
2653 -- New column receipt type and fully applied added.
2654 RECEIPT_TYPE = l_def_xcr_rec.receipt_type,
2655 FULLY_APPLIED_FLAG = l_def_xcr_rec.fully_applied_flag,
2656 EXPIRED_FLAG = l_def_xcr_rec.expired_flag
2657 WHERE ID = l_def_xcr_rec.id;
2658
2659 x_xcr_rec := l_def_xcr_rec;
2660 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2661 EXCEPTION
2662 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2663 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2664 (
2665 l_api_name,
2666 G_PKG_NAME,
2667 'Okl_API.G_RET_STS_ERROR',
2668 x_msg_count,
2669 x_msg_data,
2670 '_PVT'
2671 );
2672 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2673 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2674 (
2675 l_api_name,
2676 G_PKG_NAME,
2677 'Okl_API.G_RET_STS_UNEXP_ERROR',
2678 x_msg_count,
2679 x_msg_data,
2680 '_PVT'
2681 );
2682 WHEN OTHERS THEN
2683 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2684 (
2685 l_api_name,
2686 G_PKG_NAME,
2687 'OTHERS',
2688 x_msg_count,
2689 x_msg_data,
2690 '_PVT'
2691 );
2692 END update_row;
2693 -----------------------------------------
2694 -- update_row for:OKL_EXT_CSH_RCPTS_TL --
2695 -----------------------------------------
2696 PROCEDURE update_row(
2697 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
2698 x_return_status OUT NOCOPY VARCHAR2,
2699 x_msg_count OUT NOCOPY NUMBER,
2700 x_msg_data OUT NOCOPY VARCHAR2,
2701 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type,
2702 x_okl_ext_csh_rcpts_tl_rec OUT NOCOPY okl_ext_csh_rcpts_tl_rec_type) IS
2703
2704 l_api_version CONSTANT NUMBER := 1;
2705 l_api_name CONSTANT VARCHAR2(30) := 'TL_update_row';
2706 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2707 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type := p_okl_ext_csh_rcpts_tl_rec;
2708 ldefoklextcshrcptstlrec okl_ext_csh_rcpts_tl_rec_type;
2709 l_row_notfound BOOLEAN := TRUE;
2710 ----------------------------------
2711 -- FUNCTION populate_new_record --
2712 ----------------------------------
2713 FUNCTION populate_new_record (
2714 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type,
2715 x_okl_ext_csh_rcpts_tl_rec OUT NOCOPY okl_ext_csh_rcpts_tl_rec_type
2716 ) RETURN VARCHAR2 IS
2717 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type;
2718 l_row_notfound BOOLEAN := TRUE;
2719 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2720 BEGIN
2721 x_okl_ext_csh_rcpts_tl_rec := p_okl_ext_csh_rcpts_tl_rec;
2722 -- Get current database values
2723 l_okl_ext_csh_rcpts_tl_rec := get_rec(p_okl_ext_csh_rcpts_tl_rec, l_row_notfound);
2724 IF (l_row_notfound) THEN
2725 l_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
2726 END IF;
2727 IF (x_okl_ext_csh_rcpts_tl_rec.id = Okl_Api.G_MISS_NUM)
2728 THEN
2729 x_okl_ext_csh_rcpts_tl_rec.id := l_okl_ext_csh_rcpts_tl_rec.id;
2730 END IF;
2731 IF (x_okl_ext_csh_rcpts_tl_rec.LANGUAGE = Okl_Api.G_MISS_CHAR)
2732 THEN
2733 x_okl_ext_csh_rcpts_tl_rec.LANGUAGE := l_okl_ext_csh_rcpts_tl_rec.LANGUAGE;
2734 END IF;
2735 IF (x_okl_ext_csh_rcpts_tl_rec.source_lang = Okl_Api.G_MISS_CHAR)
2736 THEN
2737 x_okl_ext_csh_rcpts_tl_rec.source_lang := l_okl_ext_csh_rcpts_tl_rec.source_lang;
2738 END IF;
2739 IF (x_okl_ext_csh_rcpts_tl_rec.sfwt_flag = Okl_Api.G_MISS_CHAR)
2740 THEN
2741 x_okl_ext_csh_rcpts_tl_rec.sfwt_flag := l_okl_ext_csh_rcpts_tl_rec.sfwt_flag;
2742 END IF;
2743 IF (x_okl_ext_csh_rcpts_tl_rec.comments = Okl_Api.G_MISS_CHAR)
2744 THEN
2745 x_okl_ext_csh_rcpts_tl_rec.comments := l_okl_ext_csh_rcpts_tl_rec.comments;
2746 END IF;
2747 IF (x_okl_ext_csh_rcpts_tl_rec.created_by = Okl_Api.G_MISS_NUM)
2748 THEN
2749 x_okl_ext_csh_rcpts_tl_rec.created_by := l_okl_ext_csh_rcpts_tl_rec.created_by;
2750 END IF;
2751 IF (x_okl_ext_csh_rcpts_tl_rec.creation_date = Okl_Api.G_MISS_DATE)
2752 THEN
2753 x_okl_ext_csh_rcpts_tl_rec.creation_date := l_okl_ext_csh_rcpts_tl_rec.creation_date;
2754 END IF;
2755 IF (x_okl_ext_csh_rcpts_tl_rec.last_updated_by = Okl_Api.G_MISS_NUM)
2756 THEN
2757 x_okl_ext_csh_rcpts_tl_rec.last_updated_by := l_okl_ext_csh_rcpts_tl_rec.last_updated_by;
2758 END IF;
2759 IF (x_okl_ext_csh_rcpts_tl_rec.last_update_date = Okl_Api.G_MISS_DATE)
2760 THEN
2761 x_okl_ext_csh_rcpts_tl_rec.last_update_date := l_okl_ext_csh_rcpts_tl_rec.last_update_date;
2762 END IF;
2763 IF (x_okl_ext_csh_rcpts_tl_rec.last_update_login = Okl_Api.G_MISS_NUM)
2764 THEN
2765 x_okl_ext_csh_rcpts_tl_rec.last_update_login := l_okl_ext_csh_rcpts_tl_rec.last_update_login;
2766 END IF;
2767 RETURN(l_return_status);
2768 END populate_new_record;
2769 ---------------------------------------------
2770 -- Set_Attributes for:OKL_EXT_CSH_RCPTS_TL --
2771 ---------------------------------------------
2772 FUNCTION Set_Attributes (
2773 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type,
2774 x_okl_ext_csh_rcpts_tl_rec OUT NOCOPY okl_ext_csh_rcpts_tl_rec_type
2775 ) RETURN VARCHAR2 IS
2776 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2777 BEGIN
2778 x_okl_ext_csh_rcpts_tl_rec := p_okl_ext_csh_rcpts_tl_rec;
2779 x_okl_ext_csh_rcpts_tl_rec.LANGUAGE := USERENV('LANG');
2780 x_okl_ext_csh_rcpts_tl_rec.SOURCE_LANG := USERENV('LANG');
2781 RETURN(l_return_status);
2782 END Set_Attributes;
2783 BEGIN
2784 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
2785 p_init_msg_list,
2786 '_PVT',
2787 x_return_status);
2788 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2789 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2790 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2791 RAISE Okl_Api.G_EXCEPTION_ERROR;
2792 END IF;
2793 --- Setting item attributes
2794 l_return_status := Set_Attributes(
2795 p_okl_ext_csh_rcpts_tl_rec, -- IN
2796 l_okl_ext_csh_rcpts_tl_rec); -- OUT
2797 --- If any errors happen abort API
2798 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2799 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2800 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2801 RAISE Okl_Api.G_EXCEPTION_ERROR;
2802 END IF;
2803 l_return_status := populate_new_record(l_okl_ext_csh_rcpts_tl_rec, ldefoklextcshrcptstlrec);
2804 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
2805 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
2806 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
2807 RAISE Okl_Api.G_EXCEPTION_ERROR;
2808 END IF;
2809 UPDATE OKL_EXT_CSH_RCPTS_TL
2810 SET COMMENTS = ldefoklextcshrcptstlrec.comments,
2811 SOURCE_LANG = ldefoklextcshrcptstlrec.source_lang,
2812 CREATED_BY = ldefoklextcshrcptstlrec.created_by,
2813 CREATION_DATE = ldefoklextcshrcptstlrec.creation_date,
2814 LAST_UPDATED_BY = ldefoklextcshrcptstlrec.last_updated_by,
2815 LAST_UPDATE_DATE = ldefoklextcshrcptstlrec.last_update_date,
2816 LAST_UPDATE_LOGIN = ldefoklextcshrcptstlrec.last_update_login
2817 WHERE ID = ldefoklextcshrcptstlrec.id
2818 AND USERENV('LANG') in (SOURCE_LANG, LANGUAGE);
2819
2820 UPDATE OKL_EXT_CSH_RCPTS_TL
2821 SET SFWT_FLAG = 'Y'
2822 WHERE ID = ldefoklextcshrcptstlrec.id
2823 AND SOURCE_LANG <> USERENV('LANG');
2824
2825 x_okl_ext_csh_rcpts_tl_rec := ldefoklextcshrcptstlrec;
2826 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
2827 EXCEPTION
2828 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
2829 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
2830 (
2831 l_api_name,
2832 G_PKG_NAME,
2833 'Okl_API.G_RET_STS_ERROR',
2834 x_msg_count,
2835 x_msg_data,
2836 '_PVT'
2837 );
2838 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
2839 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2840 (
2841 l_api_name,
2842 G_PKG_NAME,
2843 'Okl_API.G_RET_STS_UNEXP_ERROR',
2844 x_msg_count,
2845 x_msg_data,
2846 '_PVT'
2847 );
2848 WHEN OTHERS THEN
2849 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
2850 (
2851 l_api_name,
2852 G_PKG_NAME,
2853 'OTHERS',
2854 x_msg_count,
2855 x_msg_data,
2856 '_PVT'
2857 );
2858 END update_row;
2859 ----------------------------------------
2860 -- update_row for:OKL_EXT_CSH_RCPTS_V --
2861 ----------------------------------------
2862 ---------------------------------------------------------------------------
2863 -- Start of comments
2864 --
2865 -- Procedure Name : update_row
2866 -- Description : Updates the row in the table Okl_Ext_Csh_Rcpts_B.
2867 -- Business Rules :
2868 -- Parameters : p_init_msg_list, x_return_status, x_msg_count, x_msg_data,
2869 -- p_xcrv_rec, x_xcrv_rec
2870 -- Version : 1.0
2871 -- History : 25-AUG-04 abindal modified to include the two new
2872 -- columns receipt type and fully applied.
2873 -- End of comments
2874 ---------------------------------------------------------------------------
2875
2876 PROCEDURE update_row(
2877 p_api_version IN NUMBER,
2878 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
2879 x_return_status OUT NOCOPY VARCHAR2,
2880 x_msg_count OUT NOCOPY NUMBER,
2881 x_msg_data OUT NOCOPY VARCHAR2,
2882 p_xcrv_rec IN xcrv_rec_type,
2883 x_xcrv_rec OUT NOCOPY xcrv_rec_type) IS
2884
2885 l_api_version CONSTANT NUMBER := 1;
2886 l_api_name CONSTANT VARCHAR2(30) := 'V_update_row';
2887 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2888 l_xcrv_rec xcrv_rec_type := p_xcrv_rec;
2889 l_def_xcrv_rec xcrv_rec_type;
2890 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type;
2891 lx_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type;
2892 l_xcr_rec xcr_rec_type;
2893 lx_xcr_rec xcr_rec_type;
2894 -------------------------------
2895 -- FUNCTION fill_who_columns --
2896 -------------------------------
2897 FUNCTION fill_who_columns (
2898 p_xcrv_rec IN xcrv_rec_type
2899 ) RETURN xcrv_rec_type IS
2900 l_xcrv_rec xcrv_rec_type := p_xcrv_rec;
2901 BEGIN
2902 l_xcrv_rec.LAST_UPDATE_DATE := SYSDATE;
2903 l_xcrv_rec.LAST_UPDATED_BY := Fnd_Global.USER_ID;
2904 l_xcrv_rec.LAST_UPDATE_LOGIN := Fnd_Global.LOGIN_ID;
2905 RETURN(l_xcrv_rec);
2906 END fill_who_columns;
2907 ----------------------------------
2908 -- FUNCTION populate_new_record --
2909 ----------------------------------
2910
2911 FUNCTION populate_new_record (
2912 p_xcrv_rec IN xcrv_rec_type,
2913 x_xcrv_rec OUT NOCOPY xcrv_rec_type
2914 ) RETURN VARCHAR2 IS
2915 l_xcrv_rec xcrv_rec_type;
2916 l_row_notfound BOOLEAN := TRUE;
2917 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
2918 BEGIN
2919 x_xcrv_rec := p_xcrv_rec;
2920 -- Get current database values
2921 l_xcrv_rec := get_rec(p_xcrv_rec, l_row_notfound);
2922 IF (l_row_notfound) THEN
2923 l_return_status := Okl_Api.G_RET_STS_UNEXP_ERROR;
2924 END IF;
2925 IF (x_xcrv_rec.id = Okl_Api.G_MISS_NUM)
2926 THEN
2927 x_xcrv_rec.id := l_xcrv_rec.id;
2928 END IF;
2929 IF (x_xcrv_rec.object_version_number = Okl_Api.G_MISS_NUM)
2930 THEN
2931 x_xcrv_rec.object_version_number := l_xcrv_rec.object_version_number;
2932 END IF;
2933 IF (x_xcrv_rec.sfwt_flag = Okl_Api.G_MISS_CHAR)
2934 THEN
2935 x_xcrv_rec.sfwt_flag := l_xcrv_rec.sfwt_flag;
2936 END IF;
2937 IF (x_xcrv_rec.xcb_id = Okl_Api.G_MISS_NUM)
2938 THEN
2939 x_xcrv_rec.xcb_id := l_xcrv_rec.xcb_id;
2940 END IF;
2941 IF (x_xcrv_rec.rct_id = Okl_Api.G_MISS_NUM)
2942 THEN
2943 x_xcrv_rec.rct_id := l_xcrv_rec.rct_id;
2944 END IF;
2945 IF (x_xcrv_rec.icr_id = Okl_Api.G_MISS_NUM)
2946 THEN
2947 x_xcrv_rec.icr_id := l_xcrv_rec.icr_id;
2948 END IF;
2949 IF (x_xcrv_rec.gl_date = Okl_Api.G_MISS_DATE)
2950 THEN
2951 x_xcrv_rec.gl_date := l_xcrv_rec.gl_date;
2952 END IF;
2953 IF (x_xcrv_rec.item_number = Okl_Api.G_MISS_NUM)
2954 THEN
2955 x_xcrv_rec.item_number := l_xcrv_rec.item_number;
2956 END IF;
2957 IF (x_xcrv_rec.remittance_amount = Okl_Api.G_MISS_NUM)
2958 THEN
2959 x_xcrv_rec.remittance_amount := l_xcrv_rec.remittance_amount;
2960 END IF;
2961 IF (x_xcrv_rec.currency_code = Okl_Api.G_MISS_CHAR)
2962 THEN
2963 x_xcrv_rec.currency_code := l_xcrv_rec.currency_code;
2964 END IF;
2965 IF (x_xcrv_rec.receipt_date = Okl_Api.G_MISS_DATE)
2966 THEN
2967 x_xcrv_rec.receipt_date := l_xcrv_rec.receipt_date;
2968 END IF;
2969 IF (x_xcrv_rec.receipt_method = Okl_Api.G_MISS_CHAR)
2970 THEN
2971 x_xcrv_rec.receipt_method := l_xcrv_rec.receipt_method;
2972 END IF;
2973 IF (x_xcrv_rec.check_number = Okl_Api.G_MISS_CHAR)
2974 THEN
2975 x_xcrv_rec.check_number := l_xcrv_rec.check_number;
2976 END IF;
2977 IF (x_xcrv_rec.comments = Okl_Api.G_MISS_CHAR)
2978 THEN
2979 x_xcrv_rec.comments := l_xcrv_rec.comments;
2980 END IF;
2981 IF (x_xcrv_rec.customer_number = Okl_Api.G_MISS_CHAR)
2982 THEN
2983 x_xcrv_rec.customer_number := l_xcrv_rec.customer_number;
2984 END IF;
2985 IF (x_xcrv_rec.bill_to_location = Okl_Api.G_MISS_CHAR)
2986 THEN
2987 x_xcrv_rec.bill_to_location := l_xcrv_rec.bill_to_location;
2988 END IF;
2989 IF (x_xcrv_rec.exchange_rate_type = Okl_Api.G_MISS_CHAR)
2990 THEN
2991 x_xcrv_rec.exchange_rate_type := l_xcrv_rec.exchange_rate_type;
2992 END IF;
2993 IF (x_xcrv_rec.exchange_rate_date = Okl_Api.G_MISS_DATE)
2994 THEN
2995 x_xcrv_rec.exchange_rate_date := l_xcrv_rec.exchange_rate_date;
2996 END IF;
2997 IF (x_xcrv_rec.exchange_rate = Okl_Api.G_MISS_NUM)
2998 THEN
2999 x_xcrv_rec.exchange_rate := l_xcrv_rec.exchange_rate;
3000 END IF;
3001 IF (x_xcrv_rec.transit_routing_number = Okl_Api.G_MISS_CHAR)
3002 THEN
3003 x_xcrv_rec.transit_routing_number := l_xcrv_rec.transit_routing_number;
3004 END IF;
3005 IF (x_xcrv_rec.account = Okl_Api.G_MISS_CHAR)
3006 THEN
3007 x_xcrv_rec.account := l_xcrv_rec.account;
3008 END IF;
3009 IF (x_xcrv_rec.customer_bank_name = Okl_Api.G_MISS_CHAR)
3010 THEN
3011 x_xcrv_rec.customer_bank_name := l_xcrv_rec.customer_bank_name;
3012 END IF;
3013 IF (x_xcrv_rec.customer_bank_branch_name = Okl_Api.G_MISS_CHAR)
3014 THEN
3015 x_xcrv_rec.customer_bank_branch_name := l_xcrv_rec.customer_bank_branch_name;
3016 END IF;
3017 IF (x_xcrv_rec.remittance_bank_name = Okl_Api.G_MISS_CHAR)
3018 THEN
3019 x_xcrv_rec.remittance_bank_name := l_xcrv_rec.remittance_bank_name;
3020 END IF;
3021 IF (x_xcrv_rec.remittance_bank_branch_name = Okl_Api.G_MISS_CHAR)
3022 THEN
3023 x_xcrv_rec.remittance_bank_branch_name := l_xcrv_rec.remittance_bank_branch_name;
3024 END IF;
3025 IF (x_xcrv_rec.attribute_category = Okl_Api.G_MISS_CHAR)
3026 THEN
3027 x_xcrv_rec.attribute_category := l_xcrv_rec.attribute_category;
3028 END IF;
3029 IF (x_xcrv_rec.attribute1 = Okl_Api.G_MISS_CHAR)
3030 THEN
3031 x_xcrv_rec.attribute1 := l_xcrv_rec.attribute1;
3032 END IF;
3033 IF (x_xcrv_rec.attribute2 = Okl_Api.G_MISS_CHAR)
3034 THEN
3035 x_xcrv_rec.attribute2 := l_xcrv_rec.attribute2;
3036 END IF;
3037 IF (x_xcrv_rec.attribute3 = Okl_Api.G_MISS_CHAR)
3038 THEN
3039 x_xcrv_rec.attribute3 := l_xcrv_rec.attribute3;
3040 END IF;
3041 IF (x_xcrv_rec.attribute4 = Okl_Api.G_MISS_CHAR)
3042 THEN
3043 x_xcrv_rec.attribute4 := l_xcrv_rec.attribute4;
3044 END IF;
3045 IF (x_xcrv_rec.attribute5 = Okl_Api.G_MISS_CHAR)
3046 THEN
3047 x_xcrv_rec.attribute5 := l_xcrv_rec.attribute5;
3048 END IF;
3049 IF (x_xcrv_rec.attribute6 = Okl_Api.G_MISS_CHAR)
3050 THEN
3051 x_xcrv_rec.attribute6 := l_xcrv_rec.attribute6;
3052 END IF;
3053 IF (x_xcrv_rec.attribute7 = Okl_Api.G_MISS_CHAR)
3054 THEN
3055 x_xcrv_rec.attribute7 := l_xcrv_rec.attribute7;
3056 END IF;
3057 IF (x_xcrv_rec.attribute8 = Okl_Api.G_MISS_CHAR)
3058 THEN
3059 x_xcrv_rec.attribute8 := l_xcrv_rec.attribute8;
3060 END IF;
3061 IF (x_xcrv_rec.attribute9 = Okl_Api.G_MISS_CHAR)
3062 THEN
3063 x_xcrv_rec.attribute9 := l_xcrv_rec.attribute9;
3064 END IF;
3065 IF (x_xcrv_rec.attribute10 = Okl_Api.G_MISS_CHAR)
3066 THEN
3067 x_xcrv_rec.attribute10 := l_xcrv_rec.attribute10;
3068 END IF;
3069 IF (x_xcrv_rec.attribute11 = Okl_Api.G_MISS_CHAR)
3070 THEN
3071 x_xcrv_rec.attribute11 := l_xcrv_rec.attribute11;
3072 END IF;
3073 IF (x_xcrv_rec.attribute12 = Okl_Api.G_MISS_CHAR)
3074 THEN
3075 x_xcrv_rec.attribute12 := l_xcrv_rec.attribute12;
3076 END IF;
3077 IF (x_xcrv_rec.attribute13 = Okl_Api.G_MISS_CHAR)
3078 THEN
3079 x_xcrv_rec.attribute13 := l_xcrv_rec.attribute13;
3080 END IF;
3081 IF (x_xcrv_rec.attribute14 = Okl_Api.G_MISS_CHAR)
3082 THEN
3083 x_xcrv_rec.attribute14 := l_xcrv_rec.attribute14;
3084 END IF;
3085 IF (x_xcrv_rec.attribute15 = Okl_Api.G_MISS_CHAR)
3086 THEN
3087 x_xcrv_rec.attribute15 := l_xcrv_rec.attribute15;
3088 END IF;
3089 IF (x_xcrv_rec.request_id = Okl_Api.G_MISS_NUM)
3090 THEN
3091 x_xcrv_rec.request_id := l_xcrv_rec.request_id;
3092 END IF;
3093 IF (x_xcrv_rec.program_application_id = Okl_Api.G_MISS_NUM)
3094 THEN
3095 x_xcrv_rec.program_application_id := l_xcrv_rec.program_application_id;
3096 END IF;
3097 IF (x_xcrv_rec.program_id = Okl_Api.G_MISS_NUM)
3098 THEN
3099 x_xcrv_rec.program_id := l_xcrv_rec.program_id;
3100 END IF;
3101 IF (x_xcrv_rec.program_update_date = Okl_Api.G_MISS_DATE)
3102 THEN
3103 x_xcrv_rec.program_update_date := l_xcrv_rec.program_update_date;
3104 END IF;
3105 IF (x_xcrv_rec.org_id = Okl_Api.G_MISS_NUM)
3106 THEN
3107 x_xcrv_rec.org_id := l_xcrv_rec.org_id;
3108 END IF;
3109 IF (x_xcrv_rec.created_by = Okl_Api.G_MISS_NUM)
3110 THEN
3111 x_xcrv_rec.created_by := l_xcrv_rec.created_by;
3112 END IF;
3113 IF (x_xcrv_rec.creation_date = Okl_Api.G_MISS_DATE)
3114 THEN
3115 x_xcrv_rec.creation_date := l_xcrv_rec.creation_date;
3116 END IF;
3117 IF (x_xcrv_rec.last_updated_by = Okl_Api.G_MISS_NUM)
3118 THEN
3119 x_xcrv_rec.last_updated_by := l_xcrv_rec.last_updated_by;
3120 END IF;
3121 IF (x_xcrv_rec.last_update_date = Okl_Api.G_MISS_DATE)
3122 THEN
3123 x_xcrv_rec.last_update_date := l_xcrv_rec.last_update_date;
3124 END IF;
3125 IF (x_xcrv_rec.last_update_login = Okl_Api.G_MISS_NUM)
3126 THEN
3127 x_xcrv_rec.last_update_login := l_xcrv_rec.last_update_login;
3128 END IF;
3129 -- New column receipt type and fully applied added.
3130 IF (x_xcrv_rec.receipt_type = Okl_Api.G_MISS_CHAR)
3131 THEN
3132 x_xcrv_rec.receipt_type := l_xcrv_rec.receipt_type;
3133 END IF;
3134 IF (x_xcrv_rec.fully_applied_flag = Okl_Api.G_MISS_CHAR)
3135 THEN
3136 x_xcrv_rec.fully_applied_flag := l_xcrv_rec.fully_applied_flag;
3137 END IF;
3138 IF (x_xcrv_rec.expired_flag = Okl_Api.G_MISS_CHAR)
3139 THEN
3140 x_xcrv_rec.expired_flag := l_xcrv_rec.expired_flag;
3141 END IF;
3142
3143 RETURN(l_return_status);
3144 END populate_new_record;
3145 --------------------------------------------
3146 -- Set_Attributes for:OKL_EXT_CSH_RCPTS_V --
3147 --------------------------------------------
3148 FUNCTION Set_Attributes (
3149 p_xcrv_rec IN xcrv_rec_type,
3150 x_xcrv_rec OUT NOCOPY xcrv_rec_type
3151 ) RETURN VARCHAR2 IS
3152 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3153 BEGIN
3154 x_xcrv_rec := p_xcrv_rec;
3155 x_xcrv_rec.OBJECT_VERSION_NUMBER := NVL(x_xcrv_rec.OBJECT_VERSION_NUMBER, 0) + 1;
3156 RETURN(l_return_status);
3157
3158 -- POST TAPI GENERATED CODE BEGINS 04/25/2001 Bruno.
3159
3160 SELECT
3161 NVL(DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,Fnd_Global.CONC_REQUEST_ID),
3162 x_xcrv_rec.request_id),
3163 NVL(DECODE(Fnd_Global.PROG_APPL_ID, -1,NULL,Fnd_Global.PROG_APPL_ID),
3164 x_xcrv_rec.program_application_id),
3165 NVL(DECODE(Fnd_Global.CONC_PROGRAM_ID,-1,NULL,Fnd_Global.CONC_PROGRAM_ID),
3166 x_xcrv_rec.program_id),
3167 DECODE(DECODE(Fnd_Global.CONC_REQUEST_ID,-1,NULL,SYSDATE),
3168 NULL,x_xcrv_rec.program_update_date,SYSDATE)
3169 INTO
3170 x_xcrv_rec.request_id,
3171 x_xcrv_rec.program_application_id,
3172 x_xcrv_rec.program_id,
3173 x_xcrv_rec.program_update_date
3174 FROM dual;
3175
3176 -- POST TAPI GENERATED CODE ENDS 04/25/2001 Bruno.
3177
3178 END Set_Attributes;
3179
3180 BEGIN
3181 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
3182 G_PKG_NAME,
3183 p_init_msg_list,
3184 l_api_version,
3185 p_api_version,
3186 '_PVT',
3187 x_return_status);
3188 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3189 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3190 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3191 RAISE Okl_Api.G_EXCEPTION_ERROR;
3192 END IF;
3193 --- Setting item attributes
3194 l_return_status := Set_Attributes(
3195 p_xcrv_rec, -- IN
3196 l_xcrv_rec); -- OUT
3197 --- If any errors happen abort API
3198 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3199 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3200 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3201 RAISE Okl_Api.G_EXCEPTION_ERROR;
3202 END IF;
3203 l_return_status := populate_new_record(l_xcrv_rec, l_def_xcrv_rec);
3204 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3205 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3206 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3207 RAISE Okl_Api.G_EXCEPTION_ERROR;
3208 END IF;
3209 l_def_xcrv_rec := fill_who_columns(l_def_xcrv_rec);
3210 --- Validate all non-missing attributes (Item Level Validation)
3211 l_return_status := Validate_Attributes(l_def_xcrv_rec);
3212 --- If any errors happen abort API
3213 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3214 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3215 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3216 RAISE Okl_Api.G_EXCEPTION_ERROR;
3217 END IF;
3218 l_return_status := Validate_Record(l_def_xcrv_rec);
3219 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3220 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3221 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3222 RAISE Okl_Api.G_EXCEPTION_ERROR;
3223 END IF;
3224
3225 --------------------------------------
3226 -- Move VIEW record to "Child" records
3227 --------------------------------------
3228 migrate(l_def_xcrv_rec, l_okl_ext_csh_rcpts_tl_rec);
3229 migrate(l_def_xcrv_rec, l_xcr_rec);
3230 --------------------------------------------
3231 -- Call the UPDATE_ROW for each child record
3232 --------------------------------------------
3233 update_row(
3234 p_init_msg_list,
3235 x_return_status,
3236 x_msg_count,
3237 x_msg_data,
3238 l_okl_ext_csh_rcpts_tl_rec,
3239 lx_okl_ext_csh_rcpts_tl_rec
3240 );
3241 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3242 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3243 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3244 RAISE Okl_Api.G_EXCEPTION_ERROR;
3245 END IF;
3246 migrate(lx_okl_ext_csh_rcpts_tl_rec, l_def_xcrv_rec);
3247 update_row(
3248 p_init_msg_list,
3249 x_return_status,
3250 x_msg_count,
3251 x_msg_data,
3252 l_xcr_rec,
3253 lx_xcr_rec
3254 );
3255 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3256 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3257 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3258 RAISE Okl_Api.G_EXCEPTION_ERROR;
3259 END IF;
3260 migrate(lx_xcr_rec, l_def_xcrv_rec);
3261 x_xcrv_rec := l_def_xcrv_rec;
3262 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3263 EXCEPTION
3264 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3265 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3266 (
3267 l_api_name,
3268 G_PKG_NAME,
3269 'Okl_API.G_RET_STS_ERROR',
3270 x_msg_count,
3271 x_msg_data,
3272 '_PVT'
3273 );
3274 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3275 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3276 (
3277 l_api_name,
3278 G_PKG_NAME,
3279 'Okl_API.G_RET_STS_UNEXP_ERROR',
3280 x_msg_count,
3281 x_msg_data,
3282 '_PVT'
3283 );
3284 WHEN OTHERS THEN
3285 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3286 (
3287 l_api_name,
3288 G_PKG_NAME,
3289 'OTHERS',
3290 x_msg_count,
3291 x_msg_data,
3292 '_PVT'
3293 );
3294 END update_row;
3295 ----------------------------------------
3296 -- PL/SQL TBL update_row for:XCRV_TBL --
3297 ----------------------------------------
3298 PROCEDURE update_row(
3299 p_api_version IN NUMBER,
3300 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
3301 x_return_status OUT NOCOPY VARCHAR2,
3302 x_msg_count OUT NOCOPY NUMBER,
3303 x_msg_data OUT NOCOPY VARCHAR2,
3304 p_xcrv_tbl IN xcrv_tbl_type,
3305 x_xcrv_tbl OUT NOCOPY xcrv_tbl_type) IS
3306
3307 l_api_version CONSTANT NUMBER := 1;
3308 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_update_row';
3309 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3310 i NUMBER := 0;
3311 -- Begin Post-Generation Change
3312 -- overall error status
3313 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3314 -- End Post-Generation Change
3315 BEGIN
3316 Okl_Api.init_msg_list(p_init_msg_list);
3317 -- Make sure PL/SQL table has records in it before passing
3318 IF (p_xcrv_tbl.COUNT > 0) THEN
3319 i := p_xcrv_tbl.FIRST;
3320 LOOP
3321 update_row (
3322 p_api_version => p_api_version,
3323 p_init_msg_list => Okl_Api.G_FALSE,
3324 x_return_status => x_return_status,
3325 x_msg_count => x_msg_count,
3326 x_msg_data => x_msg_data,
3327 p_xcrv_rec => p_xcrv_tbl(i),
3328 x_xcrv_rec => x_xcrv_tbl(i));
3329
3330 -- Begin Post-Generation Change
3331 -- store the highest degree of error
3332 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
3333 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3334 l_overall_status := x_return_status;
3335 END IF;
3336 END IF;
3337 -- End Post-Generation Change
3338
3339 EXIT WHEN (i = p_xcrv_tbl.LAST);
3340 i := p_xcrv_tbl.NEXT(i);
3341 END LOOP;
3342
3343 -- Begin Post-Generation Change
3344 -- return overall status
3345 x_return_status := l_overall_status;
3346 -- End Post-Generation Change
3347
3348 END IF;
3349 EXCEPTION
3350 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3351 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3352 (
3353 l_api_name,
3354 G_PKG_NAME,
3355 'Okl_API.G_RET_STS_ERROR',
3356 x_msg_count,
3357 x_msg_data,
3358 '_PVT'
3359 );
3360 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3361 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3362 (
3363 l_api_name,
3364 G_PKG_NAME,
3365 'Okl_API.G_RET_STS_UNEXP_ERROR',
3366 x_msg_count,
3367 x_msg_data,
3368 '_PVT'
3369 );
3370 WHEN OTHERS THEN
3371 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3372 (
3373 l_api_name,
3374 G_PKG_NAME,
3375 'OTHERS',
3376 x_msg_count,
3377 x_msg_data,
3378 '_PVT'
3379 );
3380 END update_row;
3381
3382 ---------------------------------------------------------------------------
3383 -- PROCEDURE delete_row
3384 ---------------------------------------------------------------------------
3385 ----------------------------------------
3386 -- delete_row for:OKL_EXT_CSH_RCPTS_B --
3387 ----------------------------------------
3388 PROCEDURE delete_row(
3389 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
3390 x_return_status OUT NOCOPY VARCHAR2,
3391 x_msg_count OUT NOCOPY NUMBER,
3392 x_msg_data OUT NOCOPY VARCHAR2,
3393 p_xcr_rec IN xcr_rec_type) IS
3394
3395 l_api_version CONSTANT NUMBER := 1;
3396 l_api_name CONSTANT VARCHAR2(30) := 'B_delete_row';
3397 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3398 l_xcr_rec xcr_rec_type:= p_xcr_rec;
3399 l_row_notfound BOOLEAN := TRUE;
3400 BEGIN
3401 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
3402 p_init_msg_list,
3403 '_PVT',
3404 x_return_status);
3405 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3406 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3407 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3408 RAISE Okl_Api.G_EXCEPTION_ERROR;
3409 END IF;
3410 DELETE FROM OKL_EXT_CSH_RCPTS_B
3411 WHERE ID = l_xcr_rec.id;
3412
3413 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3414 EXCEPTION
3415 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3416 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3417 (
3418 l_api_name,
3419 G_PKG_NAME,
3420 'Okl_API.G_RET_STS_ERROR',
3421 x_msg_count,
3422 x_msg_data,
3423 '_PVT'
3424 );
3425 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3426 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3427 (
3428 l_api_name,
3429 G_PKG_NAME,
3430 'Okl_API.G_RET_STS_UNEXP_ERROR',
3431 x_msg_count,
3432 x_msg_data,
3433 '_PVT'
3434 );
3435 WHEN OTHERS THEN
3436 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3437 (
3438 l_api_name,
3439 G_PKG_NAME,
3440 'OTHERS',
3441 x_msg_count,
3442 x_msg_data,
3443 '_PVT'
3444 );
3445 END delete_row;
3446 -----------------------------------------
3447 -- delete_row for:OKL_EXT_CSH_RCPTS_TL --
3448 -----------------------------------------
3449 PROCEDURE delete_row(
3450 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
3451 x_return_status OUT NOCOPY VARCHAR2,
3452 x_msg_count OUT NOCOPY NUMBER,
3453 x_msg_data OUT NOCOPY VARCHAR2,
3454 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type) IS
3455
3456 l_api_version CONSTANT NUMBER := 1;
3457 l_api_name CONSTANT VARCHAR2(30) := 'TL_delete_row';
3458 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3459 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type:= p_okl_ext_csh_rcpts_tl_rec;
3460 l_row_notfound BOOLEAN := TRUE;
3461 ---------------------------------------------
3462 -- Set_Attributes for:OKL_EXT_CSH_RCPTS_TL --
3463 ---------------------------------------------
3464 FUNCTION Set_Attributes (
3465 p_okl_ext_csh_rcpts_tl_rec IN okl_ext_csh_rcpts_tl_rec_type,
3466 x_okl_ext_csh_rcpts_tl_rec OUT NOCOPY okl_ext_csh_rcpts_tl_rec_type
3467 ) RETURN VARCHAR2 IS
3468 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3469 BEGIN
3470 x_okl_ext_csh_rcpts_tl_rec := p_okl_ext_csh_rcpts_tl_rec;
3471 x_okl_ext_csh_rcpts_tl_rec.LANGUAGE := USERENV('LANG');
3472 RETURN(l_return_status);
3473 END Set_Attributes;
3474 BEGIN
3475 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
3476 p_init_msg_list,
3477 '_PVT',
3478 x_return_status);
3479 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3480 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3481 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3482 RAISE Okl_Api.G_EXCEPTION_ERROR;
3483 END IF;
3484 --- Setting item attributes
3485 l_return_status := Set_Attributes(
3486 p_okl_ext_csh_rcpts_tl_rec, -- IN
3487 l_okl_ext_csh_rcpts_tl_rec); -- OUT
3488 --- If any errors happen abort API
3489 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3490 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3491 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3492 RAISE Okl_Api.G_EXCEPTION_ERROR;
3493 END IF;
3494 DELETE FROM OKL_EXT_CSH_RCPTS_TL
3495 WHERE ID = l_okl_ext_csh_rcpts_tl_rec.id;
3496
3497 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3498 EXCEPTION
3499 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3500 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3501 (
3502 l_api_name,
3503 G_PKG_NAME,
3504 'Okl_API.G_RET_STS_ERROR',
3505 x_msg_count,
3506 x_msg_data,
3507 '_PVT'
3508 );
3509 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3510 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3511 (
3512 l_api_name,
3513 G_PKG_NAME,
3514 'Okl_API.G_RET_STS_UNEXP_ERROR',
3515 x_msg_count,
3516 x_msg_data,
3517 '_PVT'
3518 );
3519 WHEN OTHERS THEN
3520 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3521 (
3522 l_api_name,
3523 G_PKG_NAME,
3524 'OTHERS',
3525 x_msg_count,
3526 x_msg_data,
3527 '_PVT'
3528 );
3529 END delete_row;
3530 ----------------------------------------
3531 -- delete_row for:OKL_EXT_CSH_RCPTS_V --
3532 ----------------------------------------
3533 PROCEDURE delete_row(
3534 p_api_version IN NUMBER,
3535 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
3536 x_return_status OUT NOCOPY VARCHAR2,
3537 x_msg_count OUT NOCOPY NUMBER,
3538 x_msg_data OUT NOCOPY VARCHAR2,
3539 p_xcrv_rec IN xcrv_rec_type) IS
3540
3541 l_api_version CONSTANT NUMBER := 1;
3542 l_api_name CONSTANT VARCHAR2(30) := 'V_delete_row';
3543 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3544 l_xcrv_rec xcrv_rec_type := p_xcrv_rec;
3545 l_okl_ext_csh_rcpts_tl_rec okl_ext_csh_rcpts_tl_rec_type;
3546 l_xcr_rec xcr_rec_type;
3547 BEGIN
3548 l_return_status := Okl_Api.START_ACTIVITY(l_api_name,
3549 G_PKG_NAME,
3550 p_init_msg_list,
3551 l_api_version,
3552 p_api_version,
3553 '_PVT',
3554 x_return_status);
3555 IF (l_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3556 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3557 ELSIF (l_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3558 RAISE Okl_Api.G_EXCEPTION_ERROR;
3559 END IF;
3560 --------------------------------------
3561 -- Move VIEW record to "Child" records
3562 --------------------------------------
3563 migrate(l_xcrv_rec, l_okl_ext_csh_rcpts_tl_rec);
3564 migrate(l_xcrv_rec, l_xcr_rec);
3565 --------------------------------------------
3566 -- Call the DELETE_ROW for each child record
3567 --------------------------------------------
3568 delete_row(
3569 p_init_msg_list,
3570 x_return_status,
3571 x_msg_count,
3572 x_msg_data,
3573 l_okl_ext_csh_rcpts_tl_rec
3574 );
3575 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3576 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3577 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3578 RAISE Okl_Api.G_EXCEPTION_ERROR;
3579 END IF;
3580 delete_row(
3581 p_init_msg_list,
3582 x_return_status,
3583 x_msg_count,
3584 x_msg_data,
3585 l_xcr_rec
3586 );
3587 IF (x_return_status = Okl_Api.G_RET_STS_UNEXP_ERROR) THEN
3588 RAISE Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR;
3589 ELSIF (x_return_status = Okl_Api.G_RET_STS_ERROR) THEN
3590 RAISE Okl_Api.G_EXCEPTION_ERROR;
3591 END IF;
3592 Okl_Api.END_ACTIVITY(x_msg_count, x_msg_data);
3593 EXCEPTION
3594 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3595 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3596 (
3597 l_api_name,
3598 G_PKG_NAME,
3599 'Okl_API.G_RET_STS_ERROR',
3600 x_msg_count,
3601 x_msg_data,
3602 '_PVT'
3603 );
3604 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3605 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3606 (
3607 l_api_name,
3608 G_PKG_NAME,
3609 'Okl_API.G_RET_STS_UNEXP_ERROR',
3610 x_msg_count,
3611 x_msg_data,
3612 '_PVT'
3613 );
3614 WHEN OTHERS THEN
3615 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3616 (
3617 l_api_name,
3618 G_PKG_NAME,
3619 'OTHERS',
3620 x_msg_count,
3621 x_msg_data,
3622 '_PVT'
3623 );
3624 END delete_row;
3625 ----------------------------------------
3626 -- PL/SQL TBL delete_row for:XCRV_TBL --
3627 ----------------------------------------
3628 PROCEDURE delete_row(
3629 p_api_version IN NUMBER,
3630 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
3631 x_return_status OUT NOCOPY VARCHAR2,
3632 x_msg_count OUT NOCOPY NUMBER,
3633 x_msg_data OUT NOCOPY VARCHAR2,
3634 p_xcrv_tbl IN xcrv_tbl_type) IS
3635
3636 l_api_version CONSTANT NUMBER := 1;
3637 l_api_name CONSTANT VARCHAR2(30) := 'V_tbl_delete_row';
3638 l_return_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3639 i NUMBER := 0;
3640
3641 -- Begin Post-Generation Change
3642 -- overall error status
3643 l_overall_status VARCHAR2(1) := Okl_Api.G_RET_STS_SUCCESS;
3644 -- End Post-Generation Change
3645
3646 BEGIN
3647 Okl_Api.init_msg_list(p_init_msg_list);
3648 -- Make sure PL/SQL table has records in it before passing
3649 IF (p_xcrv_tbl.COUNT > 0) THEN
3650 i := p_xcrv_tbl.FIRST;
3651 LOOP
3652 delete_row (
3653 p_api_version => p_api_version,
3654 p_init_msg_list => Okl_Api.G_FALSE,
3655 x_return_status => x_return_status,
3656 x_msg_count => x_msg_count,
3657 x_msg_data => x_msg_data,
3658 p_xcrv_rec => p_xcrv_tbl(i));
3659
3660 -- Begin Post-Generation Change
3661 -- store the highest degree of error
3662 IF x_return_status <> Okl_Api.G_RET_STS_SUCCESS THEN
3663 IF l_overall_status <> Okl_Api.G_RET_STS_UNEXP_ERROR THEN
3664 l_overall_status := x_return_status;
3665 END IF;
3666 END IF;
3667 -- End Post-Generation Change
3668
3669 EXIT WHEN (i = p_xcrv_tbl.LAST);
3670 i := p_xcrv_tbl.NEXT(i);
3671 END LOOP;
3672
3673 -- Begin Post-Generation Change
3674 -- return overall status
3675 x_return_status := l_overall_status;
3676 -- End Post-Generation Change
3677
3678 END IF;
3679 EXCEPTION
3680 WHEN Okl_Api.G_EXCEPTION_ERROR THEN
3681 x_return_status := Okl_Api.HANDLE_EXCEPTIONS
3682 (
3683 l_api_name,
3684 G_PKG_NAME,
3685 'Okl_API.G_RET_STS_ERROR',
3686 x_msg_count,
3687 x_msg_data,
3688 '_PVT'
3689 );
3690 WHEN Okl_Api.G_EXCEPTION_UNEXPECTED_ERROR THEN
3691 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3692 (
3693 l_api_name,
3694 G_PKG_NAME,
3695 'Okl_API.G_RET_STS_UNEXP_ERROR',
3696 x_msg_count,
3697 x_msg_data,
3698 '_PVT'
3699 );
3700 WHEN OTHERS THEN
3701 x_return_status :=Okl_Api.HANDLE_EXCEPTIONS
3702 (
3703 l_api_name,
3704 G_PKG_NAME,
3705 'OTHERS',
3706 x_msg_count,
3707 x_msg_data,
3708 '_PVT'
3709 );
3710 END delete_row;
3711 END Okl_Xcr_Pvt;