DBA Data[Home] [Help]

PACKAGE BODY: APPS.AR_CUST_PROF_CLASS_AMT_PKG

Source


1 PACKAGE BODY ar_cust_prof_class_amt_pkg AS
2 /* $Header: ARCPCMTB.pls 120.0 2006/03/02 23:42:23 hyu noship $ */
3 
4 FUNCTION validate_lookup
5 (p_type   IN VARCHAR2,
6  p_code   IN VARCHAR2)
7 RETURN BOOLEAN
8 IS
9   CURSOR c_lookup(p_type IN VARCHAR, p_code IN VARCHAR2)
10   IS
11   SELECT NULL
12     FROM ar_lookups
13    WHERE lookup_type = p_type
14      AND lookup_code = p_code
15      AND    ( ENABLED_FLAG = 'Y' AND
16              TRUNC( SYSDATE ) BETWEEN
17               TRUNC(NVL( START_DATE_ACTIVE,SYSDATE ) ) AND
18               TRUNC(NVL( END_DATE_ACTIVE,SYSDATE ) ) );
19   l_c       VARCHAR2(30);
20   l_result  BOOLEAN;
21 BEGIN
22   OPEN c_lookup(p_type,p_code);
23   FETCH c_lookup INTO l_c;
24   IF  c_lookup%NOTFOUND THEN
25     l_result  := FALSE;
26   ELSE
27     l_result  := TRUE;
28   END IF;
29   CLOSE c_lookup;
30   RETURN l_result;
31 END;
32 
33 
34 FUNCTION elementequal(n1  IN NUMBER, n2 IN NUMBER) RETURN BOOLEAN
35 IS
36 BEGIN
37   IF (n1 = n2) OR (n1 IS NULL AND n2 IS NULL) THEN
38     RETURN TRUE;
39   ELSE
40     RETURN FALSE;
41   END IF;
42 END;
43 
44 FUNCTION elementequal(c1  IN VARCHAR2, c2 IN VARCHAR2) RETURN BOOLEAN
45 IS
46 BEGIN
47   IF (c1 = c2) OR (c1 IS NULL AND c2 IS NULL) THEN
48     RETURN TRUE;
49   ELSE
50     RETURN FALSE;
51   END IF;
52 END;
53 
54 FUNCTION elementequal(d1  IN DATE, d2 IN DATE) RETURN BOOLEAN
55 IS
56 BEGIN
57   IF (d1 = d2) OR (d1 IS NULL AND d2 IS NULL) THEN
58     RETURN TRUE;
59   ELSE
60     RETURN FALSE;
61   END IF;
62 END;
63 
64 
65 PROCEDURE int_chrg_validation
66 (p_int_pen       IN VARCHAR2,
67  p_type          IN VARCHAR2,
68  p_amount        IN NUMBER,
69  p_rate          IN NUMBER,
70  p_schedule_id   IN NUMBER,
71  x_return_status IN OUT NOCOPY VARCHAR2)
72 IS
73 BEGIN
74   arp_standard.debug('int_chrg_validation +');
75   arp_standard.debug('  p_int_pen     : '|| p_int_pen);
76   arp_standard.debug('  p_type        : '|| p_type);
77   arp_standard.debug('  p_amount      : '|| p_amount);
78   arp_standard.debug('  p_rate        : '|| p_rate);
79   arp_standard.debug('  p_schedule_id : '|| p_schedule_id);
80   IF P_TYPE  IS NOT NULL THEN
81      IF validate_lookup('AR_INTEREST_PENALTY_TYPE' ,P_TYPE) = FALSE THEN
82        arp_standard.debug(P_TYPE||' should be a code in the lookup type AR_INTEREST_PENALTY_TYPE');
83        FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_INVALID_LOOKUP' );
84        FND_MESSAGE.SET_TOKEN( 'COLUMN', p_int_pen||'_TYPE' );
85        FND_MESSAGE.SET_TOKEN( 'LOOKUP_TYPE', 'AR_INTEREST_PENALTY_TYPE' );
86        FND_MSG_PUB.ADD;
87        x_return_status := FND_API.G_RET_STS_ERROR;
88      ELSE
89        IF    P_TYPE = 'FIXED_AMOUNT' THEN
90           IF P_AMOUNT IS NULL THEN
91             arp_standard.debug(p_int_pen||'_FIXED_AMOUNT is mandatory for '||p_int_pen||'_TYPE ='||P_TYPE);
92             FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_MISSING_COLUMN' );
93             FND_MESSAGE.SET_TOKEN( 'COLUMN', p_int_pen||'_FIXED_AMOUNT' );
94             FND_MSG_PUB.ADD;
95             x_return_status := FND_API.G_RET_STS_ERROR;
96           END IF;
97        ELSIF P_TYPE = 'FIXED_RATE' THEN
98           IF P_RATE IS NULL THEN
99             arp_standard.debug(p_int_pen||'_RATE is mandatory for '||p_int_pen||'_TYPE ='||P_TYPE);
100             FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_MISSING_COLUMN' );
101             FND_MESSAGE.SET_TOKEN( 'COLUMN', p_int_pen||'_RATE' );
102             FND_MSG_PUB.ADD;
103             x_return_status := FND_API.G_RET_STS_ERROR;
104           END IF;
105        ELSIF P_TYPE = 'CHARGES_SCHEDULE' THEN
106           IF P_SCHEDULE_ID IS NULL THEN
107             arp_standard.debug(p_int_pen||'_SCHEDULE_ID is mandatory for '||p_int_pen||'_TYPE ='||P_TYPE);
108             FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_MISSING_COLUMN' );
109             FND_MESSAGE.SET_TOKEN( 'COLUMN', p_int_pen||'_RATE' );
110             FND_MSG_PUB.ADD;
111             x_return_status := FND_API.G_RET_STS_ERROR;
112           END IF;
113        END IF;
114      END IF;
115   END IF;
116   arp_standard.debug('int_chrg_validation -');
117 END;
118 
119 
120 
121 PROCEDURE amt_pct_validation
122 (p_inv_bal       IN VARCHAR2,
123  p_type          IN VARCHAR2,
124  p_amount        IN NUMBER,
125  p_percent       IN NUMBER,
126  x_return_status IN OUT NOCOPY VARCHAR2)
127 IS
128 BEGIN
129   arp_standard.debug('amt_pct_validation +');
130   arp_standard.debug('  p_inv_bal     : '||p_inv_bal);
131   arp_standard.debug('  p_type        : '||p_type);
132   arp_standard.debug('  p_amount      : '||p_amount);
133   arp_standard.debug('  p_percent     : '||p_percent);
134   IF p_type IS NOT NULL THEN
135     IF validate_lookup('AR_AMOUNT_PERCENT',p_type) = FALSE THEN
136      arp_standard.debug(p_type||' should be a code in the lookup type AR_AMOUNT_PERCENT');
137      FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_INVALID_LOOKUP' );
138      FND_MESSAGE.SET_TOKEN( 'COLUMN', 'MIN_FC_'|| p_inv_bal ||'_OVERDUE_TYPE' );
139      FND_MESSAGE.SET_TOKEN( 'LOOKUP_TYPE', 'AR_AMOUNT_PERCENT' );
140      FND_MSG_PUB.ADD;
141      x_return_status := FND_API.G_RET_STS_ERROR;
142     END IF;
143     IF   P_TYPE = 'AMOUNT' THEN
144       IF P_AMOUNT IS NULL THEN
145          arp_standard.debug('MIN_FC_'|| p_inv_bal ||'_AMOUNT is Mandatory for this MIN_FC_'|| p_inv_bal ||'_OVERDUE_TYPE '||
146                              P_TYPE);
147          FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_MISSING_COLUMN' );
148          FND_MESSAGE.SET_TOKEN( 'COLUMN', 'MIN_FC_INVOICE_AMOUNT' );
149          FND_MSG_PUB.ADD;
150          x_return_status := FND_API.G_RET_STS_ERROR;
151       END IF;
152     ELSIF P_TYPE = 'PERCENT' THEN
153       IF P_PERCENT IS NULL THEN
154          arp_standard.debug('MIN_FC_'|| p_inv_bal ||'_PERCENT is Mandatory for this MIN_FC_'|| p_inv_bal ||'_OVERDUE_TYPE '||
155                              P_TYPE);
156          FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_MISSING_COLUMN' );
157          FND_MESSAGE.SET_TOKEN( 'COLUMN', 'MIN_FC_'|| p_inv_bal ||'_PERCENT' );
158          FND_MSG_PUB.ADD;
159          x_return_status := FND_API.G_RET_STS_ERROR;
160       END IF;
161     END IF;
162   END IF;
163   arp_standard.debug('amt_pct_validation -');
164 END;
165 
166 PROCEDURE validate_exchange_type
167 (p_exchange_rate_type IN VARCHAR2,
168  x_return_status      IN OUT NOCOPY VARCHAR2)
169 IS
170   CURSOR c IS
171   SELECT NULL
172     FROM gl_daily_conversion_types
173    WHERE conversion_type <> 'EMU FIXED'
174      AND conversion_type = p_exchange_rate_type;
175   l   VARCHAR2(1);
176 BEGIN
177   arp_standard.debug('validate_exchange_type  +');
178   arp_standard.debug('  p_exchange_rate_type   : '||p_exchange_rate_type);
179   IF p_exchange_rate_type IS NOT NULL THEN
180     OPEN c;
181     FETCH c INTO l;
182     IF c%NOTFOUND THEN
183          arp_standard.debug(' The value p_exchange_rate_type :'||p_exchange_rate_type||' is invalid');
184          FND_MESSAGE.SET_NAME( 'AR', 'AR_EXC_TYPE_WRONG_VALUE' );
185          FND_MSG_PUB.ADD;
186          x_return_status := FND_API.G_RET_STS_ERROR;
187     END IF;
188     CLOSE c;
189   END IF;
190   arp_standard.debug('validate_exchange_type  -');
191 END;
192 
193 
194 PROCEDURE validate_prof_class_amt
195 (P_CURRENCY_CODE                IN VARCHAR2,
196  P_TRX_CREDIT_LIMIT             IN NUMBER,
197  P_OVERALL_CREDIT_LIMIT         IN NUMBER,
198  P_MIN_DUNNING_AMOUNT           IN NUMBER,
199  P_MAX_INTEREST_CHARGE          IN NUMBER,
200  P_MIN_INTEREST_CHARGE          IN NUMBER,
201  P_MIN_STATEMENT_AMOUNT         IN NUMBER,
202  P_AUTO_REC_MIN_RECEIPT_AMOUNT  IN NUMBER,
203  P_MIN_DUNNING_INVOICE_AMOUNT   IN NUMBER,
204  P_INTEREST_RATE                IN NUMBER,
205  P_EXPIRATION_DATE              IN DATE,
206  P_EXCHANGE_RATE_TYPE           IN VARCHAR2,
207  P_MIN_FC_INVOICE_OVERDUE_TYPE  IN VARCHAR2,
208  P_MIN_FC_INVOICE_PERCENT       IN NUMBER,
209  P_MIN_FC_INVOICE_AMOUNT        IN NUMBER,
210  P_MIN_FC_BALANCE_OVERDUE_TYPE  IN VARCHAR2,
211  P_MIN_FC_BALANCE_PERCENT       IN NUMBER,
212  P_MIN_FC_BALANCE_AMOUNT        IN NUMBER,
213  P_INTEREST_TYPE                IN VARCHAR2,
214  P_INTEREST_FIXED_AMOUNT        IN NUMBER,
215  P_INTEREST_SCHEDULE_ID         IN NUMBER,
216  P_PENALTY_TYPE                 IN VARCHAR2,
217  P_PENALTY_RATE                 IN NUMBER,
218  P_PENALTY_FIXED_AMOUNT         IN NUMBER,
219  P_PENALTY_SCHEDULE_ID          IN NUMBER,
220  x_return_status                IN OUT NOCOPY VARCHAR2)
221 IS
222   CURSOR curr IS
223   SELECT NULL
224     FROM fnd_currencies
225    WHERE currency_code = p_currency_code;
226   l_code VARCHAR2(30);
227 BEGIN
228   arp_standard.debug('validate_prof_class_amt +');
229 
230   IF p_currency_code IS NULL THEN
231      arp_standard.debug('Currency_code is Mandatory');
232      FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_MISSING_COLUMN' );
233      FND_MESSAGE.SET_TOKEN( 'COLUMN', 'CURRENCY_CODE' );
234      FND_MSG_PUB.ADD;
235      x_return_status := FND_API.G_RET_STS_ERROR;
236   END IF;
237 
238   OPEN curr;
239   FETCH curr INTO l_code;
240   IF curr%NOTFOUND THEN
241      arp_standard.debug(p_currency_code||' should be a in fnd_currencies');
242      FND_MESSAGE.SET_NAME('AR', 'HZ_API_INVALID_FK');
243      FND_MESSAGE.SET_TOKEN('FK', 'hz_cust_prof_class_amts');
244      FND_MESSAGE.SET_TOKEN('COLUMN', 'CURRENCY_CODE');
245      FND_MESSAGE.SET_TOKEN('TABLE', 'fnd_currencies');
246      FND_MSG_PUB.ADD;
247      x_return_status := FND_API.G_RET_STS_ERROR;
248   END IF;
249   CLOSE curr;
250 
251 
252   IF P_MIN_FC_INVOICE_OVERDUE_TYPE IS NOT NULL THEN
253     IF validate_lookup('AR_AMOUNT_PERCENT',P_MIN_FC_INVOICE_OVERDUE_TYPE) = FALSE THEN
254      arp_standard.debug(P_MIN_FC_INVOICE_OVERDUE_TYPE||' should be a code in the lookup type AR_AMOUNT_PERCENT');
255      FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_INVALID_LOOKUP' );
256      FND_MESSAGE.SET_TOKEN( 'COLUMN', 'MIN_FC_INVOICE_OVERDUE_TYPE' );
257      FND_MESSAGE.SET_TOKEN( 'LOOKUP_TYPE', 'AR_AMOUNT_PERCENT' );
258      FND_MSG_PUB.ADD;
259      x_return_status := FND_API.G_RET_STS_ERROR;
260     END IF;
261     IF   P_MIN_FC_INVOICE_OVERDUE_TYPE = 'AMOUNT' THEN
262       IF P_MIN_FC_INVOICE_AMOUNT IS NULL THEN
263          arp_standard.debug('MIN_FC_INVOICE_AMOUNT is Mandatory for this MIN_FC_INVOICE_OVERDUE_TYPE '||
264                              P_MIN_FC_INVOICE_OVERDUE_TYPE);
265          FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_MISSING_COLUMN' );
266          FND_MESSAGE.SET_TOKEN( 'COLUMN', 'MIN_FC_INVOICE_AMOUNT' );
267          FND_MSG_PUB.ADD;
268          x_return_status := FND_API.G_RET_STS_ERROR;
269       END IF;
270     ELSIF P_MIN_FC_INVOICE_OVERDUE_TYPE = 'PERCENT' THEN
271       IF P_MIN_FC_INVOICE_PERCENT IS NULL THEN
272          arp_standard.debug('MIN_FC_INVOICE_PERCENT is Mandatory for this MIN_FC_INVOICE_OVERDUE_TYPE '||
273                              P_MIN_FC_INVOICE_OVERDUE_TYPE);
274          FND_MESSAGE.SET_NAME( 'AR', 'HZ_API_MISSING_COLUMN' );
275          FND_MESSAGE.SET_TOKEN( 'COLUMN', 'MIN_FC_INVOICE_PERCENT' );
276          FND_MSG_PUB.ADD;
277          x_return_status := FND_API.G_RET_STS_ERROR;
278       END IF;
279     END IF;
280   END IF;
281 
282   validate_exchange_type
283   (p_exchange_rate_type => p_exchange_rate_type,
284    x_return_status      => x_return_status);
285 
286   amt_pct_validation
287   (p_inv_bal       => 'INVOICE',
288    p_type          => P_MIN_FC_INVOICE_OVERDUE_TYPE,
289    p_amount        => P_MIN_FC_INVOICE_AMOUNT,
290    p_percent       => P_MIN_FC_INVOICE_PERCENT,
291    x_return_status => x_return_status);
292 
293   amt_pct_validation
294   (p_inv_bal       => 'BALANCE',
295    p_type          => P_MIN_FC_BALANCE_OVERDUE_TYPE,
296    p_amount        => P_MIN_FC_BALANCE_AMOUNT,
297    p_percent       => P_MIN_FC_BALANCE_PERCENT,
298    x_return_status => x_return_status);
299 
300 
301   int_chrg_validation
302   (p_int_pen       => 'INTEREST',
303    p_type          => P_INTEREST_TYPE,
304    p_amount        => P_INTEREST_FIXED_AMOUNT,
305    p_rate          => P_INTEREST_RATE,
306    p_schedule_id   => P_INTEREST_SCHEDULE_ID,
307    x_return_status => x_return_status);
308 
309 
310   int_chrg_validation
311   (p_int_pen       => 'PENALTY',
312    p_type          => P_PENALTY_TYPE,
313    p_amount        => P_PENALTY_FIXED_AMOUNT,
314    p_rate          => P_PENALTY_RATE,
315    p_schedule_id   => P_PENALTY_SCHEDULE_ID,
316    x_return_status => x_return_status);
317 
318   arp_standard.debug('validate_prof_class_amt -');
319 END;
320 
321 
322 
323 
324 
325 PROCEDURE insert_row
326 (P_PROFILE_CLASS_AMOUNT_ID      IN NUMBER,
327  P_PROFILE_CLASS_ID             IN NUMBER,
328  P_CURRENCY_CODE                IN VARCHAR2,
329  P_TRX_CREDIT_LIMIT             IN NUMBER,
330  P_OVERALL_CREDIT_LIMIT         IN NUMBER,
331  P_MIN_DUNNING_AMOUNT           IN NUMBER,
332  P_MAX_INTEREST_CHARGE          IN NUMBER,
333  P_MIN_INTEREST_CHARGE          IN NUMBER,
334  P_MIN_STATEMENT_AMOUNT         IN NUMBER,
335  P_AUTO_REC_MIN_RECEIPT_AMOUNT  IN NUMBER,
336  P_MIN_DUNNING_INVOICE_AMOUNT   IN NUMBER,
337  P_INTEREST_RATE                IN NUMBER,
338  P_EXPIRATION_DATE              IN DATE,
339  P_EXCHANGE_RATE_TYPE           IN VARCHAR2,
340  P_MIN_FC_INVOICE_OVERDUE_TYPE  IN VARCHAR2,
344  P_MIN_FC_BALANCE_PERCENT       IN NUMBER,
341  P_MIN_FC_INVOICE_PERCENT       IN NUMBER,
342  P_MIN_FC_INVOICE_AMOUNT        IN NUMBER,
343  P_MIN_FC_BALANCE_OVERDUE_TYPE  IN VARCHAR2,
345  P_MIN_FC_BALANCE_AMOUNT        IN NUMBER,
346  P_INTEREST_TYPE                IN VARCHAR2,
347  P_INTEREST_FIXED_AMOUNT        IN NUMBER,
348  P_INTEREST_SCHEDULE_ID         IN NUMBER,
349  P_PENALTY_TYPE                 IN VARCHAR2,
350  P_PENALTY_RATE                 IN NUMBER,
351  P_PENALTY_FIXED_AMOUNT         IN NUMBER,
352  P_PENALTY_SCHEDULE_ID          IN NUMBER,
353  P_ATTRIBUTE_CATEGORY           IN VARCHAR2 DEFAULT NULL,
354  P_ATTRIBUTE1                   IN VARCHAR2 DEFAULT NULL,
355  P_ATTRIBUTE2                   IN VARCHAR2 DEFAULT NULL,
356  P_ATTRIBUTE3                   IN VARCHAR2 DEFAULT NULL,
357  P_ATTRIBUTE4                   IN VARCHAR2 DEFAULT NULL,
358  P_ATTRIBUTE5                   IN VARCHAR2 DEFAULT NULL,
359  P_ATTRIBUTE6                   IN VARCHAR2 DEFAULT NULL,
360  P_ATTRIBUTE7                   IN VARCHAR2 DEFAULT NULL,
361  P_ATTRIBUTE8                   IN VARCHAR2 DEFAULT NULL,
362  P_ATTRIBUTE9                   IN VARCHAR2 DEFAULT NULL,
363  P_ATTRIBUTE10                  IN VARCHAR2 DEFAULT NULL,
364  P_ATTRIBUTE11                  IN VARCHAR2 DEFAULT NULL,
365  P_ATTRIBUTE12                  IN VARCHAR2 DEFAULT NULL,
366  P_ATTRIBUTE13                  IN VARCHAR2 DEFAULT NULL,
367  P_ATTRIBUTE14                  IN VARCHAR2 DEFAULT NULL,
368  P_ATTRIBUTE15                  IN VARCHAR2 DEFAULT NULL,
369  P_JGZZ_ATTRIBUTE_CATEGORY      IN VARCHAR2 DEFAULT NULL,
370  P_JGZZ_ATTRIBUTE1              IN VARCHAR2 DEFAULT NULL,
371  P_JGZZ_ATTRIBUTE2              IN VARCHAR2 DEFAULT NULL,
372  P_JGZZ_ATTRIBUTE3              IN VARCHAR2 DEFAULT NULL,
373  P_JGZZ_ATTRIBUTE4              IN VARCHAR2 DEFAULT NULL,
374  P_JGZZ_ATTRIBUTE5              IN VARCHAR2 DEFAULT NULL,
375  P_JGZZ_ATTRIBUTE6              IN VARCHAR2 DEFAULT NULL,
376  P_JGZZ_ATTRIBUTE7              IN VARCHAR2 DEFAULT NULL,
377  P_JGZZ_ATTRIBUTE8              IN VARCHAR2 DEFAULT NULL,
378  P_JGZZ_ATTRIBUTE9              IN VARCHAR2 DEFAULT NULL,
379  P_JGZZ_ATTRIBUTE10             IN VARCHAR2 DEFAULT NULL,
380  P_JGZZ_ATTRIBUTE11             IN VARCHAR2 DEFAULT NULL,
381  P_JGZZ_ATTRIBUTE12             IN VARCHAR2 DEFAULT NULL,
382  P_JGZZ_ATTRIBUTE13             IN VARCHAR2 DEFAULT NULL,
383  P_JGZZ_ATTRIBUTE14             IN VARCHAR2 DEFAULT NULL,
384  P_JGZZ_ATTRIBUTE15             IN VARCHAR2 DEFAULT NULL,
385  P_GLOBAL_ATTRIBUTE1            IN VARCHAR2 DEFAULT NULL,
386  P_GLOBAL_ATTRIBUTE2            IN VARCHAR2 DEFAULT NULL,
387  P_GLOBAL_ATTRIBUTE3            IN VARCHAR2 DEFAULT NULL,
388  P_GLOBAL_ATTRIBUTE4            IN VARCHAR2 DEFAULT NULL,
389  P_GLOBAL_ATTRIBUTE5            IN VARCHAR2 DEFAULT NULL,
390  P_GLOBAL_ATTRIBUTE6            IN VARCHAR2 DEFAULT NULL,
391  P_GLOBAL_ATTRIBUTE7            IN VARCHAR2 DEFAULT NULL,
392  P_GLOBAL_ATTRIBUTE8            IN VARCHAR2 DEFAULT NULL,
393  P_GLOBAL_ATTRIBUTE9            IN VARCHAR2 DEFAULT NULL,
394  P_GLOBAL_ATTRIBUTE10           IN VARCHAR2 DEFAULT NULL,
395  P_GLOBAL_ATTRIBUTE11           IN VARCHAR2 DEFAULT NULL,
396  P_GLOBAL_ATTRIBUTE12           IN VARCHAR2 DEFAULT NULL,
397  P_GLOBAL_ATTRIBUTE13           IN VARCHAR2 DEFAULT NULL,
398  P_GLOBAL_ATTRIBUTE14           IN VARCHAR2 DEFAULT NULL,
399  P_GLOBAL_ATTRIBUTE15           IN VARCHAR2 DEFAULT NULL,
400  P_GLOBAL_ATTRIBUTE16           IN VARCHAR2 DEFAULT NULL,
401  P_GLOBAL_ATTRIBUTE17           IN VARCHAR2 DEFAULT NULL,
402  P_GLOBAL_ATTRIBUTE18           IN VARCHAR2 DEFAULT NULL,
403  P_GLOBAL_ATTRIBUTE19           IN VARCHAR2 DEFAULT NULL,
404  P_GLOBAL_ATTRIBUTE20           IN VARCHAR2 DEFAULT NULL,
405  P_GLOBAL_ATTRIBUTE_CATEGORY    IN VARCHAR2 DEFAULT NULL,
406  P_LAST_UPDATED_BY              IN NUMBER   DEFAULT -1,
407  P_CREATED_BY                   IN NUMBER   DEFAULT -1,
408  P_CREATION_DATE                IN DATE     DEFAULT SYSDATE,
409  P_LAST_UPDATE_LOGIN            IN NUMBER   DEFAULT -1,
410  x_return_status                OUT NOCOPY  VARCHAR2,
411  x_msg_count                    OUT NOCOPY  NUMBER,
412  x_msg_data                     OUT NOCOPY  VARCHAR2)
413 IS
414   CURSOR cseq IS
415   SELECT hz_cust_prof_class_amts_s.nextval
416   from   dual;
417   l_cust_prof_class_amt_id  NUMBER;
418 BEGIN
419  arp_standard.debug('ar_cust_prof_class_amt_pkg.insert_row +');
420 
421  x_return_status  := fnd_api.g_ret_Sts_success;
422 
423  fnd_msg_pub.initialize;
424 
425  validate_prof_class_amt
426  (P_CURRENCY_CODE                => p_currency_code,
427   P_TRX_CREDIT_LIMIT             => P_TRX_CREDIT_LIMIT,
428   P_OVERALL_CREDIT_LIMIT         => P_OVERALL_CREDIT_LIMIT,
429   P_MIN_DUNNING_AMOUNT           => P_MIN_DUNNING_AMOUNT,
430   P_MAX_INTEREST_CHARGE          => P_MAX_INTEREST_CHARGE,
431   P_MIN_INTEREST_CHARGE          => P_MIN_INTEREST_CHARGE,
432   P_MIN_STATEMENT_AMOUNT         => P_MIN_STATEMENT_AMOUNT,
433   P_AUTO_REC_MIN_RECEIPT_AMOUNT  => P_AUTO_REC_MIN_RECEIPT_AMOUNT,
434   P_MIN_DUNNING_INVOICE_AMOUNT   => P_MIN_DUNNING_INVOICE_AMOUNT,
435   P_INTEREST_RATE                => P_INTEREST_RATE,
436   P_EXPIRATION_DATE              => P_EXPIRATION_DATE,
437   P_EXCHANGE_RATE_TYPE           => P_EXCHANGE_RATE_TYPE,
438   P_MIN_FC_INVOICE_OVERDUE_TYPE  => P_MIN_FC_INVOICE_OVERDUE_TYPE,
439   P_MIN_FC_INVOICE_PERCENT       => P_MIN_FC_INVOICE_PERCENT,
440   P_MIN_FC_INVOICE_AMOUNT        => P_MIN_FC_INVOICE_AMOUNT,
441   P_MIN_FC_BALANCE_OVERDUE_TYPE  => P_MIN_FC_BALANCE_OVERDUE_TYPE,
442   P_MIN_FC_BALANCE_PERCENT       => P_MIN_FC_BALANCE_PERCENT,
443   P_MIN_FC_BALANCE_AMOUNT        => P_MIN_FC_BALANCE_AMOUNT,
444   P_INTEREST_TYPE                => P_INTEREST_TYPE,
445   P_INTEREST_FIXED_AMOUNT        => P_INTEREST_FIXED_AMOUNT,
446   P_INTEREST_SCHEDULE_ID         => P_INTEREST_SCHEDULE_ID,
447   P_PENALTY_TYPE                 => P_PENALTY_TYPE,
448   P_PENALTY_RATE                 => P_PENALTY_RATE,
449   P_PENALTY_FIXED_AMOUNT         => P_PENALTY_FIXED_AMOUNT,
450   P_PENALTY_SCHEDULE_ID          => P_PENALTY_SCHEDULE_ID,
451   x_return_status                => x_return_status);
452 
453  IF  x_return_status <> fnd_api.g_ret_Sts_success THEN
454    RAISE fnd_api.G_EXC_ERROR;
455  END IF;
456 
457  arp_standard.debug(' Inserting into hz_cust_prof_class_amts+');
458 
459  IF P_PROFILE_CLASS_AMOUNT_ID IS NULL THEN
460   OPEN cseq;
461    FETCH cseq INTO l_cust_prof_class_amt_id;
462   CLOSE cseq;
463  ELSE
464   l_cust_prof_class_amt_id := P_PROFILE_CLASS_AMOUNT_ID;
465  END IF;
466 
467 arp_standard.debug('P_TRX_CREDIT_LIMIT :'||P_TRX_CREDIT_LIMIT );
468 
469  INSERT INTO hz_cust_prof_class_Amts
470  (PROFILE_CLASS_AMOUNT_ID      ,
471   PROFILE_CLASS_ID             ,
472   CURRENCY_CODE                ,
473   TRX_CREDIT_LIMIT             ,
474   OVERALL_CREDIT_LIMIT         ,
475   MIN_DUNNING_AMOUNT           ,
476   MAX_INTEREST_CHARGE          ,
477   MIN_INTEREST_CHARGE          ,
478   MIN_STATEMENT_AMOUNT         ,
479   AUTO_REC_MIN_RECEIPT_AMOUNT  ,
480   MIN_DUNNING_INVOICE_AMOUNT   ,
481   INTEREST_RATE                ,
482   EXPIRATION_DATE              ,
483   EXCHANGE_RATE_TYPE           ,
484   MIN_FC_INVOICE_OVERDUE_TYPE  ,
485   MIN_FC_INVOICE_PERCENT       ,
486   MIN_FC_INVOICE_AMOUNT        ,
487   MIN_FC_BALANCE_OVERDUE_TYPE  ,
488   MIN_FC_BALANCE_PERCENT       ,
489   MIN_FC_BALANCE_AMOUNT        ,
490   INTEREST_TYPE                ,
491   INTEREST_FIXED_AMOUNT        ,
492   INTEREST_SCHEDULE_ID         ,
493   PENALTY_TYPE                 ,
494   PENALTY_RATE                 ,
495   PENALTY_FIXED_AMOUNT         ,
496   PENALTY_SCHEDULE_ID          ,
497   ATTRIBUTE_CATEGORY           ,
498   ATTRIBUTE1                   ,
499   ATTRIBUTE2                   ,
500   ATTRIBUTE3                   ,
501   ATTRIBUTE4                   ,
502   ATTRIBUTE5                   ,
503   ATTRIBUTE6                   ,
504   ATTRIBUTE7                   ,
505   ATTRIBUTE8                   ,
506   ATTRIBUTE9                   ,
507   ATTRIBUTE10                  ,
508   ATTRIBUTE11                  ,
509   ATTRIBUTE12                  ,
510   ATTRIBUTE13                  ,
511   ATTRIBUTE14                  ,
512   ATTRIBUTE15                  ,
513   JGZZ_ATTRIBUTE_CATEGORY      ,
514   JGZZ_ATTRIBUTE1              ,
515   JGZZ_ATTRIBUTE2              ,
516   JGZZ_ATTRIBUTE3              ,
517   JGZZ_ATTRIBUTE4              ,
518   JGZZ_ATTRIBUTE5              ,
519   JGZZ_ATTRIBUTE6              ,
520   JGZZ_ATTRIBUTE7              ,
521   JGZZ_ATTRIBUTE8              ,
522   JGZZ_ATTRIBUTE9              ,
523   JGZZ_ATTRIBUTE10             ,
524   JGZZ_ATTRIBUTE11             ,
525   JGZZ_ATTRIBUTE12             ,
526   JGZZ_ATTRIBUTE13             ,
527   JGZZ_ATTRIBUTE14             ,
528   JGZZ_ATTRIBUTE15             ,
529   GLOBAL_ATTRIBUTE1            ,
530   GLOBAL_ATTRIBUTE2            ,
531   GLOBAL_ATTRIBUTE3            ,
532   GLOBAL_ATTRIBUTE4            ,
533   GLOBAL_ATTRIBUTE5            ,
534   GLOBAL_ATTRIBUTE6            ,
535   GLOBAL_ATTRIBUTE7            ,
536   GLOBAL_ATTRIBUTE8            ,
537   GLOBAL_ATTRIBUTE9            ,
538   GLOBAL_ATTRIBUTE10           ,
539   GLOBAL_ATTRIBUTE11           ,
540   GLOBAL_ATTRIBUTE12           ,
541   GLOBAL_ATTRIBUTE13           ,
542   GLOBAL_ATTRIBUTE14           ,
543   GLOBAL_ATTRIBUTE15           ,
544   GLOBAL_ATTRIBUTE16           ,
545   GLOBAL_ATTRIBUTE17           ,
546   GLOBAL_ATTRIBUTE18           ,
547   GLOBAL_ATTRIBUTE19           ,
548   GLOBAL_ATTRIBUTE20           ,
549   GLOBAL_ATTRIBUTE_CATEGORY    ,
550   LAST_UPDATED_BY              ,
551   LAST_UPDATE_DATE             ,
552   CREATED_BY                   ,
553   CREATION_DATE                ,
554   LAST_UPDATE_LOGIN
555   ) VALUES (
556   l_cust_prof_class_amt_id       ,
557   P_PROFILE_CLASS_ID             ,
558   P_CURRENCY_CODE                ,
559   P_TRX_CREDIT_LIMIT             ,
560   P_OVERALL_CREDIT_LIMIT         ,
561   P_MIN_DUNNING_AMOUNT           ,
562   P_MAX_INTEREST_CHARGE          ,
563   P_MIN_INTEREST_CHARGE          ,
564   P_MIN_STATEMENT_AMOUNT         ,
565   P_AUTO_REC_MIN_RECEIPT_AMOUNT  ,
566   P_MIN_DUNNING_INVOICE_AMOUNT   ,
567   P_INTEREST_RATE                ,
568   P_EXPIRATION_DATE              ,
569   P_EXCHANGE_RATE_TYPE           ,
570   P_MIN_FC_INVOICE_OVERDUE_TYPE  ,
571   P_MIN_FC_INVOICE_PERCENT       ,
572   P_MIN_FC_INVOICE_AMOUNT        ,
573   P_MIN_FC_BALANCE_OVERDUE_TYPE  ,
574   P_MIN_FC_BALANCE_PERCENT       ,
575   P_MIN_FC_BALANCE_AMOUNT        ,
576   P_INTEREST_TYPE                ,
577   P_INTEREST_FIXED_AMOUNT        ,
578   P_INTEREST_SCHEDULE_ID         ,
579   P_PENALTY_TYPE                 ,
580   P_PENALTY_RATE                 ,
581   P_PENALTY_FIXED_AMOUNT         ,
582   P_PENALTY_SCHEDULE_ID          ,
583   P_ATTRIBUTE_CATEGORY           ,
584   P_ATTRIBUTE1                   ,
585   P_ATTRIBUTE2                   ,
586   P_ATTRIBUTE3                   ,
587   P_ATTRIBUTE4                   ,
588   P_ATTRIBUTE5                   ,
589   P_ATTRIBUTE6                   ,
590   P_ATTRIBUTE7                   ,
591   P_ATTRIBUTE8                   ,
592   P_ATTRIBUTE9                   ,
593   P_ATTRIBUTE10                  ,
594   P_ATTRIBUTE11                  ,
595   P_ATTRIBUTE12                  ,
596   P_ATTRIBUTE13                  ,
597   P_ATTRIBUTE14                  ,
598   P_ATTRIBUTE15                  ,
599   P_JGZZ_ATTRIBUTE_CATEGORY      ,
600   P_JGZZ_ATTRIBUTE1              ,
601   P_JGZZ_ATTRIBUTE2              ,
602   P_JGZZ_ATTRIBUTE3              ,
603   P_JGZZ_ATTRIBUTE4              ,
604   P_JGZZ_ATTRIBUTE5              ,
605   P_JGZZ_ATTRIBUTE6              ,
606   P_JGZZ_ATTRIBUTE7              ,
607   P_JGZZ_ATTRIBUTE8              ,
608   P_JGZZ_ATTRIBUTE9              ,
609   P_JGZZ_ATTRIBUTE10             ,
610   P_JGZZ_ATTRIBUTE11             ,
611   P_JGZZ_ATTRIBUTE12             ,
612   P_JGZZ_ATTRIBUTE13             ,
613   P_JGZZ_ATTRIBUTE14             ,
614   P_JGZZ_ATTRIBUTE15             ,
615   P_GLOBAL_ATTRIBUTE1            ,
616   P_GLOBAL_ATTRIBUTE2            ,
617   P_GLOBAL_ATTRIBUTE3            ,
618   P_GLOBAL_ATTRIBUTE4            ,
619   P_GLOBAL_ATTRIBUTE5            ,
620   P_GLOBAL_ATTRIBUTE6            ,
621   P_GLOBAL_ATTRIBUTE7            ,
622   P_GLOBAL_ATTRIBUTE8            ,
623   P_GLOBAL_ATTRIBUTE9            ,
624   P_GLOBAL_ATTRIBUTE10           ,
625   P_GLOBAL_ATTRIBUTE11           ,
626   P_GLOBAL_ATTRIBUTE12           ,
627   P_GLOBAL_ATTRIBUTE13           ,
628   P_GLOBAL_ATTRIBUTE14           ,
629   P_GLOBAL_ATTRIBUTE15           ,
630   P_GLOBAL_ATTRIBUTE16           ,
631   P_GLOBAL_ATTRIBUTE17           ,
632   P_GLOBAL_ATTRIBUTE18           ,
633   P_GLOBAL_ATTRIBUTE19           ,
634   P_GLOBAL_ATTRIBUTE20           ,
635   P_GLOBAL_ATTRIBUTE_CATEGORY    ,
636   P_LAST_UPDATED_BY              ,
637   SYSDATE                        ,
638   P_CREATED_BY                   ,
639   P_CREATION_DATE                ,
640   P_LAST_UPDATE_LOGIN);
641 
642   arp_standard.debug(' Inserting into hz_cust_prof_class_amts-');
643 
644 arp_standard.debug('ar_cust_prof_class_amt_pkg.insert_row -');
645 EXCEPTION
646   WHEN fnd_api.G_EXC_ERROR THEN
647     fnd_msg_pub.count_and_get(p_encoded => fnd_api.g_false,
648                               p_count => x_msg_count,
649                               p_data  => x_msg_data);
650     arp_standard.debug('EXCEPTION  IN ar_cust_prof_class_amt_pkg.insert_row:'||x_msg_data);
651 
652   WHEN OTHERS THEN
653     x_return_status := fnd_api.g_ret_sts_unexp_error;
654     fnd_message.set_name('AR', 'HZ_API_OTHERS_EXCEP');
655     fnd_message.set_token('ERROR' ,SQLERRM);
656     fnd_msg_pub.add;
657     fnd_msg_pub.count_and_get(p_encoded => fnd_api.g_false,
658                               p_count => x_msg_count,
659                               p_data  => x_msg_data);
660     arp_standard.debug('EXCEPTION OTHERS IN ar_cust_prof_class_amt_pkg.insert_row:'||SQLERRM);
661 END;
662 
663 
664 
665 PROCEDURE lock_row
666 (p_info_rec        IN  hz_cust_prof_class_Amts%ROWTYPE,
667  x_return_status   OUT NOCOPY  VARCHAR2,
668  x_msg_count       OUT NOCOPY  NUMBER,
669  x_msg_data        OUT NOCOPY  VARCHAR2)
670 IS
671   CURSOR c IS
672   SELECT PROFILE_CLASS_AMOUNT_ID      ,
673          PROFILE_CLASS_ID             ,
674          CURRENCY_CODE                ,
675          TRX_CREDIT_LIMIT             ,
676          OVERALL_CREDIT_LIMIT         ,
677          MIN_DUNNING_AMOUNT           ,
678          MAX_INTEREST_CHARGE          ,
679          MIN_INTEREST_CHARGE          ,
680          MIN_STATEMENT_AMOUNT         ,
681          AUTO_REC_MIN_RECEIPT_AMOUNT  ,
682          MIN_DUNNING_INVOICE_AMOUNT   ,
683          INTEREST_RATE                ,
684          EXPIRATION_DATE              ,
685          EXCHANGE_RATE_TYPE           ,
686          MIN_FC_INVOICE_OVERDUE_TYPE  ,
687          MIN_FC_INVOICE_PERCENT       ,
688          MIN_FC_INVOICE_AMOUNT        ,
689          MIN_FC_BALANCE_OVERDUE_TYPE  ,
690          MIN_FC_BALANCE_PERCENT       ,
691          MIN_FC_BALANCE_AMOUNT        ,
692          INTEREST_TYPE                ,
693          INTEREST_FIXED_AMOUNT        ,
694          INTEREST_SCHEDULE_ID         ,
695          PENALTY_TYPE                 ,
696          PENALTY_RATE                 ,
697          PENALTY_FIXED_AMOUNT         ,
698          PENALTY_SCHEDULE_ID          ,
699          ATTRIBUTE_CATEGORY           ,
700          ATTRIBUTE1                   ,
701          ATTRIBUTE2                   ,
702          ATTRIBUTE3                   ,
703          ATTRIBUTE4                   ,
704          ATTRIBUTE5                   ,
705          ATTRIBUTE6                   ,
706          ATTRIBUTE7                   ,
707          ATTRIBUTE8                   ,
708          ATTRIBUTE9                   ,
709          ATTRIBUTE10                  ,
710          ATTRIBUTE11                  ,
711          ATTRIBUTE12                  ,
712          ATTRIBUTE13                  ,
713          ATTRIBUTE14                  ,
714          ATTRIBUTE15                  ,
715          JGZZ_ATTRIBUTE_CATEGORY      ,
716          JGZZ_ATTRIBUTE1              ,
717          JGZZ_ATTRIBUTE2              ,
718          JGZZ_ATTRIBUTE3              ,
719          JGZZ_ATTRIBUTE4              ,
720          JGZZ_ATTRIBUTE5              ,
721          JGZZ_ATTRIBUTE6              ,
722          JGZZ_ATTRIBUTE7              ,
723          JGZZ_ATTRIBUTE8              ,
724          JGZZ_ATTRIBUTE9              ,
725          JGZZ_ATTRIBUTE10             ,
726          JGZZ_ATTRIBUTE11             ,
727          JGZZ_ATTRIBUTE12             ,
728          JGZZ_ATTRIBUTE13             ,
729          JGZZ_ATTRIBUTE14             ,
730          JGZZ_ATTRIBUTE15             ,
731          GLOBAL_ATTRIBUTE1            ,
732          GLOBAL_ATTRIBUTE2            ,
733          GLOBAL_ATTRIBUTE3            ,
734          GLOBAL_ATTRIBUTE4            ,
735          GLOBAL_ATTRIBUTE5            ,
736          GLOBAL_ATTRIBUTE6            ,
737          GLOBAL_ATTRIBUTE7            ,
738          GLOBAL_ATTRIBUTE8            ,
739          GLOBAL_ATTRIBUTE9            ,
740          GLOBAL_ATTRIBUTE10           ,
741          GLOBAL_ATTRIBUTE11           ,
742          GLOBAL_ATTRIBUTE12           ,
743          GLOBAL_ATTRIBUTE13           ,
744          GLOBAL_ATTRIBUTE14           ,
745          GLOBAL_ATTRIBUTE15           ,
746          GLOBAL_ATTRIBUTE16           ,
747          GLOBAL_ATTRIBUTE17           ,
748          GLOBAL_ATTRIBUTE18           ,
749          GLOBAL_ATTRIBUTE19           ,
750          GLOBAL_ATTRIBUTE20           ,
751          GLOBAL_ATTRIBUTE_CATEGORY    ,
752          LAST_UPDATED_BY              ,
753          LAST_UPDATE_DATE             ,
754          CREATED_BY                   ,
755          CREATION_DATE                ,
756          LAST_UPDATE_LOGIN
757     FROM hz_cust_prof_class_amts
758    WHERE PROFILE_CLASS_AMOUNT_ID = p_info_rec.PROFILE_CLASS_AMOUNT_ID
759    FOR UPDATE OF hz_cust_prof_class_amts.PROFILE_CLASS_AMOUNT_ID NOWAIT;
760 
761    l_info_rec   hz_cust_prof_class_amts%ROWTYPE;
762 BEGIN
763   arp_standard.debug('lock_row +');
764   arp_standard.debug('   PROFILE_CLASS_AMOUNT_ID:'||p_info_rec.PROFILE_CLASS_AMOUNT_ID);
765 
766   x_return_status := fnd_api.g_ret_sts_success;
767 
768   fnd_msg_pub.initialize;
769 
770   OPEN c;
771   FETCH c INTO
772          l_info_rec.PROFILE_CLASS_AMOUNT_ID      ,
773          l_info_rec.PROFILE_CLASS_ID             ,
774          l_info_rec.CURRENCY_CODE                ,
775          l_info_rec.TRX_CREDIT_LIMIT             ,
776          l_info_rec.OVERALL_CREDIT_LIMIT         ,
777          l_info_rec.MIN_DUNNING_AMOUNT           ,
778          l_info_rec.MAX_INTEREST_CHARGE          ,
779          l_info_rec.MIN_INTEREST_CHARGE          ,
780          l_info_rec.MIN_STATEMENT_AMOUNT         ,
781          l_info_rec.AUTO_REC_MIN_RECEIPT_AMOUNT  ,
782          l_info_rec.MIN_DUNNING_INVOICE_AMOUNT   ,
783          l_info_rec.INTEREST_RATE                ,
784          l_info_rec.EXPIRATION_DATE              ,
785          l_info_rec.EXCHANGE_RATE_TYPE           ,
786          l_info_rec.MIN_FC_INVOICE_OVERDUE_TYPE  ,
787          l_info_rec.MIN_FC_INVOICE_PERCENT       ,
788          l_info_rec.MIN_FC_INVOICE_AMOUNT        ,
789          l_info_rec.MIN_FC_BALANCE_OVERDUE_TYPE  ,
790          l_info_rec.MIN_FC_BALANCE_PERCENT       ,
791          l_info_rec.MIN_FC_BALANCE_AMOUNT        ,
792          l_info_rec.INTEREST_TYPE                ,
793          l_info_rec.INTEREST_FIXED_AMOUNT        ,
794          l_info_rec.INTEREST_SCHEDULE_ID         ,
795          l_info_rec.PENALTY_TYPE                 ,
796          l_info_rec.PENALTY_RATE                 ,
797          l_info_rec.PENALTY_FIXED_AMOUNT         ,
798          l_info_rec.PENALTY_SCHEDULE_ID          ,
799          l_info_rec.ATTRIBUTE_CATEGORY           ,
800          l_info_rec.ATTRIBUTE1                   ,
801          l_info_rec.ATTRIBUTE2                   ,
802          l_info_rec.ATTRIBUTE3                   ,
803          l_info_rec.ATTRIBUTE4                   ,
804          l_info_rec.ATTRIBUTE5                   ,
805          l_info_rec.ATTRIBUTE6                   ,
806          l_info_rec.ATTRIBUTE7                   ,
807          l_info_rec.ATTRIBUTE8                   ,
808          l_info_rec.ATTRIBUTE9                   ,
809          l_info_rec.ATTRIBUTE10                  ,
810          l_info_rec.ATTRIBUTE11                  ,
811          l_info_rec.ATTRIBUTE12                  ,
812          l_info_rec.ATTRIBUTE13                  ,
813          l_info_rec.ATTRIBUTE14                  ,
814          l_info_rec.ATTRIBUTE15                  ,
815          l_info_rec.JGZZ_ATTRIBUTE_CATEGORY      ,
816          l_info_rec.JGZZ_ATTRIBUTE1              ,
817          l_info_rec.JGZZ_ATTRIBUTE2              ,
818          l_info_rec.JGZZ_ATTRIBUTE3              ,
819          l_info_rec.JGZZ_ATTRIBUTE4              ,
820          l_info_rec.JGZZ_ATTRIBUTE5              ,
821          l_info_rec.JGZZ_ATTRIBUTE6              ,
822          l_info_rec.JGZZ_ATTRIBUTE7              ,
823          l_info_rec.JGZZ_ATTRIBUTE8              ,
824          l_info_rec.JGZZ_ATTRIBUTE9              ,
825          l_info_rec.JGZZ_ATTRIBUTE10             ,
826          l_info_rec.JGZZ_ATTRIBUTE11             ,
827          l_info_rec.JGZZ_ATTRIBUTE12             ,
828          l_info_rec.JGZZ_ATTRIBUTE13             ,
829          l_info_rec.JGZZ_ATTRIBUTE14             ,
830          l_info_rec.JGZZ_ATTRIBUTE15             ,
831          l_info_rec.GLOBAL_ATTRIBUTE1            ,
832          l_info_rec.GLOBAL_ATTRIBUTE2            ,
833          l_info_rec.GLOBAL_ATTRIBUTE3            ,
834          l_info_rec.GLOBAL_ATTRIBUTE4            ,
835          l_info_rec.GLOBAL_ATTRIBUTE5            ,
836          l_info_rec.GLOBAL_ATTRIBUTE6            ,
837          l_info_rec.GLOBAL_ATTRIBUTE7            ,
838          l_info_rec.GLOBAL_ATTRIBUTE8            ,
839          l_info_rec.GLOBAL_ATTRIBUTE9            ,
840          l_info_rec.GLOBAL_ATTRIBUTE10           ,
841          l_info_rec.GLOBAL_ATTRIBUTE11           ,
842          l_info_rec.GLOBAL_ATTRIBUTE12           ,
843          l_info_rec.GLOBAL_ATTRIBUTE13           ,
844          l_info_rec.GLOBAL_ATTRIBUTE14           ,
845          l_info_rec.GLOBAL_ATTRIBUTE15           ,
846          l_info_rec.GLOBAL_ATTRIBUTE16           ,
847          l_info_rec.GLOBAL_ATTRIBUTE17           ,
848          l_info_rec.GLOBAL_ATTRIBUTE18           ,
849          l_info_rec.GLOBAL_ATTRIBUTE19           ,
850          l_info_rec.GLOBAL_ATTRIBUTE20           ,
851          l_info_rec.GLOBAL_ATTRIBUTE_CATEGORY    ,
852          l_info_rec.LAST_UPDATED_BY              ,
853          l_info_rec.LAST_UPDATE_DATE             ,
854          l_info_rec.CREATED_BY                   ,
855          l_info_rec.CREATION_DATE                ,
856          l_info_rec.LAST_UPDATE_LOGIN;
857      IF c%NOTFOUND THEN
858        RAISE NO_DATA_FOUND;
859      END IF;
860    CLOSE c;
861 
862    IF (     l_info_rec.PROFILE_CLASS_AMOUNT_ID = p_info_rec.PROFILE_CLASS_AMOUNT_ID
863         AND l_info_rec.PROFILE_CLASS_ID        = p_info_rec.PROFILE_CLASS_ID
864         AND l_info_rec.CURRENCY_CODE           = p_info_rec.CURRENCY_CODE
865         AND elementequal(l_info_rec.TRX_CREDIT_LIMIT    , p_info_rec.TRX_CREDIT_LIMIT)
866         AND elementequal(l_info_rec.OVERALL_CREDIT_LIMIT, p_info_rec.OVERALL_CREDIT_LIMIT)
867         AND elementequal(l_info_rec.MIN_DUNNING_AMOUNT  , p_info_rec.MIN_DUNNING_AMOUNT)
868         AND elementequal(l_info_rec.MAX_INTEREST_CHARGE , p_info_rec.MAX_INTEREST_CHARGE)
869         AND elementequal(l_info_rec.MIN_INTEREST_CHARGE , p_info_rec.MIN_INTEREST_CHARGE)
870         AND elementequal(l_info_rec.MIN_STATEMENT_AMOUNT, p_info_rec.MIN_STATEMENT_AMOUNT)
871         AND elementequal(l_info_rec.AUTO_REC_MIN_RECEIPT_AMOUNT, p_info_rec.AUTO_REC_MIN_RECEIPT_AMOUNT)
872         AND elementequal(l_info_rec.MIN_DUNNING_INVOICE_AMOUNT, p_info_rec.MIN_DUNNING_INVOICE_AMOUNT)
873         AND elementequal(l_info_rec.INTEREST_RATE       , p_info_rec.INTEREST_RATE)
874         AND elementequal(l_info_rec.EXPIRATION_DATE     , p_info_rec.EXPIRATION_DATE)
875         AND elementequal(l_info_rec.EXCHANGE_RATE_TYPE  , p_info_rec.EXCHANGE_RATE_TYPE)
876         AND elementequal(l_info_rec.MIN_FC_INVOICE_OVERDUE_TYPE, p_info_rec.MIN_FC_INVOICE_OVERDUE_TYPE)
877         AND elementequal(l_info_rec.MIN_FC_INVOICE_PERCENT     , p_info_rec.MIN_FC_INVOICE_PERCENT)
878         AND elementequal(l_info_rec.MIN_FC_INVOICE_AMOUNT      , p_info_rec.MIN_FC_INVOICE_AMOUNT)
879         AND elementequal(l_info_rec.MIN_FC_BALANCE_OVERDUE_TYPE, p_info_rec.MIN_FC_BALANCE_OVERDUE_TYPE)
880         AND elementequal(l_info_rec.MIN_FC_BALANCE_PERCENT ,  p_info_rec.MIN_FC_BALANCE_PERCENT )
881         AND elementequal(l_info_rec.MIN_FC_BALANCE_AMOUNT  ,  p_info_rec.MIN_FC_BALANCE_AMOUNT)
882         AND elementequal(l_info_rec.INTEREST_TYPE          ,  p_info_rec.INTEREST_TYPE)
883         AND elementequal(l_info_rec.INTEREST_FIXED_AMOUNT  ,  p_info_rec.INTEREST_FIXED_AMOUNT)
884         AND elementequal(l_info_rec.INTEREST_SCHEDULE_ID   ,  p_info_rec.INTEREST_SCHEDULE_ID)
885         AND elementequal(l_info_rec.PENALTY_TYPE   ,  p_info_rec.PENALTY_TYPE)
886         AND elementequal(l_info_rec.PENALTY_RATE   ,  p_info_rec.PENALTY_RATE)
887         AND elementequal(l_info_rec.PENALTY_FIXED_AMOUNT   ,  p_info_rec.PENALTY_FIXED_AMOUNT)
888         AND elementequal(l_info_rec.PENALTY_SCHEDULE_ID    ,  p_info_rec.PENALTY_SCHEDULE_ID)
889         AND elementequal(l_info_rec.ATTRIBUTE_CATEGORY     ,  p_info_rec.ATTRIBUTE_CATEGORY)
890         AND elementequal(l_info_rec.ATTRIBUTE1      ,  p_info_rec.ATTRIBUTE1)
891         AND elementequal(l_info_rec.ATTRIBUTE2      ,  p_info_rec.ATTRIBUTE2)
892         AND elementequal(l_info_rec.ATTRIBUTE3      ,  p_info_rec.ATTRIBUTE3)
893         AND elementequal(l_info_rec.ATTRIBUTE4      ,  p_info_rec.ATTRIBUTE4)
894         AND elementequal(l_info_rec.ATTRIBUTE5      ,  p_info_rec.ATTRIBUTE5)
895         AND elementequal(l_info_rec.ATTRIBUTE6      ,  p_info_rec.ATTRIBUTE6)
896         AND elementequal(l_info_rec.ATTRIBUTE7      ,  p_info_rec.ATTRIBUTE7)
897         AND elementequal(l_info_rec.ATTRIBUTE8      ,  p_info_rec.ATTRIBUTE8)
898         AND elementequal(l_info_rec.ATTRIBUTE9      ,  p_info_rec.ATTRIBUTE9)
899         AND elementequal(l_info_rec.ATTRIBUTE10     ,  p_info_rec.ATTRIBUTE10)
900         AND elementequal(l_info_rec.ATTRIBUTE11     ,  p_info_rec.ATTRIBUTE11)
901         AND elementequal(l_info_rec.ATTRIBUTE12     ,  p_info_rec.ATTRIBUTE12)
902         AND elementequal(l_info_rec.ATTRIBUTE13     ,  p_info_rec.ATTRIBUTE13)
903         AND elementequal(l_info_rec.ATTRIBUTE14     ,  p_info_rec.ATTRIBUTE14)
904         AND elementequal(l_info_rec.ATTRIBUTE15     ,  p_info_rec.ATTRIBUTE15)
905         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE_CATEGORY,  p_info_rec.JGZZ_ATTRIBUTE_CATEGORY)
906         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE1      ,  p_info_rec.JGZZ_ATTRIBUTE1)
907         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE2      ,  p_info_rec.JGZZ_ATTRIBUTE2)
908         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE3      ,  p_info_rec.JGZZ_ATTRIBUTE3)
909         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE4      ,  p_info_rec.JGZZ_ATTRIBUTE4)
910         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE5      ,  p_info_rec.JGZZ_ATTRIBUTE5)
911         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE6      ,  p_info_rec.JGZZ_ATTRIBUTE6)
912         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE7      ,  p_info_rec.JGZZ_ATTRIBUTE7)
913         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE8      ,  p_info_rec.JGZZ_ATTRIBUTE8)
914         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE9      ,  p_info_rec.JGZZ_ATTRIBUTE9)
915         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE10     ,  p_info_rec.JGZZ_ATTRIBUTE10)
916         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE11     ,  p_info_rec.JGZZ_ATTRIBUTE11)
917         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE12     ,  p_info_rec.JGZZ_ATTRIBUTE12)
918         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE13     ,  p_info_rec.JGZZ_ATTRIBUTE13)
919         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE14     ,  p_info_rec.JGZZ_ATTRIBUTE14)
920         AND elementequal(l_info_rec.JGZZ_ATTRIBUTE15     ,  p_info_rec.JGZZ_ATTRIBUTE15)
921         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE_CATEGORY,  p_info_rec.GLOBAL_ATTRIBUTE_CATEGORY)
922         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE1      ,  p_info_rec.GLOBAL_ATTRIBUTE1)
923         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE2      ,  p_info_rec.GLOBAL_ATTRIBUTE2)
924         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE3      ,  p_info_rec.GLOBAL_ATTRIBUTE3)
925         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE4      ,  p_info_rec.GLOBAL_ATTRIBUTE4)
926         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE5      ,  p_info_rec.GLOBAL_ATTRIBUTE5)
927         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE6      ,  p_info_rec.GLOBAL_ATTRIBUTE6)
928         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE7      ,  p_info_rec.GLOBAL_ATTRIBUTE7)
929         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE8      ,  p_info_rec.GLOBAL_ATTRIBUTE8)
930         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE9      ,  p_info_rec.GLOBAL_ATTRIBUTE9)
931         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE10     ,  p_info_rec.GLOBAL_ATTRIBUTE10)
932         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE11     ,  p_info_rec.GLOBAL_ATTRIBUTE11)
933         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE12     ,  p_info_rec.GLOBAL_ATTRIBUTE12)
934         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE13     ,  p_info_rec.GLOBAL_ATTRIBUTE13)
935         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE14     ,  p_info_rec.GLOBAL_ATTRIBUTE14)
936         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE15     ,  p_info_rec.GLOBAL_ATTRIBUTE15)
937         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE16     ,  p_info_rec.GLOBAL_ATTRIBUTE16)
938         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE17     ,  p_info_rec.GLOBAL_ATTRIBUTE17)
939         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE18     ,  p_info_rec.GLOBAL_ATTRIBUTE18)
940         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE19     ,  p_info_rec.GLOBAL_ATTRIBUTE19)
941         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE20     ,  p_info_rec.GLOBAL_ATTRIBUTE20)
942         AND elementequal(l_info_rec.GLOBAL_ATTRIBUTE15     ,  p_info_rec.GLOBAL_ATTRIBUTE15)
943         AND elementequal(l_info_rec.LAST_UPDATE_DATE       ,  p_info_rec.LAST_UPDATE_DATE)   )
944    THEN
945       RETURN;
946    ELSE
947       fnd_message.set_name('AR', 'HZ_API_RECORD_CHANGED');
948       fnd_message.set_token('TABLE', 'hz_cust_prof_class_amts');
949       fnd_msg_pub.add;
950       RAISE fnd_api.g_exc_error;
951    END IF;
952 
953   arp_standard.debug('lock_row -');
954 EXCEPTION
955    WHEN FND_API.G_EXC_ERROR THEN
956      x_return_status := FND_API.G_RET_STS_ERROR;
957      FND_MSG_PUB.Count_And_Get(
958         p_encoded => FND_API.G_FALSE,
959         p_count => x_msg_count,
960         p_data  => x_msg_data);
961      arp_standard.debug('EXCEPTION ar_cust_prof_class_amt_pkg.lock_row:'||x_msg_data);
962 
963    WHEN OTHERS THEN
964      x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
965      FND_MESSAGE.SET_NAME('AR', 'HZ_API_OTHERS_EXCEP');
966      FND_MESSAGE.SET_TOKEN('ERROR' ,SQLERRM);
967      FND_MSG_PUB.ADD;
968      FND_MSG_PUB.Count_And_Get(
969         p_encoded => FND_API.G_FALSE,
970         p_count => x_msg_count,
971         p_data  => x_msg_data);
972      arp_standard.debug('EXCEPTION OTHERS ar_cust_prof_class_amt_pkg.lock_row:'||x_msg_data);
973 END;
974 
975 
976 
977 
978 PROCEDURE update_row
979 (P_PROFILE_CLASS_AMOUNT_ID      IN NUMBER,
980  P_CURRENCY_CODE                IN VARCHAR2,
981  P_TRX_CREDIT_LIMIT             IN NUMBER,
982  P_OVERALL_CREDIT_LIMIT         IN NUMBER,
983  P_MIN_DUNNING_AMOUNT           IN NUMBER,
984  P_MAX_INTEREST_CHARGE          IN NUMBER,
985  P_MIN_INTEREST_CHARGE          IN NUMBER,
986  P_MIN_STATEMENT_AMOUNT         IN NUMBER,
987  P_AUTO_REC_MIN_RECEIPT_AMOUNT  IN NUMBER,
988  P_MIN_DUNNING_INVOICE_AMOUNT   IN NUMBER,
989  P_INTEREST_RATE                IN NUMBER,
990  P_EXPIRATION_DATE              IN DATE,
991  P_EXCHANGE_RATE_TYPE           IN VARCHAR2,
992  P_MIN_FC_INVOICE_OVERDUE_TYPE  IN VARCHAR2,
993  P_MIN_FC_INVOICE_PERCENT       IN NUMBER,
994  P_MIN_FC_INVOICE_AMOUNT        IN NUMBER,
995  P_MIN_FC_BALANCE_OVERDUE_TYPE  IN VARCHAR2,
996  P_MIN_FC_BALANCE_PERCENT       IN NUMBER,
997  P_MIN_FC_BALANCE_AMOUNT        IN NUMBER,
998  P_INTEREST_TYPE                IN VARCHAR2,
999  P_INTEREST_FIXED_AMOUNT        IN NUMBER,
1000  P_INTEREST_SCHEDULE_ID         IN NUMBER,
1001  P_PENALTY_TYPE                 IN VARCHAR2,
1002  P_PENALTY_RATE                 IN NUMBER,
1003  P_PENALTY_FIXED_AMOUNT         IN NUMBER,
1004  P_PENALTY_SCHEDULE_ID          IN NUMBER,
1005  P_ATTRIBUTE_CATEGORY           IN VARCHAR2 DEFAULT NULL,
1006  P_ATTRIBUTE1                   IN VARCHAR2 DEFAULT NULL,
1007  P_ATTRIBUTE2                   IN VARCHAR2 DEFAULT NULL,
1008  P_ATTRIBUTE3                   IN VARCHAR2 DEFAULT NULL,
1009  P_ATTRIBUTE4                   IN VARCHAR2 DEFAULT NULL,
1010  P_ATTRIBUTE5                   IN VARCHAR2 DEFAULT NULL,
1011  P_ATTRIBUTE6                   IN VARCHAR2 DEFAULT NULL,
1012  P_ATTRIBUTE7                   IN VARCHAR2 DEFAULT NULL,
1013  P_ATTRIBUTE8                   IN VARCHAR2 DEFAULT NULL,
1014  P_ATTRIBUTE9                   IN VARCHAR2 DEFAULT NULL,
1015  P_ATTRIBUTE10                  IN VARCHAR2 DEFAULT NULL,
1016  P_ATTRIBUTE11                  IN VARCHAR2 DEFAULT NULL,
1017  P_ATTRIBUTE12                  IN VARCHAR2 DEFAULT NULL,
1018  P_ATTRIBUTE13                  IN VARCHAR2 DEFAULT NULL,
1019  P_ATTRIBUTE14                  IN VARCHAR2 DEFAULT NULL,
1020  P_ATTRIBUTE15                  IN VARCHAR2 DEFAULT NULL,
1021  P_JGZZ_ATTRIBUTE_CATEGORY      IN VARCHAR2 DEFAULT NULL,
1022  P_JGZZ_ATTRIBUTE1              IN VARCHAR2 DEFAULT NULL,
1023  P_JGZZ_ATTRIBUTE2              IN VARCHAR2 DEFAULT NULL,
1024  P_JGZZ_ATTRIBUTE3              IN VARCHAR2 DEFAULT NULL,
1025  P_JGZZ_ATTRIBUTE4              IN VARCHAR2 DEFAULT NULL,
1026  P_JGZZ_ATTRIBUTE5              IN VARCHAR2 DEFAULT NULL,
1027  P_JGZZ_ATTRIBUTE6              IN VARCHAR2 DEFAULT NULL,
1028  P_JGZZ_ATTRIBUTE7              IN VARCHAR2 DEFAULT NULL,
1029  P_JGZZ_ATTRIBUTE8              IN VARCHAR2 DEFAULT NULL,
1030  P_JGZZ_ATTRIBUTE9              IN VARCHAR2 DEFAULT NULL,
1031  P_JGZZ_ATTRIBUTE10             IN VARCHAR2 DEFAULT NULL,
1032  P_JGZZ_ATTRIBUTE11             IN VARCHAR2 DEFAULT NULL,
1033  P_JGZZ_ATTRIBUTE12             IN VARCHAR2 DEFAULT NULL,
1034  P_JGZZ_ATTRIBUTE13             IN VARCHAR2 DEFAULT NULL,
1035  P_JGZZ_ATTRIBUTE14             IN VARCHAR2 DEFAULT NULL,
1036  P_JGZZ_ATTRIBUTE15             IN VARCHAR2 DEFAULT NULL,
1037  P_GLOBAL_ATTRIBUTE1            IN VARCHAR2 DEFAULT NULL,
1038  P_GLOBAL_ATTRIBUTE2            IN VARCHAR2 DEFAULT NULL,
1039  P_GLOBAL_ATTRIBUTE3            IN VARCHAR2 DEFAULT NULL,
1040  P_GLOBAL_ATTRIBUTE4            IN VARCHAR2 DEFAULT NULL,
1041  P_GLOBAL_ATTRIBUTE5            IN VARCHAR2 DEFAULT NULL,
1042  P_GLOBAL_ATTRIBUTE6            IN VARCHAR2 DEFAULT NULL,
1043  P_GLOBAL_ATTRIBUTE7            IN VARCHAR2 DEFAULT NULL,
1044  P_GLOBAL_ATTRIBUTE8            IN VARCHAR2 DEFAULT NULL,
1045  P_GLOBAL_ATTRIBUTE9            IN VARCHAR2 DEFAULT NULL,
1046  P_GLOBAL_ATTRIBUTE10           IN VARCHAR2 DEFAULT NULL,
1047  P_GLOBAL_ATTRIBUTE11           IN VARCHAR2 DEFAULT NULL,
1048  P_GLOBAL_ATTRIBUTE12           IN VARCHAR2 DEFAULT NULL,
1049  P_GLOBAL_ATTRIBUTE13           IN VARCHAR2 DEFAULT NULL,
1050  P_GLOBAL_ATTRIBUTE14           IN VARCHAR2 DEFAULT NULL,
1051  P_GLOBAL_ATTRIBUTE15           IN VARCHAR2 DEFAULT NULL,
1052  P_GLOBAL_ATTRIBUTE16           IN VARCHAR2 DEFAULT NULL,
1053  P_GLOBAL_ATTRIBUTE17           IN VARCHAR2 DEFAULT NULL,
1054  P_GLOBAL_ATTRIBUTE18           IN VARCHAR2 DEFAULT NULL,
1055  P_GLOBAL_ATTRIBUTE19           IN VARCHAR2 DEFAULT NULL,
1056  P_GLOBAL_ATTRIBUTE20           IN VARCHAR2 DEFAULT NULL,
1057  P_GLOBAL_ATTRIBUTE_CATEGORY    IN VARCHAR2 DEFAULT NULL,
1058  P_LAST_UPDATED_BY              IN NUMBER   DEFAULT -1,
1059  P_LAST_UPDATE_LOGIN            IN NUMBER   DEFAULT -1,
1060  x_return_status                OUT NOCOPY  VARCHAR2,
1061  x_msg_count                    OUT NOCOPY  NUMBER,
1062  x_msg_data                     OUT NOCOPY  VARCHAR2)
1063 IS
1064 BEGIN
1065 arp_standard.debug('ar_cust_prof_class_amt_pkg.update_row +');
1066 arp_standard.debug('   P_PROFILE_CLASS_AMOUNT_ID :'||P_PROFILE_CLASS_AMOUNT_ID);
1067 
1068  x_return_status  := fnd_api.g_ret_Sts_success;
1069 
1070  fnd_msg_pub.initialize;
1071 
1072  validate_prof_class_amt
1073  (P_CURRENCY_CODE                => p_currency_code,
1074   P_TRX_CREDIT_LIMIT             => P_TRX_CREDIT_LIMIT,
1075   P_OVERALL_CREDIT_LIMIT         => P_OVERALL_CREDIT_LIMIT,
1076   P_MIN_DUNNING_AMOUNT           => P_MIN_DUNNING_AMOUNT,
1077   P_MAX_INTEREST_CHARGE          => P_MAX_INTEREST_CHARGE,
1078   P_MIN_INTEREST_CHARGE          => P_MIN_INTEREST_CHARGE,
1079   P_MIN_STATEMENT_AMOUNT         => P_MIN_STATEMENT_AMOUNT,
1080   P_AUTO_REC_MIN_RECEIPT_AMOUNT  => P_AUTO_REC_MIN_RECEIPT_AMOUNT,
1081   P_MIN_DUNNING_INVOICE_AMOUNT   => P_MIN_DUNNING_INVOICE_AMOUNT,
1082   P_INTEREST_RATE                => P_INTEREST_RATE,
1083   P_EXPIRATION_DATE              => P_EXPIRATION_DATE,
1084   P_EXCHANGE_RATE_TYPE           => P_EXCHANGE_RATE_TYPE,
1085   P_MIN_FC_INVOICE_OVERDUE_TYPE  => P_MIN_FC_INVOICE_OVERDUE_TYPE,
1086   P_MIN_FC_INVOICE_PERCENT       => P_MIN_FC_INVOICE_PERCENT,
1087   P_MIN_FC_INVOICE_AMOUNT        => P_MIN_FC_INVOICE_AMOUNT,
1088   P_MIN_FC_BALANCE_OVERDUE_TYPE  => P_MIN_FC_BALANCE_OVERDUE_TYPE,
1089   P_MIN_FC_BALANCE_PERCENT       => P_MIN_FC_BALANCE_PERCENT,
1090   P_MIN_FC_BALANCE_AMOUNT        => P_MIN_FC_BALANCE_AMOUNT,
1091   P_INTEREST_TYPE                => P_INTEREST_TYPE,
1092   P_INTEREST_FIXED_AMOUNT        => P_INTEREST_FIXED_AMOUNT,
1093   P_INTEREST_SCHEDULE_ID         => P_INTEREST_SCHEDULE_ID,
1094   P_PENALTY_TYPE                 => P_PENALTY_TYPE,
1095   P_PENALTY_RATE                 => P_PENALTY_RATE,
1096   P_PENALTY_FIXED_AMOUNT         => P_PENALTY_FIXED_AMOUNT,
1097   P_PENALTY_SCHEDULE_ID          => P_PENALTY_SCHEDULE_ID,
1098   x_return_status                => x_return_status);
1099 
1100  IF  x_return_status <> fnd_api.g_ret_Sts_success THEN
1101    RAISE fnd_api.G_EXC_ERROR;
1102  END IF;
1103 
1104  arp_standard.debug(' Updating into hz_cust_prof_class_amts+');
1105  arp_standard.debug(' P_TRX_CREDIT_LIMIT:'||P_TRX_CREDIT_LIMIT);
1106 
1107  UPDATE hz_cust_prof_class_Amts
1108  SET
1109   CURRENCY_CODE               = P_CURRENCY_CODE,
1110   TRX_CREDIT_LIMIT            = P_TRX_CREDIT_LIMIT,
1111   OVERALL_CREDIT_LIMIT        = P_OVERALL_CREDIT_LIMIT,
1112   MIN_DUNNING_AMOUNT          = P_MIN_DUNNING_AMOUNT,
1113   MAX_INTEREST_CHARGE         = P_MAX_INTEREST_CHARGE,
1114   MIN_INTEREST_CHARGE         = P_MIN_INTEREST_CHARGE,
1115   MIN_STATEMENT_AMOUNT        = P_MIN_STATEMENT_AMOUNT,
1116   AUTO_REC_MIN_RECEIPT_AMOUNT = P_AUTO_REC_MIN_RECEIPT_AMOUNT,
1117   MIN_DUNNING_INVOICE_AMOUNT  = P_MIN_DUNNING_INVOICE_AMOUNT,
1118   INTEREST_RATE               = P_INTEREST_RATE,
1119   EXPIRATION_DATE             = P_EXPIRATION_DATE,
1120   EXCHANGE_RATE_TYPE          = P_EXCHANGE_RATE_TYPE,
1121   MIN_FC_INVOICE_OVERDUE_TYPE = P_MIN_FC_INVOICE_OVERDUE_TYPE,
1122   MIN_FC_INVOICE_PERCENT      = P_MIN_FC_INVOICE_PERCENT,
1123   MIN_FC_INVOICE_AMOUNT       = P_MIN_FC_INVOICE_AMOUNT,
1124   MIN_FC_BALANCE_OVERDUE_TYPE = P_MIN_FC_BALANCE_OVERDUE_TYPE,
1125   MIN_FC_BALANCE_PERCENT      = P_MIN_FC_BALANCE_PERCENT,
1126   MIN_FC_BALANCE_AMOUNT       = P_MIN_FC_BALANCE_AMOUNT,
1127   INTEREST_TYPE               = P_INTEREST_TYPE,
1128   INTEREST_FIXED_AMOUNT       = P_INTEREST_FIXED_AMOUNT,
1129   INTEREST_SCHEDULE_ID        = P_INTEREST_SCHEDULE_ID,
1130   PENALTY_TYPE                = P_PENALTY_TYPE,
1131   PENALTY_RATE                = P_PENALTY_RATE,
1132   PENALTY_FIXED_AMOUNT        = P_PENALTY_FIXED_AMOUNT,
1133   PENALTY_SCHEDULE_ID         = P_PENALTY_SCHEDULE_ID,
1134   ATTRIBUTE_CATEGORY          = P_ATTRIBUTE_CATEGORY,
1135   ATTRIBUTE1                  = P_ATTRIBUTE1,
1136   ATTRIBUTE2                  = P_ATTRIBUTE2,
1137   ATTRIBUTE3                  = P_ATTRIBUTE3,
1138   ATTRIBUTE4                  = P_ATTRIBUTE4,
1139   ATTRIBUTE5                  = P_ATTRIBUTE5,
1140   ATTRIBUTE6                  = P_ATTRIBUTE6,
1141   ATTRIBUTE7                  = P_ATTRIBUTE7,
1142   ATTRIBUTE8                  = P_ATTRIBUTE8,
1143   ATTRIBUTE9                  = P_ATTRIBUTE9,
1144   ATTRIBUTE10                 = P_ATTRIBUTE10,
1145   ATTRIBUTE11                 = P_ATTRIBUTE11,
1146   ATTRIBUTE12                 = P_ATTRIBUTE12,
1147   ATTRIBUTE13                 = P_ATTRIBUTE13,
1148   ATTRIBUTE14                 = P_ATTRIBUTE14,
1149   ATTRIBUTE15                 = P_ATTRIBUTE15,
1150   JGZZ_ATTRIBUTE_CATEGORY     = P_JGZZ_ATTRIBUTE_CATEGORY,
1151   JGZZ_ATTRIBUTE1             = P_JGZZ_ATTRIBUTE1,
1152   JGZZ_ATTRIBUTE2             = P_JGZZ_ATTRIBUTE2,
1153   JGZZ_ATTRIBUTE3             = P_JGZZ_ATTRIBUTE3,
1154   JGZZ_ATTRIBUTE4             = P_JGZZ_ATTRIBUTE4,
1155   JGZZ_ATTRIBUTE5             = P_JGZZ_ATTRIBUTE5,
1156   JGZZ_ATTRIBUTE6             = P_JGZZ_ATTRIBUTE6,
1157   JGZZ_ATTRIBUTE7             = P_JGZZ_ATTRIBUTE7,
1158   JGZZ_ATTRIBUTE8             = P_JGZZ_ATTRIBUTE8,
1159   JGZZ_ATTRIBUTE9             = P_JGZZ_ATTRIBUTE9,
1160   JGZZ_ATTRIBUTE10            = P_JGZZ_ATTRIBUTE10,
1161   JGZZ_ATTRIBUTE11            = P_JGZZ_ATTRIBUTE11,
1162   JGZZ_ATTRIBUTE12            = P_JGZZ_ATTRIBUTE12,
1163   JGZZ_ATTRIBUTE13            = P_JGZZ_ATTRIBUTE13,
1164   JGZZ_ATTRIBUTE14            = P_JGZZ_ATTRIBUTE14,
1165   JGZZ_ATTRIBUTE15            = P_JGZZ_ATTRIBUTE15,
1166   GLOBAL_ATTRIBUTE1           = P_GLOBAL_ATTRIBUTE1,
1167   GLOBAL_ATTRIBUTE2           = P_GLOBAL_ATTRIBUTE2,
1168   GLOBAL_ATTRIBUTE3           = P_GLOBAL_ATTRIBUTE3,
1169   GLOBAL_ATTRIBUTE4           = P_GLOBAL_ATTRIBUTE4,
1170   GLOBAL_ATTRIBUTE5           = P_GLOBAL_ATTRIBUTE5,
1171   GLOBAL_ATTRIBUTE6           = P_GLOBAL_ATTRIBUTE6,
1172   GLOBAL_ATTRIBUTE7           = P_GLOBAL_ATTRIBUTE7,
1173   GLOBAL_ATTRIBUTE8           = P_GLOBAL_ATTRIBUTE8,
1174   GLOBAL_ATTRIBUTE9           = P_GLOBAL_ATTRIBUTE9,
1175   GLOBAL_ATTRIBUTE10          = P_GLOBAL_ATTRIBUTE10,
1176   GLOBAL_ATTRIBUTE11          = P_GLOBAL_ATTRIBUTE11,
1177   GLOBAL_ATTRIBUTE12          = P_GLOBAL_ATTRIBUTE12,
1178   GLOBAL_ATTRIBUTE13          = P_GLOBAL_ATTRIBUTE13,
1179   GLOBAL_ATTRIBUTE14          = P_GLOBAL_ATTRIBUTE14,
1180   GLOBAL_ATTRIBUTE15          = P_GLOBAL_ATTRIBUTE15,
1181   GLOBAL_ATTRIBUTE16          = P_GLOBAL_ATTRIBUTE16,
1182   GLOBAL_ATTRIBUTE17          = P_GLOBAL_ATTRIBUTE17,
1183   GLOBAL_ATTRIBUTE18          = P_GLOBAL_ATTRIBUTE18,
1184   GLOBAL_ATTRIBUTE19          = P_GLOBAL_ATTRIBUTE19,
1185   GLOBAL_ATTRIBUTE20          = P_GLOBAL_ATTRIBUTE20,
1186   GLOBAL_ATTRIBUTE_CATEGORY   = P_GLOBAL_ATTRIBUTE_CATEGORY,
1187   LAST_UPDATED_BY             = P_LAST_UPDATED_BY,
1188   LAST_UPDATE_DATE            = SYSDATE,
1189   LAST_UPDATE_LOGIN           = P_LAST_UPDATE_LOGIN
1190  WHERE PROFILE_CLASS_AMOUNT_ID = P_PROFILE_CLASS_AMOUNT_ID;
1191 
1192 arp_standard.debug('  updating hz_cust_prof_class_amts -');
1193 
1194 arp_standard.debug('ar_cust_prof_class_amt_pkg.update_row -');
1195 EXCEPTION
1196    WHEN FND_API.G_EXC_ERROR THEN
1197      x_return_status := FND_API.G_RET_STS_ERROR;
1198      FND_MSG_PUB.Count_And_Get(
1199         p_encoded => FND_API.G_FALSE,
1200         p_count => x_msg_count,
1201         p_data  => x_msg_data);
1202      arp_standard.debug('EXCEPTION ar_cust_prof_class_amt_pkg.update_row:'||x_msg_data);
1203 
1204   WHEN OTHERS THEN
1205     x_return_status := fnd_api.g_ret_sts_unexp_error;
1206     fnd_message.set_name('AR', 'HZ_API_OTHERS_EXCEP');
1207     fnd_message.set_token('ERROR' ,SQLERRM);
1208     fnd_msg_pub.add;
1209     fnd_msg_pub.count_and_get(p_encoded => fnd_api.g_false,
1210                               p_count => x_msg_count,
1211                               p_data  => x_msg_data);
1212     arp_standard.debug('EXCEPTION OTHERS IN ar_cust_prof_class_amt_pkg.update_row:'||SQLERRM);
1213 END;
1214 
1215 
1216 
1217 
1218 
1219 PROCEDURE Insert_Negative_Class_Amt
1220 (         X_Customer_Profile_Class_Id      NUMBER,
1221           X_Created_By                     NUMBER,
1222           X_Creation_Date                  DATE,
1223           X_Currency_Code                  VARCHAR2,
1224           X_Cust_Prof_Class_Amount_Id      NUMBER,
1225           X_Last_Updated_By                NUMBER,
1226           X_Last_Update_Date               DATE,
1227           X_Auto_Rec_Min_Receipt_Amount    NUMBER,
1228           X_Last_Update_Login              NUMBER,
1229           X_Max_Interest_Charge            NUMBER,
1230           X_Min_Dunning_Amount             NUMBER,
1231           X_Min_Statement_Amount           NUMBER,
1232           X_Overall_Credit_Limit           NUMBER,
1233           X_Trx_Credit_Limit               NUMBER,
1234           X_Attribute_Category             VARCHAR2,
1235           X_Attribute1                     VARCHAR2,
1236           X_Attribute2                     VARCHAR2,
1237           X_Attribute3                     VARCHAR2,
1238           X_Attribute4                     VARCHAR2,
1239           X_Attribute5                     VARCHAR2,
1240           X_Attribute6                     VARCHAR2,
1241           X_Attribute7                     VARCHAR2,
1242           X_Attribute8                     VARCHAR2,
1243           X_Attribute9                     VARCHAR2,
1244           X_Attribute10                    VARCHAR2,
1245           X_Attribute11                    VARCHAR2,
1246           X_Attribute12                    VARCHAR2,
1247           X_Attribute13                    VARCHAR2,
1248           X_Attribute14                    VARCHAR2,
1249           X_Attribute15                    VARCHAR2,
1250           X_Interest_Rate                  NUMBER,
1251           X_Min_Fc_Balance_Amount          NUMBER,
1252           X_Min_Fc_Invoice_Amount          NUMBER,
1253           X_Min_Dunning_Invoice_Amount     NUMBER,
1254           X_Jgzz_attribute_Category             VARCHAR2,
1255           X_Jgzz_attribute1                     VARCHAR2,
1256           X_Jgzz_attribute2                     VARCHAR2,
1257           X_Jgzz_attribute3                     VARCHAR2,
1258           X_Jgzz_attribute4                     VARCHAR2,
1259           X_Jgzz_attribute5                     VARCHAR2,
1260           X_Jgzz_attribute6                     VARCHAR2,
1261           X_Jgzz_attribute7                     VARCHAR2,
1262           X_Jgzz_attribute8                     VARCHAR2,
1263           X_Jgzz_attribute9                     VARCHAR2,
1264           X_Jgzz_attribute10                    VARCHAR2,
1265           X_Jgzz_attribute11                    VARCHAR2,
1266           X_Jgzz_attribute12                    VARCHAR2,
1267           X_Jgzz_attribute13                    VARCHAR2,
1268           X_Jgzz_attribute14                    VARCHAR2,
1269           X_Jgzz_attribute15                    VARCHAR2,
1270           --Late Charges
1271           X_EXCHANGE_RATE_TYPE                  VARCHAR2,
1272           X_MIN_FC_INVOICE_OVERDUE_TYPE         VARCHAR2,
1273           X_MIN_FC_INVOICE_PERCENT              NUMBER,
1274           X_MIN_FC_BALANCE_OVERDUE_TYPE         VARCHAR2,
1275           X_MIN_FC_BALANCE_PERCENT              NUMBER,
1276           X_INTEREST_TYPE                       VARCHAR2,
1277           X_INTEREST_FIXED_AMOUNT               NUMBER,
1278           X_INTEREST_SCHEDULE_ID                NUMBER,
1279           X_PENALTY_TYPE                        VARCHAR2,
1280           X_PENALTY_RATE                        NUMBER,
1281           X_PENALTY_FIXED_AMOUNT                NUMBER,
1282           X_PENALTY_SCHEDULE_ID                 NUMBER,
1283           X_MIN_INTEREST_CHARGE                 NUMBER
1284 ) IS
1285 
1286 BEGIN
1287   INSERT INTO HZ_CUST_PROF_CLASS_AMTS
1288   (
1289          profile_class_id,
1290          created_by,
1291          creation_date,
1292          currency_code,
1293          profile_class_amount_id,
1294          last_updated_by,
1295          last_update_date,
1296          auto_rec_min_receipt_amount,
1297          last_update_login,
1298          max_interest_charge,
1299          MIN_INTEREST_CHARGE,
1300          min_dunning_amount,
1301          min_statement_amount,
1302          overall_credit_limit,
1303          trx_credit_limit,
1304          attribute_category,
1305          attribute1,
1306          attribute2,
1307          attribute3,
1308          attribute4,
1309          attribute5,
1310          attribute6,
1311          attribute7,
1312          attribute8,
1313          attribute9,
1314          attribute10,
1315          attribute11,
1316          attribute12,
1317          attribute13,
1318          attribute14,
1319          attribute15,
1320          interest_rate,
1321          min_fc_balance_amount,
1322          min_fc_invoice_amount,
1323          min_dunning_invoice_amount,
1324          Jgzz_attribute_Category,
1325          Jgzz_attribute1,
1326          Jgzz_attribute2,
1330          Jgzz_attribute6,
1327          Jgzz_attribute3,
1328          Jgzz_attribute4,
1329          Jgzz_attribute5,
1331          Jgzz_attribute7,
1332          Jgzz_attribute8,
1333          Jgzz_attribute9,
1334          Jgzz_attribute10,
1335          Jgzz_attribute11,
1336          Jgzz_attribute12,
1337          Jgzz_attribute13,
1338          Jgzz_attribute14,
1339          Jgzz_attribute15,
1340          --{Late Charges
1341          EXCHANGE_RATE_TYPE,
1342          MIN_FC_INVOICE_OVERDUE_TYPE,
1343          MIN_FC_INVOICE_PERCENT,
1344          MIN_FC_BALANCE_OVERDUE_TYPE,
1345          MIN_FC_BALANCE_PERCENT,
1346          INTEREST_TYPE       ,
1347          INTEREST_FIXED_AMOUNT,
1348          INTEREST_SCHEDULE_ID,
1349          PENALTY_TYPE        ,
1350          PENALTY_RATE        ,
1351          PENALTY_FIXED_AMOUNT,
1352          PENALTY_SCHEDULE_ID
1353   )
1354   VALUES
1355   (
1356          X_Customer_Profile_Class_Id,
1357          X_Created_By,
1358          X_Creation_Date,
1359          X_Currency_Code,
1360          X_Cust_Prof_Class_Amount_Id,
1361          X_Last_Updated_By,
1362          X_Last_Update_Date,
1363          X_Auto_Rec_Min_Receipt_Amount,
1364          X_Last_Update_Login,
1365          X_Max_Interest_Charge,
1366          X_MIN_INTEREST_CHARGE,
1367          X_Min_Dunning_Amount,
1368          X_Min_Statement_Amount,
1369          X_Overall_Credit_Limit,
1370          X_Trx_Credit_Limit,
1371          X_Attribute_Category,
1372          X_Attribute1,
1373          X_Attribute2,
1374          X_Attribute3,
1375          X_Attribute4,
1376          X_Attribute5,
1377          X_Attribute6,
1378          X_Attribute7,
1379          X_Attribute8,
1380          X_Attribute9,
1381          X_Attribute10,
1382          X_Attribute11,
1383          X_Attribute12,
1384          X_Attribute13,
1385          X_Attribute14,
1386          X_Attribute15,
1387          X_Interest_Rate,
1388          X_Min_Fc_Balance_Amount,
1389          X_Min_Fc_Invoice_Amount,
1390          X_Min_Dunning_Invoice_Amount,
1391          X_Jgzz_attribute_Category,
1392          X_Jgzz_attribute1,
1393          X_Jgzz_attribute2,
1394          X_Jgzz_attribute3,
1395          X_Jgzz_attribute4,
1396          X_Jgzz_attribute5,
1397          X_Jgzz_attribute6,
1398          X_Jgzz_attribute7,
1399          X_Jgzz_attribute8,
1400          X_Jgzz_attribute9,
1401          X_Jgzz_attribute10,
1402          X_Jgzz_attribute11,
1403          X_Jgzz_attribute12,
1404          X_Jgzz_attribute13,
1405          X_Jgzz_attribute14,
1406          X_Jgzz_attribute15,
1407          --{Late Charges
1408          X_EXCHANGE_RATE_TYPE,
1409          X_MIN_FC_INVOICE_OVERDUE_TYPE,
1410          X_MIN_FC_INVOICE_PERCENT,
1411          X_MIN_FC_BALANCE_OVERDUE_TYPE,
1412          X_MIN_FC_BALANCE_PERCENT,
1413          X_INTEREST_TYPE       ,
1414          X_INTEREST_FIXED_AMOUNT,
1415          X_INTEREST_SCHEDULE_ID,
1416          X_PENALTY_TYPE        ,
1417          X_PENALTY_RATE        ,
1418          X_PENALTY_FIXED_AMOUNT,
1419          X_PENALTY_SCHEDULE_ID
1420   );
1421 
1422 /*
1423   INSERT INTO hyu_prof_class_amts
1424   (
1425          profile_class_id,
1426          created_by,
1427          creation_date,
1428          currency_code,
1429          profile_class_amount_id,
1430          last_updated_by,
1431          last_update_date,
1432          auto_rec_min_receipt_amount,
1433          last_update_login,
1434          max_interest_charge,
1435          min_dunning_amount,
1436          min_statement_amount,
1437          overall_credit_limit,
1438          trx_credit_limit,
1439          attribute_category,
1440          attribute1,
1441          attribute2,
1442          attribute3,
1443          attribute4,
1444          attribute5,
1445          attribute6,
1446          attribute7,
1447          attribute8,
1448          attribute9,
1449          attribute10,
1450          attribute11,
1451          attribute12,
1452          attribute13,
1453          attribute14,
1454          attribute15,
1455          interest_rate,
1456          min_fc_balance_amount,
1457          min_fc_invoice_amount,
1458          min_dunning_invoice_amount,
1459          Jgzz_attribute_Category,
1460          Jgzz_attribute1,
1461          Jgzz_attribute2,
1462          Jgzz_attribute3,
1463          Jgzz_attribute4,
1464          Jgzz_attribute5,
1465          Jgzz_attribute6,
1466          Jgzz_attribute7,
1467          Jgzz_attribute8,
1468          Jgzz_attribute9,
1469          Jgzz_attribute10,
1470          Jgzz_attribute11,
1471          Jgzz_attribute12,
1472          Jgzz_attribute13,
1473          Jgzz_attribute14,
1474          Jgzz_attribute15,
1475          --{Late Charges
1476          EXCHANGE_RATE_TYPE,
1477          MIN_FC_INVOICE_OVERDUE_TYPE,
1478          MIN_FC_INVOICE_PERCENT,
1479          MIN_FC_BALANCE_OVERDUE_TYPE,
1480          MIN_FC_BALANCE_PERCENT,
1481          INTEREST_TYPE       ,
1482          INTEREST_FIXED_AMOUNT,
1483          INTEREST_SCHEDULE_ID,
1484          PENALTY_TYPE        ,
1485          PENALTY_RATE        ,
1486          PENALTY_FIXED_AMOUNT,
1487          PENALTY_SCHEDULE_ID
1488   )
1489   VALUES
1490   (
1491          X_Customer_Profile_Class_Id,
1492          X_Created_By,
1493          X_Creation_Date,
1494          X_Currency_Code,
1498          X_Auto_Rec_Min_Receipt_Amount,
1495          X_Cust_Prof_Class_Amount_Id,
1496          X_Last_Updated_By,
1497          X_Last_Update_Date,
1499          X_Last_Update_Login,
1500          X_Max_Interest_Charge,
1501          X_Min_Dunning_Amount,
1502          X_Min_Statement_Amount,
1503          X_Overall_Credit_Limit,
1504          X_Trx_Credit_Limit,
1505          X_Attribute_Category,
1506          X_Attribute1,
1507          X_Attribute2,
1508          X_Attribute3,
1509          X_Attribute4,
1510          X_Attribute5,
1511          X_Attribute6,
1512          X_Attribute7,
1513          X_Attribute8,
1514          X_Attribute9,
1515          X_Attribute10,
1516          X_Attribute11,
1517          X_Attribute12,
1518          X_Attribute13,
1519          X_Attribute14,
1520          X_Attribute15,
1521          X_Interest_Rate,
1522          X_Min_Fc_Balance_Amount,
1523          X_Min_Fc_Invoice_Amount,
1524          X_Min_Dunning_Invoice_Amount,
1525          X_Jgzz_attribute_Category,
1526          X_Jgzz_attribute1,
1527          X_Jgzz_attribute2,
1528          X_Jgzz_attribute3,
1529          X_Jgzz_attribute4,
1530          X_Jgzz_attribute5,
1531          X_Jgzz_attribute6,
1532          X_Jgzz_attribute7,
1533          X_Jgzz_attribute8,
1534          X_Jgzz_attribute9,
1535          X_Jgzz_attribute10,
1536          X_Jgzz_attribute11,
1537          X_Jgzz_attribute12,
1538          X_Jgzz_attribute13,
1539          X_Jgzz_attribute14,
1540          X_Jgzz_attribute15,
1541          --{Late Charges
1542          X_EXCHANGE_RATE_TYPE,
1543          X_MIN_FC_INVOICE_OVERDUE_TYPE,
1544          X_MIN_FC_INVOICE_PERCENT,
1545          X_MIN_FC_BALANCE_OVERDUE_TYPE,
1546          X_MIN_FC_BALANCE_PERCENT,
1547          X_INTEREST_TYPE       ,
1548          X_INTEREST_FIXED_AMOUNT,
1549          X_INTEREST_SCHEDULE_ID,
1550          X_PENALTY_TYPE        ,
1551          X_PENALTY_RATE        ,
1552          X_PENALTY_FIXED_AMOUNT,
1553          X_PENALTY_SCHEDULE_ID
1554   );
1555 */
1556 END Insert_Negative_Class_Amt;
1557 
1558 
1559 
1560 PROCEDURE compute_negative_id
1561 (         X_Cust_Prof_Class_Amount_Id NUMBER,
1562           X_Negative_Id               IN OUT NOCOPY NUMBER,
1563           X_Notify_Flag               IN OUT NOCOPY VARCHAR2
1564 ) IS
1565 
1566   number_in_update number;
1567 
1568 BEGIN
1569 
1570 --IDENTIFY EXISTING ROW WITH NEGATIVE ID IN HZ_CUST_PROF_CLASS_AMTS
1571 --RETRIEVE THE MIN id WHERE id BETWEEN -100*ID-99 AND -100*ID-2
1572 
1573   SELECT count(*), min(profile_class_amount_id) - 1
1574   INTO   number_in_update, X_Negative_Id
1575   FROM   HZ_CUST_PROF_CLASS_AMTS
1576   WHERE  profile_class_amount_id BETWEEN
1577          (X_Cust_Prof_Class_Amount_Id) * (-100) - 99 AND
1578          (X_Cust_Prof_Class_Amount_Id) * (-100) - 2;
1579 
1580  if number_in_update > 0 then
1581    X_Notify_Flag := 'W';
1582  end if;
1583 
1584 END compute_negative_id;
1585 --
1586 --
1587 PROCEDURE old_amount_insert
1588 (         X_Cust_Prof_Class_Amount_Id      NUMBER,
1589           X_Negative_Id                    NUMBER,
1590           X_Customer_Profile_Class_Id      NUMBER
1591 ) IS
1592 
1593   CURSOR C is
1594   select *
1595   from   hz_cust_prof_class_amts
1596   where  profile_class_amount_id = X_Cust_Prof_Class_Amount_Id
1597   FOR UPDATE of profile_class_amount_id NOWAIT;
1598   Amountinfo C%ROWTYPE;
1599 
1600 BEGIN
1601   OPEN C;
1602     FETCH C INTO Amountinfo;
1603     if (C%NOTFOUND) then
1604       CLOSE C;
1605       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
1606       APP_EXCEPTION.Raise_Exception;
1607     end if;
1608   CLOSE C;
1609 
1610   Insert_Negative_Class_Amt
1611   (
1612          X_Customer_Profile_Class_Id,
1613          Amountinfo.created_by,
1614          Amountinfo.creation_date,
1615          Amountinfo.currency_code,
1616          X_Negative_Id,
1617          Amountinfo.last_updated_by,
1618          Amountinfo.last_update_date,
1619          Amountinfo.auto_rec_min_receipt_amount,
1620          Amountinfo.last_update_login,
1621          Amountinfo.max_interest_charge,
1622          Amountinfo.min_dunning_amount,
1623          Amountinfo.min_statement_amount,
1624          Amountinfo.overall_credit_limit,
1625          Amountinfo.trx_credit_limit,
1626          Amountinfo.attribute_category,
1627          Amountinfo.attribute1,
1628          Amountinfo.attribute2,
1629          Amountinfo.attribute3,
1630          Amountinfo.attribute4,
1631          Amountinfo.attribute5,
1632          Amountinfo.attribute6,
1633          Amountinfo.attribute7,
1634          Amountinfo.attribute8,
1635          Amountinfo.attribute9,
1636          Amountinfo.attribute10,
1637          Amountinfo.attribute11,
1638          Amountinfo.attribute12,
1639          Amountinfo.attribute13,
1640          Amountinfo.attribute14,
1641          Amountinfo.attribute15,
1642          Amountinfo.interest_rate,
1643          Amountinfo.min_fc_balance_amount,
1644          Amountinfo.min_fc_invoice_amount,
1645          Amountinfo.min_dunning_invoice_amount,
1646          Amountinfo.jgzz_attribute_category,
1647          Amountinfo.jgzz_attribute1,
1648          Amountinfo.jgzz_attribute2,
1649          Amountinfo.jgzz_attribute3,
1650          Amountinfo.jgzz_attribute4,
1651          Amountinfo.jgzz_attribute5,
1652          Amountinfo.jgzz_attribute6,
1653          Amountinfo.jgzz_attribute7,
1654          Amountinfo.jgzz_attribute8,
1655          Amountinfo.jgzz_attribute9,
1656          Amountinfo.jgzz_attribute10,
1657          Amountinfo.jgzz_attribute11,
1658          Amountinfo.jgzz_attribute12,
1659          Amountinfo.jgzz_attribute13,
1660          Amountinfo.jgzz_attribute14,
1661          Amountinfo.jgzz_attribute15,
1662          --{Late Charges
1663          Amountinfo.EXCHANGE_RATE_TYPE,
1664          Amountinfo.MIN_FC_INVOICE_OVERDUE_TYPE,
1665          Amountinfo.MIN_FC_INVOICE_PERCENT,
1666          Amountinfo.MIN_FC_BALANCE_OVERDUE_TYPE,
1667          Amountinfo.MIN_FC_BALANCE_PERCENT,
1668          Amountinfo.INTEREST_TYPE       ,
1669          Amountinfo.INTEREST_FIXED_AMOUNT,
1670          Amountinfo.INTEREST_SCHEDULE_ID,
1671          Amountinfo.PENALTY_TYPE        ,
1672          Amountinfo.PENALTY_RATE        ,
1673          Amountinfo.PENALTY_FIXED_AMOUNT,
1674          Amountinfo.PENALTY_SCHEDULE_ID,
1675          Amountinfo.MIN_INTEREST_CHARGE
1676     );
1677 
1678 END old_amount_insert;
1679 
1680 
1681 END;