[Home] [Help]
PACKAGE BODY: APPS.CN_PMT_PLANS_PKG
Source
1 PACKAGE BODY CN_PMT_PLANS_PKG as
2 -- $Header: cnpplntb.pls 120.2 2005/10/06 00:38:29 raramasa ship $
3
4
5 g_temp_status_code VARCHAR2(30) := NULL;
6 g_program_type VARCHAR2(30) := NULL;
7
8 --*****************************************************************************
9 -- Procedure Name : Get_UID
10 -- Purpose : Get the Sequence Number to Create a new Payment Plan.
11 --*****************************************************************************
12
13 PROCEDURE Get_UID( X_pmt_plan_id IN OUT NOCOPY NUMBER) IS
14
15 BEGIN
16
17 SELECT cn_pmt_plans_s.nextval
18 INTO X_pmt_plan_id
19 FROM sys.dual;
20
21 END Get_UID;
22
23
24 --*****************************************************************************
25 -- Procedure Name : Insert_Record
26 -- Purpose : Main insert procedure
27 --*****************************************************************************
28
29 PROCEDURE Insert_Record(
30 x_Rowid IN OUT NOCOPY VARCHAR2
31 ,x_org_id cn_pmt_plans.org_id%TYPE
32 ,x_pmt_plan_id IN OUT NOCOPY NUMBER
33 ,x_name cn_pmt_plans.name%TYPE
34 ,x_minimum_amount cn_pmt_plans.minimum_amount%TYPE
35 ,x_maximum_amount cn_pmt_plans.maximum_amount%TYPE
36 ,x_min_rec_flag cn_pmt_plans.min_rec_flag%TYPE
37 ,x_max_rec_flag cn_pmt_plans.max_rec_flag%TYPE
38 ,x_max_recovery_amount cn_pmt_plans.max_recovery_amount%TYPE
39 ,x_credit_type_id cn_pmt_plans.credit_type_id%TYPE
40 ,x_pay_interval_type_id cn_pmt_plans.pay_interval_type_id%TYPE
41 ,x_start_date cn_pmt_plans.start_date%TYPE
42 ,x_end_date cn_pmt_plans.end_date%TYPE
43 ,x_recoverable_interval_type_id cn_pmt_plans.recoverable_interval_type_id%TYPE
44 ,x_pay_against_commission cn_pmt_plans.pay_against_commission%TYPE
45 ,x_attribute_category cn_pmt_plans.attribute_category%TYPE
46 ,x_attribute1 cn_pmt_plans.attribute1%TYPE
47 ,x_attribute2 cn_pmt_plans.attribute2%TYPE
48 ,x_attribute3 cn_pmt_plans.attribute3%TYPE
49 ,x_attribute4 cn_pmt_plans.attribute4%TYPE
50 ,x_attribute5 cn_pmt_plans.attribute5%TYPE
51 ,x_attribute6 cn_pmt_plans.attribute6%TYPE
52 ,x_attribute7 cn_pmt_plans.attribute7%TYPE
53 ,x_attribute8 cn_pmt_plans.attribute8%TYPE
54 ,x_attribute9 cn_pmt_plans.attribute9%TYPE
55 ,x_attribute10 cn_pmt_plans.attribute10%TYPE
56 ,x_attribute11 cn_pmt_plans.attribute11%TYPE
57 ,x_attribute12 cn_pmt_plans.attribute12%TYPE
58 ,x_attribute13 cn_pmt_plans.attribute13%TYPE
59 ,x_attribute14 cn_pmt_plans.attribute14%TYPE
60 ,x_attribute15 cn_pmt_plans.attribute15%TYPE
61 ,x_Created_By cn_pmt_plans.created_by%TYPE
62 ,x_Creation_Date cn_pmt_plans.creation_date%TYPE
63 ,x_Last_Updated_By cn_pmt_plans.last_updated_by%TYPE
64 ,x_Last_Update_Date cn_pmt_plans.last_update_date%TYPE
65 ,x_Last_Update_Login cn_pmt_plans.last_update_login%TYPE
66 ,x_Payment_Group_Code cn_pmt_plans.payment_group_code%TYPE
67 ,x_object_version_number IN OUT NOCOPY cn_pmt_plans.object_version_number%TYPE
68 )
69 IS
70
71 BEGIN
72
73 IF x_pmt_plan_id is null
74 THEN
75 Get_UID( X_pmt_plan_id );
76 END IF;
77
78 x_object_version_number := 1;
79
80 INSERT INTO cn_pmt_plans(
81 org_id
82 ,pmt_plan_id
83 ,name
84 ,minimum_amount
85 ,maximum_amount
86 ,min_rec_flag
87 ,max_rec_flag
88 ,max_recovery_amount
89 ,credit_type_id
90 ,pay_interval_type_id
91 ,start_date
92 ,end_date
93 ,object_version_number
94 ,recoverable_interval_type_id
95 ,pay_against_commission
96 ,attribute_category
97 ,attribute1
98 ,attribute2
99 ,attribute3
100 ,attribute4
101 ,attribute5
102 ,attribute6
103 ,attribute7
104 ,attribute8
105 ,attribute9
106 ,attribute10
107 ,attribute11
108 ,attribute12
109 ,attribute13
110 ,attribute14
111 ,attribute15
112 ,Created_By
113 ,Creation_Date
114 ,Last_Updated_By
115 ,Last_Update_Date
116 ,Last_Update_Login
117 ,payment_group_code)
118 VALUES (
119 x_org_id
120 ,x_pmt_plan_id
121 ,x_name
122 ,x_minimum_amount
123 ,x_maximum_amount
124 ,x_min_rec_flag
125 ,x_max_rec_flag
126 ,x_max_recovery_amount
127 ,x_credit_type_id
128 ,x_pay_interval_type_id
129 ,x_start_date
130 ,x_end_date
131 ,x_object_version_number
132 ,x_recoverable_interval_type_id
133 ,x_pay_against_commission
134 ,x_attribute_category
135 ,x_attribute1
136 ,x_attribute2
137 ,x_attribute3
138 ,x_attribute4
139 ,x_attribute5
140 ,x_attribute6
141 ,x_attribute7
142 ,x_attribute8
143 ,x_attribute9
144 ,x_attribute10
145 ,x_attribute11
146 ,x_attribute12
147 ,x_attribute13
148 ,x_attribute14
149 ,x_attribute15
150 ,x_Created_By
151 ,x_Creation_Date
152 ,x_Last_Updated_By
153 ,x_Last_Update_Date
154 ,x_Last_Update_Login
155 ,x_Payment_Group_Code
156 );
157
158 END Insert_Record;
159
160
161 --*****************************************************************************
162 -- Procedure Name : Lock_Record
163 -- Purpose : Lock db row after form record is changed
164 -- Notes : Only called from the form
165 --*****************************************************************************
166
167 PROCEDURE Lock_Record( x_Rowid VARCHAR2
168 ,x_pmt_plan_id NUMBER) IS
169
170 CURSOR C IS
171 SELECT *
172 FROM cn_pmt_plans
173 WHERE pmt_plan_id = x_pmt_plan_id
174 FOR UPDATE of pmt_plan_id NOWAIT;
175 Recinfo C%ROWTYPE;
176
177 BEGIN
178 OPEN C;
179 FETCH C INTO Recinfo;
180
181 IF (C%NOTFOUND) then
182 CLOSE C;
183 fnd_message.Set_Name('FND', 'FORM_RECORD_DELETED');
184 app_exception.raise_exception;
185 END IF;
186
187 CLOSE C;
188
189 IF Recinfo.pmt_plan_id = x_pmt_plan_id
190 THEN
191 RETURN;
192 ELSE
193 fnd_message.Set_Name('FND', 'FORM_RECORD_CHANGED');
194 app_exception.raise_exception;
195 END IF;
196 END Lock_Record;
197
198
199 --*****************************************************************************
200 -- Procedure Name : Update Record
201 -- Purpose : To Update the Payment Plans
202 --*****************************************************************************
203
204 PROCEDURE Update_Record(
205 x_org_id cn_pmt_plans.org_id%TYPE
206 ,x_pmt_plan_id NUMBER
207 ,x_name cn_pmt_plans.name%TYPE := fnd_api.g_miss_char
208 ,x_minimum_amount cn_pmt_plans.minimum_amount%TYPE := fnd_api.g_miss_num
209 ,x_maximum_amount cn_pmt_plans.maximum_amount%TYPE := fnd_api.g_miss_num
210 ,x_max_recovery_amount cn_pmt_plans.max_recovery_amount%TYPE := fnd_api.g_miss_num
211 ,x_min_rec_flag cn_pmt_plans.min_rec_flag%TYPE := fnd_api.g_miss_char
212 ,x_max_rec_flag cn_pmt_plans.max_rec_flag%TYPE := fnd_api.g_miss_char
213 ,x_credit_type_id cn_pmt_plans.credit_type_id%TYPE := cn_api.g_miss_id
214 ,x_pay_interval_type_id cn_pmt_plans.pay_interval_type_id%TYPE := cn_api.g_miss_id
215 ,x_start_date cn_pmt_plans.start_date%TYPE := fnd_api.g_miss_date
216 ,x_end_date cn_pmt_plans.end_date%TYPE := fnd_api.g_miss_date
217 ,x_object_version_number IN OUT NOCOPY cn_pmt_plans.object_version_number%TYPE
218 ,x_recoverable_interval_type_id cn_pmt_plans.recoverable_interval_type_id%TYPE := fnd_api.g_miss_char
219 ,x_pay_against_commission cn_pmt_plans.pay_against_commission%TYPE := fnd_api.g_miss_char
220 ,x_attribute_category cn_pmt_plans.attribute_category%TYPE := fnd_api.g_miss_char
221 ,x_attribute1 cn_pmt_plans.attribute1%TYPE := fnd_api.g_miss_char
222 ,x_attribute2 cn_pmt_plans.attribute2%TYPE := fnd_api.g_miss_char
223 ,x_attribute3 cn_pmt_plans.attribute3%TYPE := fnd_api.g_miss_char
224 ,x_attribute4 cn_pmt_plans.attribute4%TYPE := fnd_api.g_miss_char
225 ,x_attribute5 cn_pmt_plans.attribute5%TYPE := fnd_api.g_miss_char
226 ,x_attribute6 cn_pmt_plans.attribute6%TYPE := fnd_api.g_miss_char
227 ,x_attribute7 cn_pmt_plans.attribute7%TYPE := fnd_api.g_miss_char
228 ,x_attribute8 cn_pmt_plans.attribute8%TYPE := fnd_api.g_miss_char
229 ,x_attribute9 cn_pmt_plans.attribute9%TYPE := fnd_api.g_miss_char
230 ,x_attribute10 cn_pmt_plans.attribute10%TYPE := fnd_api.g_miss_char
231 ,x_attribute11 cn_pmt_plans.attribute11%TYPE := fnd_api.g_miss_char
232 ,x_attribute12 cn_pmt_plans.attribute12%TYPE := fnd_api.g_miss_char
233 ,x_attribute13 cn_pmt_plans.attribute13%TYPE := fnd_api.g_miss_char
234 ,x_attribute14 cn_pmt_plans.attribute14%TYPE := fnd_api.g_miss_char
235 ,x_attribute15 cn_pmt_plans.attribute15%TYPE := fnd_api.g_miss_char
236 ,x_Last_Updated_By cn_pmt_plans.last_updated_by%TYPE
237 ,x_Last_Update_Date cn_pmt_plans.last_update_date%TYPE
238 ,x_Last_Update_Login cn_pmt_plans.last_update_login%TYPE
239 ,x_Payment_Group_Code cn_pmt_plans.payment_group_code%TYPE := fnd_api.g_miss_char
240 ) IS
241
242 l_org_id cn_pmt_plans.org_id%TYPE;
243 l_name cn_pmt_plans.name%TYPE;
244 l_minimum_amount cn_pmt_plans.minimum_amount%TYPE;
245 l_maximum_amount cn_pmt_plans.maximum_amount%TYPE;
246 l_min_rec_flag cn_pmt_plans.min_rec_flag%TYPE;
247 l_max_rec_flag cn_pmt_plans.max_rec_flag%TYPE;
248 l_max_recovery_amount cn_pmt_plans.max_recovery_amount%TYPE;
249 l_credit_type_id cn_pmt_plans.credit_type_id%TYPE;
250 l_pay_interval_type_id cn_pmt_plans.pay_interval_type_id%TYPE;
251 l_start_date cn_pmt_plans.start_date%TYPE;
252 l_end_date cn_pmt_plans.end_date%TYPE;
253 l_recoverable_interval_type_id cn_pmt_plans.recoverable_interval_type_id%TYPE;
254 l_pay_against_commission cn_pmt_plans.pay_against_commission%TYPE;
255 l_payment_group_code cn_pmt_plans.payment_group_code%TYPE;
256
257 l_attribute_category cn_pmt_plans.attribute_category%TYPE;
258 l_attribute1 cn_pmt_plans.attribute1%TYPE;
259 l_attribute2 cn_pmt_plans.attribute2%TYPE;
260 l_attribute3 cn_pmt_plans.attribute3%TYPE;
261 l_attribute4 cn_pmt_plans.attribute4%TYPE;
262 l_attribute5 cn_pmt_plans.attribute5%TYPE;
263 l_attribute6 cn_pmt_plans.attribute6%TYPE;
264 l_attribute7 cn_pmt_plans.attribute7%TYPE;
265 l_attribute8 cn_pmt_plans.attribute8%TYPE;
266 l_attribute9 cn_pmt_plans.attribute9%TYPE;
267 l_attribute10 cn_pmt_plans.attribute10%TYPE;
268 l_attribute11 cn_pmt_plans.attribute11%TYPE;
269 l_attribute12 cn_pmt_plans.attribute12%TYPE;
270 l_attribute13 cn_pmt_plans.attribute13%TYPE;
271 l_attribute14 cn_pmt_plans.attribute14%TYPE;
272 l_attribute15 cn_pmt_plans.attribute15%TYPE;
273
274 CURSOR pmt_plan_cur IS
275 SELECT *
276 FROM cn_pmt_plans
277 WHERE pmt_plan_id = x_pmt_plan_id;
278
279 l_pmt_plan_rec pmt_plan_cur%ROWTYPE;
280
281 BEGIN
282 OPEN pmt_plan_cur;
283 FETCH pmt_plan_cur INTO l_pmt_plan_rec;
284 CLOSE pmt_plan_cur;
285
286 SELECT decode(x_name,
287 fnd_api.g_miss_char, l_pmt_plan_rec.name,
288 x_name),
289 decode(x_minimum_amount,
290 fnd_api.g_miss_num, l_pmt_plan_rec.minimum_amount,
291 x_minimum_amount),
292 decode(x_maximum_amount,
293 fnd_api.g_miss_num, l_pmt_plan_rec.maximum_amount,
294 x_maximum_amount),
295 decode(x_min_rec_flag,
296 fnd_api.g_miss_char, l_pmt_plan_rec.min_rec_flag,
297 x_min_rec_flag),
298 decode(x_max_rec_flag,
299 fnd_api.g_miss_char, l_pmt_plan_rec.max_rec_flag,
300 x_max_rec_flag),
301 decode(x_max_recovery_amount,
302 fnd_api.g_miss_num, l_pmt_plan_rec.max_recovery_amount,
303 x_max_recovery_amount),
304 decode(x_credit_type_id,
305 cn_api.g_miss_id, l_pmt_plan_rec.credit_type_id,
306 x_credit_type_id),
307 decode(x_pay_interval_type_id,
308 cn_api.g_miss_id, l_pmt_plan_rec.pay_interval_type_id,
309 x_pay_interval_type_id),
310 decode(x_start_date,
311 fnd_api.g_miss_date, l_pmt_plan_rec.start_date,
312 x_start_date),
313 decode(x_end_date,
314 fnd_api.g_miss_date, l_pmt_plan_rec.end_date,
315 x_end_date),
316 decode(x_recoverable_interval_type_id,
317 fnd_api.g_miss_char, l_pmt_plan_rec.recoverable_interval_type_id,
318 x_recoverable_interval_type_id),
319 decode(x_pay_against_commission,
320 fnd_api.g_miss_char, l_pmt_plan_rec.pay_against_commission,
321 x_pay_against_commission),
322 decode(x_attribute_category,
323 fnd_api.g_miss_char, l_pmt_plan_rec.attribute_category,
324 x_attribute_category),
325 decode(x_attribute1,
326 fnd_api.g_miss_char, l_pmt_plan_rec.attribute1,
327 x_attribute1),
328 decode(x_attribute2,
329 fnd_api.g_miss_char, l_pmt_plan_rec.attribute2,
330 x_attribute2),
331 decode(x_attribute3,
332 fnd_api.g_miss_char, l_pmt_plan_rec.attribute3,
333 x_attribute3),
334 decode(x_attribute4,
335 fnd_api.g_miss_char, l_pmt_plan_rec.attribute4,
336 x_attribute4),
337 decode(x_attribute5,
338 fnd_api.g_miss_char, l_pmt_plan_rec.attribute5,
339 x_attribute5),
340 decode(x_attribute6,
341 fnd_api.g_miss_char, l_pmt_plan_rec.attribute6,
342 x_attribute6),
343 decode(x_attribute7,
344 fnd_api.g_miss_char, l_pmt_plan_rec.attribute7,
345 x_attribute7),
346 decode(x_attribute8,
347 fnd_api.g_miss_char, l_pmt_plan_rec.attribute8,
348 x_attribute8),
349 decode(x_attribute9,
350 fnd_api.g_miss_char, l_pmt_plan_rec.attribute9,
351 x_attribute9),
352 decode(x_attribute10,
353 fnd_api.g_miss_char, l_pmt_plan_rec.attribute10,
354 x_attribute10),
355 decode(x_attribute11,
356 fnd_api.g_miss_char, l_pmt_plan_rec.attribute11,
357 x_attribute11),
358 decode(x_attribute12,
359 fnd_api.g_miss_char, l_pmt_plan_rec.attribute12,
360 x_attribute12),
361 decode(x_attribute13,
362 fnd_api.g_miss_char, l_pmt_plan_rec.attribute13,
363 x_attribute13),
364 decode(x_attribute14,
365 fnd_api.g_miss_char, l_pmt_plan_rec.attribute14,
366 x_attribute14),
367 decode(x_attribute15,
368 fnd_api.g_miss_char, l_pmt_plan_rec.attribute15,
369 x_attribute15),
370 decode(x_payment_group_code,
371 fnd_api.g_miss_char, l_pmt_plan_rec.payment_group_code,
372 x_payment_group_code)
373 INTO l_name,
374 l_minimum_amount,
375 l_maximum_amount,
376 l_min_rec_flag,
377 l_max_rec_flag,
378 l_max_recovery_amount,
379 l_credit_type_id,
380 l_pay_interval_type_id,
381 l_start_date,
382 l_end_date,
383 l_recoverable_interval_type_id,
384 l_pay_against_commission,
385 l_attribute_category,
386 l_attribute1,
387 l_attribute2,
388 l_attribute3,
389 l_attribute4,
390 l_attribute5,
391 l_attribute6,
392 l_attribute7,
393 l_attribute8,
394 l_attribute9,
395 l_attribute10,
396 l_attribute11,
397 l_attribute12,
398 l_attribute13,
399 l_attribute14,
400 l_attribute15,
401 l_payment_group_code
402 FROM dual;
403
404 UPDATE cn_pmt_plans
405 SET
406 name = l_name,
407 minimum_amount = l_minimum_amount,
408 maximum_amount = l_maximum_amount,
409 min_rec_flag = Nvl(l_min_rec_flag,'N'),
410 max_rec_flag = Nvl(l_max_rec_flag,'N'),
411 max_recovery_amount = l_max_recovery_amount,
412 credit_type_id = l_credit_type_id,
413 pay_interval_type_id = l_pay_interval_type_id,
414 start_date = l_start_date,
415 end_date = l_end_date,
416 object_version_number = x_object_version_number + 1,
417 recoverable_interval_type_id = l_recoverable_interval_type_id,
418 pay_against_commission = l_pay_against_commission,
419 attribute_category = l_attribute_category,
420 attribute1 = l_attribute1,
421 attribute2 = l_attribute2,
422 attribute3 = l_attribute3,
423 attribute4 = l_attribute4,
424 attribute5 = l_attribute5,
425 attribute6 = l_attribute6,
426 attribute7 = l_attribute7,
427 attribute8 = l_attribute8,
428 attribute9 = l_attribute9,
429 attribute10 = l_attribute10,
430 attribute11 = l_attribute11,
431 attribute12 = l_attribute12,
432 attribute13 = l_attribute13,
433 attribute14 = l_attribute14,
434 attribute15 = l_attribute15,
435 last_update_date = x_Last_Update_Date,
436 last_updated_by = x_Last_Updated_By,
437 last_update_login = x_Last_Update_Login,
438 payment_group_code = l_payment_group_code
439
440 WHERE pmt_plan_id = x_pmt_plan_id ;
441
442 if (SQL%NOTFOUND) then
443 Raise NO_DATA_FOUND;
444 end if;
445
446 x_object_version_number := x_object_version_number + 1;
447
448 END Update_Record;
449
450
451 --*****************************************************************************
452 -- Procedure Name : Delete_Record
453 -- Purpose : Delete the Payment Plan if it has not been assigned
454 -- to a salesrep
455 --*****************************************************************************
456
457 PROCEDURE Delete_Record( x_pmt_plan_id NUMBER ) IS
458 BEGIN
459
460 DELETE FROM cn_pmt_plans
461 WHERE pmt_plan_id = x_pmt_plan_id;
462
463
464 END Delete_Record;
465
466
467 --*****************************************************************************
468 -- Procedure Name : Begin_Record
469 -- Purpose : Public procedure which calls the appropriate pvt.
470 -- depending on the value of X_Operation
471 -- History : Modified by Sundar Venkat
472 -- Added New Column
473 -- PAYMENT_GROUP_CODE
474 --*****************************************************************************
475
476 PROCEDURE Begin_Record(
477 x_Operation VARCHAR2
478 ,x_Rowid IN OUT NOCOPY VARCHAR2
479 ,x_org_id cn_pmt_plans.org_id%TYPE
480 ,x_pmt_plan_id IN OUT NOCOPY NUMBER
481 ,x_name cn_pmt_plans.name%TYPE
482 ,x_minimum_amount cn_pmt_plans.minimum_amount%TYPE
483 ,x_maximum_amount cn_pmt_plans.maximum_amount%TYPE
484 ,x_min_rec_flag cn_pmt_plans.min_rec_flag%TYPE
485 ,x_max_rec_flag cn_pmt_plans.max_rec_flag%TYPE
486 ,x_max_recovery_amount cn_pmt_plans.max_recovery_amount%TYPE
487 ,x_credit_type_id cn_pmt_plans.credit_type_id%TYPE
488 ,x_pay_interval_type_id cn_pmt_plans.pay_interval_type_id%TYPE
489 ,x_start_date cn_pmt_plans.start_date%TYPE
490 ,x_end_date cn_pmt_plans.end_date%TYPE
491 ,x_object_version_number IN OUT NOCOPY
492 cn_pmt_plans.object_version_number%TYPE
493 ,x_recoverable_interval_type_id cn_pmt_plans.recoverable_interval_type_id%TYPE
494 ,x_pay_against_commission cn_pmt_plans.pay_against_commission%TYPE
495 ,x_attribute_category cn_pmt_plans.attribute_category%TYPE
496 ,x_attribute1 cn_pmt_plans.attribute1%TYPE
497 ,x_attribute2 cn_pmt_plans.attribute2%TYPE
498 ,x_attribute3 cn_pmt_plans.attribute3%TYPE
499 ,x_attribute4 cn_pmt_plans.attribute4%TYPE
500 ,x_attribute5 cn_pmt_plans.attribute5%TYPE
501 ,x_attribute6 cn_pmt_plans.attribute6%TYPE
502 ,x_attribute7 cn_pmt_plans.attribute7%TYPE
503 ,x_attribute8 cn_pmt_plans.attribute8%TYPE
504 ,x_attribute9 cn_pmt_plans.attribute9%TYPE
505 ,x_attribute10 cn_pmt_plans.attribute10%TYPE
506 ,x_attribute11 cn_pmt_plans.attribute11%TYPE
507 ,x_attribute12 cn_pmt_plans.attribute12%TYPE
508 ,x_attribute13 cn_pmt_plans.attribute13%TYPE
509 ,x_attribute14 cn_pmt_plans.attribute14%TYPE
510 ,x_attribute15 cn_pmt_plans.attribute15%TYPE
511 ,x_Created_By cn_pmt_plans.created_by%TYPE
512 ,x_Creation_Date cn_pmt_plans.creation_date%TYPE
513 ,x_Last_Updated_By cn_pmt_plans.last_updated_by%TYPE
514 ,x_Last_Update_Date cn_pmt_plans.last_update_date%TYPE
515 ,x_Last_Update_Login cn_pmt_plans.last_update_login%TYPE
516 ,x_Program_Type VARCHAR2
517 ,x_Payment_Group_Code cn_pmt_plans.payment_group_code%TYPE
518 ) IS
519
520 BEGIN
521
522 -- Saves passing it around
523 g_program_type := x_program_type;
524 g_temp_status_code := 'COMPLETE'; -- Assume it is good to begin with
525
526
527 IF X_Operation = 'INSERT' THEN
528
529 Insert_Record( X_Rowid
530 ,X_org_id
531 ,X_pmt_plan_id
532 ,X_name
533 ,X_minimum_amount
534 ,X_maximum_amount
535 ,X_min_rec_flag
536 ,X_max_rec_flag
537 ,X_max_recovery_amount
538 ,X_credit_type_id
539 ,X_pay_interval_type_id
540 ,X_start_date
541 ,X_end_date
542 ,x_recoverable_interval_type_id
543 ,x_pay_against_commission
544 ,X_attribute_category
545 ,X_attribute1
546 ,X_attribute2
547 ,X_attribute3
548 ,X_attribute4
549 ,X_attribute5
550 ,X_attribute6
551 ,X_attribute7
552 ,X_attribute8
553 ,X_attribute9
554 ,X_attribute10
555 ,X_attribute11
556 ,X_attribute12
557 ,X_attribute13
558 ,X_attribute14
559 ,X_attribute15
560 ,X_Created_By
561 ,X_Creation_Date
562 ,X_Last_Updated_By
563 ,X_Last_Update_Date
564 ,X_Last_Update_Login
565 ,x_Payment_Group_Code
566 ,x_object_version_number
567 );
568
569
570 ELSIF X_Operation = 'UPDATE' THEN
571
572
573 Update_Record( x_org_id
574 ,x_pmt_plan_id
575 ,X_name
576 ,X_minimum_amount
577 ,X_maximum_amount
578 ,X_max_recovery_amount
579 ,X_min_rec_flag
580 ,X_max_rec_flag
581 ,X_credit_type_id
582 ,X_pay_interval_type_id
583 ,X_start_date
584 ,X_end_date
585 ,X_object_version_number
586 ,x_recoverable_interval_type_id
587 ,x_pay_against_commission
588 ,X_attribute_category
589 ,X_attribute1
590 ,X_attribute2
591 ,X_attribute3
592 ,X_attribute4
593 ,X_attribute5
594 ,X_attribute6
595 ,X_attribute7
596 ,X_attribute8
597 ,X_attribute9
598 ,X_attribute10
599 ,X_attribute11
600 ,X_attribute12
601 ,X_attribute13
602 ,X_attribute14
603 ,X_attribute15
604 ,X_Last_Updated_By
605 ,X_Last_Update_Date
606 ,X_Last_Update_Login
607 ,x_Payment_Group_Code
608 );
609
610 ELSIF X_Operation = 'DELETE' THEN
611
612 Delete_Record( X_pmt_plan_id );
613
614 ELSIF X_Operation = 'LOCK' THEN
615
616 Lock_Record( X_Rowid
617 ,X_pmt_plan_id);
618
619 END IF;
620
621
622 END Begin_Record;
623
624 END CN_PMT_PLANS_PKG;