[Home] [Help]
PACKAGE BODY: APPS.CSC_PLAN_LINES_PKG
Source
1 PACKAGE BODY CSC_PLAN_LINES_PKG as
2 /* $Header: csctplnb.pls 120.3 2005/09/18 23:57:09 vshastry noship $ */
3 -- Start of Comments
4 -- Package name : CSC_PLAN_LINES_PKG
5 -- Purpose : Table handler package to performs Inserts, Updates, Deletes and
6 -- row operations on the CSC_PLAN_LINES table.
7 -- History :
8 -- MM-DD-YYYY NAME MODIFICATIONS
9 -- 10-21-1999 dejoseph Created.
10 -- 12-08-1999 dejoseph 'Arcs'ed in for first code freeze.
11 -- 12-21-1999 dejoseph 'Arcs'ed in for second code freeze.
12 -- 01-03-2000 dejoseph 'Arcs'ed in for third code freeze. (10-JAN-2000)
13 -- 01-31-2000 dejoseph 'Arcs'ed in for fourth code freeze. (07-FEB-2000)
14 -- 02-13-2000 dejoseph 'Arcs'ed on for fifth code freeze. (21-FEB-2000)
15 -- 02-28-2000 dejoseph 'Arcs'ed on for sixth code freeze. (06-MAR-2000)
16 --
17 -- 08-17-2001 dejoseph Made the following changes for 11.5.6 to cater to the seeding
18 -- of Relationship Plans. Ref Bug # 1895567.
19 -- - Added proc load_row to be called for the .lct file (cscpllns.lct)
20 -- - added parameter p_application_id to procedure insert_row and
21 -- update_row.
22 -- - added check if user_id = 1, ie SEED, then seeded_flag='Y' in
23 -- procedure insert_row and update_row
24 -- 08-24-2001 dejoseph Added check to insert NULL into application_id if no values was
25 -- passed in for this parameter.
26 -- 11-12-2002 bhroy NOCOPY changes made
27 -- 11-25-2002 bhroy FND_API defaults removed, added WHENEVER OSERROR EXIT FAILURE ROLLBACK
28 -- 19-aug-2005 tpalaniv Deriving l_user_id in load_row API using fnd_load_util as part of
29 -- R12 ATG Project
30 -- NOTE :
31 -- End of Comments
32
33
34 G_PKG_NAME CONSTANT VARCHAR2(30) := 'CSC_PLAN_LINES_PKG';
35 G_FILE_NAME CONSTANT VARCHAR2(12) := 'csctplnb.pls';
36
37 PROCEDURE Insert_Row(
38 px_LINE_ID IN OUT NOCOPY NUMBER,
39 p_PLAN_ID IN NUMBER,
40 p_CONDITION_ID IN NUMBER,
41 p_CREATION_DATE IN DATE,
42 p_LAST_UPDATE_DATE IN DATE,
43 p_CREATED_BY IN NUMBER,
44 p_LAST_UPDATED_BY IN NUMBER,
45 p_LAST_UPDATE_LOGIN IN NUMBER,
46 p_ATTRIBUTE1 IN VARCHAR2,
47 p_ATTRIBUTE2 IN VARCHAR2,
48 p_ATTRIBUTE3 IN VARCHAR2,
49 p_ATTRIBUTE4 IN VARCHAR2,
50 p_ATTRIBUTE5 IN VARCHAR2,
51 p_ATTRIBUTE6 IN VARCHAR2,
52 p_ATTRIBUTE7 IN VARCHAR2,
53 p_ATTRIBUTE8 IN VARCHAR2,
54 p_ATTRIBUTE9 IN VARCHAR2,
55 p_ATTRIBUTE10 IN VARCHAR2,
56 p_ATTRIBUTE11 IN VARCHAR2,
57 p_ATTRIBUTE12 IN VARCHAR2,
58 p_ATTRIBUTE13 IN VARCHAR2,
59 p_ATTRIBUTE14 IN VARCHAR2,
60 p_ATTRIBUTE15 IN VARCHAR2,
61 p_ATTRIBUTE_CATEGORY IN VARCHAR2,
62 p_APPLICATION_ID IN NUMBER,
63 X_OBJECT_VERSION_NUMBER OUT NOCOPY NUMBER)
64 IS
65 CURSOR C2 IS
66 SELECT CSC_PLAN_LINES_S.nextval
67 FROM sys.dual;
68
69 l_seeded_flag VARCHAR2(3);
70
71 BEGIN
72 If (px_LINE_ID IS NULL) OR (px_LINE_ID = FND_API.G_MISS_NUM) then
73 OPEN C2;
74 FETCH C2 INTO px_LINE_ID;
75 CLOSE C2;
76 End If;
77
78 /* added 120 for bug 4596220 */
79 if ( p_created_by IN (1, 120) ) then
80 l_seeded_flag := 'Y';
81 else
82 l_seeded_flag := 'N';
83 end if;
84
85 INSERT INTO CSC_PLAN_LINES(
86 LINE_ID,
87 PLAN_ID,
88 CONDITION_ID,
89 LAST_UPDATE_DATE,
90 CREATION_DATE,
91 LAST_UPDATED_BY,
92 CREATED_BY,
93 LAST_UPDATE_LOGIN,
94 ATTRIBUTE1,
95 ATTRIBUTE2,
96 ATTRIBUTE3,
97 ATTRIBUTE4,
98 ATTRIBUTE5,
99 ATTRIBUTE6,
100 ATTRIBUTE7,
101 ATTRIBUTE8,
102 ATTRIBUTE9,
103 ATTRIBUTE10,
104 ATTRIBUTE11,
105 ATTRIBUTE12,
106 ATTRIBUTE13,
107 ATTRIBUTE14,
108 ATTRIBUTE15,
109 ATTRIBUTE_CATEGORY,
110 APPLICATION_ID,
111 SEEDED_FLAG,
112 OBJECT_VERSION_NUMBER
113 )
114 VALUES (
115 px_LINE_ID,
116 decode( p_PLAN_ID, FND_API.G_MISS_NUM, NULL, p_PLAN_ID),
117 decode( p_CONDITION_ID, FND_API.G_MISS_NUM, NULL, p_CONDITION_ID),
118 decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE, NULL, p_LAST_UPDATE_DATE),
119 decode( p_CREATION_DATE, FND_API.G_MISS_DATE, NULL, p_CREATION_DATE),
120 decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATED_BY),
121 decode( p_CREATED_BY, FND_API.G_MISS_NUM, NULL, p_CREATED_BY),
122 decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM, NULL, p_LAST_UPDATE_LOGIN),
123 decode( p_ATTRIBUTE1, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE1),
124 decode( p_ATTRIBUTE2, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE2),
125 decode( p_ATTRIBUTE3, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE3),
126 decode( p_ATTRIBUTE4, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE4),
127 decode( p_ATTRIBUTE5, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE5),
128 decode( p_ATTRIBUTE6, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE6),
129 decode( p_ATTRIBUTE7, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE7),
130 decode( p_ATTRIBUTE8, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE8),
131 decode( p_ATTRIBUTE9, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE9),
132 decode( p_ATTRIBUTE10, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE10),
133 decode( p_ATTRIBUTE11, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE11),
134 decode( p_ATTRIBUTE12, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE12),
135 decode( p_ATTRIBUTE13, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE13),
136 decode( p_ATTRIBUTE14, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE14),
137 decode( p_ATTRIBUTE15, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE15),
138 decode( p_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR, NULL, p_ATTRIBUTE_CATEGORY),
139 decode( p_application_id, FND_API.G_MISS_NUM, NULL, p_application_id),
140 l_seeded_flag,
141 1 ); -- the first time a record is created, the object_version_number = 1
142
143 x_object_version_number := 1;
144 End Insert_Row;
145
146 PROCEDURE Update_Row(
147 p_LINE_ID IN NUMBER,
148 p_PLAN_ID IN NUMBER,
149 p_CONDITION_ID IN NUMBER,
150 p_CREATION_DATE IN DATE,
151 p_LAST_UPDATE_DATE IN DATE,
152 p_CREATED_BY IN NUMBER,
153 p_LAST_UPDATED_BY IN NUMBER,
154 p_LAST_UPDATE_LOGIN IN NUMBER,
155 p_ATTRIBUTE1 IN VARCHAR2,
156 p_ATTRIBUTE2 IN VARCHAR2,
157 p_ATTRIBUTE3 IN VARCHAR2,
158 p_ATTRIBUTE4 IN VARCHAR2,
159 p_ATTRIBUTE5 IN VARCHAR2,
160 p_ATTRIBUTE6 IN VARCHAR2,
161 p_ATTRIBUTE7 IN VARCHAR2,
162 p_ATTRIBUTE8 IN VARCHAR2,
163 p_ATTRIBUTE9 IN VARCHAR2,
164 p_ATTRIBUTE10 IN VARCHAR2,
165 p_ATTRIBUTE11 IN VARCHAR2,
166 p_ATTRIBUTE12 IN VARCHAR2,
167 p_ATTRIBUTE13 IN VARCHAR2,
168 p_ATTRIBUTE14 IN VARCHAR2,
169 p_ATTRIBUTE15 IN VARCHAR2,
170 p_ATTRIBUTE_CATEGORY IN VARCHAR2,
171 p_APPLICATION_ID IN NUMBER ,
172 X_OBJECT_VERSION_NUMBER OUT NOCOPY NUMBER)
173 IS
174 l_seeded_flag VARCHAR2(3);
175 BEGIN
176 /* added 120 for bug 4596220 */
177 if ( p_last_updated_by IN (1, 120) ) then
178 l_seeded_flag := 'Y';
179 else
180 l_seeded_flag := 'N';
181 end if;
182
183 Update CSC_PLAN_LINES
184 SET
185 PLAN_ID = decode( p_PLAN_ID, FND_API.G_MISS_NUM, PLAN_ID, p_PLAN_ID),
186 CONDITION_ID = decode( p_CONDITION_ID, FND_API.G_MISS_NUM,
187 CONDITION_ID, p_CONDITION_ID),
188 LAST_UPDATE_DATE = decode( p_LAST_UPDATE_DATE, FND_API.G_MISS_DATE,
189 LAST_UPDATE_DATE, p_last_update_date),
190 LAST_UPDATED_BY = decode( p_LAST_UPDATED_BY, FND_API.G_MISS_NUM,
191 LAST_UPDATED_BY, p_LAST_UPDATED_BY),
192 LAST_UPDATE_LOGIN = decode( p_LAST_UPDATE_LOGIN, FND_API.G_MISS_NUM,
193 LAST_UPDATE_LOGIN, p_LAST_UPDATE_LOGIN),
194 ATTRIBUTE1 = decode( p_ATTRIBUTE1, FND_API.G_MISS_CHAR, ATTRIBUTE1, p_ATTRIBUTE1),
195 ATTRIBUTE2 = decode( p_ATTRIBUTE2, FND_API.G_MISS_CHAR, ATTRIBUTE2, p_ATTRIBUTE2),
196 ATTRIBUTE3 = decode( p_ATTRIBUTE3, FND_API.G_MISS_CHAR, ATTRIBUTE3, p_ATTRIBUTE3),
197 ATTRIBUTE4 = decode( p_ATTRIBUTE4, FND_API.G_MISS_CHAR, ATTRIBUTE4, p_ATTRIBUTE4),
198 ATTRIBUTE5 = decode( p_ATTRIBUTE5, FND_API.G_MISS_CHAR, ATTRIBUTE5, p_ATTRIBUTE5),
199 ATTRIBUTE6 = decode( p_ATTRIBUTE6, FND_API.G_MISS_CHAR, ATTRIBUTE6, p_ATTRIBUTE6),
200 ATTRIBUTE7 = decode( p_ATTRIBUTE7, FND_API.G_MISS_CHAR, ATTRIBUTE7, p_ATTRIBUTE7),
201 ATTRIBUTE8 = decode( p_ATTRIBUTE8, FND_API.G_MISS_CHAR, ATTRIBUTE8, p_ATTRIBUTE8),
202 ATTRIBUTE9 = decode( p_ATTRIBUTE9, FND_API.G_MISS_CHAR, ATTRIBUTE9, p_ATTRIBUTE9),
203 ATTRIBUTE10 = decode( p_ATTRIBUTE10, FND_API.G_MISS_CHAR, ATTRIBUTE10, p_ATTRIBUTE10),
204 ATTRIBUTE11 = decode( p_ATTRIBUTE11, FND_API.G_MISS_CHAR, ATTRIBUTE11, p_ATTRIBUTE11),
205 ATTRIBUTE12 = decode( p_ATTRIBUTE12, FND_API.G_MISS_CHAR, ATTRIBUTE12, p_ATTRIBUTE12),
206 ATTRIBUTE13 = decode( p_ATTRIBUTE13, FND_API.G_MISS_CHAR, ATTRIBUTE13, p_ATTRIBUTE13),
207 ATTRIBUTE14 = decode( p_ATTRIBUTE14, FND_API.G_MISS_CHAR, ATTRIBUTE14, p_ATTRIBUTE14),
208 ATTRIBUTE15 = decode( p_ATTRIBUTE15, FND_API.G_MISS_CHAR, ATTRIBUTE15, p_ATTRIBUTE15),
209 ATTRIBUTE_CATEGORY = decode( p_ATTRIBUTE_CATEGORY, FND_API.G_MISS_CHAR,
210 ATTRIBUTE_CATEGORY, p_ATTRIBUTE_CATEGORY),
211 APPLICATION_ID = decode(P_APPLICATION_ID, FND_API.G_MISS_NUM, APPLICATION_ID, P_APPLICATION_ID),
212 SEEDED_FLAG = L_SEEDED_FLAG,
213 OBJECT_VERSION_NUMBER = OBJECT_VERSION_NUMBER + 1
214 where LINE_ID = p_LINE_ID
215 and PLAN_ID = p_PLAN_ID
216 RETURNING object_version_number INTO x_object_version_number;
217
218 If (SQL%NOTFOUND) then
219 RAISE NO_DATA_FOUND;
220 End If;
221
222 END Update_Row;
223
224 PROCEDURE Delete_Row(
225 P_LINE_ID IN NUMBER,
226 P_PLAN_ID IN NUMBER)
227 IS
228 BEGIN
229 DELETE FROM CSC_PLAN_LINES
230 WHERE LINE_ID = nvl(p_line_id, LINE_ID)
231 and PLAN_ID = nvl(p_plan_id, PLAN_ID);
232
233 If (SQL%NOTFOUND) then
234 RAISE NO_DATA_FOUND;
235 End If;
236
237 END Delete_Row;
238
239 PROCEDURE Lock_Row(
240 p_LINE_ID IN NUMBER,
241 p_PLAN_ID IN NUMBER,
242 p_CONDITION_ID IN NUMBER,
243 p_CREATION_DATE IN DATE,
244 p_LAST_UPDATE_DATE IN DATE,
245 p_CREATED_BY IN NUMBER,
246 p_LAST_UPDATED_BY IN NUMBER,
247 p_LAST_UPDATE_LOGIN IN NUMBER,
248 p_ATTRIBUTE1 IN VARCHAR2,
249 p_ATTRIBUTE2 IN VARCHAR2,
250 p_ATTRIBUTE3 IN VARCHAR2,
251 p_ATTRIBUTE4 IN VARCHAR2,
252 p_ATTRIBUTE5 IN VARCHAR2,
253 p_ATTRIBUTE6 IN VARCHAR2,
254 p_ATTRIBUTE7 IN VARCHAR2,
255 p_ATTRIBUTE8 IN VARCHAR2,
256 p_ATTRIBUTE9 IN VARCHAR2,
257 p_ATTRIBUTE10 IN VARCHAR2,
258 p_ATTRIBUTE11 IN VARCHAR2,
259 p_ATTRIBUTE12 IN VARCHAR2,
260 p_ATTRIBUTE13 IN VARCHAR2,
261 p_ATTRIBUTE14 IN VARCHAR2,
262 p_ATTRIBUTE15 IN VARCHAR2,
263 p_ATTRIBUTE_CATEGORY IN VARCHAR2,
264 p_OBJECT_VERSION_NUMBER IN NUMBER)
265 IS
266 CURSOR C IS
267 SELECT *
268 FROM CSC_PLAN_LINES
269 WHERE LINE_ID = p_LINE_ID
270 FOR UPDATE of LINE_ID NOWAIT;
271 Recinfo C%ROWTYPE;
272 BEGIN
273 OPEN C;
274 FETCH C INTO Recinfo;
275 If (C%NOTFOUND) then
276 CLOSE C;
277 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
278 -- APP_EXCEPTION.RAISE_EXCEPTION;
279 End If;
280 CLOSE C;
281 if (
282 ( Recinfo.LINE_ID = p_LINE_ID)
283 AND ( ( Recinfo.PLAN_ID = p_PLAN_ID)
284 OR ( ( Recinfo.PLAN_ID IS NULL )
285 AND ( p_PLAN_ID IS NULL )))
286 AND ( ( Recinfo.CONDITION_ID = p_CONDITION_ID)
287 OR ( ( Recinfo.CONDITION_ID IS NULL )
288 AND ( p_CONDITION_ID IS NULL )))
289 AND ( ( Recinfo.LAST_UPDATE_DATE = p_LAST_UPDATE_DATE)
290 OR ( ( Recinfo.LAST_UPDATE_DATE IS NULL )
291 AND ( p_LAST_UPDATE_DATE IS NULL )))
292 AND ( ( Recinfo.CREATION_DATE = p_CREATION_DATE)
293 OR ( ( Recinfo.CREATION_DATE IS NULL )
294 AND ( p_CREATION_DATE IS NULL )))
295 AND ( ( Recinfo.LAST_UPDATED_BY = p_LAST_UPDATED_BY)
296 OR ( ( Recinfo.LAST_UPDATED_BY IS NULL )
297 AND ( p_LAST_UPDATED_BY IS NULL )))
298 AND ( ( Recinfo.CREATED_BY = p_CREATED_BY)
299 OR ( ( Recinfo.CREATED_BY IS NULL )
300 AND ( p_CREATED_BY IS NULL )))
301 AND ( ( Recinfo.LAST_UPDATE_LOGIN = p_LAST_UPDATE_LOGIN)
302 OR ( ( Recinfo.LAST_UPDATE_LOGIN IS NULL )
303 AND ( p_LAST_UPDATE_LOGIN IS NULL )))
304 AND ( ( Recinfo.ATTRIBUTE1 = p_ATTRIBUTE1)
305 OR ( ( Recinfo.ATTRIBUTE1 IS NULL )
306 AND ( p_ATTRIBUTE1 IS NULL )))
307 AND ( ( Recinfo.ATTRIBUTE2 = p_ATTRIBUTE2)
308 OR ( ( Recinfo.ATTRIBUTE2 IS NULL )
309 AND ( p_ATTRIBUTE2 IS NULL )))
310 AND ( ( Recinfo.ATTRIBUTE3 = p_ATTRIBUTE3)
311 OR ( ( Recinfo.ATTRIBUTE3 IS NULL )
312 AND ( p_ATTRIBUTE3 IS NULL )))
313 AND ( ( Recinfo.ATTRIBUTE4 = p_ATTRIBUTE4)
314 OR ( ( Recinfo.ATTRIBUTE4 IS NULL )
315 AND ( p_ATTRIBUTE4 IS NULL )))
316 AND ( ( Recinfo.ATTRIBUTE5 = p_ATTRIBUTE5)
317 OR ( ( Recinfo.ATTRIBUTE5 IS NULL )
318 AND ( p_ATTRIBUTE5 IS NULL )))
319 AND ( ( Recinfo.ATTRIBUTE6 = p_ATTRIBUTE6)
320 OR ( ( Recinfo.ATTRIBUTE6 IS NULL )
321 AND ( p_ATTRIBUTE6 IS NULL )))
322 AND ( ( Recinfo.ATTRIBUTE7 = p_ATTRIBUTE7)
323 OR ( ( Recinfo.ATTRIBUTE7 IS NULL )
324 AND ( p_ATTRIBUTE7 IS NULL )))
325 AND ( ( Recinfo.ATTRIBUTE8 = p_ATTRIBUTE7)
326 OR ( ( Recinfo.ATTRIBUTE8 IS NULL )
327 AND ( p_ATTRIBUTE8 IS NULL )))
328 AND ( ( Recinfo.ATTRIBUTE9 = p_ATTRIBUTE9)
329 OR ( ( Recinfo.ATTRIBUTE9 IS NULL )
330 AND ( p_ATTRIBUTE9 IS NULL )))
331 AND ( ( Recinfo.ATTRIBUTE10 = p_ATTRIBUTE10)
332 OR ( ( Recinfo.ATTRIBUTE10 IS NULL )
333 AND ( p_ATTRIBUTE10 IS NULL )))
334 AND ( ( Recinfo.ATTRIBUTE11 = p_ATTRIBUTE11)
335 OR ( ( Recinfo.ATTRIBUTE11 IS NULL )
336 AND ( p_ATTRIBUTE11 IS NULL )))
337 AND ( ( Recinfo.ATTRIBUTE12 = p_ATTRIBUTE12)
338 OR ( ( Recinfo.ATTRIBUTE12 IS NULL )
339 AND ( p_ATTRIBUTE12 IS NULL )))
340 AND ( ( Recinfo.ATTRIBUTE13 = p_ATTRIBUTE13)
341 OR ( ( Recinfo.ATTRIBUTE13 IS NULL )
342 AND ( p_ATTRIBUTE13 IS NULL )))
343 AND ( ( Recinfo.ATTRIBUTE14 = p_ATTRIBUTE14)
344 OR ( ( Recinfo.ATTRIBUTE14 IS NULL )
345 AND ( p_ATTRIBUTE14 IS NULL )))
346 AND ( ( Recinfo.ATTRIBUTE15 = p_ATTRIBUTE15)
347 OR ( ( Recinfo.ATTRIBUTE15 IS NULL )
348 AND ( p_ATTRIBUTE15 IS NULL )))
349 AND ( ( Recinfo.ATTRIBUTE_CATEGORY = p_ATTRIBUTE_CATEGORY)
350 OR ( ( Recinfo.ATTRIBUTE_CATEGORY IS NULL )
351 AND ( p_ATTRIBUTE_CATEGORY IS NULL )))
352 AND ( ( Recinfo.OBJECT_VERSION_NUMBER = p_OBJECT_VERSION_NUMBER)
353 OR ( ( Recinfo.OBJECT_VERSION_NUMBER IS NULL )
354 AND ( p_OBJECT_VERSION_NUMBER IS NULL )))
355 ) then
356 RETURN;
357 else
358 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
359 -- APP_EXCEPTION.RAISE_EXCEPTION;
360 End If;
361 END Lock_Row;
362
363 PROCEDURE LOAD_ROW (
364 P_LINE_ID IN NUMBER,
365 P_PLAN_ID IN NUMBER,
366 P_CONDITION_ID IN NUMBER,
367 P_LAST_UPDATE_DATE IN DATE,
368 P_LAST_UPDATED_BY IN NUMBER,
369 P_CREATED_BY IN NUMBER,
370 P_LAST_UPDATE_LOGIN IN NUMBER,
371 P_ATTRIBUTE1 IN VARCHAR2,
372 P_ATTRIBUTE2 IN VARCHAR2,
373 P_ATTRIBUTE3 IN VARCHAR2,
374 P_ATTRIBUTE4 IN VARCHAR2,
375 P_ATTRIBUTE5 IN VARCHAR2,
376 P_ATTRIBUTE6 IN VARCHAR2,
377 P_ATTRIBUTE7 IN VARCHAR2,
378 P_ATTRIBUTE8 IN VARCHAR2,
379 P_ATTRIBUTE9 IN VARCHAR2,
380 P_ATTRIBUTE10 IN VARCHAR2,
381 P_ATTRIBUTE11 IN VARCHAR2,
382 P_ATTRIBUTE12 IN VARCHAR2,
383 P_ATTRIBUTE13 IN VARCHAR2,
384 P_ATTRIBUTE14 IN VARCHAR2,
385 P_ATTRIBUTE15 IN VARCHAR2,
386 P_ATTRIBUTE_CATEGORY IN VARCHAR2,
387 P_OBJECT_VERSION_NUMBER OUT NOCOPY NUMBER,
388 P_APPLICATION_ID IN NUMBER,
389 P_OWNER IN VARCHAR2 )
390 IS
391 l_user_id NUMBER := 0;
392 l_line_id NUMBER := CSC_CORE_UTILS_PVT.G_MISS_NUM;
393 l_object_version_number NUMBER := 0;
394
395 BEGIN
396
397 l_line_id := p_line_id;
398
399 update_row(
400 p_LINE_ID => l_line_id,
401 p_PLAN_ID => p_plan_id,
402 p_CONDITION_ID => p_condition_id,
403 p_CREATION_DATE => p_last_update_date,
404 p_LAST_UPDATE_DATE => p_last_update_date,
405 p_CREATED_BY => p_created_by,
406 p_LAST_UPDATED_BY => p_last_updated_by,
407 p_LAST_UPDATE_LOGIN => 0,
408 p_ATTRIBUTE1 => p_attribute1,
409 p_ATTRIBUTE2 => p_attribute2,
410 p_ATTRIBUTE3 => p_attribute3,
411 p_ATTRIBUTE4 => p_attribute4,
412 p_ATTRIBUTE5 => p_attribute5,
413 p_ATTRIBUTE6 => p_attribute6,
414 p_ATTRIBUTE7 => p_attribute7,
415 p_ATTRIBUTE8 => p_attribute8,
416 p_ATTRIBUTE9 => p_attribute9,
417 p_ATTRIBUTE10 => p_attribute10,
418 p_ATTRIBUTE11 => p_attribute11,
419 p_ATTRIBUTE12 => p_attribute12,
420 p_ATTRIBUTE13 => p_attribute13,
421 p_ATTRIBUTE14 => p_attribute14,
422 p_ATTRIBUTE15 => p_attribute15,
423 p_ATTRIBUTE_CATEGORY => p_attribute_category,
424 p_APPLICATION_ID => p_application_id,
425 X_OBJECT_VERSION_NUMBER => l_object_version_number);
426
427 EXCEPTION
428 when no_data_found then
429 insert_row(
430 px_LINE_ID => l_line_id,
431 p_PLAN_ID => p_plan_id,
432 p_CONDITION_ID => p_condition_id,
433 p_CREATION_DATE => p_last_update_date,
434 p_LAST_UPDATE_DATE => p_last_update_date,
435 p_CREATED_BY => p_created_by,
436 p_LAST_UPDATED_BY => p_last_updated_by,
437 p_LAST_UPDATE_LOGIN => 0,
438 p_ATTRIBUTE1 => p_attribute1,
439 p_ATTRIBUTE2 => p_attribute2,
440 p_ATTRIBUTE3 => p_attribute3,
441 p_ATTRIBUTE4 => p_attribute4,
442 p_ATTRIBUTE5 => p_attribute5,
443 p_ATTRIBUTE6 => p_attribute6,
444 p_ATTRIBUTE7 => p_attribute7,
445 p_ATTRIBUTE8 => p_attribute8,
446 p_ATTRIBUTE9 => p_attribute9,
447 p_ATTRIBUTE10 => p_attribute10,
448 p_ATTRIBUTE11 => p_attribute11,
449 p_ATTRIBUTE12 => p_attribute12,
450 p_ATTRIBUTE13 => p_attribute13,
451 p_ATTRIBUTE14 => p_attribute14,
452 p_ATTRIBUTE15 => p_attribute15,
453 p_ATTRIBUTE_CATEGORY => p_attribute_category,
454 p_APPLICATION_ID => p_application_id,
455 X_OBJECT_VERSION_NUMBER => l_object_version_number);
456
457 END LOAD_ROW;
458
459 End CSC_PLAN_LINES_PKG;