[Home] [Help]
PACKAGE BODY: APPS.OE_CONTRACT_UTIL
Source
1 PACKAGE BODY OE_Contract_Util AS
2 /* $Header: OEXUPCTB.pls 115.0 99/07/15 19:27:47 porting shi $ */
3
4 -- Global constant holding the package name
5
6 G_PKG_NAME CONSTANT VARCHAR2(30) := 'OE_Contract_Util';
7
8 -- Procedure Clear_Dependent_Attr
9
10 PROCEDURE Clear_Dependent_Attr
11 ( p_attr_id IN NUMBER := FND_API.G_MISS_NUM
12 , p_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
13 , p_old_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type :=
14 OE_Pricing_Cont_PUB.G_MISS_CONTRACT_REC
15 , x_Contract_rec OUT OE_Pricing_Cont_PUB.Contract_Rec_Type
16 )
17 IS
18 BEGIN
19
20 -- Load out record
21
22 x_Contract_rec := p_Contract_rec;
23
24 -- If attr_id is missing compare old and new records and for
25 -- every changed attribute clear its dependent fields.
26
27 IF p_attr_id = FND_API.G_MISS_NUM THEN
28
29 IF NOT OE_GLOBALS.Equal(p_Contract_rec.agreement_id,p_old_Contract_rec.agreement_id)
30 THEN
31 NULL;
32 END IF;
33
34 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute1,p_old_Contract_rec.attribute1)
35 THEN
36 NULL;
37 END IF;
38
39 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute10,p_old_Contract_rec.attribute10)
40 THEN
41 NULL;
42 END IF;
43
44 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute11,p_old_Contract_rec.attribute11)
45 THEN
46 NULL;
47 END IF;
48
49 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute12,p_old_Contract_rec.attribute12)
50 THEN
51 NULL;
52 END IF;
53
54 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute13,p_old_Contract_rec.attribute13)
55 THEN
56 NULL;
57 END IF;
58
59 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute14,p_old_Contract_rec.attribute14)
60 THEN
61 NULL;
62 END IF;
63
64 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute15,p_old_Contract_rec.attribute15)
65 THEN
66 NULL;
67 END IF;
68
69 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute2,p_old_Contract_rec.attribute2)
70 THEN
71 NULL;
72 END IF;
73
74 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute3,p_old_Contract_rec.attribute3)
75 THEN
76 NULL;
77 END IF;
78
79 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute4,p_old_Contract_rec.attribute4)
80 THEN
81 NULL;
82 END IF;
83
84 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute5,p_old_Contract_rec.attribute5)
85 THEN
86 NULL;
87 END IF;
88
89 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute6,p_old_Contract_rec.attribute6)
90 THEN
91 NULL;
92 END IF;
93
94 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute7,p_old_Contract_rec.attribute7)
95 THEN
96 NULL;
97 END IF;
98
99 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute8,p_old_Contract_rec.attribute8)
100 THEN
101 NULL;
102 END IF;
103
104 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute9,p_old_Contract_rec.attribute9)
105 THEN
106 NULL;
107 END IF;
108
109 IF NOT OE_GLOBALS.Equal(p_Contract_rec.context,p_old_Contract_rec.context)
110 THEN
111 NULL;
112 END IF;
113
114 IF NOT OE_GLOBALS.Equal(p_Contract_rec.created_by,p_old_Contract_rec.created_by)
115 THEN
116 NULL;
117 END IF;
118
119 IF NOT OE_GLOBALS.Equal(p_Contract_rec.creation_date,p_old_Contract_rec.creation_date)
120 THEN
121 NULL;
122 END IF;
123
124 IF NOT OE_GLOBALS.Equal(p_Contract_rec.discount_id,p_old_Contract_rec.discount_id)
125 THEN
126 NULL;
127 END IF;
128
129 IF NOT OE_GLOBALS.Equal(p_Contract_rec.last_updated_by,p_old_Contract_rec.last_updated_by)
130 THEN
131 NULL;
132 END IF;
133
134 IF NOT OE_GLOBALS.Equal(p_Contract_rec.last_update_date,p_old_Contract_rec.last_update_date)
135 THEN
136 NULL;
137 END IF;
138
139 IF NOT OE_GLOBALS.Equal(p_Contract_rec.last_update_login,p_old_Contract_rec.last_update_login)
140 THEN
141 NULL;
142 END IF;
143
144 IF NOT OE_GLOBALS.Equal(p_Contract_rec.price_list_id,p_old_Contract_rec.price_list_id)
145 THEN
146 NULL;
147 END IF;
148
149 IF NOT OE_GLOBALS.Equal(p_Contract_rec.pricing_contract_id,p_old_Contract_rec.pricing_contract_id)
150 THEN
151 NULL;
152 END IF;
153
154 ELSIF p_attr_id = G_AGREEMENT THEN
155 NULL;
156 ELSIF p_attr_id = G_ATTRIBUTE1 THEN
157 NULL;
158 ELSIF p_attr_id = G_ATTRIBUTE10 THEN
159 NULL;
160 ELSIF p_attr_id = G_ATTRIBUTE11 THEN
161 NULL;
162 ELSIF p_attr_id = G_ATTRIBUTE12 THEN
163 NULL;
164 ELSIF p_attr_id = G_ATTRIBUTE13 THEN
165 NULL;
166 ELSIF p_attr_id = G_ATTRIBUTE14 THEN
167 NULL;
168 ELSIF p_attr_id = G_ATTRIBUTE15 THEN
169 NULL;
170 ELSIF p_attr_id = G_ATTRIBUTE2 THEN
171 NULL;
172 ELSIF p_attr_id = G_ATTRIBUTE3 THEN
173 NULL;
174 ELSIF p_attr_id = G_ATTRIBUTE4 THEN
175 NULL;
176 ELSIF p_attr_id = G_ATTRIBUTE5 THEN
177 NULL;
178 ELSIF p_attr_id = G_ATTRIBUTE6 THEN
179 NULL;
180 ELSIF p_attr_id = G_ATTRIBUTE7 THEN
181 NULL;
182 ELSIF p_attr_id = G_ATTRIBUTE8 THEN
183 NULL;
184 ELSIF p_attr_id = G_ATTRIBUTE9 THEN
185 NULL;
186 ELSIF p_attr_id = G_CONTEXT THEN
187 NULL;
188 ELSIF p_attr_id = G_CREATED_BY THEN
189 NULL;
190 ELSIF p_attr_id = G_CREATION_DATE THEN
191 NULL;
192 ELSIF p_attr_id = G_DISCOUNT THEN
193 NULL;
194 ELSIF p_attr_id = G_LAST_UPDATED_BY THEN
195 NULL;
196 ELSIF p_attr_id = G_LAST_UPDATE_DATE THEN
197 NULL;
198 ELSIF p_attr_id = G_LAST_UPDATE_LOGIN THEN
199 NULL;
200 ELSIF p_attr_id = G_PRICE_LIST THEN
201 NULL;
202 ELSIF p_attr_id = G_PRICING_CONTRACT THEN
203 NULL;
204 END IF;
205
206 END Clear_Dependent_Attr;
207
208 -- Procedure Apply_Attribute_Changes
209
210 PROCEDURE Apply_Attribute_Changes
211 ( p_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
212 , p_old_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type :=
213 OE_Pricing_Cont_PUB.G_MISS_CONTRACT_REC
214 , x_Contract_rec OUT OE_Pricing_Cont_PUB.Contract_Rec_Type
215 )
216 IS
217 BEGIN
218
219 -- Load out record
220
221 x_Contract_rec := p_Contract_rec;
222
223 IF NOT OE_GLOBALS.Equal(p_Contract_rec.agreement_id,p_old_Contract_rec.agreement_id)
224 THEN
225 NULL;
226 END IF;
227
228 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute1,p_old_Contract_rec.attribute1)
229 THEN
230 NULL;
231 END IF;
232
233 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute10,p_old_Contract_rec.attribute10)
234 THEN
235 NULL;
236 END IF;
237
238 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute11,p_old_Contract_rec.attribute11)
239 THEN
240 NULL;
241 END IF;
242
243 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute12,p_old_Contract_rec.attribute12)
244 THEN
245 NULL;
246 END IF;
247
248 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute13,p_old_Contract_rec.attribute13)
249 THEN
250 NULL;
251 END IF;
252
253 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute14,p_old_Contract_rec.attribute14)
254 THEN
255 NULL;
256 END IF;
257
258 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute15,p_old_Contract_rec.attribute15)
259 THEN
260 NULL;
261 END IF;
262
263 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute2,p_old_Contract_rec.attribute2)
264 THEN
265 NULL;
266 END IF;
267
268 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute3,p_old_Contract_rec.attribute3)
269 THEN
270 NULL;
271 END IF;
272
273 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute4,p_old_Contract_rec.attribute4)
274 THEN
275 NULL;
276 END IF;
277
278 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute5,p_old_Contract_rec.attribute5)
279 THEN
280 NULL;
281 END IF;
282
283 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute6,p_old_Contract_rec.attribute6)
284 THEN
285 NULL;
286 END IF;
287
288 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute7,p_old_Contract_rec.attribute7)
289 THEN
290 NULL;
291 END IF;
292
293 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute8,p_old_Contract_rec.attribute8)
294 THEN
295 NULL;
296 END IF;
297
298 IF NOT OE_GLOBALS.Equal(p_Contract_rec.attribute9,p_old_Contract_rec.attribute9)
299 THEN
300 NULL;
301 END IF;
302
303 IF NOT OE_GLOBALS.Equal(p_Contract_rec.context,p_old_Contract_rec.context)
304 THEN
305 NULL;
306 END IF;
307
308 IF NOT OE_GLOBALS.Equal(p_Contract_rec.created_by,p_old_Contract_rec.created_by)
309 THEN
310 NULL;
311 END IF;
312
313 IF NOT OE_GLOBALS.Equal(p_Contract_rec.creation_date,p_old_Contract_rec.creation_date)
314 THEN
315 NULL;
316 END IF;
317
318 IF NOT OE_GLOBALS.Equal(p_Contract_rec.discount_id,p_old_Contract_rec.discount_id)
319 THEN
320 NULL;
321 END IF;
322
323 IF NOT OE_GLOBALS.Equal(p_Contract_rec.last_updated_by,p_old_Contract_rec.last_updated_by)
324 THEN
325 NULL;
326 END IF;
327
328 IF NOT OE_GLOBALS.Equal(p_Contract_rec.last_update_date,p_old_Contract_rec.last_update_date)
329 THEN
330 NULL;
331 END IF;
332
333 IF NOT OE_GLOBALS.Equal(p_Contract_rec.last_update_login,p_old_Contract_rec.last_update_login)
334 THEN
335 NULL;
336 END IF;
337
338 IF NOT OE_GLOBALS.Equal(p_Contract_rec.price_list_id,p_old_Contract_rec.price_list_id)
339 THEN
340 NULL;
341 END IF;
342
343 IF NOT OE_GLOBALS.Equal(p_Contract_rec.pricing_contract_id,p_old_Contract_rec.pricing_contract_id)
344 THEN
345 NULL;
346 END IF;
347
348 END Apply_Attribute_Changes;
349
350 -- Function Complete_Record
351
352 FUNCTION Complete_Record
353 ( p_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
354 , p_old_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
355 ) RETURN OE_Pricing_Cont_PUB.Contract_Rec_Type
356 IS
357 l_Contract_rec OE_Pricing_Cont_PUB.Contract_Rec_Type := p_Contract_rec;
358 BEGIN
359
360 IF l_Contract_rec.agreement_id = FND_API.G_MISS_NUM THEN
361 l_Contract_rec.agreement_id := p_old_Contract_rec.agreement_id;
362 END IF;
363
364 IF l_Contract_rec.attribute1 = FND_API.G_MISS_CHAR THEN
365 l_Contract_rec.attribute1 := p_old_Contract_rec.attribute1;
366 END IF;
367
368 IF l_Contract_rec.attribute10 = FND_API.G_MISS_CHAR THEN
369 l_Contract_rec.attribute10 := p_old_Contract_rec.attribute10;
370 END IF;
371
372 IF l_Contract_rec.attribute11 = FND_API.G_MISS_CHAR THEN
373 l_Contract_rec.attribute11 := p_old_Contract_rec.attribute11;
374 END IF;
375
376 IF l_Contract_rec.attribute12 = FND_API.G_MISS_CHAR THEN
377 l_Contract_rec.attribute12 := p_old_Contract_rec.attribute12;
378 END IF;
379
380 IF l_Contract_rec.attribute13 = FND_API.G_MISS_CHAR THEN
381 l_Contract_rec.attribute13 := p_old_Contract_rec.attribute13;
382 END IF;
383
384 IF l_Contract_rec.attribute14 = FND_API.G_MISS_CHAR THEN
385 l_Contract_rec.attribute14 := p_old_Contract_rec.attribute14;
386 END IF;
387
388 IF l_Contract_rec.attribute15 = FND_API.G_MISS_CHAR THEN
389 l_Contract_rec.attribute15 := p_old_Contract_rec.attribute15;
390 END IF;
391
392 IF l_Contract_rec.attribute2 = FND_API.G_MISS_CHAR THEN
393 l_Contract_rec.attribute2 := p_old_Contract_rec.attribute2;
394 END IF;
395
396 IF l_Contract_rec.attribute3 = FND_API.G_MISS_CHAR THEN
397 l_Contract_rec.attribute3 := p_old_Contract_rec.attribute3;
398 END IF;
399
400 IF l_Contract_rec.attribute4 = FND_API.G_MISS_CHAR THEN
401 l_Contract_rec.attribute4 := p_old_Contract_rec.attribute4;
402 END IF;
403
404 IF l_Contract_rec.attribute5 = FND_API.G_MISS_CHAR THEN
405 l_Contract_rec.attribute5 := p_old_Contract_rec.attribute5;
406 END IF;
407
411
408 IF l_Contract_rec.attribute6 = FND_API.G_MISS_CHAR THEN
409 l_Contract_rec.attribute6 := p_old_Contract_rec.attribute6;
410 END IF;
412 IF l_Contract_rec.attribute7 = FND_API.G_MISS_CHAR THEN
413 l_Contract_rec.attribute7 := p_old_Contract_rec.attribute7;
414 END IF;
415
416 IF l_Contract_rec.attribute8 = FND_API.G_MISS_CHAR THEN
417 l_Contract_rec.attribute8 := p_old_Contract_rec.attribute8;
418 END IF;
419
420 IF l_Contract_rec.attribute9 = FND_API.G_MISS_CHAR THEN
421 l_Contract_rec.attribute9 := p_old_Contract_rec.attribute9;
422 END IF;
423
424 IF l_Contract_rec.context = FND_API.G_MISS_CHAR THEN
425 l_Contract_rec.context := p_old_Contract_rec.context;
426 END IF;
427
428 IF l_Contract_rec.created_by = FND_API.G_MISS_NUM THEN
429 l_Contract_rec.created_by := p_old_Contract_rec.created_by;
430 END IF;
431
432 IF l_Contract_rec.creation_date = FND_API.G_MISS_DATE THEN
433 l_Contract_rec.creation_date := p_old_Contract_rec.creation_date;
434 END IF;
435
436 IF l_Contract_rec.discount_id = FND_API.G_MISS_NUM THEN
437 l_Contract_rec.discount_id := p_old_Contract_rec.discount_id;
438 END IF;
439
440 IF l_Contract_rec.last_updated_by = FND_API.G_MISS_NUM THEN
441 l_Contract_rec.last_updated_by := p_old_Contract_rec.last_updated_by;
442 END IF;
443
444 IF l_Contract_rec.last_update_date = FND_API.G_MISS_DATE THEN
445 l_Contract_rec.last_update_date := p_old_Contract_rec.last_update_date;
446 END IF;
447
448 IF l_Contract_rec.last_update_login = FND_API.G_MISS_NUM THEN
449 l_Contract_rec.last_update_login := p_old_Contract_rec.last_update_login;
450 END IF;
451
452 IF l_Contract_rec.price_list_id = FND_API.G_MISS_NUM THEN
453 l_Contract_rec.price_list_id := p_old_Contract_rec.price_list_id;
454 END IF;
455
456 IF l_Contract_rec.pricing_contract_id = FND_API.G_MISS_NUM THEN
457 l_Contract_rec.pricing_contract_id := p_old_Contract_rec.pricing_contract_id;
458 END IF;
459
460 RETURN l_Contract_rec;
461
462 END Complete_Record;
463
464 -- Function Convert_Miss_To_Null
465
466 FUNCTION Convert_Miss_To_Null
467 ( p_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
468 ) RETURN OE_Pricing_Cont_PUB.Contract_Rec_Type
469 IS
470 l_Contract_rec OE_Pricing_Cont_PUB.Contract_Rec_Type := p_Contract_rec;
471 BEGIN
472
473 IF l_Contract_rec.agreement_id = FND_API.G_MISS_NUM THEN
474 l_Contract_rec.agreement_id := NULL;
475 END IF;
476
477 IF l_Contract_rec.attribute1 = FND_API.G_MISS_CHAR THEN
478 l_Contract_rec.attribute1 := NULL;
479 END IF;
480
481 IF l_Contract_rec.attribute10 = FND_API.G_MISS_CHAR THEN
482 l_Contract_rec.attribute10 := NULL;
483 END IF;
484
485 IF l_Contract_rec.attribute11 = FND_API.G_MISS_CHAR THEN
486 l_Contract_rec.attribute11 := NULL;
487 END IF;
488
489 IF l_Contract_rec.attribute12 = FND_API.G_MISS_CHAR THEN
490 l_Contract_rec.attribute12 := NULL;
491 END IF;
492
493 IF l_Contract_rec.attribute13 = FND_API.G_MISS_CHAR THEN
494 l_Contract_rec.attribute13 := NULL;
495 END IF;
496
497 IF l_Contract_rec.attribute14 = FND_API.G_MISS_CHAR THEN
498 l_Contract_rec.attribute14 := NULL;
499 END IF;
500
501 IF l_Contract_rec.attribute15 = FND_API.G_MISS_CHAR THEN
502 l_Contract_rec.attribute15 := NULL;
503 END IF;
504
505 IF l_Contract_rec.attribute2 = FND_API.G_MISS_CHAR THEN
506 l_Contract_rec.attribute2 := NULL;
507 END IF;
508
509 IF l_Contract_rec.attribute3 = FND_API.G_MISS_CHAR THEN
510 l_Contract_rec.attribute3 := NULL;
511 END IF;
512
513 IF l_Contract_rec.attribute4 = FND_API.G_MISS_CHAR THEN
514 l_Contract_rec.attribute4 := NULL;
515 END IF;
516
517 IF l_Contract_rec.attribute5 = FND_API.G_MISS_CHAR THEN
518 l_Contract_rec.attribute5 := NULL;
519 END IF;
520
521 IF l_Contract_rec.attribute6 = FND_API.G_MISS_CHAR THEN
522 l_Contract_rec.attribute6 := NULL;
523 END IF;
524
525 IF l_Contract_rec.attribute7 = FND_API.G_MISS_CHAR THEN
526 l_Contract_rec.attribute7 := NULL;
527 END IF;
528
529 IF l_Contract_rec.attribute8 = FND_API.G_MISS_CHAR THEN
530 l_Contract_rec.attribute8 := NULL;
531 END IF;
532
533 IF l_Contract_rec.attribute9 = FND_API.G_MISS_CHAR THEN
534 l_Contract_rec.attribute9 := NULL;
535 END IF;
536
537 IF l_Contract_rec.context = FND_API.G_MISS_CHAR THEN
538 l_Contract_rec.context := NULL;
539 END IF;
540
541 IF l_Contract_rec.created_by = FND_API.G_MISS_NUM THEN
542 l_Contract_rec.created_by := NULL;
543 END IF;
544
545 IF l_Contract_rec.creation_date = FND_API.G_MISS_DATE THEN
546 l_Contract_rec.creation_date := NULL;
547 END IF;
548
549 IF l_Contract_rec.discount_id = FND_API.G_MISS_NUM THEN
550 l_Contract_rec.discount_id := NULL;
551 END IF;
552
553 IF l_Contract_rec.last_updated_by = FND_API.G_MISS_NUM THEN
554 l_Contract_rec.last_updated_by := NULL;
555 END IF;
556
557 IF l_Contract_rec.last_update_date = FND_API.G_MISS_DATE THEN
558 l_Contract_rec.last_update_date := NULL;
559 END IF;
560
561 IF l_Contract_rec.last_update_login = FND_API.G_MISS_NUM THEN
562 l_Contract_rec.last_update_login := NULL;
566 l_Contract_rec.price_list_id := NULL;
563 END IF;
564
565 IF l_Contract_rec.price_list_id = FND_API.G_MISS_NUM THEN
567 END IF;
568
569 IF l_Contract_rec.pricing_contract_id = FND_API.G_MISS_NUM THEN
570 l_Contract_rec.pricing_contract_id := NULL;
571 END IF;
572
573 RETURN l_Contract_rec;
574
575 END Convert_Miss_To_Null;
576
577 -- Procedure Update_Row
578
579 PROCEDURE Update_Row
580 ( p_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
581 )
582 IS
583 BEGIN
584
585 UPDATE OE_PRICING_CONTRACTS
589 , ATTRIBUTE11 = p_Contract_rec.attribute11
586 SET AGREEMENT_ID = p_Contract_rec.agreement_id
587 , ATTRIBUTE1 = p_Contract_rec.attribute1
588 , ATTRIBUTE10 = p_Contract_rec.attribute10
590 , ATTRIBUTE12 = p_Contract_rec.attribute12
591 , ATTRIBUTE13 = p_Contract_rec.attribute13
592 , ATTRIBUTE14 = p_Contract_rec.attribute14
593 , ATTRIBUTE15 = p_Contract_rec.attribute15
594 , ATTRIBUTE2 = p_Contract_rec.attribute2
595 , ATTRIBUTE3 = p_Contract_rec.attribute3
596 , ATTRIBUTE4 = p_Contract_rec.attribute4
597 , ATTRIBUTE5 = p_Contract_rec.attribute5
598 , ATTRIBUTE6 = p_Contract_rec.attribute6
599 , ATTRIBUTE7 = p_Contract_rec.attribute7
600 , ATTRIBUTE8 = p_Contract_rec.attribute8
601 , ATTRIBUTE9 = p_Contract_rec.attribute9
602 , CONTEXT = p_Contract_rec.context
603 , CREATED_BY = p_Contract_rec.created_by
604 , CREATION_DATE = p_Contract_rec.creation_date
605 , DISCOUNT_ID = p_Contract_rec.discount_id
606 , LAST_UPDATED_BY = p_Contract_rec.last_updated_by
607 , LAST_UPDATE_DATE = p_Contract_rec.last_update_date
608 , LAST_UPDATE_LOGIN = p_Contract_rec.last_update_login
609 , PRICE_LIST_ID = p_Contract_rec.price_list_id
610 , PRICING_CONTRACT_ID = p_Contract_rec.pricing_contract_id
611 WHERE PRICING_CONTRACT_ID = p_Contract_rec.pricing_contract_id
612 ;
613
614 EXCEPTION
615
616 WHEN OTHERS THEN
617
618 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
619 THEN
620 OE_MSG_PUB.Add_Exc_Msg
621 ( G_PKG_NAME
622 , 'Update_Row'
623 );
624 END IF;
625
626 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
627
628 END Update_Row;
629
630 -- Procedure Insert_Row
631
632 PROCEDURE Insert_Row
633 ( p_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
634 )
635 IS
636 BEGIN
637
638 oe_debug_pub.add('Entering OE_Contract_Util.Insert_Row');
639
640 INSERT INTO OE_PRICING_CONTRACTS
641 ( AGREEMENT_ID
642 , ATTRIBUTE1
643 , ATTRIBUTE10
644 , ATTRIBUTE11
645 , ATTRIBUTE12
646 , ATTRIBUTE13
647 , ATTRIBUTE14
648 , ATTRIBUTE15
649 , ATTRIBUTE2
650 , ATTRIBUTE3
651 , ATTRIBUTE4
652 , ATTRIBUTE5
653 , ATTRIBUTE6
654 , ATTRIBUTE7
655 , ATTRIBUTE8
656 , ATTRIBUTE9
657 , CONTEXT
658 , CREATED_BY
659 , CREATION_DATE
660 , DISCOUNT_ID
661 , LAST_UPDATED_BY
662 , LAST_UPDATE_DATE
663 , LAST_UPDATE_LOGIN
667 VALUES
664 , PRICE_LIST_ID
665 , PRICING_CONTRACT_ID
666 )
668 ( p_Contract_rec.agreement_id
669 , p_Contract_rec.attribute1
670 , p_Contract_rec.attribute10
671 , p_Contract_rec.attribute11
672 , p_Contract_rec.attribute12
673 , p_Contract_rec.attribute13
674 , p_Contract_rec.attribute14
675 , p_Contract_rec.attribute15
676 , p_Contract_rec.attribute2
677 , p_Contract_rec.attribute3
678 , p_Contract_rec.attribute4
679 , p_Contract_rec.attribute5
680 , p_Contract_rec.attribute6
681 , p_Contract_rec.attribute7
682 , p_Contract_rec.attribute8
683 , p_Contract_rec.attribute9
684 , p_Contract_rec.context
685 , p_Contract_rec.created_by
686 , p_Contract_rec.creation_date
687 , p_Contract_rec.discount_id
688 , p_Contract_rec.last_updated_by
689 , p_Contract_rec.last_update_date
690 , p_Contract_rec.last_update_login
691 , p_Contract_rec.price_list_id
692 , p_Contract_rec.pricing_contract_id
693 );
694
695 oe_debug_pub.add('Exiting OE_Contract_Util.Insert_Row');
696
697 EXCEPTION
698
699 WHEN OTHERS THEN
700
701 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
702 THEN
703 OE_MSG_PUB.Add_Exc_Msg
704 ( G_PKG_NAME
705 , 'Insert_Row'
706 );
707 END IF;
708
709 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
710
711 END Insert_Row;
712
713 -- Procedure Delete_Row
714
715 PROCEDURE Delete_Row
716 ( p_pricing_contract_id IN NUMBER
717 )
718 IS
719 BEGIN
720
721 DELETE FROM OE_PRICING_CONTRACTS
722 WHERE PRICING_CONTRACT_ID = p_pricing_contract_id
723 ;
724
725 EXCEPTION
726
727 WHEN OTHERS THEN
728
729 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
730 THEN
731 OE_MSG_PUB.Add_Exc_Msg
732 ( G_PKG_NAME
733 , 'Delete_Row'
734 );
735 END IF;
736
737 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
738
739 END Delete_Row;
740
741 -- Function Query_Row
742
743 FUNCTION Query_Row
744 ( p_pricing_contract_id IN NUMBER
745 ) RETURN OE_Pricing_Cont_PUB.Contract_Rec_Type
746 IS
747 l_Contract_rec OE_Pricing_Cont_PUB.Contract_Rec_Type;
748 BEGIN
749
750 SELECT AGREEMENT_ID
751 , ATTRIBUTE1
752 , ATTRIBUTE10
753 , ATTRIBUTE11
754 , ATTRIBUTE12
755 , ATTRIBUTE13
756 , ATTRIBUTE14
757 , ATTRIBUTE15
758 , ATTRIBUTE2
759 , ATTRIBUTE3
760 , ATTRIBUTE4
761 , ATTRIBUTE5
762 , ATTRIBUTE6
763 , ATTRIBUTE7
764 , ATTRIBUTE8
765 , ATTRIBUTE9
766 , CONTEXT
767 , CREATED_BY
768 , CREATION_DATE
769 , DISCOUNT_ID
770 , LAST_UPDATED_BY
771 , LAST_UPDATE_DATE
772 , LAST_UPDATE_LOGIN
776 , l_Contract_rec.attribute1
773 , PRICE_LIST_ID
774 , PRICING_CONTRACT_ID
775 INTO l_Contract_rec.agreement_id
777 , l_Contract_rec.attribute10
778 , l_Contract_rec.attribute11
779 , l_Contract_rec.attribute12
780 , l_Contract_rec.attribute13
781 , l_Contract_rec.attribute14
782 , l_Contract_rec.attribute15
783 , l_Contract_rec.attribute2
784 , l_Contract_rec.attribute3
785 , l_Contract_rec.attribute4
786 , l_Contract_rec.attribute5
787 , l_Contract_rec.attribute6
788 , l_Contract_rec.attribute7
789 , l_Contract_rec.attribute8
790 , l_Contract_rec.attribute9
791 , l_Contract_rec.context
792 , l_Contract_rec.created_by
793 , l_Contract_rec.creation_date
794 , l_Contract_rec.discount_id
795 , l_Contract_rec.last_updated_by
796 , l_Contract_rec.last_update_date
797 , l_Contract_rec.last_update_login
798 , l_Contract_rec.price_list_id
799 , l_Contract_rec.pricing_contract_id
800 FROM OE_PRICING_CONTRACTS
801 WHERE PRICING_CONTRACT_ID = p_pricing_contract_id
802 ;
803
804 RETURN l_Contract_rec;
805
806 EXCEPTION
807
811 THEN
808 WHEN OTHERS THEN
809
810 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
812 OE_MSG_PUB.Add_Exc_Msg
813 ( G_PKG_NAME
814 , 'Query_Row'
815 );
816 END IF;
817
818 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
819
820 END Query_Row;
821
822 -- Procedure lock_Row
823 --
824
825 PROCEDURE Lock_Row
826 ( x_return_status OUT VARCHAR2
827 , p_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
828 , x_Contract_rec OUT OE_Pricing_Cont_PUB.Contract_Rec_Type
829 )
830 IS
831 l_Contract_rec OE_Pricing_Cont_PUB.Contract_Rec_Type;
832 BEGIN
833
834 SELECT AGREEMENT_ID
835 , ATTRIBUTE1
836 , ATTRIBUTE10
837 , ATTRIBUTE11
838 , ATTRIBUTE12
839 , ATTRIBUTE13
840 , ATTRIBUTE14
841 , ATTRIBUTE15
842 , ATTRIBUTE2
843 , ATTRIBUTE3
844 , ATTRIBUTE4
845 , ATTRIBUTE5
846 , ATTRIBUTE6
847 , ATTRIBUTE7
848 , ATTRIBUTE8
849 , ATTRIBUTE9
850 , CONTEXT
851 , CREATED_BY
852 , CREATION_DATE
853 , DISCOUNT_ID
854 , LAST_UPDATED_BY
855 , LAST_UPDATE_DATE
856 , LAST_UPDATE_LOGIN
857 , PRICE_LIST_ID
858 , PRICING_CONTRACT_ID
859 INTO l_Contract_rec.agreement_id
860 , l_Contract_rec.attribute1
861 , l_Contract_rec.attribute10
862 , l_Contract_rec.attribute11
863 , l_Contract_rec.attribute12
864 , l_Contract_rec.attribute13
865 , l_Contract_rec.attribute14
866 , l_Contract_rec.attribute15
867 , l_Contract_rec.attribute2
868 , l_Contract_rec.attribute3
869 , l_Contract_rec.attribute4
870 , l_Contract_rec.attribute5
871 , l_Contract_rec.attribute6
872 , l_Contract_rec.attribute7
873 , l_Contract_rec.attribute8
874 , l_Contract_rec.attribute9
875 , l_Contract_rec.context
876 , l_Contract_rec.created_by
877 , l_Contract_rec.creation_date
878 , l_Contract_rec.discount_id
879 , l_Contract_rec.last_updated_by
880 , l_Contract_rec.last_update_date
881 , l_Contract_rec.last_update_login
882 , l_Contract_rec.price_list_id
883 , l_Contract_rec.pricing_contract_id
884 FROM OE_PRICING_CONTRACTS
885 WHERE PRICING_CONTRACT_ID = p_Contract_rec.pricing_contract_id
886 FOR UPDATE NOWAIT;
887
888 -- Row locked. Compare IN attributes to DB attributes.
889
890 IF ( (l_Contract_rec.agreement_id =
891 p_Contract_rec.agreement_id) OR
892 ((p_Contract_rec.agreement_id = FND_API.G_MISS_NUM) OR
893 ( (l_Contract_rec.agreement_id IS NULL) AND
894 (p_Contract_rec.agreement_id IS NULL))))
895 AND ( (l_Contract_rec.attribute1 =
896 p_Contract_rec.attribute1) OR
897 ((p_Contract_rec.attribute1 = FND_API.G_MISS_CHAR) OR
898 ( (l_Contract_rec.attribute1 IS NULL) AND
899 (p_Contract_rec.attribute1 IS NULL))))
900 AND ( (l_Contract_rec.attribute10 =
901 p_Contract_rec.attribute10) OR
902 ((p_Contract_rec.attribute10 = FND_API.G_MISS_CHAR) OR
903 ( (l_Contract_rec.attribute10 IS NULL) AND
904 (p_Contract_rec.attribute10 IS NULL))))
905 AND ( (l_Contract_rec.attribute11 =
906 p_Contract_rec.attribute11) OR
907 ((p_Contract_rec.attribute11 = FND_API.G_MISS_CHAR) OR
908 ( (l_Contract_rec.attribute11 IS NULL) AND
909 (p_Contract_rec.attribute11 IS NULL))))
910 AND ( (l_Contract_rec.attribute12 =
911 p_Contract_rec.attribute12) OR
912 ((p_Contract_rec.attribute12 = FND_API.G_MISS_CHAR) OR
913 ( (l_Contract_rec.attribute12 IS NULL) AND
914 (p_Contract_rec.attribute12 IS NULL))))
915 AND ( (l_Contract_rec.attribute13 =
916 p_Contract_rec.attribute13) OR
917 ((p_Contract_rec.attribute13 = FND_API.G_MISS_CHAR) OR
918 ( (l_Contract_rec.attribute13 IS NULL) AND
919 (p_Contract_rec.attribute13 IS NULL))))
920 AND ( (l_Contract_rec.attribute14 =
921 p_Contract_rec.attribute14) OR
922 ((p_Contract_rec.attribute14 = FND_API.G_MISS_CHAR) OR
923 ( (l_Contract_rec.attribute14 IS NULL) AND
924 (p_Contract_rec.attribute14 IS NULL))))
925 AND ( (l_Contract_rec.attribute15 =
926 p_Contract_rec.attribute15) OR
927 ((p_Contract_rec.attribute15 = FND_API.G_MISS_CHAR) OR
928 ( (l_Contract_rec.attribute15 IS NULL) AND
929 (p_Contract_rec.attribute15 IS NULL))))
930 AND ( (l_Contract_rec.attribute2 =
931 p_Contract_rec.attribute2) OR
932 ((p_Contract_rec.attribute2 = FND_API.G_MISS_CHAR) OR
933 ( (l_Contract_rec.attribute2 IS NULL) AND
934 (p_Contract_rec.attribute2 IS NULL))))
935 AND ( (l_Contract_rec.attribute3 =
939 (p_Contract_rec.attribute3 IS NULL))))
936 p_Contract_rec.attribute3) OR
937 ((p_Contract_rec.attribute3 = FND_API.G_MISS_CHAR) OR
938 ( (l_Contract_rec.attribute3 IS NULL) AND
940 AND ( (l_Contract_rec.attribute4 =
941 p_Contract_rec.attribute4) OR
942 ((p_Contract_rec.attribute4 = FND_API.G_MISS_CHAR) OR
943 ( (l_Contract_rec.attribute4 IS NULL) AND
944 (p_Contract_rec.attribute4 IS NULL))))
945 AND ( (l_Contract_rec.attribute5 =
946 p_Contract_rec.attribute5) OR
947 ((p_Contract_rec.attribute5 = FND_API.G_MISS_CHAR) OR
948 ( (l_Contract_rec.attribute5 IS NULL) AND
949 (p_Contract_rec.attribute5 IS NULL))))
950 AND ( (l_Contract_rec.attribute6 =
951 p_Contract_rec.attribute6) OR
952 ((p_Contract_rec.attribute6 = FND_API.G_MISS_CHAR) OR
953 ( (l_Contract_rec.attribute6 IS NULL) AND
954 (p_Contract_rec.attribute6 IS NULL))))
955 AND ( (l_Contract_rec.attribute7 =
956 p_Contract_rec.attribute7) OR
957 ((p_Contract_rec.attribute7 = FND_API.G_MISS_CHAR) OR
958 ( (l_Contract_rec.attribute7 IS NULL) AND
959 (p_Contract_rec.attribute7 IS NULL))))
960 AND ( (l_Contract_rec.attribute8 =
961 p_Contract_rec.attribute8) OR
962 ((p_Contract_rec.attribute8 = FND_API.G_MISS_CHAR) OR
963 ( (l_Contract_rec.attribute8 IS NULL) AND
964 (p_Contract_rec.attribute8 IS NULL))))
965 AND ( (l_Contract_rec.attribute9 =
966 p_Contract_rec.attribute9) OR
967 ((p_Contract_rec.attribute9 = FND_API.G_MISS_CHAR) OR
968 ( (l_Contract_rec.attribute9 IS NULL) AND
969 (p_Contract_rec.attribute9 IS NULL))))
970 AND ( (l_Contract_rec.context =
971 p_Contract_rec.context) OR
972 ((p_Contract_rec.context = FND_API.G_MISS_CHAR) OR
973 ( (l_Contract_rec.context IS NULL) AND
974 (p_Contract_rec.context IS NULL))))
975 AND ( (l_Contract_rec.created_by =
976 p_Contract_rec.created_by) OR
977 ((p_Contract_rec.created_by = FND_API.G_MISS_NUM) OR
978 ( (l_Contract_rec.created_by IS NULL) AND
979 (p_Contract_rec.created_by IS NULL))))
980 AND ( (l_Contract_rec.creation_date =
981 p_Contract_rec.creation_date) OR
982 ((p_Contract_rec.creation_date = FND_API.G_MISS_DATE) OR
983 ( (l_Contract_rec.creation_date IS NULL) AND
984 (p_Contract_rec.creation_date IS NULL))))
985 AND ( (l_Contract_rec.discount_id =
986 p_Contract_rec.discount_id) OR
987 ((p_Contract_rec.discount_id = FND_API.G_MISS_NUM) OR
988 ( (l_Contract_rec.discount_id IS NULL) AND
989 (p_Contract_rec.discount_id IS NULL))))
990 AND ( (l_Contract_rec.last_updated_by =
991 p_Contract_rec.last_updated_by) OR
992 ((p_Contract_rec.last_updated_by = FND_API.G_MISS_NUM) OR
993 ( (l_Contract_rec.last_updated_by IS NULL) AND
994 (p_Contract_rec.last_updated_by IS NULL))))
995 AND ( (l_Contract_rec.last_update_date =
996 p_Contract_rec.last_update_date) OR
997 ((p_Contract_rec.last_update_date = FND_API.G_MISS_DATE) OR
998 ( (l_Contract_rec.last_update_date IS NULL) AND
999 (p_Contract_rec.last_update_date IS NULL))))
1000 AND ( (l_Contract_rec.last_update_login =
1001 p_Contract_rec.last_update_login) OR
1002 ((p_Contract_rec.last_update_login = FND_API.G_MISS_NUM) OR
1003 ( (l_Contract_rec.last_update_login IS NULL) AND
1004 (p_Contract_rec.last_update_login IS NULL))))
1005 AND ( (l_Contract_rec.price_list_id =
1006 p_Contract_rec.price_list_id) OR
1007 ((p_Contract_rec.price_list_id = FND_API.G_MISS_NUM) OR
1008 ( (l_Contract_rec.price_list_id IS NULL) AND
1009 (p_Contract_rec.price_list_id IS NULL))))
1010 AND ( (l_Contract_rec.pricing_contract_id =
1011 p_Contract_rec.pricing_contract_id) OR
1012 ((p_Contract_rec.pricing_contract_id = FND_API.G_MISS_NUM) OR
1013 ( (l_Contract_rec.pricing_contract_id IS NULL) AND
1014 (p_Contract_rec.pricing_contract_id IS NULL))))
1015 THEN
1016
1017 -- Row has not changed. Set out parameter.
1018
1019 x_Contract_rec := l_Contract_rec;
1020
1021 -- Set return status
1022
1023 x_return_status := FND_API.G_RET_STS_SUCCESS;
1024 x_Contract_rec.return_status := FND_API.G_RET_STS_SUCCESS;
1025
1026 ELSE
1027
1028 -- Row has changed by another user.
1029
1030 x_return_status := FND_API.G_RET_STS_ERROR;
1031 x_Contract_rec.return_status := FND_API.G_RET_STS_ERROR;
1032
1033 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
1034 THEN
1035
1036 FND_MESSAGE.SET_NAME('OE','OE_LOCK_ROW_CHANGED');
1037 OE_MSG_PUB.Add;
1038
1039 END IF;
1040
1041 END IF;
1042
1043 EXCEPTION
1044
1048 x_Contract_rec.return_status := FND_API.G_RET_STS_ERROR;
1045 WHEN NO_DATA_FOUND THEN
1046
1047 x_return_status := FND_API.G_RET_STS_ERROR;
1049
1050 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
1051 THEN
1052
1053 FND_MESSAGE.SET_NAME('OE','OE_LOCK_ROW_DELETED');
1054 OE_MSG_PUB.Add;
1055
1056 END IF;
1057 WHEN APP_EXCEPTIONS.RECORD_LOCK_EXCEPTION THEN
1058
1059 x_return_status := FND_API.G_RET_STS_ERROR;
1060 x_Contract_rec.return_status := FND_API.G_RET_STS_ERROR;
1061
1062 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
1063 THEN
1064
1065 FND_MESSAGE.SET_NAME('OE','OE_LOCK_ROW_ALREADY_LOCKED');
1066 OE_MSG_PUB.Add;
1067
1068 END IF;
1069 WHEN OTHERS THEN
1070
1071 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1072 x_Contract_rec.return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1073
1074 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
1075 THEN
1076 OE_MSG_PUB.Add_Exc_Msg
1077 ( G_PKG_NAME
1078 , 'Lock_Row'
1079 );
1080 END IF;
1081
1082 END Lock_Row;
1083
1084 -- Function Get_Values
1085
1086 FUNCTION Get_Values
1090 ) RETURN OE_Pricing_Cont_PUB.Contract_Val_Rec_Type
1087 ( p_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
1088 , p_old_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type :=
1089 OE_Pricing_Cont_PUB.G_MISS_CONTRACT_REC
1091 IS
1092 l_Contract_val_rec OE_Pricing_Cont_PUB.Contract_Val_Rec_Type;
1093 BEGIN
1094
1095 IF p_Contract_rec.agreement_id IS NOT NULL AND
1096 p_Contract_rec.agreement_id <> FND_API.G_MISS_NUM AND
1097 NOT OE_GLOBALS.Equal(p_Contract_rec.agreement_id,
1098 p_old_Contract_rec.agreement_id)
1099 THEN
1100 l_Contract_val_rec.agreement := OE_Id_To_Value.Agreement
1101 ( p_agreement_id => p_Contract_rec.agreement_id
1102 );
1103 END IF;
1104
1105 IF p_Contract_rec.discount_id IS NOT NULL AND
1106 p_Contract_rec.discount_id <> FND_API.G_MISS_NUM AND
1107 NOT OE_GLOBALS.Equal(p_Contract_rec.discount_id,
1108 p_old_Contract_rec.discount_id)
1109 THEN
1110 l_Contract_val_rec.discount := OE_Id_To_Value.Discount
1111 ( p_discount_id => p_Contract_rec.discount_id
1112 );
1113 END IF;
1114
1115 IF p_Contract_rec.price_list_id IS NOT NULL AND
1116 p_Contract_rec.price_list_id <> FND_API.G_MISS_NUM AND
1117 NOT OE_GLOBALS.Equal(p_Contract_rec.price_list_id,
1118 p_old_Contract_rec.price_list_id)
1119 THEN
1120 l_Contract_val_rec.price_list := OE_Id_To_Value.Price_List
1121 ( p_price_list_id => p_Contract_rec.price_list_id
1122 );
1123 END IF;
1124
1125 RETURN l_Contract_val_rec;
1126
1127 END Get_Values;
1128
1129 -- Function Get_Ids
1130
1131 FUNCTION Get_Ids
1132 ( p_Contract_rec IN OE_Pricing_Cont_PUB.Contract_Rec_Type
1133 , p_Contract_val_rec IN OE_Pricing_Cont_PUB.Contract_Val_Rec_Type
1134 ) RETURN OE_Pricing_Cont_PUB.Contract_Rec_Type
1135 IS
1136 l_Contract_rec OE_Pricing_Cont_PUB.Contract_Rec_Type;
1137 BEGIN
1138
1139 -- initialize return_status.
1140
1141 l_Contract_rec.return_status := FND_API.G_RET_STS_SUCCESS;
1142
1143 -- initialize l_Contract_rec.
1144
1145 l_Contract_rec := p_Contract_rec;
1146
1147 IF p_Contract_val_rec.agreement <> FND_API.G_MISS_CHAR
1148 THEN
1149
1150 IF p_Contract_rec.agreement_id <> FND_API.G_MISS_NUM THEN
1151
1152 l_Contract_rec.agreement_id := p_Contract_rec.agreement_id;
1153
1154 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1155 THEN
1156
1157 FND_MESSAGE.SET_NAME('OE','FND_BOTH_VAL_AND_ID_EXIST');
1158 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','agreement');
1159 OE_MSG_PUB.Add;
1160
1161 END IF;
1162
1163 ELSE
1164
1165 l_Contract_rec.agreement_id := OE_Value_To_Id.agreement
1166 ( p_agreement => p_Contract_val_rec.agreement
1167 );
1168
1169 IF l_Contract_rec.agreement_id = FND_API.G_MISS_NUM THEN
1170 l_Contract_rec.return_status := FND_API.G_RET_STS_ERROR;
1171 END IF;
1172
1173 END IF;
1174
1175 END IF;
1176
1180 IF p_Contract_rec.discount_id <> FND_API.G_MISS_NUM THEN
1177 IF p_Contract_val_rec.discount <> FND_API.G_MISS_CHAR
1178 THEN
1179
1181
1182 l_Contract_rec.discount_id := p_Contract_rec.discount_id;
1183
1184 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1185 THEN
1186
1187 FND_MESSAGE.SET_NAME('OE','FND_BOTH_VAL_AND_ID_EXIST');
1188 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','discount');
1189 OE_MSG_PUB.Add;
1190
1191 END IF;
1192
1193 ELSE
1194
1195 l_Contract_rec.discount_id := OE_Value_To_Id.discount
1196 ( p_discount => p_Contract_val_rec.discount
1197 );
1198
1199 IF l_Contract_rec.discount_id = FND_API.G_MISS_NUM THEN
1200 l_Contract_rec.return_status := FND_API.G_RET_STS_ERROR;
1201 END IF;
1202
1203 END IF;
1204
1205 END IF;
1206
1207 IF p_Contract_val_rec.price_list <> FND_API.G_MISS_CHAR
1208 THEN
1209
1210 IF p_Contract_rec.price_list_id <> FND_API.G_MISS_NUM THEN
1211
1212 l_Contract_rec.price_list_id := p_Contract_rec.price_list_id;
1213
1214 IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_SUCCESS)
1215 THEN
1216
1217 FND_MESSAGE.SET_NAME('OE','FND_BOTH_VAL_AND_ID_EXIST');
1218 FND_MESSAGE.SET_TOKEN('ATTRIBUTE','price_list');
1219 OE_MSG_PUB.Add;
1220
1221 END IF;
1222
1223 ELSE
1224
1225 l_Contract_rec.price_list_id := OE_Value_To_Id.price_list
1226 ( p_price_list => p_Contract_val_rec.price_list
1227 );
1228
1229 IF l_Contract_rec.price_list_id = FND_API.G_MISS_NUM THEN
1230 l_Contract_rec.return_status := FND_API.G_RET_STS_ERROR;
1231 END IF;
1232
1233 END IF;
1234
1235 END IF;
1236
1237
1238 RETURN l_Contract_rec;
1239
1240 END Get_Ids;
1241
1242 END OE_Contract_Util;