DBA Data[Home] [Help]

PACKAGE BODY: APPS.PA_PROJECT_CLASSES_PKG

Source


1 PACKAGE BODY PA_PROJECT_CLASSES_PKG as
2 /* $Header: PAXCLASB.pls 120.2 2005/08/19 17:11:15 mwasowic ship $ */
3 
4   PROCEDURE Insert_Row(X_Rowid                   IN OUT NOCOPY VARCHAR2, --File.Sql.39 bug 4440895
5                        X_object_id                      NUMBER,
6                        X_object_type                    VARCHAR2,
7                        X_Class_Category                 VARCHAR2,
8                        X_Class_Code                     VARCHAR2,
9                        X_code_percentage                NUMBER,
10                        X_attribute_category             VARCHAR2,
11                        X_attribute1                     VARCHAR2,
12                        X_attribute2                     VARCHAR2,
13                        X_attribute3                     VARCHAR2,
14                        X_attribute4                     VARCHAR2,
15                        X_attribute5                     VARCHAR2,
16                        X_attribute6                     VARCHAR2,
17                        X_attribute7                     VARCHAR2,
18                        X_attribute8                     VARCHAR2,
19                        X_attribute9                     VARCHAR2,
20                        X_attribute10                    VARCHAR2,
21                        X_attribute11                    VARCHAR2,
22                        X_attribute12                    VARCHAR2,
23                        X_attribute13                    VARCHAR2,
24                        X_attribute14                    VARCHAR2,
25                        X_attribute15                    VARCHAR2,
26                        X_Last_Update_Date               DATE,
27                        X_Last_Updated_By                NUMBER,
28                        X_Creation_Date                  DATE,
29                        X_Created_By                     NUMBER,
30                        X_Last_Update_Login              NUMBER
31   ) IS
32     CURSOR C IS SELECT rowid FROM PA_PROJECT_CLASSES
33                  WHERE object_id = X_object_Id
34                  AND   object_type = X_object_type
35                  AND   class_category = X_Class_Category
36                  AND   class_code = X_Class_Code;
37 
38    BEGIN
39 
40        INSERT INTO PA_PROJECT_CLASSES(
41               project_id,
42               object_id,
43               object_type,
44               class_category,
45               class_code,
46               code_percentage,
47               attribute_category,
48               attribute1,
49               attribute2,
50               attribute3,
51               attribute4,
52               attribute5,
53               attribute6,
54               attribute7,
55               attribute8,
56               attribute9,
57               attribute10,
58               attribute11,
59               attribute12,
60               attribute13,
61               attribute14,
62               attribute15,
63               last_update_date,
64               last_updated_by,
65               creation_date,
66               created_by,
67               last_update_login,
68               record_version_number
69              ) VALUES (
70               decode(X_object_type, 'PA_PROJECTS', X_object_id, NULL),
71               X_object_id,
72               X_object_type,
73               X_Class_Category,
74               X_Class_Code,
75               X_code_percentage,
76               X_attribute_category,
77               X_attribute1,
78               X_attribute2,
79               X_attribute3,
80               X_attribute4,
81               X_attribute5,
82               X_attribute6,
83               X_attribute7,
84               X_attribute8,
85               X_attribute9,
86               X_attribute10,
87               X_attribute11,
88               X_attribute12,
89               X_attribute13,
90               X_attribute14,
91               X_attribute15,
92               X_Last_Update_Date,
93               X_Last_Updated_By,
94               X_Creation_Date,
95               X_Created_By,
96               X_Last_Update_Login,
97               0
98              );
99 
100     OPEN C;
101     FETCH C INTO X_Rowid;
102     if (C%NOTFOUND) then
103       CLOSE C;
104       Raise NO_DATA_FOUND;
105     end if;
106     CLOSE C;
107   END Insert_Row;
108 
109 
110   PROCEDURE Lock_Row(X_Rowid                            VARCHAR2,
111                      X_object_id                        NUMBER,
112                      X_object_type                      VARCHAR2,
113                      X_Class_Category                   VARCHAR2,
114                      X_Class_Code                       VARCHAR2
115   ) IS
116     CURSOR C IS
117         SELECT *
118         FROM   PA_PROJECT_CLASSES
119         WHERE  rowid = X_Rowid
120         FOR UPDATE of object_Id NOWAIT;
121     Recinfo C%ROWTYPE;
122 
123   BEGIN
124     OPEN C;
125     FETCH C INTO Recinfo;
126     if (C%NOTFOUND) then
127       CLOSE C;
128       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
129       APP_EXCEPTION.Raise_Exception;
130     end if;
131     CLOSE C;
132     if (
133                (Recinfo.object_id =  X_object_Id)
134            AND (Recinfo.object_type =  X_object_type)
135            AND (Recinfo.class_category =  X_Class_Category)
136            AND (Recinfo.class_code =  X_Class_Code)
137       ) then
138       return;
139     else
140       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
141       APP_EXCEPTION.Raise_Exception;
142     end if;
143   END Lock_Row;
144 
145 
146   PROCEDURE Update_Row(X_Rowid                          VARCHAR2,
147                        X_object_id                      NUMBER,
148                        X_object_type                    VARCHAR2,
149                        X_Class_Category                 VARCHAR2,
150                        X_Class_Code                     VARCHAR2,
151                        X_code_percentage                NUMBER,
152                        X_attribute_category             VARCHAR2,
153                        X_attribute1                     VARCHAR2,
154                        X_attribute2                     VARCHAR2,
155                        X_attribute3                     VARCHAR2,
156                        X_attribute4                     VARCHAR2,
157                        X_attribute5                     VARCHAR2,
158                        X_attribute6                     VARCHAR2,
159                        X_attribute7                     VARCHAR2,
160                        X_attribute8                     VARCHAR2,
161                        X_attribute9                     VARCHAR2,
162                        X_attribute10                    VARCHAR2,
163                        X_attribute11                    VARCHAR2,
164                        X_attribute12                    VARCHAR2,
165                        X_attribute13                    VARCHAR2,
166                        X_attribute14                    VARCHAR2,
167                        X_attribute15                    VARCHAR2,
168                        X_Last_Update_Date               DATE,
169                        X_Last_Updated_By                NUMBER,
170                        X_Creation_Date                  DATE,
171                        X_Created_By                     NUMBER,
172                        X_Last_Update_Login              NUMBER,
173                        X_record_version_number          NUMBER
174   ) IS
175   BEGIN
176     UPDATE PA_PROJECT_CLASSES
177     SET
178        project_id                      =     decode(X_object_type, 'PA_PROJECTS', X_object_id, NULL),
179        object_id                       =     X_object_id,
180        object_type                     =     X_object_type,
181        class_category                  =     X_Class_Category,
182        class_code                      =     X_Class_Code,
183        code_percentage                 =     X_code_percentage,
184        attribute_category              =     X_attribute_category,
185        attribute1                      =     X_attribute1,
186        attribute2                      =     X_attribute2,
187        attribute3                      =     X_attribute3,
188        attribute4                      =     X_attribute4,
189        attribute5                      =     X_attribute5,
190        attribute6                      =     X_attribute6,
191        attribute7                      =     X_attribute7,
192        attribute8                      =     X_attribute8,
193        attribute9                      =     X_attribute9,
194        attribute10                     =     X_attribute10,
195        attribute11                     =     X_attribute11,
196        attribute12                     =     X_attribute12,
197        attribute13                     =     X_attribute13,
198        attribute14                     =     X_attribute14,
199        attribute15                     =     X_attribute15,
200        last_update_date                =     X_Last_Update_Date,
201        last_updated_by                 =     X_Last_Updated_By,
202        last_update_login               =     X_Last_Update_Login,
203        record_version_number           =     X_record_version_number + 1
204     WHERE rowid = X_Rowid;
205 
206     if (SQL%NOTFOUND) then
207       Raise NO_DATA_FOUND;
208     end if;
209   END Update_Row;
210   PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
211   BEGIN
212     DELETE FROM PA_PROJECT_CLASSES
213     WHERE rowid = X_Rowid;
214 
215     if (SQL%NOTFOUND) then
216       Raise NO_DATA_FOUND;
217     end if;
218   END Delete_Row;
219 
220 
221 END PA_PROJECT_CLASSES_PKG;