DBA Data[Home] [Help]

PACKAGE BODY: APPS.AS_INTEREST_CATEGORY_SETS_PKG

Source


1 PACKAGE BODY AS_INTEREST_CATEGORY_SETS_PKG as
2 /* $Header: asxldcsb.pls 115.5 2002/11/06 00:43:11 appldev ship $ */
3 --
4 --
5 -- HISTORY
6 --   04-JAN-94	Jan Sondergaard		Created.
7 --   27-APR-94  Jan Sondergaard         Added fix for NO_DATA_FOUND
8 --                                      problem in ON_LOCK
9 --
10 
11 PROCEDURE Insert_Row(X_Rowid                        IN OUT VARCHAR2,
12                      X_Category_Set_Id                     NUMBER,
13                      X_Interest_Type_Id                    NUMBER,
14                      X_Last_Update_Date                    DATE,
15                      X_Last_Updated_By                     NUMBER,
16                      X_Creation_Date                       DATE,
17                      X_Created_By                          NUMBER,
18                      X_Last_Update_Login                   NUMBER,
19                      X_Enabled_Flag                        VARCHAR2 DEFAULT NULL
20  ) IS
21    CURSOR C IS SELECT rowid FROM as_interest_category_sets
22              WHERE category_set_id = X_Category_Set_Id
23              AND   interest_type_id = X_Interest_Type_Id;
24 BEGIN
25   INSERT INTO as_interest_category_sets(
26           category_set_id,
27           interest_type_id,
28           last_update_date,
29           last_updated_by,
30           creation_date,
31           created_by,
32           last_update_login,
33           enabled_flag
34          ) VALUES (
35           X_Category_Set_Id,
36           X_Interest_Type_Id,
37           X_Last_Update_Date,
38           X_Last_Updated_By,
39           X_Creation_Date,
40           X_Created_By,
41           X_Last_Update_Login,
42           X_Enabled_Flag
43   );
44   OPEN C;
45   FETCH C INTO X_Rowid;
46   if (C%NOTFOUND) then
47     CLOSE C;
48     RAISE NO_DATA_FOUND;
49   end if;
50   CLOSE C;
51 END Insert_Row;
52 
53 
54 PROCEDURE Lock_Row(X_Rowid                                 VARCHAR2,
55                    X_Category_Set_Id                       NUMBER,
56                    X_Interest_Type_Id                      NUMBER,
57                    X_Enabled_Flag                          VARCHAR2 DEFAULT NULL
58 ) IS
59   CURSOR C IS
60       SELECT *
61       FROM   as_interest_category_sets
62       WHERE  rowid = X_Rowid
63       FOR UPDATE of Category_Set_Id NOWAIT;
64   Recinfo C%ROWTYPE;
65 BEGIN
66   OPEN C;
67   FETCH C INTO Recinfo;
68   if (C%NOTFOUND) then
69     CLOSE C;
70     FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
71     APP_EXCEPTION.RAISE_EXCEPTION;
72   end if;
73   CLOSE C;
74   if (
75           (   (Recinfo.category_set_id = X_Category_Set_Id)
76            OR (    (Recinfo.category_set_id IS NULL)
77                AND (X_Category_Set_Id IS NULL)))
78       AND (   (Recinfo.interest_type_id = X_Interest_Type_Id)
79            OR (    (Recinfo.interest_type_id IS NULL)
80                AND (X_Interest_Type_Id IS NULL)))
81       AND (   (Recinfo.enabled_flag = X_Enabled_Flag)
82            OR (    (Recinfo.enabled_flag IS NULL)
83                AND (X_Enabled_Flag IS NULL)))
84           ) then
85     return;
86   else
87     FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
88     APP_EXCEPTION.RAISE_EXCEPTION;
89   end if;
90 END Lock_Row;
91 
92 
93 PROCEDURE Update_Row(X_Rowid                               VARCHAR2,
94                      X_Category_Set_Id                     NUMBER,
95                      X_Interest_Type_Id                    NUMBER,
96                      X_Last_Update_Date                    DATE,
97                      X_Last_Updated_By                     NUMBER,
98                      X_Last_Update_Login                   NUMBER,
99                      X_Enabled_Flag                        VARCHAR2 DEFAULT NULL
100 ) IS
101 BEGIN
102   UPDATE as_interest_category_sets
103   SET
104     category_set_id                           =    X_Category_Set_Id,
105     interest_type_id                          =    X_Interest_Type_Id,
106     last_update_date                          =    X_Last_Update_Date,
107     last_updated_by                           =    X_Last_Updated_By,
108     last_update_login                         =    X_Last_Update_Login,
109     enabled_flag                              =    X_Enabled_Flag
110   WHERE rowid = X_rowid;
111 
112   if (SQL%NOTFOUND) then
113     RAISE NO_DATA_FOUND;
114   end if;
115 
116 END Update_Row;
117 
118 
119 PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
120 BEGIN
121   DELETE FROM as_interest_category_sets
122   WHERE  rowid = X_Rowid;
123 
124   if (SQL%NOTFOUND) then
125     RAISE NO_DATA_FOUND;
126   end if;
127 END Delete_Row;
128 
129 END AS_INTEREST_CATEGORY_SETS_PKG;