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