1: PACKAGE BODY JL_ZZ_AR_TX_CATEG_PKG AS
2: /* $Header: jlzztctb.pls 120.4 2006/02/11 17:45:29 pla ship $ */
3:
4: PROCEDURE Insert_Row
5: (X_rowid IN OUT NOCOPY VARCHAR2,
51: X_calling_sequence IN VARCHAR2) IS
52:
53: CURSOR C IS
54: SELECT rowid
55: FROM JL_ZZ_AR_TX_CATEG
56: WHERE tax_category_id = X_tax_category_id;
57: --AND org_id = X_org_id;
58: --AND end_date_active = X_end_date_active;
59:
62:
63: BEGIN
64: --Update the calling sequence
65:
66: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.INSERT_ROW<-' ||
67: X_calling_sequence;
68:
69: debug_info := 'Insert into JL_ZZ_AR_TX_CATEG ';
70: INSERT INTO JL_ZZ_AR_TX_CATEG (tax_category_id,
65:
66: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.INSERT_ROW<-' ||
67: X_calling_sequence;
68:
69: debug_info := 'Insert into JL_ZZ_AR_TX_CATEG ';
70: INSERT INTO JL_ZZ_AR_TX_CATEG (tax_category_id,
71: tax_category,
72: end_date_active,
73: last_updated_by,
66: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.INSERT_ROW<-' ||
67: X_calling_sequence;
68:
69: debug_info := 'Insert into JL_ZZ_AR_TX_CATEG ';
70: INSERT INTO JL_ZZ_AR_TX_CATEG (tax_category_id,
71: tax_category,
72: end_date_active,
73: last_updated_by,
74: last_update_date,
278: ATTRIBUTE12,
279: ATTRIBUTE13,
280: ATTRIBUTE14,
281: ATTRIBUTE15
282: FROM JL_ZZ_AR_TX_CATEG
283: WHERE tax_category_id = X_tax_category_id
284: AND end_date_active = X_end_date_active
285: FOR UPDATE OF tax_category_id, end_date_active NOWAIT;
286: Recinfo C%ROWTYPE;
290:
291: BEGIN
292: --Update the calling sequence
293: --
294: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.LOCK_ROW<-' ||
295: X_calling_sequence;
296: debug_info := 'Open cursor C';
297: OPEN C;
298: debug_info := 'Fetch cursor C';
504:
505: BEGIN
506: --Update the calling sequence
507: --
508: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.UPDATE_ROW' ||
509: X_calling_sequence;
510: debug_info := 'Update JL_ZZ_AR_TX_CATEG';
511:
512: UPDATE JL_ZZ_AR_TX_CATEG
506: --Update the calling sequence
507: --
508: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.UPDATE_ROW' ||
509: X_calling_sequence;
510: debug_info := 'Update JL_ZZ_AR_TX_CATEG';
511:
512: UPDATE JL_ZZ_AR_TX_CATEG
513: SET tax_category_id = X_tax_category_id,
514: tax_category = X_tax_category,
508: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.UPDATE_ROW' ||
509: X_calling_sequence;
510: debug_info := 'Update JL_ZZ_AR_TX_CATEG';
511:
512: UPDATE JL_ZZ_AR_TX_CATEG
513: SET tax_category_id = X_tax_category_id,
514: tax_category = X_tax_category,
515: end_date_active = X_end_date_active,
516: last_update_date = X_last_update_date,
591:
592: BEGIN
593: --Update the calling sequence
594: --
595: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.UPDATE_ROW' ||
596: X_calling_sequence;
597: debug_info := 'Open cursor C';
598:
599: DELETE FROM JL_ZZ_AR_TX_CATEG
595: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.UPDATE_ROW' ||
596: X_calling_sequence;
597: debug_info := 'Open cursor C';
598:
599: DELETE FROM JL_ZZ_AR_TX_CATEG
600: WHERE rowid = X_rowid;
601:
602: IF (SQL%NOTFOUND) THEN
603: raise NO_DATA_FOUND;
634:
635: BEGIN
636: -- Update the calling sequence
637: --
638: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.CHECK_UNIQUE<-' ||
639: X_calling_sequence;
640: SELECT COUNT(1)
641: INTO l_dummy
642: FROM JL_ZZ_AR_TX_CATEG
638: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.CHECK_UNIQUE<-' ||
639: X_calling_sequence;
640: SELECT COUNT(1)
641: INTO l_dummy
642: FROM JL_ZZ_AR_TX_CATEG
643: WHERE tax_category_id = X_tax_category_id
644: AND end_date_active = X_end_date_active
645: AND ((X_rowid IS NULL) OR (rowid <> X_rowid));
646:
672: BEGIN
673:
674: -- Update the calling sequence
675: --
676: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.CHECK_UNIQUE<-' ||
677: X_calling_sequence;
678: SELECT COUNT(1)
679: INTO l_dummy
680: FROM JL_ZZ_AR_TX_CATEG
676: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.CHECK_UNIQUE<-' ||
677: X_calling_sequence;
678: SELECT COUNT(1)
679: INTO l_dummy
680: FROM JL_ZZ_AR_TX_CATEG
681: WHERE tax_category_id = X_tax_category_id
682: AND end_date_active = X_end_date_active
683: AND org_id = X_org_id
684: AND ((X_rowid IS NULL) OR (rowid <> X_rowid));
702: RETURN;
703:
704: -- Update the calling sequence
705: --
706: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.<-CHECK_OVERLAPPED_DATES' ||
707: X_calling_sequence;
708: SELECT COUNT(1)
709: INTO l_dummy
710: FROM jl_zz_ar_tx_categ a
706: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.<-CHECK_OVERLAPPED_DATES' ||
707: X_calling_sequence;
708: SELECT COUNT(1)
709: INTO l_dummy
710: FROM jl_zz_ar_tx_categ a
711: WHERE tax_category_id = X_tax_category_id
712: AND ((a.end_date_active <= X_end_date_active AND
713: a.end_date_active >= X_start_date_active) OR
714: (a.start_date_active <= X_end_date_active AND
747:
748: BEGIN
749: -- Update the calling sequence
750: --
751: current_calling_sequence := 'JL_ZZ_AR_TX_CATEG_PKG.CHECK_GAPS<-' ||
752: X_calling_sequence;
753: --
754: -- Check if there is one row with it's end date exactly one day
755: -- less than the current row's start date
755: -- less than the current row's start date
756: --
757: SELECT COUNT(1)
758: INTO l_dummy
759: FROM jl_zz_ar_tx_categ a
760: WHERE tax_category_id = X_tax_category_id
761: AND ((X_rowid IS NULL) OR (a.rowid <> X_rowid));
762:
763: IF (l_dummy = 0) THEN
767: --the current row's end-date
768: --
769: SELECT COUNT(1)
770: INTO l_dummy1
771: FROM jl_zz_ar_tx_categ a
772: WHERE tax_category_id = X_tax_category_id
773: AND (trunc(a.start_date_active) = (trunc(X_end_date_active) + 1))
774: AND ((X_rowid IS NULL) OR (a.rowid <> X_rowid));
775: --
779: IF (l_dummy1 = 0) THEN
780: BEGIN
781: SELECT COUNT(1)
782: INTO l_dummy2
783: FROM jl_zz_ar_tx_categ a
784: WHERE tax_category_id = X_tax_category_id
785: AND ((X_rowid IS NULL) OR (a.rowid <> X_rowid));
786:
787: IF (l_dummy2 <> 0) THEN
800: END;
801: END IF;
802: END Check_Gaps;
803:
804: END JL_ZZ_AR_TX_CATEG_PKG;