DBA Data[Home] [Help]

PACKAGE BODY: APPS.SO_ITEM_GROUP_LINES_PKG

Source


1 PACKAGE BODY SO_ITEM_GROUP_LINES_PKG as
2 /* $Header: OEXPREPB.pls 115.1 99/08/13 13:13:56 porting s $ */
3 
4   PROCEDURE Insert_Row(X_Rowid                   IN OUT VARCHAR2,
5                        X_Group_Line_Id                  IN OUT NUMBER,
6                        X_Creation_Date                  DATE,
7                        X_Created_By                     NUMBER,
8                        X_Last_Update_Date               DATE,
9                        X_Last_Updated_By                NUMBER,
10                        X_Last_Update_Login              NUMBER,
11                        X_Group_Id                       NUMBER,
12                        X_Inventory_Item_Id              NUMBER,
13                        X_Unit_Code                      VARCHAR2,
14                        X_Method_Code                    VARCHAR2,
15                        X_Pricing_Rule_Id                NUMBER,
16                        X_List_Price                     NUMBER,
17                        X_Currency_Code                  VARCHAR2,
18                        X_Context                        VARCHAR2,
19                        X_Attribute1                     VARCHAR2,
20                        X_Attribute2                     VARCHAR2,
21                        X_Attribute3                     VARCHAR2,
22                        X_Attribute4                     VARCHAR2,
23                        X_Attribute5                     VARCHAR2,
24                        X_Attribute6                     VARCHAR2,
25                        X_Attribute7                     VARCHAR2,
26                        X_Attribute8                     VARCHAR2,
27                        X_Attribute9                     VARCHAR2,
28                        X_Attribute10                    VARCHAR2,
29                        X_Attribute11                    VARCHAR2,
30                        X_Attribute12                    VARCHAR2,
31                        X_Attribute13                    VARCHAR2,
32                        X_Attribute14                    VARCHAR2,
33                        X_Attribute15                    VARCHAR2,
34                        X_Pricing_Context                VARCHAR2,
35                        X_Pricing_Attribute1             VARCHAR2,
36                        X_Pricing_Attribute2             VARCHAR2,
37                        X_Pricing_Attribute3             VARCHAR2,
38                        X_Pricing_Attribute4             VARCHAR2,
39                        X_Pricing_Attribute5             VARCHAR2,
40                        X_Pricing_Attribute6             VARCHAR2,
41                        X_Pricing_Attribute7             VARCHAR2,
42                        X_Pricing_Attribute8             VARCHAR2,
43                        X_Pricing_Attribute9             VARCHAR2,
44                        X_Pricing_Attribute10            VARCHAR2,
45                        X_Pricing_Attribute11            VARCHAR2,
46                        X_Pricing_Attribute12            VARCHAR2,
47                        X_Pricing_Attribute13            VARCHAR2,
48                        X_Pricing_Attribute14            VARCHAR2,
49                        X_Pricing_Attribute15            VARCHAR2
50   ) IS
51     CURSOR C IS SELECT rowid FROM so_item_group_lines
52                  WHERE group_line_id = X_Group_Line_Id;
53       CURSOR C2 IS SELECT so_item_group_lines_s.nextval FROM sys.dual;
54    BEGIN
55       if (X_Group_Line_Id is NULL) then
56         OPEN C2;
57         FETCH C2 INTO X_Group_Line_Id;
58         CLOSE C2;
59       end if;
60 
61        INSERT INTO so_item_group_lines(
62               group_line_id,
63               creation_date,
64               created_by,
65               last_update_date,
66               last_updated_by,
67               last_update_login,
68               group_id,
69               inventory_item_id,
70               unit_code,
71               method_code,
72               pricing_rule_id,
73               list_price,
74               currency_code,
75               context,
76               attribute1,
77               attribute2,
78               attribute3,
79               attribute4,
80               attribute5,
81               attribute6,
82               attribute7,
83               attribute8,
84               attribute9,
85               attribute10,
86               attribute11,
87               attribute12,
88               attribute13,
89               attribute14,
90               attribute15,
91               pricing_context,
92               pricing_attribute1,
93               pricing_attribute2,
94               pricing_attribute3,
95               pricing_attribute4,
96               pricing_attribute5,
97               pricing_attribute6,
98               pricing_attribute7,
99               pricing_attribute8,
100               pricing_attribute9,
101               pricing_attribute10,
102               pricing_attribute11,
103               pricing_attribute12,
104               pricing_attribute13,
105               pricing_attribute14,
106               pricing_attribute15
107              ) VALUES (
108               X_Group_Line_Id,
109               X_Creation_Date,
110               X_Created_By,
111               X_Last_Update_Date,
112               X_Last_Updated_By,
113               X_Last_Update_Login,
114               X_Group_Id,
115               X_Inventory_Item_Id,
116               X_Unit_Code,
117               X_Method_Code,
118               X_Pricing_Rule_Id,
119               X_List_Price,
120               X_Currency_Code,
121               X_Context,
122               X_Attribute1,
123               X_Attribute2,
124               X_Attribute3,
125               X_Attribute4,
126               X_Attribute5,
127               X_Attribute6,
128               X_Attribute7,
129               X_Attribute8,
130               X_Attribute9,
131               X_Attribute10,
132               X_Attribute11,
133               X_Attribute12,
134               X_Attribute13,
135               X_Attribute14,
136               X_Attribute15,
137               X_Pricing_Context,
138               X_Pricing_Attribute1,
139               X_Pricing_Attribute2,
140               X_Pricing_Attribute3,
141               X_Pricing_Attribute4,
142               X_Pricing_Attribute5,
143               X_Pricing_Attribute6,
144               X_Pricing_Attribute7,
145               X_Pricing_Attribute8,
146               X_Pricing_Attribute9,
147               X_Pricing_Attribute10,
148               X_Pricing_Attribute11,
149               X_Pricing_Attribute12,
150               X_Pricing_Attribute13,
151               X_Pricing_Attribute14,
152               X_Pricing_Attribute15
153              );
154 
155     OPEN C;
156     FETCH C INTO X_Rowid;
157     if (C%NOTFOUND) then
158       CLOSE C;
159       Raise NO_DATA_FOUND;
160     end if;
161     CLOSE C;
162   END Insert_Row;
163 
164 
165   PROCEDURE Lock_Row(X_Rowid                            VARCHAR2,
166                      X_Group_Line_Id                    NUMBER,
167                      X_Group_Id                         NUMBER,
168                      X_Inventory_Item_Id                NUMBER,
169                      X_Unit_Code                        VARCHAR2,
170                      X_Method_Code                      VARCHAR2,
171                      X_Pricing_Rule_Id                  NUMBER,
172                      X_List_Price                       NUMBER,
173                      X_Currency_Code                    VARCHAR2,
174                      X_Context                          VARCHAR2,
175                      X_Attribute1                       VARCHAR2,
176                      X_Attribute2                       VARCHAR2,
177                      X_Attribute3                       VARCHAR2,
178                      X_Attribute4                       VARCHAR2,
179                      X_Attribute5                       VARCHAR2,
180                      X_Attribute6                       VARCHAR2,
181                      X_Attribute7                       VARCHAR2,
182                      X_Attribute8                       VARCHAR2,
183                      X_Attribute9                       VARCHAR2,
184                      X_Attribute10                      VARCHAR2,
185                      X_Attribute11                      VARCHAR2,
186                      X_Attribute12                      VARCHAR2,
187                      X_Attribute13                      VARCHAR2,
188                      X_Attribute14                      VARCHAR2,
189                      X_Attribute15                      VARCHAR2,
190                      X_Pricing_Context                  VARCHAR2,
191                      X_Pricing_Attribute1               VARCHAR2,
192                      X_Pricing_Attribute2               VARCHAR2,
193                      X_Pricing_Attribute3               VARCHAR2,
194                      X_Pricing_Attribute4               VARCHAR2,
195                      X_Pricing_Attribute5               VARCHAR2,
196                      X_Pricing_Attribute6               VARCHAR2,
197                      X_Pricing_Attribute7               VARCHAR2,
198                      X_Pricing_Attribute8               VARCHAR2,
199                      X_Pricing_Attribute9               VARCHAR2,
200                      X_Pricing_Attribute10              VARCHAR2,
201                      X_Pricing_Attribute11              VARCHAR2,
202                      X_Pricing_Attribute12              VARCHAR2,
203                      X_Pricing_Attribute13              VARCHAR2,
204                      X_Pricing_Attribute14              VARCHAR2,
205                      X_Pricing_Attribute15              VARCHAR2
206   ) IS
207     CURSOR C IS
208         SELECT *
209         FROM   so_item_group_lines
210         WHERE  rowid = X_Rowid
211         FOR UPDATE of Group_Line_Id NOWAIT;
212     Recinfo C%ROWTYPE;
213 
214 
215   BEGIN
216     OPEN C;
217     FETCH C INTO Recinfo;
218     if (C%NOTFOUND) then
219       CLOSE C;
220       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
221       APP_EXCEPTION.Raise_Exception;
222     end if;
223     CLOSE C;
224     if (
225                (Recinfo.group_line_id =  X_Group_Line_Id)
226            AND (Recinfo.group_id =  X_Group_Id)
227            AND (Recinfo.inventory_item_id =  X_Inventory_Item_Id)
228            AND (   (Recinfo.unit_code =  X_Unit_Code)
229                 OR (    (Recinfo.unit_code IS NULL)
230                     AND (X_Unit_Code IS NULL)))
231            AND (Recinfo.method_code =  X_Method_Code)
232            AND (   (Recinfo.pricing_rule_id =  X_Pricing_Rule_Id)
233                 OR (    (Recinfo.pricing_rule_id IS NULL)
234                     AND (X_Pricing_Rule_Id IS NULL)))
235            AND (   (Recinfo.list_price =  X_List_Price)
236                 OR (    (Recinfo.list_price IS NULL)
237                     AND (X_List_Price IS NULL)))
238            AND (   (Recinfo.currency_code =  X_Currency_Code)
239                 OR (    (Recinfo.currency_code IS NULL)
240                     AND (X_Currency_Code IS NULL)))
241            AND (   (Recinfo.context =  X_Context)
242                 OR (    (Recinfo.context IS NULL)
243                     AND (X_Context IS NULL)))
244            AND (   (Recinfo.attribute1 =  X_Attribute1)
245                 OR (    (Recinfo.attribute1 IS NULL)
246                     AND (X_Attribute1 IS NULL)))
247            AND (   (Recinfo.attribute2 =  X_Attribute2)
248                 OR (    (Recinfo.attribute2 IS NULL)
249                     AND (X_Attribute2 IS NULL)))
250            AND (   (Recinfo.attribute3 =  X_Attribute3)
251                 OR (    (Recinfo.attribute3 IS NULL)
252                     AND (X_Attribute3 IS NULL)))
253            AND (   (Recinfo.attribute4 =  X_Attribute4)
254                 OR (    (Recinfo.attribute4 IS NULL)
255                     AND (X_Attribute4 IS NULL)))
256            AND (   (Recinfo.attribute5 =  X_Attribute5)
257                 OR (    (Recinfo.attribute5 IS NULL)
258                     AND (X_Attribute5 IS NULL)))
259            AND (   (Recinfo.attribute6 =  X_Attribute6)
260                 OR (    (Recinfo.attribute6 IS NULL)
261                     AND (X_Attribute6 IS NULL)))
262            AND (   (Recinfo.attribute7 =  X_Attribute7)
263                 OR (    (Recinfo.attribute7 IS NULL)
264                     AND (X_Attribute7 IS NULL)))
265            AND (   (Recinfo.attribute8 =  X_Attribute8)
266                 OR (    (Recinfo.attribute8 IS NULL)
267                     AND (X_Attribute8 IS NULL)))
268            AND (   (Recinfo.attribute9 =  X_Attribute9)
269                 OR (    (Recinfo.attribute9 IS NULL)
270                     AND (X_Attribute9 IS NULL)))
271            AND (   (Recinfo.attribute10 =  X_Attribute10)
272                 OR (    (Recinfo.attribute10 IS NULL)
273                     AND (X_Attribute10 IS NULL)))
274            AND (   (Recinfo.attribute11 =  X_Attribute11)
275                 OR (    (Recinfo.attribute11 IS NULL)
276                     AND (X_Attribute11 IS NULL)))
277            AND (   (Recinfo.attribute12 =  X_Attribute12)
278                 OR (    (Recinfo.attribute12 IS NULL)
279                     AND (X_Attribute12 IS NULL)))
280            AND (   (Recinfo.attribute13 =  X_Attribute13)
281                 OR (    (Recinfo.attribute13 IS NULL)
282                     AND (X_Attribute13 IS NULL)))
283            AND (   (Recinfo.attribute14 =  X_Attribute14)
284                 OR (    (Recinfo.attribute14 IS NULL)
285                     AND (X_Attribute14 IS NULL)))
286            AND (   (Recinfo.attribute15 =  X_Attribute15)
287                 OR (    (Recinfo.attribute15 IS NULL)
288                     AND (X_Attribute15 IS NULL)))
289            AND (   (Recinfo.pricing_context =  X_Pricing_Context)
290                 OR (    (Recinfo.pricing_context IS NULL)
291                     AND (X_Pricing_Context IS NULL)))
292            AND (   (Recinfo.pricing_attribute1 =  X_Pricing_Attribute1)
293                 OR (    (Recinfo.pricing_attribute1 IS NULL)
294                     AND (X_Pricing_Attribute1 IS NULL)))
295            AND (   (Recinfo.pricing_attribute2 =  X_Pricing_Attribute2)
296                 OR (    (Recinfo.pricing_attribute2 IS NULL)
297                     AND (X_Pricing_Attribute2 IS NULL)))
298            AND (   (Recinfo.pricing_attribute3 =  X_Pricing_Attribute3)
299                 OR (    (Recinfo.pricing_attribute3 IS NULL)
300                     AND (X_Pricing_Attribute3 IS NULL)))
301            AND (   (Recinfo.pricing_attribute4 =  X_Pricing_Attribute4)
302                 OR (    (Recinfo.pricing_attribute4 IS NULL)
303                     AND (X_Pricing_Attribute4 IS NULL)))
304            AND (   (Recinfo.pricing_attribute5 =  X_Pricing_Attribute5)
305                 OR (    (Recinfo.pricing_attribute5 IS NULL)
306                     AND (X_Pricing_Attribute5 IS NULL)))
307            AND (   (Recinfo.pricing_attribute6 =  X_Pricing_Attribute6)
308                 OR (    (Recinfo.pricing_attribute6 IS NULL)
309                     AND (X_Pricing_Attribute6 IS NULL)))
310            AND (   (Recinfo.pricing_attribute7 =  X_Pricing_Attribute7)
311                 OR (    (Recinfo.pricing_attribute7 IS NULL)
312                     AND (X_Pricing_Attribute7 IS NULL)))
313            AND (   (Recinfo.pricing_attribute8 =  X_Pricing_Attribute8)
314                 OR (    (Recinfo.pricing_attribute8 IS NULL)
315                     AND (X_Pricing_Attribute8 IS NULL)))
316            AND (   (Recinfo.pricing_attribute9 =  X_Pricing_Attribute9)
317                 OR (    (Recinfo.pricing_attribute9 IS NULL)
318                     AND (X_Pricing_Attribute9 IS NULL)))
319            AND (   (Recinfo.pricing_attribute10 =  X_Pricing_Attribute10)
320                 OR (    (Recinfo.pricing_attribute10 IS NULL)
321                     AND (X_Pricing_Attribute10 IS NULL)))
322            AND (   (Recinfo.pricing_attribute11 =  X_Pricing_Attribute11)
323                 OR (    (Recinfo.pricing_attribute11 IS NULL)
324                     AND (X_Pricing_Attribute11 IS NULL)))
325            AND (   (Recinfo.pricing_attribute12 =  X_Pricing_Attribute12)
326                 OR (    (Recinfo.pricing_attribute12 IS NULL)
327                     AND (X_Pricing_Attribute12 IS NULL)))
328            AND (   (Recinfo.pricing_attribute13 =  X_Pricing_Attribute13)
329                 OR (    (Recinfo.pricing_attribute13 IS NULL)
330                     AND (X_Pricing_Attribute13 IS NULL)))
331            AND (   (Recinfo.pricing_attribute14 =  X_Pricing_Attribute14)
332                 OR (    (Recinfo.pricing_attribute14 IS NULL)
333                     AND (X_Pricing_Attribute14 IS NULL)))
334            AND (   (Recinfo.pricing_attribute15 =  X_Pricing_Attribute15)
335                 OR (    (Recinfo.pricing_attribute15 IS NULL)
336                     AND (X_Pricing_Attribute15 IS NULL)))
337       ) then
338       return;
339     else
340       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
341       APP_EXCEPTION.Raise_Exception;
342     end if;
343   END Lock_Row;
344 
345 
346   PROCEDURE Update_Row(X_Rowid                          VARCHAR2,
347                        X_Group_Line_Id                  NUMBER,
348                        X_Last_Update_Date               DATE,
349                        X_Last_Updated_By                NUMBER,
350                        X_Last_Update_Login              NUMBER,
351                        X_Group_Id                       NUMBER,
352                        X_Inventory_Item_Id              NUMBER,
353                        X_Unit_Code                      VARCHAR2,
354                        X_Method_Code                    VARCHAR2,
355                        X_Pricing_Rule_Id                NUMBER,
356                        X_List_Price                     NUMBER,
357                        X_Currency_Code                  VARCHAR2,
358                        X_Context                        VARCHAR2,
359                        X_Attribute1                     VARCHAR2,
360                        X_Attribute2                     VARCHAR2,
361                        X_Attribute3                     VARCHAR2,
362                        X_Attribute4                     VARCHAR2,
363                        X_Attribute5                     VARCHAR2,
364                        X_Attribute6                     VARCHAR2,
365                        X_Attribute7                     VARCHAR2,
366                        X_Attribute8                     VARCHAR2,
367                        X_Attribute9                     VARCHAR2,
368                        X_Attribute10                    VARCHAR2,
369                        X_Attribute11                    VARCHAR2,
370                        X_Attribute12                    VARCHAR2,
371                        X_Attribute13                    VARCHAR2,
372                        X_Attribute14                    VARCHAR2,
373                        X_Attribute15                    VARCHAR2,
374                        X_Pricing_Context                VARCHAR2,
375                        X_Pricing_Attribute1             VARCHAR2,
376                        X_Pricing_Attribute2             VARCHAR2,
377                        X_Pricing_Attribute3             VARCHAR2,
378                        X_Pricing_Attribute4             VARCHAR2,
379                        X_Pricing_Attribute5             VARCHAR2,
380                        X_Pricing_Attribute6             VARCHAR2,
381                        X_Pricing_Attribute7             VARCHAR2,
382                        X_Pricing_Attribute8             VARCHAR2,
383                        X_Pricing_Attribute9             VARCHAR2,
384                        X_Pricing_Attribute10            VARCHAR2,
385                        X_Pricing_Attribute11            VARCHAR2,
386                        X_Pricing_Attribute12            VARCHAR2,
387                        X_Pricing_Attribute13            VARCHAR2,
388                        X_Pricing_Attribute14            VARCHAR2,
389                        X_Pricing_Attribute15            VARCHAR2
390   ) IS
391   BEGIN
392     UPDATE so_item_group_lines
393     SET
394        group_line_id                   =     X_Group_Line_Id,
395        last_update_date                =     X_Last_Update_Date,
396        last_updated_by                 =     X_Last_Updated_By,
397        last_update_login               =     X_Last_Update_Login,
398        group_id                        =     X_Group_Id,
399        inventory_item_id               =     X_Inventory_Item_Id,
400        unit_code                       =     X_Unit_Code,
401        method_code                     =     X_Method_Code,
402        pricing_rule_id                 =     X_Pricing_Rule_Id,
403        list_price                      =     X_List_Price,
404        currency_code                   =     X_Currency_Code,
405        context                         =     X_Context,
406        attribute1                      =     X_Attribute1,
407        attribute2                      =     X_Attribute2,
408        attribute3                      =     X_Attribute3,
409        attribute4                      =     X_Attribute4,
410        attribute5                      =     X_Attribute5,
411        attribute6                      =     X_Attribute6,
412        attribute7                      =     X_Attribute7,
413        attribute8                      =     X_Attribute8,
414        attribute9                      =     X_Attribute9,
415        attribute10                     =     X_Attribute10,
416        attribute11                     =     X_Attribute11,
417        attribute12                     =     X_Attribute12,
418        attribute13                     =     X_Attribute13,
419        attribute14                     =     X_Attribute14,
420        attribute15                     =     X_Attribute15,
421        pricing_context                 =     X_Pricing_Context,
422        pricing_attribute1              =     X_Pricing_Attribute1,
423        pricing_attribute2              =     X_Pricing_Attribute2,
424        pricing_attribute3              =     X_Pricing_Attribute3,
425        pricing_attribute4              =     X_Pricing_Attribute4,
426        pricing_attribute5              =     X_Pricing_Attribute5,
427        pricing_attribute6              =     X_Pricing_Attribute6,
428        pricing_attribute7              =     X_Pricing_Attribute7,
429        pricing_attribute8              =     X_Pricing_Attribute8,
430        pricing_attribute9              =     X_Pricing_Attribute9,
431        pricing_attribute10             =     X_Pricing_Attribute10,
432        pricing_attribute11             =     X_Pricing_Attribute11,
433        pricing_attribute12             =     X_Pricing_Attribute12,
434        pricing_attribute13             =     X_Pricing_Attribute13,
435        pricing_attribute14             =     X_Pricing_Attribute14,
436        pricing_attribute15             =     X_Pricing_Attribute15
437     WHERE rowid = X_Rowid;
438 
439     if (SQL%NOTFOUND) then
440       Raise NO_DATA_FOUND;
441     end if;
442   END Update_Row;
443   PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
444   BEGIN
445     DELETE FROM so_item_group_lines
446     WHERE rowid = X_Rowid;
447 
448     if (SQL%NOTFOUND) then
449       Raise NO_DATA_FOUND;
450     end if;
451   END Delete_Row;
452 
453 
454 END SO_ITEM_GROUP_LINES_PKG;