DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_EN_OR_UNIT_WLST_PKG

Source


1 PACKAGE BODY igs_en_or_unit_wlst_pkg AS
2 /* $Header: IGSEI33B.pls 115.10 2003/09/18 03:42:40 svanukur ship $ */
3   l_rowid VARCHAR2(25);
4   old_references igs_en_or_unit_wlst_all%RowType;
5   new_references igs_en_or_unit_wlst_all%RowType;
6 
7   PROCEDURE Set_Column_Values (
8     p_action IN VARCHAR2,
9     x_rowid IN VARCHAR2 DEFAULT NULL,
10     x_org_unit_wlst_id IN NUMBER DEFAULT NULL,
11     x_org_unit_cd IN VARCHAR2 DEFAULT NULL,
12     x_start_dt IN DATE DEFAULT NULL,
13     x_cal_type IN VARCHAR2 DEFAULT NULL,
14     x_max_stud_per_wlst IN NUMBER DEFAULT NULL,
15     x_smtanus_wlst_unit_enr_alwd IN VARCHAR2 DEFAULT NULL,
16     x_asses_chrg_for_wlst_stud IN VARCHAR2 DEFAULT NULL,
17     x_creation_date IN DATE DEFAULT NULL,
18     x_created_by IN NUMBER DEFAULT NULL,
19     x_last_update_date IN DATE DEFAULT NULL,
20     x_last_updated_by IN NUMBER DEFAULT NULL,
21     x_last_update_login IN NUMBER DEFAULT NULL ,
22     x_org_id IN NUMBER  DEFAULT NULL,
23     x_closed_flag IN VARCHAR2 DEFAULT 'N'
24   ) AS
25 
26   /*************************************************************
27   Created By : smanglm
28   Date Created on : 26-MAY-2000
29   Purpose : Creation of TBH
30   Know limitations, enhancements or remarks
31   Change History
32   Who             When            What
33 
34   (reverse chronological order - newest change first)
35   ***************************************************************/
36 
37     CURSOR cur_old_ref_values IS
38       SELECT   *
39       FROM     IGS_EN_OR_UNIT_WLST_ALL
40       WHERE    rowid = x_rowid;
41 
42   BEGIN
43 
44     l_rowid := x_rowid;
45 
46     -- Code for setting the Old and New Reference Values.
47     -- Populate Old Values.
48     Open cur_old_ref_values;
49     Fetch cur_old_ref_values INTO old_references;
50     IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT','VALIDATE_INSERT')) THEN
51       Close cur_old_ref_values;
52       Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
53       IGS_GE_MSG_STACK.ADD;
54       App_Exception.Raise_Exception;
55       Return;
56     END IF;
57     Close cur_old_ref_values;
58 
59     -- Populate New Values.
60     new_references.org_unit_wlst_id := x_org_unit_wlst_id;
61     new_references.org_unit_cd := x_org_unit_cd;
62     new_references.start_dt := x_start_dt;
63     new_references.cal_type := x_cal_type;
64     new_references.max_stud_per_wlst := x_max_stud_per_wlst;
65     new_references.smtanus_wlst_unit_enr_alwd := x_smtanus_wlst_unit_enr_alwd;
66     new_references.asses_chrg_for_wlst_stud := x_asses_chrg_for_wlst_stud;
67     new_references.closed_flag := x_closed_flag;
68     IF (p_action = 'UPDATE') THEN
69       new_references.creation_date := old_references.creation_date;
70       new_references.created_by := old_references.created_by;
71     ELSE
72       new_references.creation_date := x_creation_date;
73       new_references.created_by := x_created_by;
74     END IF;
75     new_references.last_update_date := x_last_update_date;
76     new_references.last_updated_by := x_last_updated_by;
77     new_references.last_update_login := x_last_update_login;
78     new_references.org_id := x_org_id ;
79   END Set_Column_Values;
80 
81   PROCEDURE Check_Constraints (
82 		 Column_Name IN VARCHAR2  DEFAULT NULL,
83 		 Column_Value IN VARCHAR2  DEFAULT NULL ) AS
84   /*************************************************************
85   Created By : smanglm
86   Date Created on : 26-MAY-2000
87   Purpose : Creation of TBH
88   Know limitations, enhancements or remarks
89   Change History
90   Who             When            What
91 
92   (reverse chronological order - newest change first)
93   ***************************************************************/
94 
95   BEGIN
96 
97       IF column_name IS NULL THEN
98         NULL;
99 
100       ELSIF  UPPER(column_name) = 'ASSES_CHRG_FOR_WLST_STUD'  THEN
101         new_references.asses_chrg_for_wlst_stud := column_value;
102       ELSIF  UPPER(column_name) = 'SMTANUS_WLST_UNIT_ENR_ALWD'  THEN
103         new_references.smtanus_wlst_unit_enr_alwd := column_value;
104         NULL;
105       END IF;
106 
107     -- The following code checks for check constraints on the Columns.
108       IF Upper(Column_Name) = 'ASSES_CHRG_FOR_WLST_STUD' OR
109       	Column_Name IS NULL THEN
110         IF NOT (new_references.asses_chrg_for_wlst_stud IN ('Y', 'N'))  THEN
111            Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
112       IGS_GE_MSG_STACK.ADD;
113            App_Exception.Raise_Exception;
114         END IF;
115       END IF;
116 
117     -- The following code checks for check constraints on the Columns.
118       IF Upper(Column_Name) = 'SMTANUS_WLST_UNIT_ENR_ALWD' OR
119       	Column_Name IS NULL THEN
120         IF NOT (new_references.smtanus_wlst_unit_enr_alwd IN ('Y', 'N'))  THEN
121            Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
122       IGS_GE_MSG_STACK.ADD;
123            App_Exception.Raise_Exception;
124         END IF;
125       END IF;
126 
127 
128   END Check_Constraints;
129 
130  PROCEDURE Check_Uniqueness AS
131   /*************************************************************
132   Created By : smanglm
133   Date Created on : 26-MAY-2000
134   Purpose : Creation of TBH
135   Know limitations, enhancements or remarks
136   Change History
137   Who             When            What
138 
139   (reverse chronological order - newest change first)
140   ***************************************************************/
141 
142    begin
143      		IF Get_Uk_For_Validation (
144     		new_references.cal_type
145     		,new_references.org_unit_cd
146     		,new_references.start_dt
147     		) THEN
148  		Fnd_Message.Set_Name ('IGS', 'IGS_GE_MULTI_ORG_DUP_REC');
149       IGS_GE_MSG_STACK.ADD;
150 			app_exception.raise_exception;
151     		END IF;
152  END Check_Uniqueness ;
153   PROCEDURE Check_Parent_Existance AS
154   /*************************************************************
155   Created By : smanglm
156   Date Created on : 26-MAY-2000
157   Purpose : Creation of TBH
158   Know limitations, enhancements or remarks
159   Change History
160   Who             When            What
161 
162   (reverse chronological order - newest change first)
163   ***************************************************************/
164 
165   BEGIN
166 
167     IF (((old_references.org_unit_cd = new_references.org_unit_cd) AND
168          (old_references.start_dt = new_references.start_dt)) OR
169         ((new_references.org_unit_cd IS NULL) OR
170          (new_references.start_dt IS NULL))) THEN
171       NULL;
172     ELSIF NOT Igs_Or_Unit_Pkg.Get_PK_For_Validation (
173         		new_references.org_unit_cd,
174          		 new_references.start_dt
175         )  THEN
176 	 Fnd_Message.Set_Name ('FND','FORM_RECORD_DELETED');
177       IGS_GE_MSG_STACK.ADD;
178  	 App_Exception.Raise_Exception;
179     END IF;
180 
181 
182    IF (old_references.cal_type = new_references.cal_type)  OR
183         (new_references.cal_type IS NULL)    THEN
184 
185       NULL;
186     ELSIF NOT Igs_Ca_Type_Pkg.Get_PK_For_Validation (
187         		new_references.cal_type
188         )  THEN
189 	 Fnd_Message.Set_Name ('FND','FORM_RECORD_DELETED');
190       IGS_GE_MSG_STACK.ADD;
191  	 App_Exception.Raise_Exception;
192     END IF;
193 
194   END Check_Parent_Existance;
195 
196   PROCEDURE Check_Child_Existance IS
197   /*************************************************************
198   Created By : smanglm
199   Date Created on : 26-MAY-2000
200   Purpose : Creation of TBH
201   Know limitations, enhancements or remarks
202   Change History
203   Who             When            What
204 
205   (reverse chronological order - newest change first)
206   ***************************************************************/
207 
208   BEGIN
209 
210     Igs_En_Orun_Wlst_Pri_Pkg.Get_FK_Igs_En_Or_Unit_Wlst (
211       old_references.org_unit_wlst_id
212       );
213 
214   END Check_Child_Existance;
215 
216   FUNCTION Get_PK_For_Validation (
217     x_org_unit_wlst_id IN NUMBER
218     ) RETURN BOOLEAN AS
219 
220   /*************************************************************
221   Created By : smanglm
222   Date Created on : 26-MAY-2000
223   Purpose : Creation of TBH
224   Know limitations, enhancements or remarks
225   Change History
226   Who             When            What
227 
228   (reverse chronological order - newest change first)
229   ***************************************************************/
230 
231     CURSOR cur_rowid IS
232       SELECT   rowid
233       FROM     igs_en_or_unit_wlst_all
234       WHERE    org_unit_wlst_id = x_org_unit_wlst_id
235       FOR UPDATE NOWAIT;
236 
237     lv_rowid cur_rowid%RowType;
238 
239   BEGIN
240 
241     Open cur_rowid;
242     Fetch cur_rowid INTO lv_rowid;
243     IF (cur_rowid%FOUND) THEN
244       Close cur_rowid;
245       Return(TRUE);
246     ELSE
247       Close cur_rowid;
248       Return(FALSE);
249     END IF;
250   END Get_PK_For_Validation;
251 
252   FUNCTION Get_UK_For_Validation (
253     x_cal_type IN VARCHAR2,
254     x_org_unit_cd IN VARCHAR2,
255     x_start_dt IN DATE
256     ) RETURN BOOLEAN AS
257 
258   /*************************************************************
259   Created By : smanglm
260   Date Created on : 26-MAY-2000
261   Purpose : Creation of TBH
262   Know limitations, enhancements or remarks
263   Change History
264   Who             When            What
265 
266   (reverse chronological order - newest change first)
267   ***************************************************************/
268 
269     CURSOR cur_rowid IS
270       SELECT   rowid
271       FROM     igs_en_or_unit_wlst_all
272       WHERE    cal_type = x_cal_type
273       AND      org_unit_cd = x_org_unit_cd
274       AND      start_dt = x_start_dt 	and      ((l_rowid is null) or (rowid <> l_rowid))
275 
276       ;
277     lv_rowid cur_rowid%RowType;
278 
279   BEGIN
280 
281     Open cur_rowid;
282     Fetch cur_rowid INTO lv_rowid;
283     IF (cur_rowid%FOUND) THEN
284       Close cur_rowid;
285         return (true);
286         ELSE
287        close cur_rowid;
288       return(false);
289     END IF;
290   END Get_UK_For_Validation ;
291   PROCEDURE Get_FK_Igs_Or_Unit (
292     x_org_unit_cd IN VARCHAR2,
293     x_start_dt IN DATE
294     ) AS
295 
296   /*************************************************************
297   Created By : smanglm
298   Date Created on : 26-MAY-2000
299   Purpose : Creation of TBH
300   Know limitations, enhancements or remarks
301   Change History
302   Who             When            What
303 
304   (reverse chronological order - newest change first)
305   ***************************************************************/
306 
307     CURSOR cur_rowid IS
308       SELECT   rowid
309       FROM     igs_en_or_unit_wlst_all
310       WHERE    org_unit_cd = x_org_unit_cd
311       AND      start_dt = x_start_dt ;
312 
313     lv_rowid cur_rowid%RowType;
314 
315   BEGIN
316 
317     Open cur_rowid;
318     Fetch cur_rowid INTO lv_rowid;
319     IF (cur_rowid%FOUND) THEN
320       Close cur_rowid;
321       Fnd_Message.Set_Name ('IGS', 'IGS_EN_OUW_OU_FK');
322       IGS_GE_MSG_STACK.ADD;
323       App_Exception.Raise_Exception;
324       Return;
325     END IF;
326     Close cur_rowid;
327 
328   END Get_FK_Igs_Or_Unit;
329 
330   PROCEDURE Get_FK_Igs_Ca_Inst (
331     x_cal_type IN VARCHAR2,
332     x_sequence_number IN NUMBER
333     ) AS
334 
335   /*************************************************************
336   Created By : smanglm
337   Date Created on : 26-MAY-2000
338   Purpose : Creation of TBH
339   Know limitations, enhancements or remarks
340   Change History
341   Who             When            What
342 
343   (reverse chronological order - newest change first)
344   svanukur       02-sep-2003   commenting since sequence_number is obsoleted
345                                as part of waitlist enhancement build 3052426
346                                and to avoid dependency on PSP build #3045007
347   ***************************************************************/
348 
349    /* CURSOR cur_rowid IS
350       SELECT   rowid
351       FROM     igs_en_or_unit_wlst_all
352       WHERE    cal_type = x_cal_type
353       AND      sequence_number = x_sequence_number ;
354 
355     lv_rowid cur_rowid%RowType;
356 
357   BEGIN
358 
359     Open cur_rowid;
360     Fetch cur_rowid INTO lv_rowid;
361     IF (cur_rowid%FOUND) THEN
362       Close cur_rowid;
363       Fnd_Message.Set_Name ('IGS', 'IGS_EN_OUW_OU_FK');
364       IGS_GE_MSG_STACK.ADD;
365       App_Exception.Raise_Exception;
366       Return;
367     END IF;
368     Close cur_rowid; */
369     BEGIN
370     NULL;
371 
372   END Get_FK_Igs_Ca_Inst;
373 
374   PROCEDURE Get_FK_Igs_Ca_Type (
375     x_cal_type IN VARCHAR2
376     ) AS
377 
378   /*************************************************************
379   Created By : smanglm
380   Date Created on : 26-MAY-2000
381   Purpose : Creation of TBH
382   Know limitations, enhancements or remarks
383   Change History
384   Who             When            What
385 
386   (reverse chronological order - newest change first)
387   svanukur       02-sep-2003   created as part of waitlist enhancement build 3052426
388   ***************************************************************/
389 
390     CURSOR cur_rowid IS
391       SELECT   rowid
392       FROM     igs_en_or_unit_wlst_all
393       WHERE    cal_type = x_cal_type ;
394 
395 
396     lv_rowid cur_rowid%RowType;
397 
398   BEGIN
399 
400     Open cur_rowid;
401     Fetch cur_rowid INTO lv_rowid;
402     IF (cur_rowid%FOUND) THEN
403       Close cur_rowid;
404       Fnd_Message.Set_Name ('IGS', 'IGS_EN_OUW_OU_FK');
405       IGS_GE_MSG_STACK.ADD;
406       App_Exception.Raise_Exception;
407       Return;
408     END IF;
409     Close cur_rowid;
410    END Get_FK_Igs_Ca_Type;
411 
412   PROCEDURE Before_DML (
413     p_action IN VARCHAR2,
414     x_rowid IN VARCHAR2 ,
415     x_org_unit_wlst_id IN NUMBER ,
416     x_org_unit_cd IN VARCHAR2 ,
417     x_start_dt IN DATE ,
418     x_cal_type IN VARCHAR2 ,
419     x_max_stud_per_wlst IN NUMBER ,
420     x_smtanus_wlst_unit_enr_alwd IN VARCHAR2 ,
421     x_asses_chrg_for_wlst_stud IN VARCHAR2 ,
422     x_creation_date IN DATE ,
423     x_created_by IN NUMBER ,
424     x_last_update_date IN DATE ,
425     x_last_updated_by IN NUMBER ,
426     x_last_update_login IN NUMBER ,
427     x_org_id IN NUMBER ,
428     x_closed_flag IN VARCHAR2
429   ) AS
430   /*************************************************************
431   Created By : smanglm
432   Date Created on : 26-MAY-2000
433   Purpose : Creation of TBH
434   Know limitations, enhancements or remarks
435   Change History
436   Who             When            What
437 
438   (reverse chronological order - newest change first)
439   ***************************************************************/
440 
441   BEGIN
442     Set_Column_Values (
443       p_action,
444       x_rowid,
445       x_org_unit_wlst_id,
446       x_org_unit_cd,
447       x_start_dt,
448       x_cal_type,
449       x_max_stud_per_wlst,
450       x_smtanus_wlst_unit_enr_alwd,
451       x_asses_chrg_for_wlst_stud,
452       x_creation_date,
453       x_created_by,
454       x_last_update_date,
455       x_last_updated_by,
456       x_last_update_login,
457       x_org_id,
458       x_closed_flag
459     );
460 
461     IF (p_action = 'INSERT') THEN
462       -- Call all the procedures related to Before Insert.
463       Null;
464 	     IF Get_Pk_For_Validation(
465     		new_references.org_unit_wlst_id)  THEN
466 	       Fnd_Message.Set_name('IGS','IGS_GE_MULTI_ORG_DUP_REC');
467       IGS_GE_MSG_STACK.ADD;
468 	       App_Exception.Raise_Exception;
469 	     END IF;
470       Check_Uniqueness;
471       Check_Constraints;
472       Check_Parent_Existance;
473     ELSIF (p_action = 'UPDATE') THEN
474       -- Call all the procedures related to Before Update.
475       Null;
476       Check_Uniqueness;
477       Check_Constraints;
478       Check_Parent_Existance;
479     ELSIF (p_action = 'DELETE') THEN
480       -- Call all the procedures related to Before Delete.
481       Null;
482       Check_Child_Existance;
483     ELSIF (p_action = 'VALIDATE_INSERT') THEN
484 	 -- Call all the procedures related to Before Insert.
485 
486       IF Get_PK_For_Validation (
487     		new_references.org_unit_wlst_id)  THEN
488 	       Fnd_Message.Set_name('IGS','IGS_GE_MULTI_ORG_DUP_REC');
489       IGS_GE_MSG_STACK.ADD;
490 	       App_Exception.Raise_Exception;
491 	     END IF;
492       Check_Uniqueness;
493       Check_Constraints;
494     ELSIF (p_action = 'VALIDATE_UPDATE') THEN
495       Check_Uniqueness;
496       Check_Constraints;
497     ELSIF (p_action = 'VALIDATE_DELETE') THEN
498       Check_Child_Existance;
499     END IF;
500 
501   END Before_DML;
502 
503   PROCEDURE After_DML (
504     p_action IN VARCHAR2,
505     x_rowid IN VARCHAR2
506   ) IS
507   /*************************************************************
508   Created By : smanglm
509   Date Created on : 26-MAY-2000
510   Purpose : Creation of TBH
511   Know limitations, enhancements or remarks
512   Change History
513   Who             When            What
514 
515   (reverse chronological order - newest change first)
516   ***************************************************************/
517 
518   BEGIN
519 
520     l_rowid := x_rowid;
521 
522     IF (p_action = 'INSERT') THEN
523       -- Call all the procedures related to After Insert.
524       Null;
525     ELSIF (p_action = 'UPDATE') THEN
526       -- Call all the procedures related to After Update.
527       Null;
528     ELSIF (p_action = 'DELETE') THEN
529       -- Call all the procedures related to After Delete.
530       Null;
531     END IF;
532 
533   END After_DML;
534 
535  procedure INSERT_ROW (
536       X_ROWID in out NOCOPY VARCHAR2,
537        x_ORG_UNIT_WLST_ID IN OUT NOCOPY NUMBER,
538        x_ORG_UNIT_CD IN VARCHAR2,
539        x_START_DT IN DATE,
540        x_CAL_TYPE IN VARCHAR2,
541        x_MAX_STUD_PER_WLST IN NUMBER,
542        x_SMTANUS_WLST_UNIT_ENR_ALWD IN VARCHAR2,
543        x_ASSES_CHRG_FOR_WLST_STUD IN VARCHAR2,
544       X_MODE in VARCHAR2  ,
545     x_org_id IN NUMBER ,
546     x_closed_flag in VARCHAR2
547   ) AS
548   /*************************************************************
549   Created By : smanglm
550   Date Created on : 26-MAY-2000
551   Purpose : Creation of TBH
552   Know limitations, enhancements or remarks
553   Change History
554   Who             When            What
555 
556   (reverse chronological order - newest change first)
557   ***************************************************************/
558 
559     cursor C is select ROWID from IGS_EN_OR_UNIT_WLST_ALL
560              where                 ORG_UNIT_WLST_ID= X_ORG_UNIT_WLST_ID
561 ;
562      X_LAST_UPDATE_DATE DATE ;
563      X_LAST_UPDATED_BY NUMBER ;
564      X_LAST_UPDATE_LOGIN NUMBER ;
565  begin
566      X_LAST_UPDATE_DATE := SYSDATE;
567       if(X_MODE = 'I') then
568         X_LAST_UPDATED_BY := 1;
569         X_LAST_UPDATE_LOGIN := 0;
570          elsif (X_MODE = 'R') then
571                X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
572             if X_LAST_UPDATED_BY is NULL then
573                 X_LAST_UPDATED_BY := -1;
574             end if;
575             X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
576          if X_LAST_UPDATE_LOGIN is NULL then
577             X_LAST_UPDATE_LOGIN := -1;
578           end if;
579        else
580         FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
581       IGS_GE_MSG_STACK.ADD;
582           app_exception.raise_exception;
583        end if;
584    SELECT IGS_EN_OR_UNIT_WLST_S.NEXTVAL
585    INTO x_org_unit_wlst_id
586    FROM dual;
587    Before_DML(
588  		p_action=>'INSERT',
589  		x_rowid=>X_ROWID,
590  	       x_org_unit_wlst_id=>X_ORG_UNIT_WLST_ID,
591  	       x_org_unit_cd=>X_ORG_UNIT_CD,
592  	       x_start_dt=>X_START_DT,
593  	       x_cal_type=>X_CAL_TYPE,
594  	       x_max_stud_per_wlst=>X_MAX_STUD_PER_WLST,
595  	       x_smtanus_wlst_unit_enr_alwd=>X_SMTANUS_WLST_UNIT_ENR_ALWD,
596  	       x_asses_chrg_for_wlst_stud=>X_ASSES_CHRG_FOR_WLST_STUD,
597 	       x_creation_date=>X_LAST_UPDATE_DATE,
598 	       x_created_by=>X_LAST_UPDATED_BY,
599 	       x_last_update_date=>X_LAST_UPDATE_DATE,
600 	       x_last_updated_by=>X_LAST_UPDATED_BY,
601 	       x_last_update_login=>X_LAST_UPDATE_LOGIN,
602                x_org_id => igs_ge_gen_003.get_org_id,
603                x_closed_flag => X_CLOSED_FLAG);
604      insert into IGS_EN_OR_UNIT_WLST_ALL (
605 		ORG_UNIT_WLST_ID
606 		,ORG_UNIT_CD
607 		,START_DT
608 		,CAL_TYPE
609 		,MAX_STUD_PER_WLST
610 		,SMTANUS_WLST_UNIT_ENR_ALWD
611 		,ASSES_CHRG_FOR_WLST_STUD
612 	        ,CREATION_DATE
613 		,CREATED_BY
614 		,LAST_UPDATE_DATE
615 		,LAST_UPDATED_BY
616 		,LAST_UPDATE_LOGIN,
617                  org_id,
618                  closed_flag
619         ) values  (
620 	        NEW_REFERENCES.ORG_UNIT_WLST_ID
621 	        ,NEW_REFERENCES.ORG_UNIT_CD
622 	        ,NEW_REFERENCES.START_DT
623 	        ,NEW_REFERENCES.CAL_TYPE
624 	        ,NEW_REFERENCES.MAX_STUD_PER_WLST
625 	        ,NEW_REFERENCES.SMTANUS_WLST_UNIT_ENR_ALWD
626 	        ,NEW_REFERENCES.ASSES_CHRG_FOR_WLST_STUD
627 	        ,X_LAST_UPDATE_DATE
628 		,X_LAST_UPDATED_BY
629 		,X_LAST_UPDATE_DATE
630 		,X_LAST_UPDATED_BY
631 		,X_LAST_UPDATE_LOGIN,
632                  NEW_REFERENCES.org_id ,
633                  NEW_REFERENCES.closed_flag
634 );
635 		open c;
636 		 fetch c into X_ROWID;
637  		if (c%notfound) then
638 		close c;
639  	     raise no_data_found;
640 		end if;
641  		close c;
642     After_DML (
643 		p_action => 'INSERT' ,
644 		x_rowid => X_ROWID );
645 end INSERT_ROW;
646  procedure LOCK_ROW (
647       X_ROWID in  VARCHAR2,
648        x_ORG_UNIT_WLST_ID IN NUMBER,
649        x_ORG_UNIT_CD IN VARCHAR2,
650        x_START_DT IN DATE,
651        x_CAL_TYPE IN VARCHAR2,
652        x_MAX_STUD_PER_WLST IN NUMBER,
653        x_SMTANUS_WLST_UNIT_ENR_ALWD IN VARCHAR2,
654        x_ASSES_CHRG_FOR_WLST_STUD IN VARCHAR2,
655        x_closed_flag IN VARCHAR2) AS
656   /*************************************************************
657   Created By : smanglm
658   Date Created on : 26-MAY-2000
659   Purpose : Creation of TBH
660   Know limitations, enhancements or remarks
661   Change History
662   Who             When            What
663 
664   (reverse chronological order - newest change first)
665   ***************************************************************/
666 
667    cursor c1 is select
668       ORG_UNIT_CD
669 ,      START_DT
670 ,      CAL_TYPE
671 ,      MAX_STUD_PER_WLST
672 ,      SMTANUS_WLST_UNIT_ENR_ALWD
673 ,      ASSES_CHRG_FOR_WLST_STUD
674 ,     CLOSED_FLAG
675     from IGS_EN_OR_UNIT_WLST_ALL
676     where ROWID = X_ROWID
677     for update nowait;
678      tlinfo c1%rowtype;
679 begin
680   open c1;
681   fetch c1 into tlinfo;
682   if (c1%notfound) then
683     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
684       IGS_GE_MSG_STACK.ADD;
685     close c1;
686     app_exception.raise_exception;
687     return;
688   end if;
689   close c1;
690 if ( (  tlinfo.ORG_UNIT_CD = X_ORG_UNIT_CD)
691   AND (tlinfo.START_DT = X_START_DT)
692   AND (tlinfo.CAL_TYPE = X_CAL_TYPE)
693   AND ((tlinfo.MAX_STUD_PER_WLST = X_MAX_STUD_PER_WLST)
694  	    OR ((tlinfo.MAX_STUD_PER_WLST is null)
695 		AND (X_MAX_STUD_PER_WLST is null)))
696   AND (tlinfo.SMTANUS_WLST_UNIT_ENR_ALWD = X_SMTANUS_WLST_UNIT_ENR_ALWD)
697   AND (tlinfo.ASSES_CHRG_FOR_WLST_STUD = X_ASSES_CHRG_FOR_WLST_STUD)
698   AND (tlinfo.CLOSED_FLAG = X_CLOSED_FLAG)
699   ) then
700     null;
701   else
702     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
703       IGS_GE_MSG_STACK.ADD;
704     app_exception.raise_exception;
705   end if;
706   return;
707 end LOCK_ROW;
708  Procedure UPDATE_ROW (
709       X_ROWID in  VARCHAR2,
710        x_ORG_UNIT_WLST_ID IN NUMBER,
711        x_ORG_UNIT_CD IN VARCHAR2,
712        x_START_DT IN DATE,
713        x_CAL_TYPE IN VARCHAR2,
714        x_MAX_STUD_PER_WLST IN NUMBER,
715        x_SMTANUS_WLST_UNIT_ENR_ALWD IN VARCHAR2,
716        x_ASSES_CHRG_FOR_WLST_STUD IN VARCHAR2,
717       X_MODE in VARCHAR2 default 'R',
718       x_closed_flag IN VARCHAR2
719   ) AS
720   /*************************************************************
721   Created By : smanglm
722   Date Created on : 26-MAY-2000
723   Purpose : Creation of TBH
724   Know limitations, enhancements or remarks
725   Change History
726   Who             When            What
727 
728   (reverse chronological order - newest change first)
729   ***************************************************************/
730 
731      X_LAST_UPDATE_DATE DATE ;
732      X_LAST_UPDATED_BY NUMBER ;
733      X_LAST_UPDATE_LOGIN NUMBER ;
734  begin
735      X_LAST_UPDATE_DATE := SYSDATE;
736       if(X_MODE = 'I') then
737         X_LAST_UPDATED_BY := 1;
738         X_LAST_UPDATE_LOGIN := 0;
739          elsif (X_MODE = 'R') then
740                X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
741             if X_LAST_UPDATED_BY is NULL then
742                 X_LAST_UPDATED_BY := -1;
743             end if;
744             X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
745          if X_LAST_UPDATE_LOGIN is NULL then
746             X_LAST_UPDATE_LOGIN := -1;
747           end if;
748        else
749         FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
750       IGS_GE_MSG_STACK.ADD;
751           app_exception.raise_exception;
752        end if;
753    Before_DML(
754  		p_action=>'UPDATE',
755  		x_rowid=>X_ROWID,
756  	       x_org_unit_wlst_id=>X_ORG_UNIT_WLST_ID,
757  	       x_org_unit_cd=>X_ORG_UNIT_CD,
758  	       x_start_dt=>X_START_DT,
759  	       x_cal_type=>X_CAL_TYPE,
760  	       x_max_stud_per_wlst=>X_MAX_STUD_PER_WLST,
761  	       x_smtanus_wlst_unit_enr_alwd=>X_SMTANUS_WLST_UNIT_ENR_ALWD,
762  	       x_asses_chrg_for_wlst_stud=>X_ASSES_CHRG_FOR_WLST_STUD,
763 	       x_creation_date=>X_LAST_UPDATE_DATE,
764 	       x_created_by=>X_LAST_UPDATED_BY,
765 	       x_last_update_date=>X_LAST_UPDATE_DATE,
766 	       x_last_updated_by=>X_LAST_UPDATED_BY,
767 	       x_last_update_login=>X_LAST_UPDATE_LOGIN,
768                x_closed_flag => X_CLOSED_FLAG);
769    update IGS_EN_OR_UNIT_WLST_ALL set
770       ORG_UNIT_CD =  NEW_REFERENCES.ORG_UNIT_CD,
771       START_DT =  NEW_REFERENCES.START_DT,
772       CAL_TYPE =  NEW_REFERENCES.CAL_TYPE,
773       MAX_STUD_PER_WLST =  NEW_REFERENCES.MAX_STUD_PER_WLST,
774       SMTANUS_WLST_UNIT_ENR_ALWD =  NEW_REFERENCES.SMTANUS_WLST_UNIT_ENR_ALWD,
775       ASSES_CHRG_FOR_WLST_STUD =  NEW_REFERENCES.ASSES_CHRG_FOR_WLST_STUD,
776 	LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
777 	LAST_UPDATED_BY = X_LAST_UPDATED_BY,
778 	LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
779         CLOSED_FLAG = NEW_REFERENCES.CLOSED_FLAG
780 	  where ROWID = X_ROWID;
781 	if (sql%notfound) then
782 		raise no_data_found;
783 	end if;
784 
785  After_DML (
786 	p_action => 'UPDATE' ,
787 	x_rowid => X_ROWID
788 	);
789 end UPDATE_ROW;
790  procedure ADD_ROW (
791       X_ROWID in out NOCOPY VARCHAR2,
792        x_ORG_UNIT_WLST_ID IN OUT NOCOPY NUMBER,
793        x_ORG_UNIT_CD IN VARCHAR2,
794        x_START_DT IN DATE,
795        x_CAL_TYPE IN VARCHAR2,
796        x_MAX_STUD_PER_WLST IN NUMBER,
797        x_SMTANUS_WLST_UNIT_ENR_ALWD IN VARCHAR2,
798        x_ASSES_CHRG_FOR_WLST_STUD IN VARCHAR2,
799       X_MODE in VARCHAR2 ,
800     x_org_id IN NUMBER ,
801     x_closed_flag IN VARCHAR2
802   ) AS
803   /*************************************************************
804   Created By : smanglm
805   Date Created on : 26-MAY-2000
806   Purpose : Creation of TBH
807   Know limitations, enhancements or remarks
808   Change History
809   Who             When            What
810 
811   (reverse chronological order - newest change first)
812   ***************************************************************/
813 
814     cursor c1 is select ROWID from IGS_EN_OR_UNIT_WLST_ALL
815              where     ORG_UNIT_WLST_ID= X_ORG_UNIT_WLST_ID
816 ;
817 begin
818 	open c1;
819 		fetch c1 into X_ROWID;
820 	if (c1%notfound) then
821 	close c1;
822     INSERT_ROW (
823       X_ROWID,
824        X_ORG_UNIT_WLST_ID,
825        X_ORG_UNIT_CD,
826        X_START_DT,
827        X_CAL_TYPE,
828        X_MAX_STUD_PER_WLST,
829        X_SMTANUS_WLST_UNIT_ENR_ALWD,
830        X_ASSES_CHRG_FOR_WLST_STUD,
831       X_MODE ,
832     x_org_id,
833     X_CLOSED_FLAG);
834      return;
835 	end if;
836 	   close c1;
837 UPDATE_ROW (
838       X_ROWID,
839        X_ORG_UNIT_WLST_ID,
840        X_ORG_UNIT_CD,
841        X_START_DT,
842        X_CAL_TYPE,
843        X_MAX_STUD_PER_WLST,
844        X_SMTANUS_WLST_UNIT_ENR_ALWD,
845        X_ASSES_CHRG_FOR_WLST_STUD,
846       X_MODE,
847       X_CLOSED_FLAG);
848 end ADD_ROW;
849 procedure DELETE_ROW (
850   X_ROWID in VARCHAR2
851 ) AS
852   /*************************************************************
853   Created By : smanglm
854   Date Created on : 26-MAY-2000
855   Purpose : Creation of TBH
856   Know limitations, enhancements or remarks
857   Change History
858   Who             When            What
859 
860   (reverse chronological order - newest change first)
861   ***************************************************************/
862 
863 begin
864 Before_DML (
865 p_action => 'DELETE',
866 x_rowid => X_ROWID
867 );
868  delete from IGS_EN_OR_UNIT_WLST_ALL
869  where ROWID = X_ROWID;
870   if (sql%notfound) then
871     raise no_data_found;
872   end if;
873 After_DML (
874  p_action => 'DELETE',
875  x_rowid => X_ROWID
876 );
877 end DELETE_ROW;
878 END igs_en_or_unit_wlst_pkg;