DBA Data[Home] [Help]

PACKAGE BODY: APPS.PA_NEXT_ALLOW_STATUSES_PKG

Source


1 PACKAGE BODY PA_NEXT_ALLOW_STATUSES_PKG as
2 /* $Header: PASTANTB.pls 120.1 2005/06/30 12:33:09 appldev noship $ */
3 -- Start of Comments
4 -- Package name     : PA_NEXT_ALLOW_STATUSES_PKG
5 -- Purpose          : Table handler for PA_NEXT_ALLOW_STATUSES
6 -- History          : 07-JUL-2000 Mohnish       Created
7 -- NOTE             :  The procedure in these packages need to be
8 --					:  called through the PA_NEXT_ALLOW_STATUSES_PVT
9 --                  :  procedures only
10 -- End of Comments
11 
12 
13 G_PKG_NAME CONSTANT VARCHAR2(30):= 'PA_NEXT_ALLOW_STATUSES_PKG';
14 G_FILE_NAME CONSTANT VARCHAR2(12) := 'PASTATNB.pls';
15 
16 PROCEDURE Insert_Row(
17           p_STATUS_CODE                   VARCHAR2,
18           p_NEXT_ALLOWABLE_STATUS_CODE    VARCHAR2,
19           p_LAST_UPDATE_DATE              DATE,
20           p_LAST_UPDATED_BY               NUMBER,
21           p_CREATION_DATE                 DATE,
22           p_CREATED_BY                    NUMBER,
23           p_LAST_UPDATE_LOGIN             NUMBER,
24           p_ATTRIBUTE_CATEGORY            VARCHAR2,
25           p_ATTRIBUTE1                    VARCHAR2,
26           p_ATTRIBUTE2                    VARCHAR2,
27           p_ATTRIBUTE3                    VARCHAR2,
28           p_ATTRIBUTE4                    VARCHAR2,
29           p_ATTRIBUTE5                    VARCHAR2,
30           p_ATTRIBUTE6                    VARCHAR2,
31           p_ATTRIBUTE7                    VARCHAR2,
32           p_ATTRIBUTE8                    VARCHAR2,
33           p_ATTRIBUTE9                    VARCHAR2,
34           p_ATTRIBUTE10                   VARCHAR2,
35           p_ATTRIBUTE11                   VARCHAR2,
36           p_ATTRIBUTE12                   VARCHAR2,
37           p_ATTRIBUTE13                   VARCHAR2,
38           p_ATTRIBUTE14                   VARCHAR2,
39           p_ATTRIBUTE15                   VARCHAR2)
40  IS
41 BEGIN
42    INSERT INTO PA_NEXT_ALLOW_STATUSES(
43           STATUS_CODE,
44           NEXT_ALLOWABLE_STATUS_CODE,
45           LAST_UPDATE_DATE,
46           LAST_UPDATED_BY,
47           CREATION_DATE,
48           CREATED_BY,
49           LAST_UPDATE_LOGIN,
50           ATTRIBUTE_CATEGORY,
51           ATTRIBUTE1,
52           ATTRIBUTE2,
53           ATTRIBUTE3,
54           ATTRIBUTE4,
55           ATTRIBUTE5,
56           ATTRIBUTE6,
57           ATTRIBUTE7,
58           ATTRIBUTE8,
59           ATTRIBUTE9,
60           ATTRIBUTE10,
61           ATTRIBUTE11,
62           ATTRIBUTE12,
63           ATTRIBUTE13,
64           ATTRIBUTE14,
65           ATTRIBUTE15
66           ) VALUES (
67            decode( p_STATUS_CODE, FND_API.G_MISS_CHAR, NULL, p_STATUS_CODE),
68            decode( p_NEXT_ALLOWABLE_STATUS_CODE, FND_API.G_MISS_CHAR, NULL, p_NEXT_ALLOWABLE_STATUS_CODE),
69            decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_LAST_UPDATE_DATE),
70            decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATED_BY),
71            decode( p_CREATION_DATE, FND_API.G_MISS_DATE, TO_DATE(NULL), p_CREATION_DATE),
72            decode( p_CREATED_BY, FND_API.G_MISS_NUM, NULL, p_CREATED_BY),
73            decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATE_LOGIN),
74            decode( p_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE_CATEGORY),
75            decode( p_ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE1),
76            decode( p_ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE2),
77            decode( p_ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE3),
78            decode( p_ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE4),
79            decode( p_ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE5),
80            decode( p_ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE6),
81            decode( p_ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE7),
82            decode( p_ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE8),
83            decode( p_ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE9),
84            decode( p_ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE10),
85            decode( p_ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE11),
86            decode( p_ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE12),
87            decode( p_ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE13),
88            decode( p_ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE14),
89            decode( p_ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE15)
90 		   );
91 End Insert_Row;
92 
93 PROCEDURE Update_Row(
94           p_STATUS_CODE                   VARCHAR2,
95           p_NEXT_ALLOWABLE_STATUS_CODE    VARCHAR2,
96           p_LAST_UPDATE_DATE              DATE,
97           p_LAST_UPDATED_BY               NUMBER,
98           p_CREATION_DATE                 DATE,
99           p_CREATED_BY                    NUMBER,
100           p_LAST_UPDATE_LOGIN             NUMBER,
101           p_ATTRIBUTE_CATEGORY            VARCHAR2,
102           p_ATTRIBUTE1                    VARCHAR2,
103           p_ATTRIBUTE2                    VARCHAR2,
104           p_ATTRIBUTE3                    VARCHAR2,
105           p_ATTRIBUTE4                    VARCHAR2,
106           p_ATTRIBUTE5                    VARCHAR2,
107           p_ATTRIBUTE6                    VARCHAR2,
108           p_ATTRIBUTE7                    VARCHAR2,
109           p_ATTRIBUTE8                    VARCHAR2,
110           p_ATTRIBUTE9                    VARCHAR2,
111           p_ATTRIBUTE10                   VARCHAR2,
112           p_ATTRIBUTE11                   VARCHAR2,
113           p_ATTRIBUTE12                   VARCHAR2,
114           p_ATTRIBUTE13                   VARCHAR2,
115           p_ATTRIBUTE14                   VARCHAR2,
116           p_ATTRIBUTE15                   VARCHAR2)
117  IS
118  BEGIN
119     Update PA_NEXT_ALLOW_STATUSES
120     SET
121            STATUS_CODE = decode( p_STATUS_CODE, FND_API.G_MISS_CHAR, STATUS_CODE, p_STATUS_CODE),
122            NEXT_ALLOWABLE_STATUS_CODE = decode( p_NEXT_ALLOWABLE_STATUS_CODE, FND_API.G_MISS_CHAR, NEXT_ALLOWABLE_STATUS_CODE, p_NEXT_ALLOWABLE_STATUS_CODE),
123               LAST_UPDATE_DATE = decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, LAST_UPDATE_DATE, p_LAST_UPDATE_DATE),
124               LAST_UPDATED_BY = decode( p_LAST_UPDATED_BY, FND_API.G_MISS_CHAR, LAST_UPDATED_BY, p_LAST_UPDATED_BY),
125               CREATION_DATE = decode( p_CREATION_DATE, FND_API.G_MISS_DATE, CREATION_DATE, p_CREATION_DATE),
126               CREATED_BY = decode( p_CREATED_BY, FND_API.G_MISS_NUM, CREATED_BY, p_CREATED_BY),
127               LAST_UPDATE_LOGIN = decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, LAST_UPDATE_LOGIN, p_LAST_UPDATE_LOGIN),
128               ATTRIBUTE_CATEGORY = decode( p_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, ATTRIBUTE_CATEGORY, p_ATTRIBUTE_CATEGORY),
129               ATTRIBUTE1 = decode( p_ATTRIBUTE1, FND_API.G_MISS_CHAR, ATTRIBUTE1, p_ATTRIBUTE1),
130               ATTRIBUTE2 = decode( p_ATTRIBUTE2, FND_API.G_MISS_CHAR, ATTRIBUTE2, p_ATTRIBUTE2),
131               ATTRIBUTE3 = decode( p_ATTRIBUTE3, FND_API.G_MISS_CHAR, ATTRIBUTE3, p_ATTRIBUTE3),
132               ATTRIBUTE4 = decode( p_ATTRIBUTE4, FND_API.G_MISS_CHAR, ATTRIBUTE4, p_ATTRIBUTE4),
133               ATTRIBUTE5 = decode( p_ATTRIBUTE5, FND_API.G_MISS_CHAR, ATTRIBUTE5, p_ATTRIBUTE5),
134               ATTRIBUTE6 = decode( p_ATTRIBUTE6, FND_API.G_MISS_CHAR, ATTRIBUTE6, p_ATTRIBUTE6),
135               ATTRIBUTE7 = decode( p_ATTRIBUTE7, FND_API.G_MISS_CHAR, ATTRIBUTE7, p_ATTRIBUTE7),
136               ATTRIBUTE8 = decode( p_ATTRIBUTE8, FND_API.G_MISS_CHAR, ATTRIBUTE8, p_ATTRIBUTE8),
137               ATTRIBUTE9 = decode( p_ATTRIBUTE9, FND_API.G_MISS_CHAR, ATTRIBUTE9, p_ATTRIBUTE9),
138               ATTRIBUTE10 = decode( p_ATTRIBUTE10, FND_API.G_MISS_CHAR, ATTRIBUTE10, p_ATTRIBUTE10),
139               ATTRIBUTE11 = decode( p_ATTRIBUTE11, FND_API.G_MISS_CHAR, ATTRIBUTE11, p_ATTRIBUTE11),
140               ATTRIBUTE12 = decode( p_ATTRIBUTE12, FND_API.G_MISS_CHAR, ATTRIBUTE12, p_ATTRIBUTE12),
141               ATTRIBUTE13 = decode( p_ATTRIBUTE13, FND_API.G_MISS_CHAR, ATTRIBUTE13, p_ATTRIBUTE13),
142               ATTRIBUTE14 = decode( p_ATTRIBUTE14, FND_API.G_MISS_CHAR, ATTRIBUTE14, p_ATTRIBUTE14),
143               ATTRIBUTE15 = decode( p_ATTRIBUTE15, FND_API.G_MISS_CHAR, ATTRIBUTE15, p_ATTRIBUTE15)
144     where STATUS_CODE = p_STATUS_CODE;
145 
146     If (SQL%NOTFOUND) then
147         RAISE NO_DATA_FOUND;
148     End If;
149 END Update_Row;
150 
151 PROCEDURE Lock_Row(
152           p_STATUS_CODE                   VARCHAR2,
153           p_NEXT_ALLOWABLE_STATUS_CODE    VARCHAR2,
154           p_LAST_UPDATE_DATE              DATE,
155           p_LAST_UPDATED_BY               NUMBER,
156           p_CREATION_DATE                 DATE,
157           p_CREATED_BY                    NUMBER,
158           p_LAST_UPDATE_LOGIN             NUMBER,
159           p_ATTRIBUTE_CATEGORY            VARCHAR2,
160           p_ATTRIBUTE1                    VARCHAR2,
161           p_ATTRIBUTE2                    VARCHAR2,
162           p_ATTRIBUTE3                    VARCHAR2,
163           p_ATTRIBUTE4                    VARCHAR2,
164           p_ATTRIBUTE5                    VARCHAR2,
165           p_ATTRIBUTE6                    VARCHAR2,
166           p_ATTRIBUTE7                    VARCHAR2,
167           p_ATTRIBUTE8                    VARCHAR2,
168           p_ATTRIBUTE9                    VARCHAR2,
169           p_ATTRIBUTE10                   VARCHAR2,
170           p_ATTRIBUTE11                   VARCHAR2,
171           p_ATTRIBUTE12                   VARCHAR2,
172           p_ATTRIBUTE13                   VARCHAR2,
173           p_ATTRIBUTE14                   VARCHAR2,
174           p_ATTRIBUTE15                   VARCHAR2)
175  IS
176    CURSOR C IS
177         SELECT *
178          FROM PA_NEXT_ALLOW_STATUSES
179         WHERE STATUS_CODE =  p_STATUS_CODE
180         FOR UPDATE of STATUS_CODE NOWAIT;
181    Recinfo C%ROWTYPE;
182  BEGIN
183     OPEN C;
184     FETCH C INTO Recinfo;
185     If (C%NOTFOUND) then
186         CLOSE C;
187         FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
188         APP_EXCEPTION.RAISE_EXCEPTION;
189     End If;
190     CLOSE C;
191     if (
192        (    ( Recinfo.STATUS_CODE = p_STATUS_CODE)
193             OR (    ( Recinfo.STATUS_CODE IS NULL )
194                 AND (  p_STATUS_CODE IS NULL )))
195        AND (    ( Recinfo.NEXT_ALLOWABLE_STATUS_CODE = p_NEXT_ALLOWABLE_STATUS_CODE)
196             OR (    ( Recinfo.NEXT_ALLOWABLE_STATUS_CODE IS NULL )
197                 AND (  p_NEXT_ALLOWABLE_STATUS_CODE IS NULL )))
198        AND (    ( Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
199             OR (    ( Recinfo.LAST_UPDATE_DATE IS NULL )
200                 AND (  p_LAST_UPDATE_DATE IS NULL )))
201        AND (    ( Recinfo.LAST_UPDATED_BY = p_LAST_UPDATED_BY)
202             OR (    ( Recinfo.LAST_UPDATED_BY IS NULL )
203                 AND (  p_LAST_UPDATED_BY IS NULL )))
204        AND (      Recinfo.CREATION_DATE = p_CREATION_DATE)
205        AND (    ( Recinfo.CREATED_BY = p_CREATED_BY)
206             OR (    ( Recinfo.CREATED_BY IS NULL )
207                 AND (  p_CREATED_BY IS NULL )))
208        AND (    ( Recinfo.LAST_UPDATE_LOGIN = p_LAST_UPDATE_LOGIN)
209             OR (    ( Recinfo.LAST_UPDATE_LOGIN IS NULL )
210                 AND (  p_LAST_UPDATE_LOGIN IS NULL )))
211        AND (    ( Recinfo.ATTRIBUTE_CATEGORY = p_ATTRIBUTE_CATEGORY)
212             OR (    ( Recinfo.ATTRIBUTE_CATEGORY IS NULL )
213                 AND (  p_ATTRIBUTE_CATEGORY IS NULL )))
214        AND (    ( Recinfo.ATTRIBUTE1 = p_ATTRIBUTE1)
215             OR (    ( Recinfo.ATTRIBUTE1 IS NULL )
216                 AND (  p_ATTRIBUTE1 IS NULL )))
217        AND (    ( Recinfo.ATTRIBUTE2 = p_ATTRIBUTE2)
218             OR (    ( Recinfo.ATTRIBUTE2 IS NULL )
219                 AND (  p_ATTRIBUTE2 IS NULL )))
220        AND (    ( Recinfo.ATTRIBUTE3 = p_ATTRIBUTE3)
221             OR (    ( Recinfo.ATTRIBUTE3 IS NULL )
222                 AND (  p_ATTRIBUTE3 IS NULL )))
223        AND (    ( Recinfo.ATTRIBUTE4 = p_ATTRIBUTE4)
224             OR (    ( Recinfo.ATTRIBUTE4 IS NULL )
225                 AND (  p_ATTRIBUTE4 IS NULL )))
226        AND (    ( Recinfo.ATTRIBUTE5 = p_ATTRIBUTE5)
227             OR (    ( Recinfo.ATTRIBUTE5 IS NULL )
228                 AND (  p_ATTRIBUTE5 IS NULL )))
229        AND (    ( Recinfo.ATTRIBUTE6 = p_ATTRIBUTE6)
230             OR (    ( Recinfo.ATTRIBUTE6 IS NULL )
231                 AND (  p_ATTRIBUTE6 IS NULL )))
232        AND (    ( Recinfo.ATTRIBUTE7 = p_ATTRIBUTE7)
233             OR (    ( Recinfo.ATTRIBUTE7 IS NULL )
234                 AND (  p_ATTRIBUTE7 IS NULL )))
235        AND (    ( Recinfo.ATTRIBUTE8 = p_ATTRIBUTE8)
236             OR (    ( Recinfo.ATTRIBUTE8 IS NULL )
237                 AND (  p_ATTRIBUTE8 IS NULL )))
238        AND (    ( Recinfo.ATTRIBUTE9 = p_ATTRIBUTE9)
239             OR (    ( Recinfo.ATTRIBUTE9 IS NULL )
240                 AND (  p_ATTRIBUTE9 IS NULL )))
241        AND (    ( Recinfo.ATTRIBUTE10 = p_ATTRIBUTE10)
242             OR (    ( Recinfo.ATTRIBUTE10 IS NULL )
243                 AND (  p_ATTRIBUTE10 IS NULL )))
244        AND (    ( Recinfo.ATTRIBUTE11 = p_ATTRIBUTE11)
245             OR (    ( Recinfo.ATTRIBUTE11 IS NULL )
246                 AND (  p_ATTRIBUTE11 IS NULL )))
247        AND (    ( Recinfo.ATTRIBUTE12 = p_ATTRIBUTE12)
248             OR (    ( Recinfo.ATTRIBUTE12 IS NULL )
249                 AND (  p_ATTRIBUTE12 IS NULL )))
250        AND (    ( Recinfo.ATTRIBUTE13 = p_ATTRIBUTE13)
251             OR (    ( Recinfo.ATTRIBUTE13 IS NULL )
252                 AND (  p_ATTRIBUTE13 IS NULL )))
253        AND (    ( Recinfo.ATTRIBUTE14 = p_ATTRIBUTE14)
254             OR (    ( Recinfo.ATTRIBUTE14 IS NULL )
255                 AND (  p_ATTRIBUTE14 IS NULL )))
256        AND (    ( Recinfo.ATTRIBUTE15 = p_ATTRIBUTE15)
257             OR (    ( Recinfo.ATTRIBUTE15 IS NULL )
258                 AND (  p_ATTRIBUTE15 IS NULL )))
259        ) then
260        return;
261    else
262        FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
263        APP_EXCEPTION.RAISE_EXCEPTION;
264    End If;
265 END Lock_Row;
266 
267 PROCEDURE Delete_Row(
268     p_STATUS_CODE  VARCHAR2)
269  IS
270  BEGIN
271    DELETE FROM PA_NEXT_ALLOW_STATUSES
272     WHERE STATUS_CODE = p_STATUS_CODE;
273    If (SQL%NOTFOUND) then
274        RAISE NO_DATA_FOUND;
275    End If;
276  EXCEPTION
277    When NO_DATA_FOUND then
278    null;
279  END Delete_Row;
280 
281 End PA_NEXT_ALLOW_STATUSES_PKG;