DBA Data[Home] [Help]

PACKAGE BODY: APPS.JL_ZZ_AR_TX_CAT_ATT_PKG

Source


1 PACKAGE BODY JL_ZZ_AR_TX_CAT_ATT_PKG as
2 /* $Header: jlzztatb.pls 120.3 2005/10/30 02:08:56 appldev ship $ */
3 
4   PROCEDURE Insert_Row
5        (X_rowid              IN OUT NOCOPY VARCHAR2,
6         X_tax_categ_attr_id                NUMBER,
7         X_tax_category_id                  NUMBER,
8         X_tax_attribute_type               VARCHAR2,
9         X_tax_attribute_name               VARCHAR2,
10         X_mandatory_in_class               VARCHAR2,
11         X_determining_factor               VARCHAR2,
12         X_grouping_attribute               VARCHAR2,
13         X_priority_number                  NUMBER,
14         X_org_id                           NUMBER,
15         X_last_update_date                 DATE,
16         X_last_updated_by                  NUMBER,
17         X_creation_date                    DATE,
18         X_created_by                       NUMBER,
19         X_last_update_login                NUMBER,
20         X_attribute_category               VARCHAR2,
21         X_attribute1                       VARCHAR2,
22         X_attribute2                       VARCHAR2,
23         X_attribute3                       VARCHAR2,
24         X_attribute4                       VARCHAR2,
25         X_attribute5                       VARCHAR2,
26         X_attribute6                       VARCHAR2,
27         X_attribute7                       VARCHAR2,
28         X_attribute8                       VARCHAR2,
29         X_attribute9                       VARCHAR2,
30         X_attribute10                      VARCHAR2,
31         X_attribute11                      VARCHAR2,
32         X_attribute12                      VARCHAR2,
33         X_attribute13                      VARCHAR2,
34         X_attribute14                      VARCHAR2,
35         X_attribute15                      VARCHAR2,
36         X_calling_sequence        IN       VARCHAR2) IS
37 
38     CURSOR C IS
39       SELECT rowid
40       FROM jl_zz_ar_tx_cat_att
41       WHERE tax_categ_attr_id = X_tax_categ_attr_id;
42 
43     current_calling_sequence VARCHAR2(2000);
44     debug_info               VARCHAR2(100);
45 
46   BEGIN
47     --     Update the calling sequence
48     --
49     current_calling_sequence := 'JL_ZZ_AR_TX_CAT_ATT_PKG.INSERT_ROW<-' ||
50                                 X_calling_sequence;
51 
52     debug_info := 'Insert into JL_ZZ_AR_TX_CAT_ATT';
53     insert into jl_zz_ar_tx_cat_att(tax_categ_attr_id,
54                                     tax_category_id,
55                                     tax_attribute_type,
56                                     tax_attribute_name,
57                                     mandatory_in_class,
58                                     determining_factor,
59                                     grouping_attribute,
60                                     priority_number,
61                                     org_id,
62                                     last_update_date,
63                                     last_updated_by,
64                                     creation_date,
65                                     created_by,
66                                     last_update_login,
67                                     attribute_category,
68                                     attribute1,
69                                     attribute2,
70                                     attribute3,
71                                     attribute4,
72                                     attribute5,
73                                     attribute6,
74                                     attribute7,
75                                     attribute8,
76                                     attribute9,
77                                     attribute10,
78                                     attribute11,
79                                     attribute12,
80                                     attribute13,
81                                     attribute14,
82                                     attribute15)
83                             VALUES (X_tax_categ_attr_id,
84                                     X_tax_category_id,
85                                     X_tax_attribute_type,
86                                     X_tax_attribute_name,
87                                     X_mandatory_in_class,
88                                     X_determining_factor,
89                                     X_grouping_attribute,
90                                     X_priority_number,
91                                     X_org_id,
92                                     X_last_update_date,
93                                     X_last_updated_by,
94                                     X_creation_date,
95                                     X_created_by,
96                                     X_last_update_login,
97                                     X_attribute_category,
98                                     X_attribute1,
99                                     X_attribute2,
100                                     X_attribute3,
101                                     X_attribute4,
102                                     X_attribute5,
103                                     X_attribute6,
104                                     X_attribute7,
105                                     X_attribute8,
106                                     X_attribute9,
107                                     X_attribute10,
108                                     X_attribute11,
109                                     X_attribute12,
110                                     X_attribute13,
111                                     X_attribute14,
112                                     X_attribute15);
113 
114     debug_info := 'Open cursor C';
115     OPEN C;
116     debug_info := 'Fetch cursor C';
117     FETCH C INTO X_rowid;
118 
119     if (C%NOTFOUND) then
120       debug_info := 'Close cursor C - DATA NOTFOUND';
121       CLOSE C;
122       Raise NO_DATA_FOUND;
123     end if;
124     debug_info := 'Close cursor C';
125     CLOSE C;
126 
127   EXCEPTION
128     WHEN OTHERS THEN
129       IF (SQLCODE <> -20001) THEN
130         FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
131         FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
132         FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',current_calling_sequence);
133         FND_MESSAGE.SET_TOKEN('PARAMETERS',
134                               'tax_categ_attr_id = ' || X_tax_categ_attr_id);
135         FND_MESSAGE.SET_TOKEN('DEBUG_INFO',debug_info);
136       END IF;
137       APP_EXCEPTION.RAISE_EXCEPTION;
138   END Insert_Row;
139 
140   PROCEDURE Lock_Row
141        (X_rowid                            VARCHAR2,
142         X_tax_categ_attr_id                NUMBER,
143         X_tax_category_id                  NUMBER,
144         X_tax_attribute_type               VARCHAR2,
145         X_tax_attribute_name               VARCHAR2,
146         X_mandatory_in_class               VARCHAR2,
147         X_determining_factor               VARCHAR2,
148         X_grouping_attribute               VARCHAR2,
149         X_priority_number                  NUMBER,
150         X_org_id                           NUMBER,
151         X_last_update_date                 DATE,
152         X_last_updated_by                  NUMBER,
153         X_creation_date                    DATE,
154         X_created_by                       NUMBER,
155         X_last_update_login                NUMBER,
156         X_attribute_category               VARCHAR2,
157         X_attribute1                       VARCHAR2,
158         X_attribute2                       VARCHAR2,
159         X_attribute3                       VARCHAR2,
160         X_attribute4                       VARCHAR2,
161         X_attribute5                       VARCHAR2,
162         X_attribute6                       VARCHAR2,
163         X_attribute7                       VARCHAR2,
164         X_attribute8                       VARCHAR2,
165         X_attribute9                       VARCHAR2,
166         X_attribute10                      VARCHAR2,
167         X_attribute11                      VARCHAR2,
168         X_attribute12                      VARCHAR2,
169         X_attribute13                      VARCHAR2,
170         X_attribute14                      VARCHAR2,
171         X_attribute15                      VARCHAR2,
172         X_calling_sequence        IN       VARCHAR2) IS
173 
174     CURSOR C IS
175       SELECT *
176       FROM jl_zz_ar_tx_cat_att
177       WHERE tax_categ_attr_id = X_tax_categ_attr_id
178       FOR UPDATE of tax_categ_attr_id
179       NOWAIT;
180 
181     Recinfo C%ROWTYPE;
182 
183     current_calling_sequence VARCHAR2(2000);
184     debug_info               VARCHAR2(100);
185 
186   BEGIN
187     --  Update the calling sequence
188     --
189     current_calling_sequence := 'JL_ZZ_AR_TX_CAT_ATT_PKG.LOCK_ROW<-' ||
190                                 X_calling_sequence;
191 
192     debug_info := 'Open cursor C';
193     OPEN C;
194     debug_info := 'Fetch cursor C';
195     FETCH C INTO Recinfo;
196     IF (C%NOTFOUND) THEN
197       debug_info := 'Close cursor C - DATA NOTFOUND';
198       CLOSE C;
199       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
200       APP_EXCEPTION.Raise_Exception;
201     END IF;
202     debug_info := 'Close cursor C';
203     CLOSE C;
204 
205     IF ((Recinfo.tax_categ_attr_id  = X_tax_categ_attr_id) AND
206         (Recinfo.tax_category_id    = X_tax_category_id) AND
207         (Recinfo.tax_attribute_type = X_tax_attribute_type) AND
208         (Recinfo.tax_attribute_name = X_tax_attribute_name) AND
209         (Recinfo.mandatory_in_class = X_mandatory_in_class) AND
210         (Recinfo.determining_factor  = X_determining_factor) AND
211         (Recinfo.grouping_attribute = X_grouping_attribute) AND
212         ((Recinfo.priority_number    = X_priority_number) OR
213          ((Recinfo.priority_number IS NULL) AND
214           (X_priority_number IS NULL))) AND
215         ((Recinfo.org_id = X_org_id) OR
216          ((Recinfo.org_id IS NULL) AND
217           (X_org_id IS NULL))) AND
218         (Recinfo.last_updated_by     = X_last_updated_by) AND
219         (Recinfo.last_update_date    = X_last_update_date) AND
220         ((Recinfo.created_by         = X_created_by) OR
221          ((Recinfo.created_by IS NULL) AND
222           (X_created_by IS NULL))) AND
223         ((Recinfo.creation_date     = X_creation_date) OR
224          ((Recinfo.creation_date IS NULL)  AND
225           (X_creation_date IS NULL))) AND
226         ((Recinfo.last_update_login = X_last_update_login) OR
227          ((Recinfo.last_update_login IS NULL) AND
228           (X_last_update_login IS NULL))) AND
229         ((Recinfo.attribute_category =  X_attribute_Category) OR
230          ((Recinfo.attribute_category IS NULL) AND
231           (X_attribute_category IS NULL))) AND
232         ((Recinfo.attribute1 = X_attribute1) OR
233          ((Recinfo.attribute1 IS NULL) AND
234           (X_attribute1 IS NULL))) AND
235         ((Recinfo.attribute2 = X_attribute2) OR
236          ((Recinfo.attribute2 IS NULL) AND
237           (X_attribute2 IS NULL))) AND
238         ((Recinfo.attribute3 = X_attribute3) OR
239          ((Recinfo.attribute3 IS NULL)  AND
240           (X_attribute3 IS NULL))) AND
241         ((Recinfo.attribute4 = X_attribute4) OR
242          ((Recinfo.attribute4 IS NULL)  AND
243           (X_attribute4 IS NULL))) AND
244         ((Recinfo.attribute5 = X_attribute5) OR
245          ((Recinfo.attribute5 IS NULL)  AND
246           (X_attribute5 IS NULL))) AND
247         ((Recinfo.attribute6 = X_attribute6) OR
248          ((Recinfo.attribute6 IS NULL) AND
249           (X_attribute6 IS NULL))) AND
250         ((Recinfo.attribute7 = X_attribute7) OR
251          ((Recinfo.attribute7 IS NULL) AND
252           (X_attribute7 IS NULL))) AND
253         ((Recinfo.attribute8 = X_attribute8) OR
254          ((Recinfo.attribute8 IS NULL) AND
255           (X_attribute8 IS NULL))) AND
256         ((Recinfo.attribute9 = X_attribute9) OR
257          ((Recinfo.attribute9 IS NULL) AND
258           (X_attribute9 IS NULL))) AND
259         ((Recinfo.attribute10 = X_attribute10) OR
260          ((Recinfo.attribute10 IS NULL) AND
261           (X_attribute10 IS NULL))) AND
262         ((Recinfo.attribute11 = X_attribute11) OR
263          ((Recinfo.attribute11 IS NULL) AND
264           (X_attribute11 IS NULL))) AND
265         ((Recinfo.attribute12 = X_attribute12) OR
266          ((Recinfo.attribute12 IS NULL) AND
267           (X_attribute12 IS NULL))) AND
268         ((Recinfo.attribute13 = X_attribute13) OR
269          ((Recinfo.attribute13 IS NULL) AND
270           (X_attribute13 IS NULL))) AND
271         ((Recinfo.attribute14 = X_attribute14) OR
272          ((Recinfo.attribute14 IS NULL) AND
273           (X_attribute14 IS NULL))) AND
274         ((Recinfo.attribute15 = X_attribute15) OR
275          ((Recinfo.attribute15 IS NULL) AND
276           (X_attribute15 IS NULL)))) THEN
277       return;
278     ELSE
279       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
280       APP_EXCEPTION.Raise_Exception;
281     END IF;
282 
283   EXCEPTION
284     WHEN OTHERS THEN
285       IF (SQLCODE <> -20001) THEN
286         IF (SQLCODE = -54) THEN
287           FND_MESSAGE.SET_NAME('SQLAP','AP_RESOURCE_BUSY');
288         ELSE
289           FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
290           FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
291           FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',current_calling_sequence);
292           FND_MESSAGE.SET_TOKEN('PARAMETERS',
293                                 'tax_categ_attr_id = ' || X_tax_categ_attr_id);
294           FND_MESSAGE.SET_TOKEN('DEBUG_INFO',debug_info);
295         END IF;
296       END IF;
297       APP_EXCEPTION.RAISE_EXCEPTION;
298   END Lock_Row;
299 
300   PROCEDURE Update_Row
301        (X_rowid                            VARCHAR2,
302         X_tax_categ_attr_id                NUMBER,
303         X_tax_category_id                  NUMBER,
304         X_tax_attribute_type               VARCHAR2,
305         X_tax_attribute_name               VARCHAR2,
306         X_mandatory_in_class               VARCHAR2,
307         X_determining_factor               VARCHAR2,
308         X_grouping_attribute               VARCHAR2,
309         X_priority_number                  NUMBER,
310         X_org_id                           NUMBER,
311         X_last_update_date                 DATE,
312         X_last_updated_by                  NUMBER,
313         X_creation_date                    DATE,
314         X_created_by                       NUMBER,
315         X_last_update_login                NUMBER,
316         X_attribute_category               VARCHAR2,
317         X_attribute1                       VARCHAR2,
318         X_attribute2                       VARCHAR2,
319         X_attribute3                       VARCHAR2,
320         X_attribute4                       VARCHAR2,
321         X_attribute5                       VARCHAR2,
322         X_attribute6                       VARCHAR2,
323         X_attribute7                       VARCHAR2,
324         X_attribute8                       VARCHAR2,
325         X_attribute9                       VARCHAR2,
326         X_attribute10                      VARCHAR2,
327         X_attribute11                      VARCHAR2,
328         X_attribute12                      VARCHAR2,
329         X_attribute13                      VARCHAR2,
330         X_attribute14                      VARCHAR2,
331         X_attribute15                      VARCHAR2,
332         X_calling_sequence        IN       VARCHAR2) IS
333 
334   BEGIN
335     UPDATE jl_zz_ar_tx_cat_att
336     SET tax_categ_attr_id  = X_tax_categ_attr_id,
337         tax_category_id    = X_tax_category_id,
338         tax_attribute_type = X_tax_attribute_type,
339         tax_attribute_name = X_tax_attribute_name,
340         mandatory_in_class = X_mandatory_in_class,
341         determining_factor = X_determining_factor,
342         grouping_attribute = X_grouping_attribute,
343         priority_number    = X_priority_number,
344         org_id             = X_org_id,
345         last_update_date   = X_last_update_date,
346         last_updated_by    = X_last_updated_by,
347         creation_date      = X_creation_date,
348         created_by         = X_created_by,
349         last_update_login  = X_last_update_login,
350         attribute_category = X_attribute_category,
351         attribute1         = X_attribute1,
352         attribute2         = X_attribute2,
353         attribute3         = X_attribute3,
354         attribute4         = X_attribute4,
355         attribute5         = X_attribute5,
356         attribute6         = X_attribute6,
357         attribute7         = X_attribute7,
358         attribute8         = X_attribute8,
359         attribute9         = X_attribute9,
360         attribute10        = X_attribute10,
361         attribute11        = X_attribute11,
362         attribute12        = X_attribute12,
363         attribute13        = X_attribute13,
364         attribute14        = X_attribute14,
365         attribute15        = X_attribute15
366     WHERE  rowid = X_rowid;
367 
368     IF (SQL%NOTFOUND) THEN
369       raise NO_DATA_FOUND;
370     END IF;
371   END Update_Row;
372 
373   PROCEDURE Delete_Row
374        (X_rowid                   VARCHAR2) IS
375 
376     l_tax_category_id    NUMBER;
377     l_tax_attribute_type VARCHAR2(30);
378     l_tax_attribute_name VARCHAR2(30);
379     l_org_id             NUMBER;
380 
381     CURSOR c IS
382       SELECT tax_category_id,
383              tax_attribute_type,
384              tax_attribute_name,
385              org_id
386       FROM   jl_zz_ar_tx_cat_att
387       WHERE  rowid = X_rowid;
388 
389     CURSOR c1 IS
390       SELECT rowid
391       FROM jl_zz_ar_tx_att_val
392       WHERE tax_category_id = l_tax_category_id
393       AND tax_attribute_type = l_tax_attribute_type
394       AND tax_attribute_name = l_tax_attribute_name
395       AND org_id = l_org_id;
396 
397   BEGIN
398     -- delete the detail records first
399     OPEN c;
400     FETCH c
401     INTO l_tax_category_id,
402          l_tax_attribute_type,
403          l_tax_attribute_name,
404          l_org_id;
405 
406     IF c%FOUND THEN
407       FOR j IN c1 LOOP
408         JL_ZZ_AR_TX_ATT_VAL_PKG.Delete_Row(j.rowid);
409       END LOOP;
410     END IF;
411 
412     CLOSE c;
413 
414     -- delete the master
415     DELETE
416     FROM   jl_zz_ar_tx_cat_att
417     WHERE  rowid = X_rowid;
418 
419     IF (SQL%NOTFOUND) THEN
420       raise NO_DATA_FOUND;
421     END IF;
422   END Delete_Row;
423 
424   PROCEDURE Check_Unique
425        (X_rowid                            VARCHAR2,
426         X_tax_category_id                  NUMBER,
427         X_tax_attribute_type               VARCHAR2,
428         X_tax_attribute_name               VARCHAR2,
429         X_org_id                           NUMBER,
430         X_calling_sequence        IN       VARCHAR2) IS
431 
432     l_dummy                  NUMBER;
433     current_calling_sequence VARCHAR2(2000);
434     debug_info               VARCHAR2(100);
435 
436   BEGIN
437     --  Update the calling sequence
438     --
439     current_calling_sequence := 'JL_ZZ_AR_TX_CAT_ATT_PKG.CHECK_UNIQUE<-' ||
440                                 X_calling_sequence;
441 
442     SELECT COUNT(1)
443     INTO l_dummy
444     FROM jl_zz_ar_tx_cat_att
445     WHERE tax_category_id = X_tax_category_id
446     AND tax_attribute_type = X_tax_attribute_type
447     AND tax_attribute_name = X_tax_attribute_name
448     AND org_id = X_org_id
449     AND ((X_rowid IS NULL) OR (rowid <> X_rowid));
450 
451     IF (l_dummy >=1) THEN
452       FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
453       FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
454       FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',current_calling_sequence);
455       FND_MESSAGE.SET_TOKEN('PARAMETERS',
456                             ' tax_category_id = '    || X_tax_category_id ||
457                             ' tax_attribute_type = ' ||  X_tax_attribute_type ||
458                             ' tax_attribute_name = ' || X_tax_attribute_name );
459       FND_MESSAGE.SET_TOKEN('DEBUG_INFO',debug_info);
460       APP_EXCEPTION.RAISE_EXCEPTION;
461     END IF;
462   END Check_Unique;
463 
464   PROCEDURE Check_Determining_Factor
465        (X_rowid                            VARCHAR2,
466         X_tax_category_id                  NUMBER,
467         X_tax_attribute_type               VARCHAR2,
468         X_determining_factor               VARCHAR2,
469         X_org_id                           NUMBER,
470         X_calling_sequence        IN       VARCHAR2) IS
471 
472     l_dummy                  NUMBER;
473     current_calling_sequence VARCHAR2(2000);
474     debug_info               VARCHAR2(100);
475 
476   BEGIN
477     --  Update the calling sequence
478     --
479     current_calling_sequence := 'JL_ZZ_AR_TX_CAT_ATT_PKG.CHECK_DETERMINING_FACTOR<-' ||
480                                 X_calling_sequence;
481     SELECT COUNT(1)
482     INTO l_dummy
483     FROM jl_zz_ar_tx_cat_att
484     WHERE tax_category_id = X_tax_category_id
485     AND tax_attribute_type = X_tax_attribute_type
486     AND determining_factor = X_determining_factor
487     AND org_id = X_org_id
488     AND ((X_rowid IS NULL) OR (rowid <> X_rowid));
489 
490     IF (l_dummy >=1) THEN
491       FND_MESSAGE.SET_NAME('SQLAP','AP_DEBUG');
492       FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
493       FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',current_calling_sequence);
494       FND_MESSAGE.SET_TOKEN('PARAMETERS',
495                             ' tax_category_id = ' || X_tax_category_id ||
496                             ' tax_attribute_type = ' ||  X_tax_attribute_type ||
497                             ' determining_factor = ' || X_determining_factor);
498       FND_MESSAGE.SET_TOKEN('DEBUG_INFO',debug_info);
499       APP_EXCEPTION.RAISE_EXCEPTION;
500     END IF;
501   END Check_Determining_Factor;
502 
503   PROCEDURE Lock_Row_Priority_Number
504        (X_Rowid                            VARCHAR2,
505         X_priority_number                  NUMBER,
506         X_last_update_date                 DATE,
507         X_last_updated_by                  NUMBER,
508         X_creation_date                    DATE,
509         X_created_by                       NUMBER,
510         X_last_update_login                NUMBER,
511         X_calling_sequence                 VARCHAR2) IS
512 
513     CURSOR C IS
514       SELECT *
515       FROM   JL_ZZ_AR_TX_CAT_ATT
516       WHERE  rowid = X_Rowid
517       FOR UPDATE of priority_number
518       NOWAIT;
519 
520     Recinfo C%ROWTYPE;
521 
522     current_calling_sequence VARCHAR2(2000);
523     debug_info               VARCHAR2(100);
524 
525   BEGIN
526     --  Update the calling sequence
527     --
528     current_calling_sequence := 'JL_ZZ_AR_TX_CAT_ATT_PKG.LOCK_ROW_PRIORITY_NUMBER<-' ||
529                                 X_calling_sequence;
530     debug_info := 'Open cursor C';
531     OPEN C;
532     debug_info := 'Fetch cursor C';
533     FETCH C INTO Recinfo;
534     if (C%NOTFOUND) then
535       debug_info := 'Close cursor C - DATA NOTFOUND';
536       CLOSE C;
537       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
538       APP_EXCEPTION.Raise_Exception;
539     end if;
540     debug_info := 'Close cursor C';
541     CLOSE C;
542     if ((Recinfo.PRIORITY_NUMBER =  X_PRIORITY_NUMBER) OR
543         ((Recinfo.PRIORITY_NUMBER IS NULL) AND
544          (X_PRIORITY_NUMBER IS NULL))) then
545       return;
546     else
547       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
548       APP_EXCEPTION.Raise_Exception;
549     end if;
550 
551   EXCEPTION
552     WHEN OTHERS THEN
553       IF (SQLCODE <> -20001) THEN
554         IF (SQLCODE = -54) THEN
555           FND_MESSAGE.SET_NAME('AR','AR_RESOURCE_BUSY');
556         ELSE
557           FND_MESSAGE.SET_NAME('AR','AR_DEBUG');
558           FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
559           FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',current_calling_sequence);
560           FND_MESSAGE.SET_TOKEN('PARAMETERS',
561                                 'PRIORITY_NUMBER = ' || X_PRIORITY_NUMBER );
562           FND_MESSAGE.SET_TOKEN('DEBUG_INFO',debug_info);
563         END IF;
564       END IF;
565       APP_EXCEPTION.RAISE_EXCEPTION;
566   END Lock_Row_Priority_Number;
567 
568 
569   PROCEDURE Update_Row_Priority_Number
570        (X_Rowid                            VARCHAR2,
571         X_priority_number                  NUMBER,
572         X_last_update_date                 DATE,
573         X_last_updated_by                  NUMBER,
574         X_creation_date                    DATE,
575         X_created_by                       NUMBER,
576         X_last_update_login                NUMBER,
577         X_calling_sequence                 VARCHAR2) IS
578 
579     current_calling_sequence VARCHAR2(2000);
580     debug_info               VARCHAR2(100);
581 
582   BEGIN
583     --  Update the calling sequence
584     --
585     current_calling_sequence := 'JL_ZZ_AR_TX_CAT_ATT_PKG.UPDATE_ROW_PRIORITY_NUMBER<-' ||
586                                  X_calling_sequence;
587     debug_info := 'Update JL_ZZ_AR_TX_CAT_ATT';
588     UPDATE JL_ZZ_AR_TX_CAT_ATT
589     SET PRIORITY_NUMBER   =  X_PRIORITY_NUMBER,
590         LAST_UPDATE_DATE  =  X_LAST_UPDATE_DATE,
591         LAST_UPDATED_BY   =  X_LAST_UPDATED_BY,
592         CREATION_DATE     =  X_CREATION_DATE,
593         CREATED_BY        =  X_CREATED_BY,
594         LAST_UPDATE_LOGIN =  X_LAST_UPDATE_LOGIN
595     WHERE rowid = X_Rowid;
596 
597     if (SQL%NOTFOUND) then
598       Raise NO_DATA_FOUND;
599     end if;
600 
601   EXCEPTION
602     WHEN OTHERS THEN
603       IF (SQLCODE <> -20001) THEN
604         IF (SQLCODE = -54) THEN
605           FND_MESSAGE.SET_NAME('AR','AR_RESOURCE_BUSY');
606         ELSE
607           FND_MESSAGE.SET_NAME('AR','AR_DEBUG');
608           FND_MESSAGE.SET_TOKEN('ERROR',SQLERRM);
609           FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE',current_calling_sequence);
610           FND_MESSAGE.SET_TOKEN('PARAMETERS',
611                                 'PRIORITY_NUMBER = ' || X_PRIORITY_NUMBER);
612           FND_MESSAGE.SET_TOKEN('DEBUG_INFO',debug_info);
613         END IF;
614       END IF;
615       APP_EXCEPTION.RAISE_EXCEPTION;
616   END Update_Row_Priority_Number;
617 
618 END JL_ZZ_AR_TX_CAT_ATT_PKG;