1 PACKAGE BODY igs_ps_usec_wlst_prf_pkg AS
2 /* $Header: IGSPI0ZB.pls 120.1 2005/08/17 05:50:15 appldev ship $ */
3 l_rowid VARCHAR2(25);
4 old_references igs_ps_usec_wlst_prf%RowType;
5 new_references igs_ps_usec_wlst_prf%RowType;
6
7 PROCEDURE Set_Column_Values (
8 p_action IN VARCHAR2,
9 x_rowid IN VARCHAR2 DEFAULT NULL,
10 x_unit_sec_waitlist_pref_id IN NUMBER DEFAULT NULL,
11 x_unit_sec_wlst_priority_id IN NUMBER DEFAULT NULL,
12 x_preference_order IN NUMBER DEFAULT NULL,
13 x_preference_code IN VARCHAR2 DEFAULT NULL,
14 x_preference_version IN VARCHAR2 DEFAULT NULL,
15 x_creation_date IN DATE DEFAULT NULL,
16 x_created_by IN NUMBER DEFAULT NULL,
17 x_last_update_date IN DATE DEFAULT NULL,
18 x_last_updated_by IN NUMBER DEFAULT NULL,
19 x_last_update_login IN NUMBER DEFAULT NULL
20 ) AS
21
22 /*************************************************************
23 Created By : shgeorge
24 Date Created By : 10-May-2000
25 Purpose :
26 Know limitations, enhancements or remarks
27 Change History
28 Who When What
29
30 (reverse chronological order - newest change first)
31 ***************************************************************/
32
33 CURSOR cur_old_ref_values IS
34 SELECT *
35 FROM IGS_PS_USEC_WLST_PRF
36 WHERE rowid = x_rowid;
37
38 BEGIN
39
40 l_rowid := x_rowid;
41
42 -- Code for setting the Old and New Reference Values.
43 -- Populate Old Values.
44 Open cur_old_ref_values;
45 Fetch cur_old_ref_values INTO old_references;
46 IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT','VALIDATE_INSERT')) THEN
47 Close cur_old_ref_values;
48 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
49 IGS_GE_MSG_STACK.ADD;
50 App_Exception.Raise_Exception;
51 Return;
52 END IF;
53 Close cur_old_ref_values;
54
55 -- Populate New Values.
56 new_references.unit_sec_waitlist_pref_id := x_unit_sec_waitlist_pref_id;
57 new_references.unit_sec_waitlist_priority_id := x_unit_sec_wlst_priority_id;
58 new_references.preference_order := x_preference_order;
59 new_references.preference_code := x_preference_code;
60 new_references.preference_version := x_preference_version;
61 IF (p_action = 'UPDATE') THEN
62 new_references.creation_date := old_references.creation_date;
63 new_references.created_by := old_references.created_by;
64 ELSE
65 new_references.creation_date := x_creation_date;
66 new_references.created_by := x_created_by;
67 END IF;
68 new_references.last_update_date := x_last_update_date;
69 new_references.last_updated_by := x_last_updated_by;
70 new_references.last_update_login := x_last_update_login;
71
72 END Set_Column_Values;
73
74 PROCEDURE Check_Constraints (
75 Column_Name IN VARCHAR2 DEFAULT NULL,
76 Column_Value IN VARCHAR2 DEFAULT NULL ) AS
77 /*************************************************************
78 Created By : shgeorge
79 Date Created By : 10-May-2000
80 Purpose :
81 Know limitations, enhancements or remarks
82 Change History
83 Who When What
84
85 (reverse chronological order - newest change first)
86 ***************************************************************/
87
88 BEGIN
89
90 IF column_name IS NULL THEN
91 NULL;
92 NULL;
93 END IF;
94
95
96
97
98 END Check_Constraints;
99
100 PROCEDURE Check_Uniqueness AS
101 /*************************************************************
102 Created By : shgeorge
103 Date Created By : 10-May-2000
104 Purpose :
105 Know limitations, enhancements or remarks
106 Change History
107 Who When What
108
109 (reverse chronological order - newest change first)
110 ***************************************************************/
111
112 begin
113 IF Get_Uk_For_Validation (
114 new_references.preference_code
115 ,new_references.preference_version
116 ,new_references.unit_sec_waitlist_priority_id
117 ) THEN
118 Fnd_Message.Set_Name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
119 IGS_GE_MSG_STACK.ADD;
120 app_exception.raise_exception;
121 END IF;
122 END Check_Uniqueness ;
123 PROCEDURE Check_Parent_Existance AS
124 /*************************************************************
125 Created By : shgeorge
126 Date Created By : 10-May-2000
127 Purpose :
128 Know limitations, enhancements or remarks
129 Change History
130 Who When What
131
132 (reverse chronological order - newest change first)
133 ***************************************************************/
134
135 BEGIN
136
137 IF (((old_references.unit_sec_waitlist_priority_id = new_references.unit_sec_waitlist_priority_id)) OR
138 ((new_references.unit_sec_waitlist_priority_id IS NULL))) THEN
139 NULL;
140 ELSIF NOT Igs_Ps_Usec_Wlst_Pri_Pkg.Get_PK_For_Validation (
141 new_references.unit_sec_waitlist_priority_id
142 ) THEN
143 Fnd_Message.Set_Name ('FND','FORM_RECORD_DELETED');
144 IGS_GE_MSG_STACK.ADD;
145 App_Exception.Raise_Exception;
146 END IF;
147
148 END Check_Parent_Existance;
149
150 FUNCTION Get_PK_For_Validation (
151 x_unit_sec_waitlist_pref_id IN NUMBER
152 ) RETURN BOOLEAN AS
153
154 /*************************************************************
155 Created By : shgeorge
156 Date Created By : 10-May-2000
157 Purpose :
158 Know limitations, enhancements or remarks
159 Change History
160 Who When What
161
162 (reverse chronological order - newest change first)
163 ***************************************************************/
164
165 CURSOR cur_rowid IS
166 SELECT rowid
167 FROM igs_ps_usec_wlst_prf
168 WHERE unit_sec_waitlist_pref_id = x_unit_sec_waitlist_pref_id
169 FOR UPDATE NOWAIT;
170
171 lv_rowid cur_rowid%RowType;
172
173 BEGIN
174
175 Open cur_rowid;
176 Fetch cur_rowid INTO lv_rowid;
177 IF (cur_rowid%FOUND) THEN
178 Close cur_rowid;
179 Return(TRUE);
180 ELSE
181 Close cur_rowid;
182 Return(FALSE);
183 END IF;
184 END Get_PK_For_Validation;
185
186 FUNCTION Get_UK_For_Validation (
187 x_preference_code IN VARCHAR2,
188 x_preference_version IN VARCHAR2,
189 x_unit_sec_wlst_priority_id IN NUMBER
190 ) RETURN BOOLEAN AS
191
192 /*************************************************************
193 Created By : shgeorge
194 Date Created By : 10-May-2000
195 Purpose :
196 Know limitations, enhancements or remarks
197 Change History
198 Who When What
199 sarakshi 17-Aug-2005 Bug#3823661, added NVL to preference_version
200 (reverse chronological order - newest change first)
201 ***************************************************************/
202
203 CURSOR cur_rowid IS
204 SELECT rowid
205 FROM igs_ps_usec_wlst_prf
206 WHERE preference_code = x_preference_code
207 AND NVL(preference_version,-9) = NVL(x_preference_version,-9)
208 AND unit_sec_waitlist_priority_id = x_unit_sec_wlst_priority_id and ((l_rowid is null) or (rowid <> l_rowid))
209
210 ;
211 lv_rowid cur_rowid%RowType;
212
213 BEGIN
214
215 Open cur_rowid;
216 Fetch cur_rowid INTO lv_rowid;
217 IF (cur_rowid%FOUND) THEN
218 Close cur_rowid;
219 return (true);
220 ELSE
221 close cur_rowid;
222 return(false);
223 END IF;
224 END Get_UK_For_Validation ;
225 PROCEDURE Get_FK_Igs_Ps_Usec_Wlst_Pri (
226 x_unit_sec_wlst_priority_id IN NUMBER
227 ) AS
228
229 /*************************************************************
230 Created By : shgeorge
231 Date Created By : 10-May-2000
232 Purpose :
233 Know limitations, enhancements or remarks
234 Change History
235 Who When What
236
237 (reverse chronological order - newest change first)
238 ***************************************************************/
239
240 CURSOR cur_rowid IS
241 SELECT rowid
242 FROM igs_ps_usec_wlst_prf
243 WHERE unit_sec_waitlist_priority_id = x_unit_sec_wlst_priority_id ;
244
245 lv_rowid cur_rowid%RowType;
246
247 BEGIN
248
249 Open cur_rowid;
250 Fetch cur_rowid INTO lv_rowid;
251 IF (cur_rowid%FOUND) THEN
252 Close cur_rowid;
253 Fnd_Message.Set_Name ('IGS', 'IGS_PS_UWPR_UWP_FK');
254 IGS_GE_MSG_STACK.ADD;
255 App_Exception.Raise_Exception;
256 Return;
257 END IF;
258 Close cur_rowid;
259
260 END Get_FK_Igs_Ps_Usec_Wlst_Pri;
261
262 PROCEDURE Before_DML (
263 p_action IN VARCHAR2,
264 x_rowid IN VARCHAR2 DEFAULT NULL,
265 x_unit_sec_waitlist_pref_id IN NUMBER DEFAULT NULL,
266 x_unit_sec_wlst_priority_id IN NUMBER DEFAULT NULL,
267 x_preference_order IN NUMBER DEFAULT NULL,
268 x_preference_code IN VARCHAR2 DEFAULT NULL,
269 x_preference_version IN VARCHAR2 DEFAULT NULL,
270 x_creation_date IN DATE DEFAULT NULL,
271 x_created_by IN NUMBER DEFAULT NULL,
272 x_last_update_date IN DATE DEFAULT NULL,
273 x_last_updated_by IN NUMBER DEFAULT NULL,
274 x_last_update_login IN NUMBER DEFAULT NULL
275 ) AS
276 /*************************************************************
277 Created By : shgeorge
278 Date Created By : 10-May-2000
279 Purpose :
280 Know limitations, enhancements or remarks
281 Change History
282 Who When What
283
284 (reverse chronological order - newest change first)
285 ***************************************************************/
286
287 BEGIN
288
289 Set_Column_Values (
290 p_action,
291 x_rowid,
292 x_unit_sec_waitlist_pref_id,
293 x_unit_sec_wlst_priority_id,
294 x_preference_order,
295 x_preference_code,
296 x_preference_version,
297 x_creation_date,
298 x_created_by,
299 x_last_update_date,
300 x_last_updated_by,
301 x_last_update_login
302 );
303
304 IF (p_action = 'INSERT') THEN
305 -- Call all the procedures related to Before Insert.
306 Null;
307 IF Get_Pk_For_Validation(
308 new_references.unit_sec_waitlist_pref_id) THEN
309 Fnd_Message.Set_name('IGS','IGS_GE_RECORD_ALREADY_EXISTS');
310 IGS_GE_MSG_STACK.ADD;
311 App_Exception.Raise_Exception;
312 END IF;
313 Check_Uniqueness;
314 Check_Constraints;
315 Check_Parent_Existance;
316 ELSIF (p_action = 'UPDATE') THEN
317 -- Call all the procedures related to Before Update.
318 Null;
319 Check_Uniqueness;
320 Check_Constraints;
321 Check_Parent_Existance;
322 ELSIF (p_action = 'DELETE') THEN
323 -- Call all the procedures related to Before Delete.
324 Null;
325 ELSIF (p_action = 'VALIDATE_INSERT') THEN
326 -- Call all the procedures related to Before Insert.
327 IF Get_PK_For_Validation (
328 new_references.unit_sec_waitlist_pref_id) THEN
329 Fnd_Message.Set_name('IGS','IGS_GE_RECORD_ALREADY_EXISTS');
330 IGS_GE_MSG_STACK.ADD;
331 App_Exception.Raise_Exception;
332 END IF;
333 Check_Uniqueness;
334 Check_Constraints;
335 ELSIF (p_action = 'VALIDATE_UPDATE') THEN
336 Check_Uniqueness;
337 Check_Constraints;
338 ELSIF (p_action = 'VALIDATE_DELETE') THEN
339 Null;
340 END IF;
341
342 END Before_DML;
343
344 PROCEDURE After_DML (
345 p_action IN VARCHAR2,
346 x_rowid IN VARCHAR2
347 ) IS
348 /*************************************************************
349 Created By : shgeorge
350 Date Created By : 10-May-2000
351 Purpose :
352 Know limitations, enhancements or remarks
353 Change History
354 Who When What
355
356 (reverse chronological order - newest change first)
357 ***************************************************************/
358
359 BEGIN
360
361 l_rowid := x_rowid;
362
363 IF (p_action = 'INSERT') THEN
364 -- Call all the procedures related to After Insert.
365 Null;
366 ELSIF (p_action = 'UPDATE') THEN
367 -- Call all the procedures related to After Update.
368 Null;
369 ELSIF (p_action = 'DELETE') THEN
370 -- Call all the procedures related to After Delete.
371 Null;
372 END IF;
373 l_rowid := null;
374 END After_DML;
375
376 procedure INSERT_ROW (
377 X_ROWID in out NOCOPY VARCHAR2,
378 x_UNIT_SEC_WAITLIST_PREF_ID IN OUT NOCOPY NUMBER,
379 x_UNIT_SEC_WLST_PRIORITY_ID IN NUMBER,
380 x_PREFERENCE_ORDER IN NUMBER,
381 x_PREFERENCE_CODE IN VARCHAR2,
382 x_PREFERENCE_VERSION IN VARCHAR2,
383 X_MODE in VARCHAR2 default 'R'
384 ) AS
385 /*************************************************************
386 Created By : shgeorge
387 Date Created By : 10-May-2000
388 Purpose :
389 Know limitations, enhancements or remarks
390 Change History
391 Who When What
392
393 (reverse chronological order - newest change first)
394 ***************************************************************/
395
396 cursor C is select ROWID from IGS_PS_USEC_WLST_PRF
397 where UNIT_SEC_WAITLIST_PREF_ID= X_UNIT_SEC_WAITLIST_PREF_ID
398 ;
399 X_LAST_UPDATE_DATE DATE ;
400 X_LAST_UPDATED_BY NUMBER ;
401 X_LAST_UPDATE_LOGIN NUMBER ;
402 begin
403 X_LAST_UPDATE_DATE := SYSDATE;
404 if(X_MODE = 'I') then
405 X_LAST_UPDATED_BY := 1;
406 X_LAST_UPDATE_LOGIN := 0;
407 elsif (X_MODE = 'R') then
408 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
409 if X_LAST_UPDATED_BY is NULL then
410 X_LAST_UPDATED_BY := -1;
411 end if;
412 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
413 if X_LAST_UPDATE_LOGIN is NULL then
414 X_LAST_UPDATE_LOGIN := -1;
415 end if;
416 else
417 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
418 IGS_GE_MSG_STACK.ADD;
419 app_exception.raise_exception;
420 end if;
421 SELECT
422 IGS_PS_USEC_WLST_PRF_S.NextVal
423 INTO
424 x_UNIT_SEC_WAITLIST_PREF_ID
425 FROM
426 dual;
427 Before_DML(
428 p_action=>'INSERT',
429 x_rowid=>X_ROWID,
430 x_unit_sec_waitlist_pref_id=>X_UNIT_SEC_WAITLIST_PREF_ID,
431 x_unit_sec_wlst_priority_id=>X_UNIT_SEC_WLST_PRIORITY_ID,
432 x_preference_order=>X_PREFERENCE_ORDER,
433 x_preference_code=>X_PREFERENCE_CODE,
434 x_preference_version=>X_PREFERENCE_VERSION,
435 x_creation_date=>X_LAST_UPDATE_DATE,
436 x_created_by=>X_LAST_UPDATED_BY,
437 x_last_update_date=>X_LAST_UPDATE_DATE,
438 x_last_updated_by=>X_LAST_UPDATED_BY,
439 x_last_update_login=>X_LAST_UPDATE_LOGIN);
440 insert into IGS_PS_USEC_WLST_PRF (
441 UNIT_SEC_WAITLIST_PREF_ID
442 ,UNIT_SEC_WAITLIST_PRIORITY_ID
443 ,PREFERENCE_ORDER
444 ,PREFERENCE_CODE
445 ,PREFERENCE_VERSION
446 ,CREATION_DATE
447 ,CREATED_BY
448 ,LAST_UPDATE_DATE
449 ,LAST_UPDATED_BY
450 ,LAST_UPDATE_LOGIN
451 ) values (
452 NEW_REFERENCES.UNIT_SEC_WAITLIST_PREF_ID
453 ,NEW_REFERENCES.UNIT_SEC_WAITLIST_PRIORITY_ID
454 ,NEW_REFERENCES.PREFERENCE_ORDER
455 ,NEW_REFERENCES.PREFERENCE_CODE
456 ,NEW_REFERENCES.PREFERENCE_VERSION
457 ,X_LAST_UPDATE_DATE
458 ,X_LAST_UPDATED_BY
459 ,X_LAST_UPDATE_DATE
460 ,X_LAST_UPDATED_BY
461 ,X_LAST_UPDATE_LOGIN
462 );
463 open c;
464 fetch c into X_ROWID;
465 if (c%notfound) then
466 close c;
467 raise no_data_found;
468 end if;
469 close c;
470 After_DML (
471 p_action => 'INSERT' ,
472 x_rowid => X_ROWID );
473 end INSERT_ROW;
474 procedure LOCK_ROW (
475 X_ROWID in VARCHAR2,
476 x_UNIT_SEC_WAITLIST_PREF_ID IN NUMBER,
477 x_UNIT_SEC_WLST_PRIORITY_ID IN NUMBER,
478 x_PREFERENCE_ORDER IN NUMBER,
479 x_PREFERENCE_CODE IN VARCHAR2,
480 x_PREFERENCE_VERSION IN VARCHAR2 ) AS
481 /*************************************************************
482 Created By : shgeorge
483 Date Created By : 10-May-2000
484 Purpose :
485 Know limitations, enhancements or remarks
486 Change History
487 Who When What
488
489 (reverse chronological order - newest change first)
490 ***************************************************************/
491
492 cursor c1 is select
493 UNIT_SEC_WAITLIST_PRIORITY_ID
494 , PREFERENCE_ORDER
495 , PREFERENCE_CODE
496 , PREFERENCE_VERSION
497 from IGS_PS_USEC_WLST_PRF
498 where ROWID = X_ROWID
499 for update nowait;
500 tlinfo c1%rowtype;
501 begin
502 open c1;
503 fetch c1 into tlinfo;
504 if (c1%notfound) then
505 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
506 IGS_GE_MSG_STACK.ADD;
507 close c1;
508 app_exception.raise_exception;
509 return;
510 end if;
511 close c1;
512 if ( ( tlinfo.UNIT_SEC_WAITLIST_PRIORITY_ID = X_UNIT_SEC_WLST_PRIORITY_ID)
513 AND (tlinfo.PREFERENCE_ORDER = X_PREFERENCE_ORDER)
514 AND (tlinfo.PREFERENCE_CODE = X_PREFERENCE_CODE)
515 AND ((tlinfo.PREFERENCE_VERSION = X_PREFERENCE_VERSION)
516 OR ((tlinfo.PREFERENCE_VERSION is null)
517 AND (X_PREFERENCE_VERSION is null)))
518 ) then
519 null;
520 else
521 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
522 IGS_GE_MSG_STACK.ADD;
523 app_exception.raise_exception;
524 end if;
525 return;
526 end LOCK_ROW;
527 Procedure UPDATE_ROW (
528 X_ROWID in VARCHAR2,
529 x_UNIT_SEC_WAITLIST_PREF_ID IN NUMBER,
530 x_UNIT_SEC_WLST_PRIORITY_ID IN NUMBER,
531 x_PREFERENCE_ORDER IN NUMBER,
532 x_PREFERENCE_CODE IN VARCHAR2,
533 x_PREFERENCE_VERSION IN VARCHAR2,
534 X_MODE in VARCHAR2 default 'R'
535 ) AS
536 /*************************************************************
537 Created By : shgeorge
538 Date Created By : 10-May-2000
539 Purpose :
540 Know limitations, enhancements or remarks
541 Change History
542 Who When What
543
544 (reverse chronological order - newest change first)
545 ***************************************************************/
546
547 X_LAST_UPDATE_DATE DATE ;
548 X_LAST_UPDATED_BY NUMBER ;
549 X_LAST_UPDATE_LOGIN NUMBER ;
550 begin
551 X_LAST_UPDATE_DATE := SYSDATE;
552 if(X_MODE = 'I') then
553 X_LAST_UPDATED_BY := 1;
554 X_LAST_UPDATE_LOGIN := 0;
555 elsif (X_MODE = 'R') then
556 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
557 if X_LAST_UPDATED_BY is NULL then
558 X_LAST_UPDATED_BY := -1;
559 end if;
560 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
561 if X_LAST_UPDATE_LOGIN is NULL then
562 X_LAST_UPDATE_LOGIN := -1;
563 end if;
564 else
565 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
566 IGS_GE_MSG_STACK.ADD;
567 app_exception.raise_exception;
568 end if;
569 Before_DML(
570 p_action=>'UPDATE',
571 x_rowid=>X_ROWID,
572 x_unit_sec_waitlist_pref_id=>X_UNIT_SEC_WAITLIST_PREF_ID,
573 x_unit_sec_wlst_priority_id=>x_unit_sec_wlst_priority_id,
574 x_preference_order=>X_PREFERENCE_ORDER,
575 x_preference_code=>X_PREFERENCE_CODE,
576 x_preference_version=>X_PREFERENCE_VERSION,
577 x_creation_date=>X_LAST_UPDATE_DATE,
578 x_created_by=>X_LAST_UPDATED_BY,
579 x_last_update_date=>X_LAST_UPDATE_DATE,
580 x_last_updated_by=>X_LAST_UPDATED_BY,
581 x_last_update_login=>X_LAST_UPDATE_LOGIN);
582 update IGS_PS_USEC_WLST_PRF set
583 UNIT_SEC_WAITLIST_PRIORITY_ID = NEW_REFERENCES.UNIT_SEC_WAITLIST_PRIORITY_ID,
584 PREFERENCE_ORDER = NEW_REFERENCES.PREFERENCE_ORDER,
585 PREFERENCE_CODE = NEW_REFERENCES.PREFERENCE_CODE,
586 PREFERENCE_VERSION = NEW_REFERENCES.PREFERENCE_VERSION,
587 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
588 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
589 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
590 where ROWID = X_ROWID;
591 if (sql%notfound) then
592 raise no_data_found;
593 end if;
594
595 After_DML (
596 p_action => 'UPDATE' ,
597 x_rowid => X_ROWID
598 );
599 end UPDATE_ROW;
600 procedure ADD_ROW (
601 X_ROWID in out NOCOPY VARCHAR2,
602 x_UNIT_SEC_WAITLIST_PREF_ID IN OUT NOCOPY NUMBER,
603 x_UNIT_SEC_WLST_PRIORITY_ID IN NUMBER,
604 x_PREFERENCE_ORDER IN NUMBER,
605 x_PREFERENCE_CODE IN VARCHAR2,
606 x_PREFERENCE_VERSION IN VARCHAR2,
607 X_MODE in VARCHAR2 default 'R'
608 ) AS
609 /*************************************************************
610 Created By : shgeorge
611 Date Created By : 10-May-2000
612 Purpose :
613 Know limitations, enhancements or remarks
614 Change History
615 Who When What
616
617 (reverse chronological order - newest change first)
618 ***************************************************************/
619
620 cursor c1 is select ROWID from IGS_PS_USEC_WLST_PRF
621 where UNIT_SEC_WAITLIST_PREF_ID= X_UNIT_SEC_WAITLIST_PREF_ID
622 ;
623 begin
624 open c1;
625 fetch c1 into X_ROWID;
626 if (c1%notfound) then
627 close c1;
628 INSERT_ROW (
629 X_ROWID,
630 X_UNIT_SEC_WAITLIST_PREF_ID,
631 X_UNIT_SEC_WLST_PRIORITY_ID,
632 X_PREFERENCE_ORDER,
633 X_PREFERENCE_CODE,
634 X_PREFERENCE_VERSION,
635 X_MODE );
636 return;
637 end if;
638 close c1;
639 UPDATE_ROW (
640 X_ROWID,
641 X_UNIT_SEC_WAITLIST_PREF_ID,
642 X_UNIT_SEC_WLST_PRIORITY_ID,
643 X_PREFERENCE_ORDER,
644 X_PREFERENCE_CODE,
645 X_PREFERENCE_VERSION,
646 X_MODE );
647 end ADD_ROW;
648 procedure DELETE_ROW (
649 X_ROWID in VARCHAR2
650 ) AS
651 /*************************************************************
652 Created By : shgeorge
653 Date Created By : 10-May-2000
654 Purpose :
655 Know limitations, enhancements or remarks
656 Change History
657 Who When What
658
659 (reverse chronological order - newest change first)
660 ***************************************************************/
661
662 begin
663 Before_DML (
664 p_action => 'DELETE',
665 x_rowid => X_ROWID
666 );
667 delete from IGS_PS_USEC_WLST_PRF
668 where ROWID = X_ROWID;
669 if (sql%notfound) then
670 raise no_data_found;
671 end if;
672 After_DML (
673 p_action => 'DELETE',
674 x_rowid => X_ROWID
675 );
676 end DELETE_ROW;
677 END igs_ps_usec_wlst_prf_pkg;