DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSP_MSTRSTCK_LISTS_ITMS_PKG

Source


1 PACKAGE BODY CSP_MSTRSTCK_LISTS_ITMS_PKG as
2 /* $Header: csptpstb.pls 115.4 2002/11/26 06:40:02 hhaugeru ship $ */
3 -- Start of Comments
4 -- Package name     : CSP_MSTRSTCK_LISTS_ITMS_PKG
5 -- Purpose          :
6 -- History          :
7 -- NOTE             :
8 -- End of Comments
9 
10 
11 G_PKG_NAME CONSTANT VARCHAR2(30):= 'CSP_MSTRSTCK_LISTS_ITMS_PKG';
12 G_FILE_NAME CONSTANT VARCHAR2(12) := 'csptstcb.pls';
13 
14 PROCEDURE Insert_Row(
15           px_MSL_ID   IN OUT NOCOPY NUMBER,
16           p_CREATED_BY    NUMBER,
17           p_CREATION_DATE    DATE,
18           p_LAST_UPDATED_BY    NUMBER,
19           p_LAST_UPDATE_DATE    DATE,
20           p_LAST_UPDATED_LOGIN    NUMBER,
21           p_PARTS_LOOPS_ID    NUMBER,
22           p_PLANNER_CODE    VARCHAR2,
23           p_INVENTORY_ITEM_ID    NUMBER,
24           p_ORGANIZATION_ID    NUMBER,
25           p_TOTAL_LOOP_QUANTITY    NUMBER,
26           p_TOTAL_LOOP_MIN_GOOD_QUANTITY    NUMBER,
27           p_PLANNING_TYPE_CODE    NUMBER,
28           p_ATTRIBUTE_CATEGORY    VARCHAR2,
29           p_REVISION    VARCHAR2,
30           p_ATTRIBUTE1    VARCHAR2,
31           p_ATTRIBUTE2    VARCHAR2,
32           p_ATTRIBUTE3    VARCHAR2,
33           p_ATTRIBUTE4    VARCHAR2,
34           p_ATTRIBUTE5    VARCHAR2,
35           p_ATTRIBUTE6    VARCHAR2,
36           p_ATTRIBUTE7    VARCHAR2,
37           p_ATTRIBUTE8    VARCHAR2,
38           p_ATTRIBUTE9    VARCHAR2,
39           p_ATTRIBUTE10    VARCHAR2,
40           p_ATTRIBUTE11    VARCHAR2,
41           p_ATTRIBUTE12    VARCHAR2,
42           p_ATTRIBUTE13    VARCHAR2,
43           p_ATTRIBUTE14    VARCHAR2,
44           p_ATTRIBUTE15    VARCHAR2)
45 
46  IS
47    CURSOR C2 IS SELECT CSP_MSTRSTCK_LISTS_ITMS_S1.nextval FROM sys.dual;
48 BEGIN
49    If (px_MSL_ID IS NULL) OR (px_MSL_ID = FND_API.G_MISS_NUM) then
50        OPEN C2;
51        FETCH C2 INTO px_MSL_ID;
52        CLOSE C2;
53    End If;
54    INSERT INTO CSP_MSTRSTCK_LISTS_ITMS(
55            MSL_ID,
56            CREATED_BY,
57            CREATION_DATE,
58            LAST_UPDATED_BY,
59            LAST_UPDATE_DATE,
60            LAST_UPDATED_LOGIN,
61            PARTS_LOOPS_ID,
62            PLANNER_CODE,
63            INVENTORY_ITEM_ID,
64            ORGANIZATION_ID,
65            TOTAL_LOOP_QUANTITY,
66            TOTAL_LOOP_MIN_GOOD_QUANTITY,
67            PLANNING_TYPE_CODE,
68            ATTRIBUTE_CATEGORY,
69            REVISION,
70            ATTRIBUTE1,
71            ATTRIBUTE2,
72            ATTRIBUTE3,
73            ATTRIBUTE4,
74            ATTRIBUTE5,
75            ATTRIBUTE6,
76            ATTRIBUTE7,
77            ATTRIBUTE8,
78            ATTRIBUTE9,
79            ATTRIBUTE10,
80            ATTRIBUTE11,
81            ATTRIBUTE12,
82            ATTRIBUTE13,
83            ATTRIBUTE14,
84            ATTRIBUTE15
85           ) VALUES (
86            px_MSL_ID,
87            decode( p_CREATED_BY, FND_API.G_MISS_NUM, NULL, p_CREATED_BY),
88            decode(p_CREATION_DATE, fnd_api.g_miss_date,to_date(null),p_creation_date),
89            decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATED_BY),
90            decode(p_LAST_UPDATE_DATE, fnd_api.g_miss_date,to_date(null),p_last_update_date),
91            decode( p_LAST_UPDATED_LOGIN, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATED_LOGIN),
92            decode( p_PARTS_LOOPS_ID, FND_API.G_MISS_NUM, NULL, p_PARTS_LOOPS_ID),
93            decode( p_PLANNER_CODE, FND_API.G_MISS_CHAR, NULL, p_PLANNER_CODE),
94            decode( p_INVENTORY_ITEM_ID, FND_API.G_MISS_NUM, NULL, p_INVENTORY_ITEM_ID),
95            decode( p_ORGANIZATION_ID, FND_API.G_MISS_NUM, NULL, p_ORGANIZATION_ID),
96            decode( p_TOTAL_LOOP_QUANTITY, FND_API.G_MISS_NUM, NULL, p_TOTAL_LOOP_QUANTITY),
97            decode( p_TOTAL_LOOP_MIN_GOOD_QUANTITY, FND_API.G_MISS_NUM, NULL, p_TOTAL_LOOP_MIN_GOOD_QUANTITY),
98            decode( p_PLANNING_TYPE_CODE, FND_API.G_MISS_NUM, NULL, p_PLANNING_TYPE_CODE),
99            decode( p_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE_CATEGORY),
100            decode( p_REVISION, FND_API.G_MISS_CHAR, NULL, p_REVISION),
101            decode( p_ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE1),
102            decode( p_ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE2),
103            decode( p_ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE3),
104            decode( p_ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE4),
105            decode( p_ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE5),
106            decode( p_ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE6),
107            decode( p_ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE7),
108            decode( p_ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE8),
109            decode( p_ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE9),
110            decode( p_ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE10),
111            decode( p_ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE11),
112            decode( p_ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE12),
113            decode( p_ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE13),
114            decode( p_ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE14),
115            decode( p_ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE15));
116 End Insert_Row;
117 
118 PROCEDURE Update_Row(
119           p_MSL_ID    NUMBER,
120           p_CREATED_BY    NUMBER,
121           p_CREATION_DATE    DATE,
122           p_LAST_UPDATED_BY    NUMBER,
123           p_LAST_UPDATE_DATE    DATE,
124           p_LAST_UPDATED_LOGIN    NUMBER,
125           p_PARTS_LOOPS_ID    NUMBER,
126           p_PLANNER_CODE    VARCHAR2,
127           p_INVENTORY_ITEM_ID    NUMBER,
128           p_ORGANIZATION_ID    NUMBER,
129           p_TOTAL_LOOP_QUANTITY    NUMBER,
130           p_TOTAL_LOOP_MIN_GOOD_QUANTITY    NUMBER,
131           p_PLANNING_TYPE_CODE    NUMBER,
132           p_ATTRIBUTE_CATEGORY    VARCHAR2,
133           p_REVISION    VARCHAR2,
134           p_ATTRIBUTE1    VARCHAR2,
135           p_ATTRIBUTE2    VARCHAR2,
136           p_ATTRIBUTE3    VARCHAR2,
137           p_ATTRIBUTE4    VARCHAR2,
138           p_ATTRIBUTE5    VARCHAR2,
139           p_ATTRIBUTE6    VARCHAR2,
140           p_ATTRIBUTE7    VARCHAR2,
141           p_ATTRIBUTE8    VARCHAR2,
142           p_ATTRIBUTE9    VARCHAR2,
143           p_ATTRIBUTE10    VARCHAR2,
144           p_ATTRIBUTE11    VARCHAR2,
145           p_ATTRIBUTE12    VARCHAR2,
146           p_ATTRIBUTE13    VARCHAR2,
147           p_ATTRIBUTE14    VARCHAR2,
148           p_ATTRIBUTE15    VARCHAR2)
149 
150  IS
151  BEGIN
152     Update CSP_MSTRSTCK_LISTS_ITMS
153     SET
154               CREATED_BY = decode( p_CREATED_BY, FND_API.G_MISS_NUM, CREATED_BY, p_CREATED_BY),
155               CREATION_DATE = decode(p_CREATION_DATE, fnd_api.g_miss_date,creation_date,p_creation_date),
156               LAST_UPDATED_BY = decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, LAST_UPDATED_BY, p_LAST_UPDATED_BY),
157               LAST_UPDATE_DATE = decode(p_LAST_UPDATE_DATE,fnd_api.g_miss_date,last_update_date,p_last_update_date),
158               LAST_UPDATED_LOGIN = decode( p_LAST_UPDATED_LOGIN, FND_API.G_MISS_NUM, LAST_UPDATED_LOGIN, p_LAST_UPDATED_LOGIN),
159               PARTS_LOOPS_ID = decode( p_PARTS_LOOPS_ID, FND_API.G_MISS_NUM, PARTS_LOOPS_ID, p_PARTS_LOOPS_ID),
160               PLANNER_CODE = decode( p_PLANNER_CODE, FND_API.G_MISS_CHAR, PLANNER_CODE, p_PLANNER_CODE),
161               INVENTORY_ITEM_ID = decode( p_INVENTORY_ITEM_ID, FND_API.G_MISS_NUM, INVENTORY_ITEM_ID, p_INVENTORY_ITEM_ID),
162               ORGANIZATION_ID = decode( p_ORGANIZATION_ID, FND_API.G_MISS_NUM, ORGANIZATION_ID, p_ORGANIZATION_ID),
163               TOTAL_LOOP_QUANTITY = decode( p_TOTAL_LOOP_QUANTITY, FND_API.G_MISS_NUM, TOTAL_LOOP_QUANTITY, p_TOTAL_LOOP_QUANTITY),
164               TOTAL_LOOP_MIN_GOOD_QUANTITY = decode( p_TOTAL_LOOP_MIN_GOOD_QUANTITY, FND_API.G_MISS_NUM, TOTAL_LOOP_MIN_GOOD_QUANTITY, p_TOTAL_LOOP_MIN_GOOD_QUANTITY),
165               PLANNING_TYPE_CODE = decode( p_PLANNING_TYPE_CODE, FND_API.G_MISS_NUM, PLANNING_TYPE_CODE, p_PLANNING_TYPE_CODE),
166               ATTRIBUTE_CATEGORY = decode( p_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, ATTRIBUTE_CATEGORY, p_ATTRIBUTE_CATEGORY),
167               REVISION = decode( p_REVISION, FND_API.G_MISS_CHAR, REVISION, p_REVISION),
168               ATTRIBUTE1 = decode( p_ATTRIBUTE1, FND_API.G_MISS_CHAR, ATTRIBUTE1, p_ATTRIBUTE1),
169               ATTRIBUTE2 = decode( p_ATTRIBUTE2, FND_API.G_MISS_CHAR, ATTRIBUTE2, p_ATTRIBUTE2),
170               ATTRIBUTE3 = decode( p_ATTRIBUTE3, FND_API.G_MISS_CHAR, ATTRIBUTE3, p_ATTRIBUTE3),
171               ATTRIBUTE4 = decode( p_ATTRIBUTE4, FND_API.G_MISS_CHAR, ATTRIBUTE4, p_ATTRIBUTE4),
172               ATTRIBUTE5 = decode( p_ATTRIBUTE5, FND_API.G_MISS_CHAR, ATTRIBUTE5, p_ATTRIBUTE5),
173               ATTRIBUTE6 = decode( p_ATTRIBUTE6, FND_API.G_MISS_CHAR, ATTRIBUTE6, p_ATTRIBUTE6),
174               ATTRIBUTE7 = decode( p_ATTRIBUTE7, FND_API.G_MISS_CHAR, ATTRIBUTE7, p_ATTRIBUTE7),
175               ATTRIBUTE8 = decode( p_ATTRIBUTE8, FND_API.G_MISS_CHAR, ATTRIBUTE8, p_ATTRIBUTE8),
176               ATTRIBUTE9 = decode( p_ATTRIBUTE9, FND_API.G_MISS_CHAR, ATTRIBUTE9, p_ATTRIBUTE9),
177               ATTRIBUTE10 = decode( p_ATTRIBUTE10, FND_API.G_MISS_CHAR, ATTRIBUTE10, p_ATTRIBUTE10),
178               ATTRIBUTE11 = decode( p_ATTRIBUTE11, FND_API.G_MISS_CHAR, ATTRIBUTE11, p_ATTRIBUTE11),
179               ATTRIBUTE12 = decode( p_ATTRIBUTE12, FND_API.G_MISS_CHAR, ATTRIBUTE12, p_ATTRIBUTE12),
180               ATTRIBUTE13 = decode( p_ATTRIBUTE13, FND_API.G_MISS_CHAR, ATTRIBUTE13, p_ATTRIBUTE13),
181               ATTRIBUTE14 = decode( p_ATTRIBUTE14, FND_API.G_MISS_CHAR, ATTRIBUTE14, p_ATTRIBUTE14),
182               ATTRIBUTE15 = decode( p_ATTRIBUTE15, FND_API.G_MISS_CHAR, ATTRIBUTE15, p_ATTRIBUTE15)
183     where MSL_ID = p_MSL_ID;
184 
185     If (SQL%NOTFOUND) then
186         RAISE NO_DATA_FOUND;
187     End If;
188 END Update_Row;
189 
190 PROCEDURE Delete_Row(
191     p_MSL_ID  NUMBER)
192  IS
193  BEGIN
194    DELETE FROM CSP_MSTRSTCK_LISTS_ITMS
195     WHERE MSL_ID = p_MSL_ID;
196    If (SQL%NOTFOUND) then
197        RAISE NO_DATA_FOUND;
198    End If;
199  END Delete_Row;
200 
201 PROCEDURE Lock_Row(
202           p_MSL_ID    NUMBER,
203           p_CREATED_BY    NUMBER,
204           p_CREATION_DATE    DATE,
205           p_LAST_UPDATED_BY    NUMBER,
206           p_LAST_UPDATE_DATE    DATE,
207           p_LAST_UPDATED_LOGIN    NUMBER,
208           p_PARTS_LOOPS_ID    NUMBER,
209           p_PLANNER_CODE    VARCHAR2,
210           p_INVENTORY_ITEM_ID    NUMBER,
211           p_ORGANIZATION_ID    NUMBER,
212           p_TOTAL_LOOP_QUANTITY    NUMBER,
213           p_TOTAL_LOOP_MIN_GOOD_QUANTITY    NUMBER,
214           p_PLANNING_TYPE_CODE    NUMBER,
215           p_ATTRIBUTE_CATEGORY    VARCHAR2,
216           p_REVISION    VARCHAR2,
217           p_ATTRIBUTE1    VARCHAR2,
218           p_ATTRIBUTE2    VARCHAR2,
219           p_ATTRIBUTE3    VARCHAR2,
220           p_ATTRIBUTE4    VARCHAR2,
221           p_ATTRIBUTE5    VARCHAR2,
222           p_ATTRIBUTE6    VARCHAR2,
223           p_ATTRIBUTE7    VARCHAR2,
224           p_ATTRIBUTE8    VARCHAR2,
225           p_ATTRIBUTE9    VARCHAR2,
226           p_ATTRIBUTE10    VARCHAR2,
227           p_ATTRIBUTE11    VARCHAR2,
228           p_ATTRIBUTE12    VARCHAR2,
229           p_ATTRIBUTE13    VARCHAR2,
230           p_ATTRIBUTE14    VARCHAR2,
231           p_ATTRIBUTE15    VARCHAR2)
232 
233  IS
234    CURSOR C IS
235         SELECT *
236          FROM CSP_MSTRSTCK_LISTS_ITMS
237         WHERE MSL_ID =  p_MSL_ID
238         FOR UPDATE of MSL_ID NOWAIT;
239    Recinfo C%ROWTYPE;
240  BEGIN
241     OPEN C;
242     FETCH C INTO Recinfo;
243     If (C%NOTFOUND) then
244         CLOSE C;
245         FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
246         APP_EXCEPTION.RAISE_EXCEPTION;
247     End If;
248     CLOSE C;
249     if (
250            (      Recinfo.MSL_ID = p_MSL_ID)
251        AND (    ( Recinfo.CREATED_BY = p_CREATED_BY)
252             OR (    ( Recinfo.CREATED_BY IS NULL )
253                 AND (  p_CREATED_BY IS NULL )))
254        AND (    ( Recinfo.CREATION_DATE = p_CREATION_DATE)
255             OR (    ( Recinfo.CREATION_DATE IS NULL )
256                 AND (  p_CREATION_DATE IS NULL )))
257        AND (    ( Recinfo.LAST_UPDATED_BY = p_LAST_UPDATED_BY)
258             OR (    ( Recinfo.LAST_UPDATED_BY IS NULL )
259                 AND (  p_LAST_UPDATED_BY IS NULL )))
260        AND (    ( Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
261             OR (    ( Recinfo.LAST_UPDATE_DATE IS NULL )
262                 AND (  p_LAST_UPDATE_DATE IS NULL )))
263        AND (    ( Recinfo.LAST_UPDATED_LOGIN = p_LAST_UPDATED_LOGIN)
264             OR (    ( Recinfo.LAST_UPDATED_LOGIN IS NULL )
265                 AND (  p_LAST_UPDATED_LOGIN IS NULL )))
266        AND (    ( Recinfo.PARTS_LOOPS_ID = p_PARTS_LOOPS_ID)
267             OR (    ( Recinfo.PARTS_LOOPS_ID IS NULL )
268                 AND (  p_PARTS_LOOPS_ID IS NULL )))
269        AND (    ( Recinfo.PLANNER_CODE = p_PLANNER_CODE)
270             OR (    ( Recinfo.PLANNER_CODE IS NULL )
271                 AND (  p_PLANNER_CODE IS NULL )))
272        AND (    ( Recinfo.INVENTORY_ITEM_ID = p_INVENTORY_ITEM_ID)
273             OR (    ( Recinfo.INVENTORY_ITEM_ID IS NULL )
274                 AND (  p_INVENTORY_ITEM_ID IS NULL )))
275        AND (    ( Recinfo.ORGANIZATION_ID = p_ORGANIZATION_ID)
276             OR (    ( Recinfo.ORGANIZATION_ID IS NULL )
277                 AND (  p_ORGANIZATION_ID IS NULL )))
278        AND (    ( Recinfo.TOTAL_LOOP_QUANTITY = p_TOTAL_LOOP_QUANTITY)
279             OR (    ( Recinfo.TOTAL_LOOP_QUANTITY IS NULL )
280                 AND (  p_TOTAL_LOOP_QUANTITY IS NULL )))
281        AND (    ( Recinfo.TOTAL_LOOP_MIN_GOOD_QUANTITY = p_TOTAL_LOOP_MIN_GOOD_QUANTITY)
282             OR (    ( Recinfo.TOTAL_LOOP_MIN_GOOD_QUANTITY IS NULL )
283                 AND (  p_TOTAL_LOOP_MIN_GOOD_QUANTITY IS NULL )))
284        AND (    ( Recinfo.PLANNING_TYPE_CODE = p_PLANNING_TYPE_CODE)
285             OR (    ( Recinfo.PLANNING_TYPE_CODE IS NULL )
286                 AND (  p_PLANNING_TYPE_CODE IS NULL )))
287        AND (    ( Recinfo.ATTRIBUTE_CATEGORY = p_ATTRIBUTE_CATEGORY)
288             OR (    ( Recinfo.ATTRIBUTE_CATEGORY IS NULL )
289                 AND (  p_ATTRIBUTE_CATEGORY IS NULL )))
290        AND (    ( Recinfo.REVISION = p_REVISION)
291             OR (    ( Recinfo.REVISION IS NULL )
292                 AND (  p_REVISION IS NULL )))
293        AND (    ( Recinfo.ATTRIBUTE1 = p_ATTRIBUTE1)
294             OR (    ( Recinfo.ATTRIBUTE1 IS NULL )
295                 AND (  p_ATTRIBUTE1 IS NULL )))
296        AND (    ( Recinfo.ATTRIBUTE2 = p_ATTRIBUTE2)
297             OR (    ( Recinfo.ATTRIBUTE2 IS NULL )
298                 AND (  p_ATTRIBUTE2 IS NULL )))
299        AND (    ( Recinfo.ATTRIBUTE3 = p_ATTRIBUTE3)
300             OR (    ( Recinfo.ATTRIBUTE3 IS NULL )
301                 AND (  p_ATTRIBUTE3 IS NULL )))
302        AND (    ( Recinfo.ATTRIBUTE4 = p_ATTRIBUTE4)
303             OR (    ( Recinfo.ATTRIBUTE4 IS NULL )
304                 AND (  p_ATTRIBUTE4 IS NULL )))
305        AND (    ( Recinfo.ATTRIBUTE5 = p_ATTRIBUTE5)
306             OR (    ( Recinfo.ATTRIBUTE5 IS NULL )
307                 AND (  p_ATTRIBUTE5 IS NULL )))
308        AND (    ( Recinfo.ATTRIBUTE6 = p_ATTRIBUTE6)
309             OR (    ( Recinfo.ATTRIBUTE6 IS NULL )
310                 AND (  p_ATTRIBUTE6 IS NULL )))
311        AND (    ( Recinfo.ATTRIBUTE7 = p_ATTRIBUTE7)
312             OR (    ( Recinfo.ATTRIBUTE7 IS NULL )
313                 AND (  p_ATTRIBUTE7 IS NULL )))
314        AND (    ( Recinfo.ATTRIBUTE8 = p_ATTRIBUTE8)
315             OR (    ( Recinfo.ATTRIBUTE8 IS NULL )
316                 AND (  p_ATTRIBUTE8 IS NULL )))
317        AND (    ( Recinfo.ATTRIBUTE9 = p_ATTRIBUTE9)
318             OR (    ( Recinfo.ATTRIBUTE9 IS NULL )
319                 AND (  p_ATTRIBUTE9 IS NULL )))
320        AND (    ( Recinfo.ATTRIBUTE10 = p_ATTRIBUTE10)
321             OR (    ( Recinfo.ATTRIBUTE10 IS NULL )
322                 AND (  p_ATTRIBUTE10 IS NULL )))
323        AND (    ( Recinfo.ATTRIBUTE11 = p_ATTRIBUTE11)
324             OR (    ( Recinfo.ATTRIBUTE11 IS NULL )
325                 AND (  p_ATTRIBUTE11 IS NULL )))
326        AND (    ( Recinfo.ATTRIBUTE12 = p_ATTRIBUTE12)
327             OR (    ( Recinfo.ATTRIBUTE12 IS NULL )
328                 AND (  p_ATTRIBUTE12 IS NULL )))
329        AND (    ( Recinfo.ATTRIBUTE13 = p_ATTRIBUTE13)
330             OR (    ( Recinfo.ATTRIBUTE13 IS NULL )
331                 AND (  p_ATTRIBUTE13 IS NULL )))
332        AND (    ( Recinfo.ATTRIBUTE14 = p_ATTRIBUTE14)
333             OR (    ( Recinfo.ATTRIBUTE14 IS NULL )
334                 AND (  p_ATTRIBUTE14 IS NULL )))
335        AND (    ( Recinfo.ATTRIBUTE15 = p_ATTRIBUTE15)
336             OR (    ( Recinfo.ATTRIBUTE15 IS NULL )
337                 AND (  p_ATTRIBUTE15 IS NULL )))
338        ) then
339        return;
340    else
341        FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
342        APP_EXCEPTION.RAISE_EXCEPTION;
343    End If;
344 END Lock_Row;
345 
346 End CSP_MSTRSTCK_LISTS_ITMS_PKG;