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