DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGS_AS_SC_ATTEMPT_H_PKG

Source


1 PACKAGE BODY IGS_AS_SC_ATTEMPT_H_PKG AS
2 /* $Header: IGSDI19B.pls 115.13 2003/12/04 13:07:26 rvangala ship $ */
3 
4 l_rowid VARCHAR2(25);
5   old_references IGS_AS_SC_ATTEMPT_H_ALL%ROWTYPE;
6   new_references IGS_AS_SC_ATTEMPT_H_ALL%ROWTYPE;
7   PROCEDURE Set_Column_Values (
8     p_action IN VARCHAR2,
9     x_rowid IN VARCHAR2 DEFAULT NULL,
10     x_org_id IN NUMBER DEFAULT NULL,
11     x_progression_status IN VARCHAR2 DEFAULT NULL,
12     x_derived_att_type IN VARCHAR2 DEFAULT NULL,
13     x_derived_att_mode IN VARCHAR2 DEFAULT NULL,
14     x_provisional_ind IN VARCHAR2 DEFAULT NULL,
15     x_discontinued_dt IN DATE DEFAULT NULL,
16     x_discontinuation_reason_cd IN VARCHAR2 DEFAULT NULL,
17     x_lapsed_dt IN DATE DEFAULT NULL,
18     x_funding_source IN VARCHAR2 DEFAULT NULL,
19     x_fs_description IN VARCHAR2 DEFAULT NULL,
20     x_exam_location_cd IN VARCHAR2 DEFAULT NULL,
21     x_elo_description IN VARCHAR2 DEFAULT NULL,
22     x_derived_completion_yr IN NUMBER DEFAULT NULL,
23     x_derived_completion_perd IN VARCHAR2 DEFAULT NULL,
24     x_nominated_completion_yr IN NUMBER DEFAULT NULL,
25     x_nominated_completion_perd IN VARCHAR2 DEFAULT NULL,
26     x_rule_check_ind IN VARCHAR2 DEFAULT NULL,
27     x_waive_option_check_ind IN VARCHAR2 DEFAULT NULL,
28     x_last_rule_check_dt IN DATE DEFAULT NULL,
29     x_publish_outcomes_ind IN VARCHAR2 DEFAULT NULL,
30     x_course_rqrmnt_complete_ind IN VARCHAR2 DEFAULT NULL,
31     x_course_rqrmnts_complete_dt IN DATE DEFAULT NULL,
32     x_s_completed_source_type IN VARCHAR2 DEFAULT NULL,
33     x_override_time_limitation IN NUMBER DEFAULT NULL,
34     x_advanced_standing_ind IN VARCHAR2 DEFAULT NULL,
35     x_fee_cat IN VARCHAR2 DEFAULT NULL,
36     x_fc_description IN VARCHAR2 DEFAULT NULL,
37     x_correspondence_cat IN VARCHAR2 DEFAULT NULL,
38     x_cc_description IN VARCHAR2 DEFAULT NULL,
39     x_self_help_group_ind IN VARCHAR2 DEFAULT NULL,
40     x_adm_admission_appl_number IN NUMBER DEFAULT NULL,
41     x_adm_nominated_course_cd IN VARCHAR2 DEFAULT NULL,
42     x_adm_sequence_number IN NUMBER DEFAULT NULL,
43     x_person_id IN NUMBER DEFAULT NULL,
44     x_course_cd IN VARCHAR2 DEFAULT NULL,
45     x_hist_start_dt IN DATE DEFAULT NULL,
46     x_hist_end_dt IN DATE DEFAULT NULL,
47     x_hist_who IN NUMBER DEFAULT NULL,
48     x_version_number IN NUMBER DEFAULT NULL,
49     x_cal_type IN VARCHAR2 DEFAULT NULL,
50     x_location_cd IN VARCHAR2 DEFAULT NULL,
51     x_attendance_mode IN VARCHAR2 DEFAULT NULL,
52     x_attendance_type IN VARCHAR2 DEFAULT NULL,
53     x_student_confirmed_ind IN VARCHAR2 DEFAULT NULL,
54     x_commencement_dt IN DATE DEFAULT NULL,
55     x_course_attempt_status IN VARCHAR2 DEFAULT NULL,
56     x_creation_date IN DATE DEFAULT NULL,
57     x_created_by IN NUMBER DEFAULT NULL,
58     x_last_update_date IN DATE DEFAULT NULL,
59     x_last_updated_by IN NUMBER DEFAULT NULL,
60     x_last_update_login IN NUMBER DEFAULT NULL,
61     x_last_date_of_attendance IN DATE DEFAULT NULL,
62     x_dropped_by  IN VARCHAR2 DEFAULT NULL,
63     x_primary_program_type IN VARCHAR2 DEFAULT NULL,
64     x_primary_prog_type_source IN VARCHAR2 DEFAULT NULL,
65     x_catalog_cal_type IN VARCHAR2 DEFAULT NULL,
66     x_catalog_seq_num IN NUMBER DEFAULT NULL,
67     x_key_program IN VARCHAR2 DEFAULT 'N',
68     x_override_cmpl_dt  IN DATE DEFAULT NULL,
69     x_manual_ovr_cmpl_dt_ind  IN VARCHAR2 DEFAULT 'N',
70     x_coo_id   IN NUMBER DEFAULT NULL,
71     x_igs_pr_class_std_id IN NUMBER DEFAULT NULL
72   ) AS
73     CURSOR cur_old_ref_values IS
74       SELECT   *
75       FROM     IGS_AS_SC_ATTEMPT_H_ALL
76       WHERE    ROWID = x_rowid;
77   BEGIN
78     l_rowid := x_rowid;
79     -- Code for setting the Old and New Reference Values.
80     -- Populate Old Values.
81     OPEN cur_old_ref_values;
82     FETCH cur_old_ref_values INTO old_references;
83     IF (cur_old_ref_values%NOTFOUND) AND (p_action  NOT IN ('INSERT','VALIDATE_INSERT')) THEN
84       Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
85       IGS_GE_MSG_STACK.ADD;
86       CLOSE cur_old_ref_values;
87       APP_EXCEPTION.RAISE_EXCEPTION;
88 
89       RETURN;
90     END IF;
91     CLOSE cur_old_ref_values;
92     -- Populate New Values.
93     new_references.org_id := x_org_id;
94     new_references.progression_status := x_progression_status;
95     new_references.derived_att_type := x_derived_att_type;
96     new_references.derived_att_mode := x_derived_att_mode;
97     new_references.provisional_ind := x_provisional_ind;
98     new_references.discontinued_dt := x_discontinued_dt;
99     new_references.discontinuation_reason_cd:= x_discontinuation_reason_cd;
100     new_references.lapsed_dt := x_lapsed_dt;
101     new_references.funding_source:= x_funding_source;
102     new_references.fs_description := x_fs_description;
103     new_references.exam_location_cd := x_exam_location_cd;
104     new_references.elo_description := x_elo_description;
105     new_references.derived_completion_yr := x_derived_completion_yr;
106     new_references.derived_completion_perd := x_derived_completion_perd;
107     new_references.nominated_completion_yr := x_nominated_completion_yr;
108     new_references.nominated_completion_perd := x_nominated_completion_perd;
109     new_references.rule_check_ind := x_rule_check_ind;
110     new_references.waive_option_check_ind := x_waive_option_check_ind;
111     new_references.last_rule_check_dt := x_last_rule_check_dt;
112     new_references.publish_outcomes_ind := x_publish_outcomes_ind;
113     new_references.course_rqrmnt_complete_ind := x_course_rqrmnt_complete_ind;
114     new_references.course_rqrmnts_complete_dt := x_course_rqrmnts_complete_dt;
115     new_references.s_completed_source_type := x_s_completed_source_type;
116     new_references.override_time_limitation := x_override_time_limitation;
117     new_references.advanced_standing_ind := x_advanced_standing_ind;
118     new_references.fee_cat:= x_fee_cat;
119     new_references.fc_description := x_fc_description;
120     new_references.correspondence_cat:= x_correspondence_cat;
121     new_references.cc_description := x_cc_description;
122     new_references.self_help_group_ind := x_self_help_group_ind;
123     new_references.adm_admission_appl_number := x_adm_admission_appl_number;
124     new_references.adm_nominated_course_cd := x_adm_nominated_course_cd;
125     new_references.adm_sequence_number := x_adm_sequence_number;
126     new_references.person_id := x_person_id;
127     new_references.course_cd := x_course_cd;
128     new_references.hist_start_dt := x_hist_start_dt;
129     new_references.hist_end_dt := x_hist_end_dt;
130     new_references.hist_who := x_hist_who;
131     new_references.version_number := x_version_number;
132     new_references.cal_type:= x_cal_type;
133     new_references.location_cd := x_location_cd;
134     new_references.attendance_mode:= x_attendance_mode;
135     new_references.attendance_type:= x_attendance_type;
136     new_references.student_confirmed_ind := x_student_confirmed_ind;
137     new_references.commencement_dt := x_commencement_dt;
138     new_references.course_attempt_status := x_course_attempt_status;
139     IF (p_action = 'UPDATE') THEN
140       new_references.creation_date := old_references.creation_date;
141       new_references.created_by := old_references.created_by;
142     ELSE
143       new_references.creation_date := x_creation_date;
144       new_references.created_by := x_created_by;
145     END IF;
146     new_references.last_update_date := x_last_update_date;
147     new_references.last_updated_by := x_last_updated_by;
148     new_references.last_update_login := x_last_update_login;
149     new_references.last_date_of_attendance:=x_last_date_of_attendance;
150     new_references.dropped_by:=x_dropped_by;
151     new_references.primary_program_type:=x_primary_program_type;
152     new_references.primary_prog_type_source:=x_primary_prog_type_source;
153     new_references.catalog_cal_type:=x_catalog_cal_type;
154     new_references.catalog_seq_num:=x_catalog_seq_num;
155     new_references.key_program:=x_key_program;
156     new_references.override_cmpl_dt  := x_override_cmpl_dt;
157     new_references.manual_ovr_cmpl_dt_ind  := x_manual_ovr_cmpl_dt_ind;
158     new_references.coo_id  := x_coo_id;
159     new_references.igs_pr_class_std_id := x_igs_pr_class_std_id;
160 
161   END Set_Column_Values;
162 
163  PROCEDURE Check_Constraints (
164  	Column_Name	IN	VARCHAR2	DEFAULT NULL,
165  	Column_Value 	IN	VARCHAR2	DEFAULT NULL
166  ) AS
167  /*----------------------------------------------------------------------------
168   ||  Created By :
169   ||  Created On :
170   ||  Purpose :
171   ||  Known limitations, enhancements or remarks :
172   ||  Change History :
173   ||  Who             When            What
174   ||  (reverse chronological order - newest change first)
175   ||  vvutukur        19-May-2002   removed upper check constraint on fee_cat column.bug#2344826.
176   ----------------------------------------------------------------------------*/
177 
178   BEGIN
179 
180     -- The following code checks for check constraints on the Columns.
181 
182     IF column_name IS NULL THEN
183         NULL;
184     ELSIF  UPPER(column_name) = 'NOMINATED_COMPLETION_PERD' THEN
185         new_references.nominated_completion_perd := column_value;
186     ELSIF  UPPER(column_name) = 'LOCATION_CD' THEN
187         new_references.location_cd := column_value;
188     ELSIF  UPPER(column_name) = 'FUNDING_SOURCE' THEN
189         new_references.funding_source := column_value;
190     ELSIF  UPPER(column_name) = 'EXAM_LOCATION_CD' THEN
191         new_references.exam_location_cd := column_value;
192     ELSIF  UPPER(column_name) = 'DISCONTINUATION_REASON_CD' THEN
193         new_references.DISCONTINUATION_REASON_CD := column_value;
194     ELSIF  UPPER(column_name) = 'DERIVED_COMPLETION_PERD' THEN
195         new_references.derived_completion_perd := column_value;
196     ELSIF  UPPER(column_name) = 'DERIVED_ATT_TYPE' THEN
197         new_references.derived_att_type := column_value;
198     ELSIF  UPPER(column_name) = 'DERIVED_ATT_MODE' THEN
199         new_references.derived_att_mode := column_value;
200     ELSIF  UPPER(column_name) = 'COURSE_RQRMNT_COMPLETE_IND' THEN
201         new_references.course_rqrmnt_complete_ind := column_value;
202     ELSIF  UPPER(column_name) = 'COURSE_CD' THEN
203         new_references.course_cd := column_value;
204     ELSIF  UPPER(column_name) = 'COURSE_ATTEMPT_STATUS' THEN
205         new_references.course_attempt_status := column_value;
206     ELSIF  UPPER(column_name) = 'CORRESPONDENCE_CAT' THEN
207         new_references.correspondence_cat := column_value;
208     ELSIF  UPPER(column_name) = 'CAL_TYPE' THEN
209         new_references.cal_type := column_value;
210     ELSIF  UPPER(column_name) = 'ATTENDANCE_TYPE' THEN
211         new_references.attendance_type := column_value;
212     ELSIF  UPPER(column_name) = 'ATTENDANCE_MODE' THEN
213         new_references.attendance_mode := column_value;
214     ELSIF  UPPER(column_name) = 'ADM_NOMINATED_COURSE_CD' THEN
215         new_references.adm_nominated_course_cd := column_value;
216     ELSIF  UPPER(column_name) = 'PROVISIONAL_IND ' THEN
217         new_references.provisional_ind  := column_value;
218     ELSIF  UPPER(column_name) = 'WAIVE_OPTION_CHECK_IND' THEN
219         new_references.waive_option_check_ind := column_value;
220     ELSIF  UPPER(column_name) = 'SELF_HELP_GROUP_IND ' THEN
221         new_references.self_help_group_ind  := column_value;
222     ELSIF  UPPER(column_name) = 'ADM_SEQUENCE_NUMBER' THEN
223         new_references.adm_sequence_number := igs_ge_number.to_num(column_value);
224     ELSIF  UPPER(column_name) = 'COURSE_RQRMNT_COMPLETE_IND' THEN
225         new_references.course_rqrmnt_complete_ind := column_value;
226     ELSIF  UPPER(column_name) = 'ADVANCED_STANDING_IND ' THEN
227         new_references.advanced_standing_ind  := column_value;
228     ELSIF  UPPER(column_name) = 'PUBLISH_OUTCOMES_IND' THEN
229         new_references.publish_outcomes_ind := column_value;
230     ELSIF  UPPER(column_name) = 'RULE_CHECK_IND ' THEN
231         new_references.rule_check_ind  := column_value;
232     ELSIF  UPPER(column_name) = 'STUDENT_CONFIRMED_IND' THEN
233         new_references.student_confirmed_ind := column_value;
234     ELSIF  UPPER(column_name) = 'MANUAL_OVR_CMPL_DT_IND' THEN
235         new_references.manual_ovr_cmpl_dt_ind := column_value;
236     ELSIF  UPPER(column_name) = 'COO_ID' THEN
237         new_references.coo_id := column_value;
238     ELSIF  UPPER(column_name) = 'IGS_PR_CLASS_STD_ID' THEN
239         new_references.igs_pr_class_std_id := column_value;
240     END IF;
241     IF ((UPPER (column_name) = 'STUDENT_CONFIRMED_IND') OR (column_name IS NULL)) THEN
242       IF new_references.student_confirmed_ind NOT IN ( 'Y' , 'N' ) THEN
243         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
244 	IGS_GE_MSG_STACK.ADD;
245         APP_EXCEPTION.RAISE_EXCEPTION;
246       END IF;
247     END IF;
248 
249     IF ((UPPER (column_name) = 'RULE_CHECK_IND ') OR (column_name IS NULL)) THEN
250       IF new_references.rule_check_ind NOT IN ( 'Y' , 'N' )  THEN
251         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
252 	IGS_GE_MSG_STACK.ADD;
253         APP_EXCEPTION.RAISE_EXCEPTION;
254       END IF;
255     END IF;
256 
257     IF ((UPPER (column_name) = 'PUBLISH_OUTCOMES_IND') OR (column_name IS NULL)) THEN
258       IF new_references.publish_outcomes_ind NOT IN ( 'Y' , 'N' )  THEN
259         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
260 	IGS_GE_MSG_STACK.ADD;
261         APP_EXCEPTION.RAISE_EXCEPTION;
262       END IF;
263     END IF;
264 
265     IF ((UPPER (column_name) = 'ADVANCED_STANDING_IND ') OR (column_name IS NULL)) THEN
266       IF new_references.advanced_standing_ind  NOT IN ( 'Y' , 'N' )  THEN
267         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
268 	IGS_GE_MSG_STACK.ADD;
269         APP_EXCEPTION.RAISE_EXCEPTION;
270       END IF;
271     END IF;
272 
273     IF ((UPPER (column_name) = 'COURSE_RQRMNT_COMPLETE_IND') OR (column_name IS NULL)) THEN
274       IF new_references.course_rqrmnt_complete_ind   NOT IN ( 'Y' , 'N' )   THEN
275         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
276 	IGS_GE_MSG_STACK.ADD;
277         APP_EXCEPTION.RAISE_EXCEPTION;
278       END IF;
279     END IF;
280 
281     IF ((UPPER (column_name) = 'ADM_SEQUENCE_NUMBER') OR (column_name IS NULL)) THEN
282       IF new_references.adm_sequence_number < 1 OR
283          new_references.adm_sequence_number > 999999 THEN
284         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
285 	IGS_GE_MSG_STACK.ADD;
286         APP_EXCEPTION.RAISE_EXCEPTION;
287       END IF;
288     END IF;
289 
290     IF ((UPPER (column_name) = 'SELF_HELP_GROUP_IND ') OR (column_name IS NULL)) THEN
291       IF new_references.self_help_group_ind  NOT IN  ( 'Y' , 'N' ) THEN
292         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
293 	IGS_GE_MSG_STACK.ADD;
294         APP_EXCEPTION.RAISE_EXCEPTION;
295       END IF;
296     END IF;
297 
298     IF ((UPPER (column_name) = 'WAIVE_OPTION_CHECK_IND') OR (column_name IS NULL)) THEN
299       IF new_references.waive_option_check_ind  NOT IN  ( 'Y' , 'N' )  THEN
300         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
301 	IGS_GE_MSG_STACK.ADD;
302         APP_EXCEPTION.RAISE_EXCEPTION;
303       END IF;
304     END IF;
305 
306     IF ((UPPER (column_name) = 'PROVISIONAL_IND ') OR (column_name IS NULL)) THEN
307       IF new_references.provisional_ind   NOT IN  ( 'Y' , 'N' )  THEN
308         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
309 	IGS_GE_MSG_STACK.ADD;
310         APP_EXCEPTION.RAISE_EXCEPTION;
311       END IF;
312     END IF;
313 
314     IF ((UPPER (column_name) = 'ADM_NOMINATED_COURSE_CD') OR (column_name IS NULL)) THEN
315       IF (new_references.adm_nominated_course_cd <> UPPER (new_references.adm_nominated_course_cd)) THEN
316         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
317 	IGS_GE_MSG_STACK.ADD;
318         APP_EXCEPTION.RAISE_EXCEPTION;
319       END IF;
320     END IF;
321 
322     IF ((UPPER (column_name) = 'ATTENDANCE_MODE') OR (column_name IS NULL)) THEN
326         APP_EXCEPTION.RAISE_EXCEPTION;
323       IF (new_references.attendance_mode <> UPPER (new_references.attendance_mode)) THEN
324         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
325 	IGS_GE_MSG_STACK.ADD;
327       END IF;
328     END IF;
329 
330     IF ((UPPER (column_name) = 'ATTENDANCE_TYPE') OR (column_name IS NULL)) THEN
331       IF (new_references.attendance_type <> UPPER (new_references.attendance_type)) THEN
332         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
333 	IGS_GE_MSG_STACK.ADD;
334         APP_EXCEPTION.RAISE_EXCEPTION;
335       END IF;
336     END IF;
337 
338     IF ((UPPER (column_name) = 'CAL_TYPE') OR (column_name IS NULL)) THEN
339       IF (new_references.cal_type <> UPPER (new_references.cal_type)) THEN
340         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
341 	IGS_GE_MSG_STACK.ADD;
342         APP_EXCEPTION.RAISE_EXCEPTION;
343       END IF;
344     END IF;
345 
346     IF ((UPPER (column_name) = 'CORRESPONDENCE_CAT') OR (column_name IS NULL)) THEN
347       IF (new_references.correspondence_cat <> UPPER (new_references.correspondence_cat)) THEN
348         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
349 	IGS_GE_MSG_STACK.ADD;
350         APP_EXCEPTION.RAISE_EXCEPTION;
351       END IF;
352     END IF;
353 
354     IF ((UPPER (column_name) = 'COURSE_ATTEMPT_STATUS') OR (column_name IS NULL)) THEN
355       IF (new_references.course_attempt_status <> UPPER (new_references.course_attempt_status)) THEN
356         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
357 	IGS_GE_MSG_STACK.ADD;
358         APP_EXCEPTION.RAISE_EXCEPTION;
359       END IF;
360     END IF;
361 
362     IF ((UPPER (column_name) = 'COURSE_CD') OR (column_name IS NULL)) THEN
363       IF (new_references.course_cd <> UPPER (new_references.course_cd)) THEN
364         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
365 	IGS_GE_MSG_STACK.ADD;
366         APP_EXCEPTION.RAISE_EXCEPTION;
367       END IF;
368     END IF;
369 
370     IF ((UPPER (column_name) = 'COURSE_RQRMNT_COMPLETE_IND') OR (column_name IS NULL)) THEN
371       IF (new_references.course_rqrmnt_complete_ind <> UPPER (new_references.course_rqrmnt_complete_ind)) THEN
372         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
373 	IGS_GE_MSG_STACK.ADD;
374         APP_EXCEPTION.RAISE_EXCEPTION;
375       END IF;
376     END IF;
377 
378     IF ((UPPER (column_name) = 'DERIVED_ATT_MODE') OR (column_name IS NULL)) THEN
379       IF (new_references.derived_att_mode <> UPPER (new_references.derived_att_mode)) THEN
380         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
381 	IGS_GE_MSG_STACK.ADD;
382         APP_EXCEPTION.RAISE_EXCEPTION;
383       END IF;
384     END IF;
385 
386     IF ((UPPER (column_name) = 'DERIVED_ATT_TYPE') OR (column_name IS NULL)) THEN
387       IF (new_references.derived_att_type <> UPPER (new_references.derived_att_type)) THEN
388         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
389 	IGS_GE_MSG_STACK.ADD;
390         APP_EXCEPTION.RAISE_EXCEPTION;
391       END IF;
392     END IF;
393 
394     IF ((UPPER (column_name) = 'DERIVED_COMPLETION_PERD') OR (column_name IS NULL)) THEN
395       IF (new_references.derived_completion_perd <> UPPER (new_references.derived_completion_perd)) THEN
396         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
397 	IGS_GE_MSG_STACK.ADD;
398         APP_EXCEPTION.RAISE_EXCEPTION;
399       END IF;
400     END IF;
401 
402     IF ((UPPER (column_name) = 'DISCONTINUATION_REASON_CD') OR (column_name IS NULL)) THEN
403       IF (new_references.DISCONTINUATION_REASON_CD <> UPPER (new_references.DISCONTINUATION_REASON_CD)) THEN
404         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
405 	IGS_GE_MSG_STACK.ADD;
406         APP_EXCEPTION.RAISE_EXCEPTION;
407       END IF;
408     END IF;
409 
410     IF ((UPPER (column_name) = 'EXAM_LOCATION_CD') OR (column_name IS NULL)) THEN
411       IF (new_references.exam_location_cd <> UPPER (new_references.exam_location_cd)) THEN
412         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
413 	IGS_GE_MSG_STACK.ADD;
414         APP_EXCEPTION.RAISE_EXCEPTION;
415       END IF;
416     END IF;
417 
418     IF ((UPPER (column_name) = 'FUNDING_SOURCE') OR (column_name IS NULL)) THEN
419       IF (new_references.funding_source <> UPPER (new_references.funding_source)) THEN
420         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
421 	IGS_GE_MSG_STACK.ADD;
422         APP_EXCEPTION.RAISE_EXCEPTION;
423       END IF;
424     END IF;
425 
426     IF ((UPPER (column_name) = 'LOCATION_CD') OR (column_name IS NULL)) THEN
427       IF (new_references.location_cd <> UPPER (new_references.location_cd)) THEN
428         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
429 	IGS_GE_MSG_STACK.ADD;
430         APP_EXCEPTION.RAISE_EXCEPTION;
431       END IF;
432     END IF;
433 
434     IF ((UPPER (column_name) = 'NOMINATED_COMPLETION_PERD') OR (column_name IS NULL)) THEN
435       IF (new_references.nominated_completion_perd <> UPPER (new_references.nominated_completion_perd)) THEN
436         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
437 	IGS_GE_MSG_STACK.ADD;
438         APP_EXCEPTION.RAISE_EXCEPTION;
439       END IF;
440     END IF;
441 
442     IF ((UPPER (column_name) = 'MANUAL_OVR_CMPL_DT_IND') OR (column_name IS NULL)) THEN
443       IF new_references.manual_ovr_cmpl_dt_ind  NOT IN  ( 'Y' , 'N' ) THEN
447       END IF;
444         Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
445 	IGS_GE_MSG_STACK.ADD;
446         APP_EXCEPTION.RAISE_EXCEPTION;
448     END IF;
449 
450 END Check_Constraints;
451 
452   FUNCTION Get_PK_For_Validation (
453     x_person_id IN NUMBER,
454     x_course_cd IN VARCHAR2,
455     x_hist_start_dt IN DATE
456     ) RETURN BOOLEAN AS
457     CURSOR cur_rowid IS
458       SELECT   ROWID
459       FROM     IGS_AS_SC_ATTEMPT_H_ALL
460       WHERE    person_id = x_person_id
461       AND      course_cd = x_course_cd
462       AND      hist_start_dt = x_hist_start_dt
463       FOR UPDATE NOWAIT;
464     lv_rowid cur_rowid%ROWTYPE;
465   BEGIN
466     OPEN cur_rowid;
467     FETCH cur_rowid INTO lv_rowid;
468 
469     IF (cur_rowid%FOUND) THEN
470        CLOSE cur_rowid;
471        RETURN(TRUE);
472     ELSE
473        CLOSE cur_rowid;
474        RETURN(FALSE);
475     END IF;
476 
477 
478   END Get_PK_For_Validation;
479 
480   PROCEDURE Before_DML (
481     p_action IN VARCHAR2,
482     x_rowid IN VARCHAR2 DEFAULT NULL,
483     x_org_id IN NUMBER DEFAULT NULL,
484     x_progression_status IN VARCHAR2 DEFAULT NULL,
485     x_derived_att_type IN VARCHAR2 DEFAULT NULL,
486     x_derived_att_mode IN VARCHAR2 DEFAULT NULL,
487     x_provisional_ind IN VARCHAR2 DEFAULT NULL,
488     x_discontinued_dt IN DATE DEFAULT NULL,
489     x_discontinuation_reason_cd IN VARCHAR2 DEFAULT NULL,
490     x_lapsed_dt IN DATE DEFAULT NULL,
491     x_funding_source IN VARCHAR2 DEFAULT NULL,
492     x_fs_description IN VARCHAR2 DEFAULT NULL,
493     x_exam_location_cd IN VARCHAR2 DEFAULT NULL,
494     x_elo_description IN VARCHAR2 DEFAULT NULL,
495     x_derived_completion_yr IN NUMBER DEFAULT NULL,
496     x_derived_completion_perd IN VARCHAR2 DEFAULT NULL,
497     x_nominated_completion_yr IN NUMBER DEFAULT NULL,
498     x_nominated_completion_perd IN VARCHAR2 DEFAULT NULL,
499     x_rule_check_ind IN VARCHAR2 DEFAULT NULL,
500     x_waive_option_check_ind IN VARCHAR2 DEFAULT NULL,
501     x_last_rule_check_dt IN DATE DEFAULT NULL,
502     x_publish_outcomes_ind IN VARCHAR2 DEFAULT NULL,
503     x_course_rqrmnt_complete_ind IN VARCHAR2 DEFAULT NULL,
504     x_course_rqrmnts_complete_dt IN DATE DEFAULT NULL,
505     x_s_completed_source_type IN VARCHAR2 DEFAULT NULL,
506     x_override_time_limitation IN NUMBER DEFAULT NULL,
507     x_advanced_standing_ind IN VARCHAR2 DEFAULT NULL,
508     x_fee_cat IN VARCHAR2 DEFAULT NULL,
509     x_fc_description IN VARCHAR2 DEFAULT NULL,
510     x_correspondence_cat IN VARCHAR2 DEFAULT NULL,
511     x_cc_description IN VARCHAR2 DEFAULT NULL,
512     x_self_help_group_ind IN VARCHAR2 DEFAULT NULL,
513     x_adm_admission_appl_number IN NUMBER DEFAULT NULL,
514     x_adm_nominated_course_cd IN VARCHAR2 DEFAULT NULL,
515     x_adm_sequence_number IN NUMBER DEFAULT NULL,
516     x_person_id IN NUMBER DEFAULT NULL,
517     x_course_cd IN VARCHAR2 DEFAULT NULL,
518     x_hist_start_dt IN DATE DEFAULT NULL,
519     x_hist_end_dt IN DATE DEFAULT NULL,
520     x_hist_who IN NUMBER DEFAULT NULL,
521     x_version_number IN NUMBER DEFAULT NULL,
522     x_cal_type IN VARCHAR2 DEFAULT NULL,
523     x_location_cd IN VARCHAR2 DEFAULT NULL,
524     x_attendance_mode IN VARCHAR2 DEFAULT NULL,
525     x_attendance_type IN VARCHAR2 DEFAULT NULL,
526     x_student_confirmed_ind IN VARCHAR2 DEFAULT NULL,
527     x_commencement_dt IN DATE DEFAULT NULL,
528     x_course_attempt_status IN VARCHAR2 DEFAULT NULL,
529     x_creation_date IN DATE DEFAULT NULL,
530     x_created_by IN NUMBER DEFAULT NULL,
531     x_last_update_date IN DATE DEFAULT NULL,
532     x_last_updated_by IN NUMBER DEFAULT NULL,
533     x_last_update_login IN NUMBER DEFAULT NULL,
534     x_last_date_of_attendance IN DATE DEFAULT NULL,
535     x_dropped_by  IN VARCHAR2 DEFAULT NULL,
536     x_primary_program_type IN VARCHAR2 DEFAULT NULL,
537     x_primary_prog_type_source IN VARCHAR2 DEFAULT NULL,
538     x_catalog_cal_type IN VARCHAR2 DEFAULT NULL,
539     x_catalog_seq_num IN NUMBER DEFAULT NULL,
540     x_key_program IN VARCHAR2 DEFAULT 'N' ,
541     x_override_cmpl_dt  IN DATE DEFAULT NULL,
542     x_manual_ovr_cmpl_dt_ind  IN VARCHAR2 DEFAULT 'N',
543     x_coo_id IN NUMBER DEFAULT NULL,
544     x_igs_pr_class_std_id IN NUMBER DEFAULT NULL
545   ) AS
546   BEGIN
547     Set_Column_Values (
548       p_action,
549       x_rowid,
550       x_org_id,
551       x_progression_status,
552       x_derived_att_type,
553       x_derived_att_mode,
554       x_provisional_ind,
555       x_discontinued_dt,
556       x_discontinuation_reason_cd,
557       x_lapsed_dt,
558       x_funding_source,
559       x_fs_description,
560       x_exam_location_cd,
561       x_elo_description,
562       x_derived_completion_yr,
563       x_derived_completion_perd,
564       x_nominated_completion_yr,
565       x_nominated_completion_perd,
566       x_rule_check_ind,
567       x_waive_option_check_ind,
568       x_last_rule_check_dt,
569       x_publish_outcomes_ind,
570       x_course_rqrmnt_complete_ind,
571       x_course_rqrmnts_complete_dt,
572       x_s_completed_source_type,
573       x_override_time_limitation,
574       x_advanced_standing_ind,
575       x_fee_cat,
579       x_self_help_group_ind,
576       x_fc_description,
577       x_correspondence_cat,
578       x_cc_description,
580       x_adm_admission_appl_number,
581       x_adm_nominated_course_cd,
582       x_adm_sequence_number,
583       x_person_id,
584       x_course_cd,
585       x_hist_start_dt,
586       x_hist_end_dt,
587       x_hist_who,
588       x_version_number,
589       x_cal_type,
590       x_location_cd,
591       x_attendance_mode,
592       x_attendance_type,
593       x_student_confirmed_ind,
594       x_commencement_dt,
595       x_course_attempt_status,
596       x_creation_date,
597       x_created_by,
598       x_last_update_date,
599       x_last_updated_by,
600       x_last_update_login,
601       x_last_date_of_attendance,
602       x_dropped_by,
603       x_primary_program_type,
604       x_primary_prog_type_source,
605       x_catalog_cal_type,
606       x_catalog_seq_num,
607       x_key_program,
608       x_override_cmpl_dt,
609       x_manual_ovr_cmpl_dt_ind,
610       x_coo_id,
611       x_igs_pr_class_std_id
612     );
613     IF (p_action = 'INSERT') THEN
614       -- Call all the procedures related to Before Insert.
615 	IF Get_PK_For_Validation(
616 		          new_references.person_id ,
617 		          new_references.course_cd ,
618 			    new_references.hist_start_dt
619 	                            ) THEN
620 
621  		Fnd_message.Set_name('IGS','IGS_GE_MULTI_ORG_DUP_REC');
622                 IGS_GE_MSG_STACK.ADD;
623  		APP_EXCEPTION.RAISE_EXCEPTION;
624 
625 	END IF;
626 
627 	Check_Constraints;
628 
629     ELSIF (p_action = 'UPDATE') THEN
630       -- Call all the procedures related to Before Update.
631 	Check_Constraints;
632 
633     ELSIF (p_action = 'VALIDATE_INSERT') THEN
634       		IF  Get_PK_For_Validation (
635 		          new_references.person_id ,
636 		          new_references.course_cd ,
637 			    new_references.hist_start_dt
638  				 ) THEN
639 		          Fnd_Message.Set_Name ('IGS', 'IGS_GE_MULTI_ORG_DUP_REC');
640 IGS_GE_MSG_STACK.ADD;
641 		          APP_EXCEPTION.RAISE_EXCEPTION;
642      	        END IF;
643      		Check_Constraints;
644    ELSIF (p_action = 'VALIDATE_UPDATE') THEN
645      		  Check_Constraints;
646 
647     END IF;
648   END Before_DML;
649 
650 PROCEDURE INSERT_ROW (
651   X_ROWID IN OUT NOCOPY VARCHAR2,
652   X_ORG_ID IN NUMBER,
653   X_PERSON_ID IN NUMBER,
654   X_COURSE_CD IN VARCHAR2,
655   X_HIST_START_DT IN DATE,
656   X_HIST_END_DT IN DATE,
657   X_HIST_WHO IN NUMBER,
658   X_VERSION_NUMBER IN NUMBER,
659   X_CAL_TYPE IN VARCHAR2,
660   X_LOCATION_CD IN VARCHAR2,
661   X_ATTENDANCE_MODE IN VARCHAR2,
662   X_ATTENDANCE_TYPE IN VARCHAR2,
663   X_STUDENT_CONFIRMED_IND IN VARCHAR2,
664   X_COMMENCEMENT_DT IN DATE,
665   X_COURSE_ATTEMPT_STATUS IN VARCHAR2,
666   X_PROGRESSION_STATUS IN VARCHAR2,
667   X_DERIVED_ATT_TYPE IN VARCHAR2,
668   X_DERIVED_ATT_MODE IN VARCHAR2,
669   X_PROVISIONAL_IND IN VARCHAR2,
670   X_DISCONTINUED_DT IN DATE,
671   X_DISCONTINUATION_REASON_CD IN VARCHAR2,
672   X_LAPSED_DT IN DATE,
673   X_FUNDING_SOURCE IN VARCHAR2,
674   X_FS_DESCRIPTION IN VARCHAR2,
675   X_EXAM_LOCATION_CD IN VARCHAR2,
676   X_ELO_DESCRIPTION IN VARCHAR2,
677   X_DERIVED_COMPLETION_YR IN NUMBER,
678   X_DERIVED_COMPLETION_PERD IN VARCHAR2,
679   X_NOMINATED_COMPLETION_YR IN NUMBER,
680   X_NOMINATED_COMPLETION_PERD IN VARCHAR2,
681   X_RULE_CHECK_IND IN VARCHAR2,
682   X_WAIVE_OPTION_CHECK_IND IN VARCHAR2,
683   X_LAST_RULE_CHECK_DT IN DATE,
684   X_PUBLISH_OUTCOMES_IND IN VARCHAR2,
685   X_COURSE_RQRMNT_COMPLETE_IND IN VARCHAR2,
686   X_COURSE_RQRMNTS_COMPLETE_DT IN DATE,
687   X_S_COMPLETED_SOURCE_TYPE IN VARCHAR2,
688   X_OVERRIDE_TIME_LIMITATION IN NUMBER,
689   X_ADVANCED_STANDING_IND IN VARCHAR2,
690   X_FEE_CAT IN VARCHAR2,
691   X_FC_DESCRIPTION IN VARCHAR2,
692   X_CORRESPONDENCE_CAT IN VARCHAR2,
693   X_CC_DESCRIPTION IN VARCHAR2,
694   X_SELF_HELP_GROUP_IND IN VARCHAR2,
695   X_ADM_ADMISSION_APPL_NUMBER IN NUMBER,
696   X_ADM_NOMINATED_COURSE_CD IN VARCHAR2,
697   X_ADM_SEQUENCE_NUMBER IN NUMBER,
698   X_MODE IN VARCHAR2 DEFAULT 'R',
699   X_LAST_DATE_OF_ATTENDANCE IN DATE DEFAULT NULL,
700   X_DROPPED_BY  IN VARCHAR2 DEFAULT NULL,
701   X_PRIMARY_PROGRAM_TYPE IN VARCHAR2 DEFAULT NULL,
702   X_PRIMARY_PROG_TYPE_SOURCE IN VARCHAR2 DEFAULT NULL,
703   X_CATALOG_CAL_TYPE IN VARCHAR2 DEFAULT NULL,
704   X_CATALOG_SEQ_NUM IN NUMBER DEFAULT NULL,
705   X_KEY_PROGRAM IN VARCHAR2 DEFAULT 'N',
706   X_OVERRIDE_CMPL_DT  IN DATE DEFAULT NULL,
707   X_MANUAL_OVR_CMPL_DT_IND  IN VARCHAR2 DEFAULT 'N',
708   X_COO_ID IN NUMBER DEFAULT NULL,
709   X_IGS_PR_CLASS_STD_ID IN NUMBER DEFAULT NULL
710   ) AS
711     CURSOR C IS SELECT ROWID FROM IGS_AS_SC_ATTEMPT_H_ALL
712       WHERE PERSON_ID = X_PERSON_ID
713       AND COURSE_CD = X_COURSE_CD
714       AND HIST_START_DT = X_HIST_START_DT;
715     X_LAST_UPDATE_DATE DATE;
716     X_LAST_UPDATED_BY NUMBER;
717     X_LAST_UPDATE_LOGIN NUMBER;
718 BEGIN
719   X_LAST_UPDATE_DATE := SYSDATE;
720   IF(X_MODE = 'I') THEN
724     X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
721     X_LAST_UPDATED_BY := 1;
722     X_LAST_UPDATE_LOGIN := 0;
723   ELSIF (X_MODE = 'R') THEN
725     IF X_LAST_UPDATED_BY IS NULL THEN
726       X_LAST_UPDATED_BY := -1;
727     END IF;
728     X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
729     IF X_LAST_UPDATE_LOGIN IS NULL THEN
730       X_LAST_UPDATE_LOGIN := -1;
731     END IF;
732   ELSE
733     FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
734 IGS_GE_MSG_STACK.ADD;
735     APP_EXCEPTION.RAISE_EXCEPTION;
736   END IF;
737  Before_DML(
738   p_action=>'INSERT',
739   x_rowid=>X_ROWID,
740   x_org_id => igs_ge_gen_003.get_org_id,
741   x_adm_admission_appl_number=>X_ADM_ADMISSION_APPL_NUMBER,
742   x_adm_nominated_course_cd=>X_ADM_NOMINATED_COURSE_CD,
743   x_adm_sequence_number=>X_ADM_SEQUENCE_NUMBER,
744   x_advanced_standing_ind=>X_ADVANCED_STANDING_IND,
745   x_attendance_mode=>X_ATTENDANCE_MODE,
746   x_attendance_type=>X_ATTENDANCE_TYPE,
747   x_cal_type=>X_CAL_TYPE,
748   x_cc_description=>X_CC_DESCRIPTION,
749   x_commencement_dt=>X_COMMENCEMENT_DT,
750   x_correspondence_cat=>X_CORRESPONDENCE_CAT,
751   x_course_attempt_status=>X_COURSE_ATTEMPT_STATUS,
752   x_course_cd=>X_COURSE_CD,
753   x_course_rqrmnt_complete_ind=>X_COURSE_RQRMNT_COMPLETE_IND,
754   x_course_rqrmnts_complete_dt=>X_COURSE_RQRMNTS_COMPLETE_DT,
755   x_derived_att_mode=>X_DERIVED_ATT_MODE,
756   x_derived_att_type=>X_DERIVED_ATT_TYPE,
757   x_derived_completion_perd=>X_DERIVED_COMPLETION_PERD,
758   x_derived_completion_yr=>X_DERIVED_COMPLETION_YR,
759   x_discontinuation_reason_cd=>X_DISCONTINUATION_REASON_CD,
760   x_discontinued_dt=>X_DISCONTINUED_DT,
761   x_elo_description=>X_ELO_DESCRIPTION,
762   x_exam_location_cd=>X_EXAM_LOCATION_CD,
763   x_fc_description=>X_FC_DESCRIPTION,
764   x_fee_cat=>X_FEE_CAT,
765   x_fs_description=>X_FS_DESCRIPTION,
766   x_funding_source=>X_FUNDING_SOURCE,
767   x_hist_end_dt=>X_HIST_END_DT,
768   x_hist_start_dt=>X_HIST_START_DT,
769   x_hist_who=>X_HIST_WHO,
770   x_lapsed_dt=>X_LAPSED_DT,
771   x_last_rule_check_dt=>X_LAST_RULE_CHECK_DT,
772   x_location_cd=>X_LOCATION_CD,
773   x_nominated_completion_perd=>X_NOMINATED_COMPLETION_PERD,
774   x_nominated_completion_yr=>X_NOMINATED_COMPLETION_YR,
775   x_override_time_limitation=>X_OVERRIDE_TIME_LIMITATION,
776   x_person_id=>X_PERSON_ID,
777   x_progression_status=>X_PROGRESSION_STATUS,
778   x_provisional_ind=>X_PROVISIONAL_IND,
779   x_publish_outcomes_ind=>X_PUBLISH_OUTCOMES_IND,
780   x_rule_check_ind=>X_RULE_CHECK_IND,
781   x_s_completed_source_type=>X_S_COMPLETED_SOURCE_TYPE,
782   x_self_help_group_ind=>X_SELF_HELP_GROUP_IND,
783   x_student_confirmed_ind=>X_STUDENT_CONFIRMED_IND,
784   x_version_number=>X_VERSION_NUMBER,
785   x_waive_option_check_ind=>X_WAIVE_OPTION_CHECK_IND,
786   x_creation_date=>X_LAST_UPDATE_DATE,
787   x_created_by=>X_LAST_UPDATED_BY,
788   x_last_update_date=>X_LAST_UPDATE_DATE,
789   x_last_updated_by=>X_LAST_UPDATED_BY,
790   x_last_update_login=>X_LAST_UPDATE_LOGIN,
791   x_last_date_of_attendance =>X_LAST_DATE_OF_ATTENDANCE,
792   x_dropped_by =>X_DROPPED_BY,
793   x_primary_program_type=>X_PRIMARY_PROGRAM_TYPE,
794   x_primary_prog_type_source=>X_PRIMARY_PROG_TYPE_SOURCE,
795   x_catalog_cal_type=>X_CATALOG_CAL_TYPE,
796   x_catalog_seq_num=>X_CATALOG_SEQ_NUM,
797   x_key_program=>X_KEY_PROGRAM,
798   x_override_cmpl_dt  => X_OVERRIDE_CMPL_DT,
799   x_manual_ovr_cmpl_dt_ind  => X_MANUAL_OVR_CMPL_DT_IND,
800   x_coo_id => X_COO_ID,
801   x_igs_pr_class_std_id => X_IGS_PR_CLASS_STD_ID
802   );
803   INSERT INTO IGS_AS_SC_ATTEMPT_H_ALL (
804     ORG_ID,
805     PERSON_ID,
806     COURSE_CD,
807     HIST_START_DT,
808     HIST_END_DT,
809     HIST_WHO,
810     VERSION_NUMBER,
811     CAL_TYPE,
812     LOCATION_CD,
813     ATTENDANCE_MODE,
814     ATTENDANCE_TYPE,
815     STUDENT_CONFIRMED_IND,
816     COMMENCEMENT_DT,
817     COURSE_ATTEMPT_STATUS,
818     PROGRESSION_STATUS,
819     DERIVED_ATT_TYPE,
820     DERIVED_ATT_MODE,
821     PROVISIONAL_IND,
822     DISCONTINUED_DT,
823     DISCONTINUATION_REASON_CD,
824     LAPSED_DT,
825     FUNDING_SOURCE,
826     FS_DESCRIPTION,
827     EXAM_LOCATION_CD,
828     ELO_DESCRIPTION,
829     DERIVED_COMPLETION_YR,
830     DERIVED_COMPLETION_PERD,
831     NOMINATED_COMPLETION_YR,
832     NOMINATED_COMPLETION_PERD,
833     RULE_CHECK_IND,
834     WAIVE_OPTION_CHECK_IND,
835     LAST_RULE_CHECK_DT,
836     PUBLISH_OUTCOMES_IND,
837     COURSE_RQRMNT_COMPLETE_IND,
838     COURSE_RQRMNTS_COMPLETE_DT,
839     S_COMPLETED_SOURCE_TYPE,
840     OVERRIDE_TIME_LIMITATION,
841     ADVANCED_STANDING_IND,
842     FEE_CAT,
843     FC_DESCRIPTION,
844     CORRESPONDENCE_CAT,
845     CC_DESCRIPTION,
846     SELF_HELP_GROUP_IND,
847     ADM_ADMISSION_APPL_NUMBER,
848     ADM_NOMINATED_COURSE_CD,
849     ADM_SEQUENCE_NUMBER,
850     CREATION_DATE,
851     CREATED_BY,
852     LAST_UPDATE_DATE,
853     LAST_UPDATED_BY,
854     LAST_UPDATE_LOGIN,
855     LAST_DATE_OF_ATTENDANCE,
856     DROPPED_BY,
857     PRIMARY_PROGRAM_TYPE,
858     PRIMARY_PROG_TYPE_SOURCE,
859     CATALOG_CAL_TYPE,
860     CATALOG_SEQ_NUM,
861     KEY_PROGRAM,
862     OVERRIDE_CMPL_DT,
863     MANUAL_OVR_CMPL_DT_IND,
864     COO_ID,
865     IGS_PR_CLASS_STD_ID
866   ) VALUES (
867     NEW_REFERENCES.ORG_ID,
871     NEW_REFERENCES.HIST_END_DT,
868     NEW_REFERENCES.PERSON_ID,
869     NEW_REFERENCES.COURSE_CD,
870     NEW_REFERENCES.HIST_START_DT,
872     NEW_REFERENCES.HIST_WHO,
873     NEW_REFERENCES.VERSION_NUMBER,
874     NEW_REFERENCES.CAL_TYPE,
875     NEW_REFERENCES.LOCATION_CD,
876     NEW_REFERENCES.ATTENDANCE_MODE,
877     NEW_REFERENCES.ATTENDANCE_TYPE,
878     NEW_REFERENCES.STUDENT_CONFIRMED_IND,
879     NEW_REFERENCES.COMMENCEMENT_DT,
880     NEW_REFERENCES.COURSE_ATTEMPT_STATUS,
881     NEW_REFERENCES.PROGRESSION_STATUS,
882     NEW_REFERENCES.DERIVED_ATT_TYPE,
883     NEW_REFERENCES.DERIVED_ATT_MODE,
884     NEW_REFERENCES.PROVISIONAL_IND,
885     NEW_REFERENCES.DISCONTINUED_DT,
886     NEW_REFERENCES.DISCONTINUATION_REASON_CD,
887     NEW_REFERENCES.LAPSED_DT,
888     NEW_REFERENCES.FUNDING_SOURCE,
889     NEW_REFERENCES.FS_DESCRIPTION,
890     NEW_REFERENCES.EXAM_LOCATION_CD,
891     NEW_REFERENCES.ELO_DESCRIPTION,
892     NEW_REFERENCES.DERIVED_COMPLETION_YR,
893     NEW_REFERENCES.DERIVED_COMPLETION_PERD,
894     NEW_REFERENCES.NOMINATED_COMPLETION_YR,
895     NEW_REFERENCES.NOMINATED_COMPLETION_PERD,
896     NEW_REFERENCES.RULE_CHECK_IND,
897     NEW_REFERENCES.WAIVE_OPTION_CHECK_IND,
898     NEW_REFERENCES.LAST_RULE_CHECK_DT,
899     NEW_REFERENCES.PUBLISH_OUTCOMES_IND,
900     NEW_REFERENCES.COURSE_RQRMNT_COMPLETE_IND,
901     NEW_REFERENCES.COURSE_RQRMNTS_COMPLETE_DT,
902     NEW_REFERENCES.S_COMPLETED_SOURCE_TYPE,
903     NEW_REFERENCES.OVERRIDE_TIME_LIMITATION,
904     NEW_REFERENCES.ADVANCED_STANDING_IND,
905     NEW_REFERENCES.FEE_CAT,
906     NEW_REFERENCES.FC_DESCRIPTION,
907     NEW_REFERENCES.CORRESPONDENCE_CAT,
908     NEW_REFERENCES.CC_DESCRIPTION,
909     NEW_REFERENCES.SELF_HELP_GROUP_IND,
910     NEW_REFERENCES.ADM_ADMISSION_APPL_NUMBER,
911     NEW_REFERENCES.ADM_NOMINATED_COURSE_CD,
912     NEW_REFERENCES.ADM_SEQUENCE_NUMBER,
913     X_LAST_UPDATE_DATE,
914     X_LAST_UPDATED_BY,
915     X_LAST_UPDATE_DATE,
916     X_LAST_UPDATED_BY,
917     X_LAST_UPDATE_LOGIN,
918     NEW_REFERENCES.LAST_DATE_OF_ATTENDANCE,
919     NEW_REFERENCES.DROPPED_BY,
920     NEW_REFERENCES.PRIMARY_PROGRAM_TYPE,
921     NEW_REFERENCES.PRIMARY_PROG_TYPE_SOURCE,
922     NEW_REFERENCES.CATALOG_CAL_TYPE,
923     NEW_REFERENCES.CATALOG_SEQ_NUM,
924     NEW_REFERENCES.KEY_PROGRAM,
925     NEW_REFERENCES.OVERRIDE_CMPL_DT,
926     NEW_REFERENCES.MANUAL_OVR_CMPL_DT_IND,
927     NEW_REFERENCES.COO_ID,
928     NEW_REFERENCES.IGS_PR_CLASS_STD_ID
929   );
930   OPEN c;
931   FETCH c INTO X_ROWID;
932   IF (c%NOTFOUND) THEN
933     CLOSE c;
934     RAISE NO_DATA_FOUND;
935   END IF;
936   CLOSE c;
937 
938 END INSERT_ROW;
939 PROCEDURE LOCK_ROW (
940   X_ROWID IN  VARCHAR2,
944   X_HIST_END_DT IN DATE,
941   X_PERSON_ID IN NUMBER,
942   X_COURSE_CD IN VARCHAR2,
943   X_HIST_START_DT IN DATE,
945   X_HIST_WHO IN NUMBER,
946   X_VERSION_NUMBER IN NUMBER,
947   X_CAL_TYPE IN VARCHAR2,
948   X_LOCATION_CD IN VARCHAR2,
949   X_ATTENDANCE_MODE IN VARCHAR2,
950   X_ATTENDANCE_TYPE IN VARCHAR2,
951   X_STUDENT_CONFIRMED_IND IN VARCHAR2,
952   X_COMMENCEMENT_DT IN DATE,
953   X_COURSE_ATTEMPT_STATUS IN VARCHAR2,
954   X_PROGRESSION_STATUS IN VARCHAR2,
955   X_DERIVED_ATT_TYPE IN VARCHAR2,
956   X_DERIVED_ATT_MODE IN VARCHAR2,
957   X_PROVISIONAL_IND IN VARCHAR2,
958   X_DISCONTINUED_DT IN DATE,
959   X_DISCONTINUATION_REASON_CD IN VARCHAR2,
960   X_LAPSED_DT IN DATE,
961   X_FUNDING_SOURCE IN VARCHAR2,
962   X_FS_DESCRIPTION IN VARCHAR2,
963   X_EXAM_LOCATION_CD IN VARCHAR2,
964   X_ELO_DESCRIPTION IN VARCHAR2,
965   X_DERIVED_COMPLETION_YR IN NUMBER,
966   X_DERIVED_COMPLETION_PERD IN VARCHAR2,
967   X_NOMINATED_COMPLETION_YR IN NUMBER,
968   X_NOMINATED_COMPLETION_PERD IN VARCHAR2,
969   X_RULE_CHECK_IND IN VARCHAR2,
970   X_WAIVE_OPTION_CHECK_IND IN VARCHAR2,
971   X_LAST_RULE_CHECK_DT IN DATE,
972   X_PUBLISH_OUTCOMES_IND IN VARCHAR2,
973   X_COURSE_RQRMNT_COMPLETE_IND IN VARCHAR2,
974   X_COURSE_RQRMNTS_COMPLETE_DT IN DATE,
975   X_S_COMPLETED_SOURCE_TYPE IN VARCHAR2,
976   X_OVERRIDE_TIME_LIMITATION IN NUMBER,
977   X_ADVANCED_STANDING_IND IN VARCHAR2,
978   X_FEE_CAT IN VARCHAR2,
979   X_FC_DESCRIPTION IN VARCHAR2,
980   X_CORRESPONDENCE_CAT IN VARCHAR2,
981   X_CC_DESCRIPTION IN VARCHAR2,
982   X_SELF_HELP_GROUP_IND IN VARCHAR2,
983   X_ADM_ADMISSION_APPL_NUMBER IN NUMBER,
984   X_ADM_NOMINATED_COURSE_CD IN VARCHAR2,
985   X_ADM_SEQUENCE_NUMBER IN NUMBER,
986   X_LAST_DATE_OF_ATTENDANCE IN DATE DEFAULT NULL,
987   X_DROPPED_BY  IN VARCHAR2 DEFAULT NULL ,
988   X_PRIMARY_PROGRAM_TYPE IN VARCHAR2 DEFAULT NULL,
989   X_PRIMARY_PROG_TYPE_SOURCE IN VARCHAR2 DEFAULT NULL,
990   X_CATALOG_CAL_TYPE IN VARCHAR2 DEFAULT NULL,
991   X_CATALOG_SEQ_NUM IN NUMBER DEFAULT NULL,
992   X_KEY_PROGRAM IN VARCHAR2 DEFAULT 'N',
993   X_OVERRIDE_CMPL_DT  IN DATE DEFAULT NULL,
994   X_MANUAL_OVR_CMPL_DT_IND  IN VARCHAR2 DEFAULT 'N',
995   X_COO_ID IN NUMBER DEFAULT NULL,
996   X_IGS_PR_CLASS_STD_ID IN NUMBER DEFAULT NULL
997 ) AS
998   CURSOR c1 IS SELECT
999       HIST_END_DT,
1000       HIST_WHO,
1001       VERSION_NUMBER,
1002       CAL_TYPE,
1003       LOCATION_CD,
1004       ATTENDANCE_MODE,
1005       ATTENDANCE_TYPE,
1006       STUDENT_CONFIRMED_IND,
1007       COMMENCEMENT_DT,
1008       COURSE_ATTEMPT_STATUS,
1009       PROGRESSION_STATUS,
1010       DERIVED_ATT_TYPE,
1011       DERIVED_ATT_MODE,
1012       PROVISIONAL_IND,
1013       DISCONTINUED_DT,
1014       DISCONTINUATION_REASON_CD,
1015       LAPSED_DT,
1016       FUNDING_SOURCE,
1017       FS_DESCRIPTION,
1018       EXAM_LOCATION_CD,
1019       ELO_DESCRIPTION,
1020       DERIVED_COMPLETION_YR,
1021       DERIVED_COMPLETION_PERD,
1022       NOMINATED_COMPLETION_YR,
1023       NOMINATED_COMPLETION_PERD,
1024       RULE_CHECK_IND,
1025       WAIVE_OPTION_CHECK_IND,
1026       LAST_RULE_CHECK_DT,
1027       PUBLISH_OUTCOMES_IND,
1028       COURSE_RQRMNT_COMPLETE_IND,
1029       COURSE_RQRMNTS_COMPLETE_DT,
1030       S_COMPLETED_SOURCE_TYPE,
1031       OVERRIDE_TIME_LIMITATION,
1032       ADVANCED_STANDING_IND,
1033       FEE_CAT,
1034       FC_DESCRIPTION,
1035       CORRESPONDENCE_CAT,
1036       CC_DESCRIPTION,
1037       SELF_HELP_GROUP_IND,
1038       ADM_ADMISSION_APPL_NUMBER,
1039       ADM_NOMINATED_COURSE_CD,
1040       ADM_SEQUENCE_NUMBER,
1041       LAST_DATE_OF_ATTENDANCE,
1042       DROPPED_BY,
1043       PRIMARY_PROGRAM_TYPE,
1044       PRIMARY_PROG_TYPE_SOURCE,
1045       CATALOG_CAL_TYPE,
1046       CATALOG_SEQ_NUM,
1047       KEY_PROGRAM,
1048       OVERRIDE_CMPL_DT,
1049       MANUAL_OVR_CMPL_DT_IND,
1050       COO_ID,
1051      IGS_PR_CLASS_STD_ID
1052     FROM IGS_AS_SC_ATTEMPT_H_ALL
1053     WHERE ROWID = X_ROWID  FOR UPDATE  NOWAIT;
1054   tlinfo c1%ROWTYPE;
1055 BEGIN
1056   OPEN c1;
1057   FETCH c1 INTO tlinfo;
1058   IF (c1%NOTFOUND) THEN
1059     fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
1060 IGS_GE_MSG_STACK.ADD;
1061     APP_EXCEPTION.RAISE_EXCEPTION;
1062     CLOSE c1;
1063     RETURN;
1064   END IF;
1065   CLOSE c1;
1066   IF ( (tlinfo.HIST_END_DT = X_HIST_END_DT)
1067       AND (tlinfo.HIST_WHO = X_HIST_WHO)
1068       AND ((tlinfo.VERSION_NUMBER = X_VERSION_NUMBER)
1069            OR ((tlinfo.VERSION_NUMBER IS NULL)
1070                AND (X_VERSION_NUMBER IS NULL)))
1071       AND ((tlinfo.CAL_TYPE = X_CAL_TYPE)
1072            OR ((tlinfo.CAL_TYPE IS NULL)
1073                AND (X_CAL_TYPE IS NULL)))
1074       AND ((tlinfo.LOCATION_CD = X_LOCATION_CD)
1075            OR ((tlinfo.LOCATION_CD IS NULL)
1076                AND (X_LOCATION_CD IS NULL)))
1077       AND ((tlinfo.ATTENDANCE_MODE = X_ATTENDANCE_MODE)
1078            OR ((tlinfo.ATTENDANCE_MODE IS NULL)
1079                AND (X_ATTENDANCE_MODE IS NULL)))
1080       AND ((tlinfo.ATTENDANCE_TYPE = X_ATTENDANCE_TYPE)
1081            OR ((tlinfo.ATTENDANCE_TYPE IS NULL)
1082                AND (X_ATTENDANCE_TYPE IS NULL)))
1086       AND ((tlinfo.COMMENCEMENT_DT = X_COMMENCEMENT_DT)
1083       AND ((tlinfo.STUDENT_CONFIRMED_IND = X_STUDENT_CONFIRMED_IND)
1084            OR ((tlinfo.STUDENT_CONFIRMED_IND IS NULL)
1085                AND (X_STUDENT_CONFIRMED_IND IS NULL)))
1087            OR ((tlinfo.COMMENCEMENT_DT IS NULL)
1088                AND (X_COMMENCEMENT_DT IS NULL)))
1089       AND ((tlinfo.COURSE_ATTEMPT_STATUS = X_COURSE_ATTEMPT_STATUS)
1090            OR ((tlinfo.COURSE_ATTEMPT_STATUS IS NULL)
1091                AND (X_COURSE_ATTEMPT_STATUS IS NULL)))
1092       AND ((tlinfo.PROGRESSION_STATUS = X_PROGRESSION_STATUS)
1093            OR ((tlinfo.PROGRESSION_STATUS IS NULL)
1094                AND (X_PROGRESSION_STATUS IS NULL)))
1095       AND ((tlinfo.DERIVED_ATT_TYPE = X_DERIVED_ATT_TYPE)
1096            OR ((tlinfo.DERIVED_ATT_TYPE IS NULL)
1097                AND (X_DERIVED_ATT_TYPE IS NULL)))
1098       AND ((tlinfo.DERIVED_ATT_MODE = X_DERIVED_ATT_MODE)
1099            OR ((tlinfo.DERIVED_ATT_MODE IS NULL)
1100                AND (X_DERIVED_ATT_MODE IS NULL)))
1101       AND ((tlinfo.PROVISIONAL_IND = X_PROVISIONAL_IND)
1102            OR ((tlinfo.PROVISIONAL_IND IS NULL)
1103                AND (X_PROVISIONAL_IND IS NULL)))
1104       AND ((tlinfo.DISCONTINUED_DT = X_DISCONTINUED_DT)
1105            OR ((tlinfo.DISCONTINUED_DT IS NULL)
1106                AND (X_DISCONTINUED_DT IS NULL)))
1107       AND ((tlinfo.DISCONTINUATION_REASON_CD = X_DISCONTINUATION_REASON_CD)
1108            OR ((tlinfo.DISCONTINUATION_REASON_CD IS NULL)
1109                AND (X_DISCONTINUATION_REASON_CD IS NULL)))
1110       AND ((tlinfo.LAPSED_DT = X_LAPSED_DT)
1111            OR ((tlinfo.LAPSED_DT IS NULL)
1112                AND (X_LAPSED_DT IS NULL)))
1113       AND ((tlinfo.FUNDING_SOURCE = X_FUNDING_SOURCE)
1114            OR ((tlinfo.FUNDING_SOURCE IS NULL)
1115                AND (X_FUNDING_SOURCE IS NULL)))
1116       AND ((tlinfo.FS_DESCRIPTION = X_FS_DESCRIPTION)
1117            OR ((tlinfo.FS_DESCRIPTION IS NULL)
1118                AND (X_FS_DESCRIPTION IS NULL)))
1119       AND ((tlinfo.EXAM_LOCATION_CD = X_EXAM_LOCATION_CD)
1120            OR ((tlinfo.EXAM_LOCATION_CD IS NULL)
1121                AND (X_EXAM_LOCATION_CD IS NULL)))
1122       AND ((tlinfo.ELO_DESCRIPTION = X_ELO_DESCRIPTION)
1123            OR ((tlinfo.ELO_DESCRIPTION IS NULL)
1124                AND (X_ELO_DESCRIPTION IS NULL)))
1125       AND ((tlinfo.DERIVED_COMPLETION_YR = X_DERIVED_COMPLETION_YR)
1126            OR ((tlinfo.DERIVED_COMPLETION_YR IS NULL)
1127                AND (X_DERIVED_COMPLETION_YR IS NULL)))
1128       AND ((tlinfo.DERIVED_COMPLETION_PERD = X_DERIVED_COMPLETION_PERD)
1129            OR ((tlinfo.DERIVED_COMPLETION_PERD IS NULL)
1130                AND (X_DERIVED_COMPLETION_PERD IS NULL)))
1131       AND ((tlinfo.NOMINATED_COMPLETION_YR = X_NOMINATED_COMPLETION_YR)
1132            OR ((tlinfo.NOMINATED_COMPLETION_YR IS NULL)
1133                AND (X_NOMINATED_COMPLETION_YR IS NULL)))
1134       AND ((tlinfo.NOMINATED_COMPLETION_PERD = X_NOMINATED_COMPLETION_PERD)
1135            OR ((tlinfo.NOMINATED_COMPLETION_PERD IS NULL)
1136                AND (X_NOMINATED_COMPLETION_PERD IS NULL)))
1137       AND ((tlinfo.RULE_CHECK_IND = X_RULE_CHECK_IND)
1138            OR ((tlinfo.RULE_CHECK_IND IS NULL)
1139                AND (X_RULE_CHECK_IND IS NULL)))
1140       AND ((tlinfo.WAIVE_OPTION_CHECK_IND = X_WAIVE_OPTION_CHECK_IND)
1141            OR ((tlinfo.WAIVE_OPTION_CHECK_IND IS NULL)
1142                AND (X_WAIVE_OPTION_CHECK_IND IS NULL)))
1143       AND ((tlinfo.LAST_RULE_CHECK_DT = X_LAST_RULE_CHECK_DT)
1144            OR ((tlinfo.LAST_RULE_CHECK_DT IS NULL)
1145                AND (X_LAST_RULE_CHECK_DT IS NULL)))
1146       AND ((tlinfo.PUBLISH_OUTCOMES_IND = X_PUBLISH_OUTCOMES_IND)
1147            OR ((tlinfo.PUBLISH_OUTCOMES_IND IS NULL)
1148                AND (X_PUBLISH_OUTCOMES_IND IS NULL)))
1149       AND ((tlinfo.COURSE_RQRMNT_COMPLETE_IND = X_COURSE_RQRMNT_COMPLETE_IND)
1150            OR ((tlinfo.COURSE_RQRMNT_COMPLETE_IND IS NULL)
1151                AND (X_COURSE_RQRMNT_COMPLETE_IND IS NULL)))
1152       AND ((tlinfo.COURSE_RQRMNTS_COMPLETE_DT = X_COURSE_RQRMNTS_COMPLETE_DT)
1153            OR ((tlinfo.COURSE_RQRMNTS_COMPLETE_DT IS NULL)
1154                AND (X_COURSE_RQRMNTS_COMPLETE_DT IS NULL)))
1155       AND ((tlinfo.S_COMPLETED_SOURCE_TYPE = X_S_COMPLETED_SOURCE_TYPE)
1156            OR ((tlinfo.S_COMPLETED_SOURCE_TYPE IS NULL)
1157                AND (X_S_COMPLETED_SOURCE_TYPE IS NULL)))
1161       AND ((tlinfo.ADVANCED_STANDING_IND = X_ADVANCED_STANDING_IND)
1158       AND ((tlinfo.OVERRIDE_TIME_LIMITATION = X_OVERRIDE_TIME_LIMITATION)
1159            OR ((tlinfo.OVERRIDE_TIME_LIMITATION IS NULL)
1160                AND (X_OVERRIDE_TIME_LIMITATION IS NULL)))
1162            OR ((tlinfo.ADVANCED_STANDING_IND IS NULL)
1163                AND (X_ADVANCED_STANDING_IND IS NULL)))
1164       AND ((tlinfo.FEE_CAT = X_FEE_CAT)
1165            OR ((tlinfo.FEE_CAT IS NULL)
1166                AND (X_FEE_CAT IS NULL)))
1167       AND ((tlinfo.FC_DESCRIPTION = X_FC_DESCRIPTION)
1168            OR ((tlinfo.FC_DESCRIPTION IS NULL)
1169                AND (X_FC_DESCRIPTION IS NULL)))
1170       AND ((tlinfo.CORRESPONDENCE_CAT = X_CORRESPONDENCE_CAT)
1171            OR ((tlinfo.CORRESPONDENCE_CAT IS NULL)
1172                AND (X_CORRESPONDENCE_CAT IS NULL)))
1173       AND ((tlinfo.CC_DESCRIPTION = X_CC_DESCRIPTION)
1174            OR ((tlinfo.CC_DESCRIPTION IS NULL)
1175                AND (X_CC_DESCRIPTION IS NULL)))
1176       AND ((tlinfo.SELF_HELP_GROUP_IND = X_SELF_HELP_GROUP_IND)
1177            OR ((tlinfo.SELF_HELP_GROUP_IND IS NULL)
1178                AND (X_SELF_HELP_GROUP_IND IS NULL)))
1179       AND ((tlinfo.ADM_ADMISSION_APPL_NUMBER = X_ADM_ADMISSION_APPL_NUMBER)
1180            OR ((tlinfo.ADM_ADMISSION_APPL_NUMBER IS NULL)
1181                AND (X_ADM_ADMISSION_APPL_NUMBER IS NULL)))
1182       AND ((tlinfo.ADM_NOMINATED_COURSE_CD = X_ADM_NOMINATED_COURSE_CD)
1183            OR ((tlinfo.ADM_NOMINATED_COURSE_CD IS NULL)
1184                AND (X_ADM_NOMINATED_COURSE_CD IS NULL)))
1185       AND ((tlinfo.ADM_SEQUENCE_NUMBER = X_ADM_SEQUENCE_NUMBER)
1186            OR ((tlinfo.ADM_SEQUENCE_NUMBER IS NULL)
1187                AND (X_ADM_SEQUENCE_NUMBER IS NULL)))
1188       AND ((tlinfo.LAST_DATE_OF_ATTENDANCE = X_LAST_DATE_OF_ATTENDANCE)
1189            OR ((tlinfo.LAST_DATE_OF_ATTENDANCE IS NULL)
1190                AND (X_LAST_DATE_OF_ATTENDANCE IS NULL)))
1191       AND ((tlinfo.DROPPED_BY = X_DROPPED_BY)
1192            OR ((tlinfo.DROPPED_BY IS NULL)
1193                AND (X_DROPPED_BY IS NULL)))
1194       AND ((tlinfo.PRIMARY_PROGRAM_TYPE = X_PRIMARY_PROGRAM_TYPE)
1195            OR ((tlinfo.PRIMARY_PROGRAM_TYPE IS NULL)
1196                AND (X_PRIMARY_PROGRAM_TYPE IS NULL)))
1197       AND ((tlinfo.PRIMARY_PROG_TYPE_SOURCE = X_PRIMARY_PROG_TYPE_SOURCE)
1198            OR ((tlinfo.PRIMARY_PROG_TYPE_SOURCE IS NULL)
1199                AND (X_PRIMARY_PROG_TYPE_SOURCE IS NULL)))
1200       AND ((tlinfo.CATALOG_CAL_TYPE = X_CATALOG_CAL_TYPE)
1201            OR ((tlinfo.CATALOG_CAL_TYPE IS NULL)
1202                AND (X_CATALOG_CAL_TYPE IS NULL)))
1203       AND ((tlinfo.CATALOG_SEQ_NUM = X_CATALOG_SEQ_NUM)
1204            OR ((tlinfo.CATALOG_SEQ_NUM IS NULL)
1205                AND (X_CATALOG_SEQ_NUM IS NULL)))
1206       AND ((tlinfo.KEY_PROGRAM = X_KEY_PROGRAM)
1210            OR ((tlinfo.OVERRIDE_CMPL_DT IS NULL)
1207            OR ((tlinfo.KEY_PROGRAM IS NULL)
1208                AND (X_KEY_PROGRAM IS NULL)))
1209       AND ((tlinfo.OVERRIDE_CMPL_DT = X_OVERRIDE_CMPL_DT)
1211                AND (X_OVERRIDE_CMPL_DT IS NULL)))
1212       AND ((tlinfo.MANUAL_OVR_CMPL_DT_IND = X_MANUAL_OVR_CMPL_DT_IND)
1213            OR ((tlinfo.MANUAL_OVR_CMPL_DT_IND IS NULL)
1214                AND (X_MANUAL_OVR_CMPL_DT_IND IS NULL)))
1215       AND ((tlinfo.COO_ID = X_COO_ID)
1216            OR ((tlinfo.COO_ID IS NULL)
1217                AND (X_COO_ID IS NULL)))
1218       AND ((tlinfo.IGS_PR_CLASS_STD_ID = X_IGS_PR_CLASS_STD_ID)
1219            OR ((tlinfo.IGS_PR_CLASS_STD_ID IS NULL)
1220                AND (X_IGS_PR_CLASS_STD_ID IS NULL)))
1221   ) THEN
1222     NULL;
1223   ELSE
1224     fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
1225 IGS_GE_MSG_STACK.ADD;
1226     APP_EXCEPTION.RAISE_EXCEPTION;
1227   END IF;
1228   RETURN;
1229 END LOCK_ROW;
1230 PROCEDURE UPDATE_ROW (
1231   X_ROWID IN  VARCHAR2,
1232   X_PERSON_ID IN NUMBER,
1233   X_COURSE_CD IN VARCHAR2,
1234   X_HIST_START_DT IN DATE,
1235   X_HIST_END_DT IN DATE,
1236   X_HIST_WHO IN NUMBER,
1237   X_VERSION_NUMBER IN NUMBER,
1238   X_CAL_TYPE IN VARCHAR2,
1239   X_LOCATION_CD IN VARCHAR2,
1240   X_ATTENDANCE_MODE IN VARCHAR2,
1241   X_ATTENDANCE_TYPE IN VARCHAR2,
1242   X_STUDENT_CONFIRMED_IND IN VARCHAR2,
1243   X_COMMENCEMENT_DT IN DATE,
1244   X_COURSE_ATTEMPT_STATUS IN VARCHAR2,
1245   X_PROGRESSION_STATUS IN VARCHAR2,
1246   X_DERIVED_ATT_TYPE IN VARCHAR2,
1247   X_DERIVED_ATT_MODE IN VARCHAR2,
1248   X_PROVISIONAL_IND IN VARCHAR2,
1249   X_DISCONTINUED_DT IN DATE,
1250   X_DISCONTINUATION_REASON_CD IN VARCHAR2,
1251   X_LAPSED_DT IN DATE,
1252   X_FUNDING_SOURCE IN VARCHAR2,
1253   X_FS_DESCRIPTION IN VARCHAR2,
1254   X_EXAM_LOCATION_CD IN VARCHAR2,
1255   X_ELO_DESCRIPTION IN VARCHAR2,
1256   X_DERIVED_COMPLETION_YR IN NUMBER,
1257   X_DERIVED_COMPLETION_PERD IN VARCHAR2,
1258   X_NOMINATED_COMPLETION_YR IN NUMBER,
1259   X_NOMINATED_COMPLETION_PERD IN VARCHAR2,
1260   X_RULE_CHECK_IND IN VARCHAR2,
1261   X_WAIVE_OPTION_CHECK_IND IN VARCHAR2,
1262   X_LAST_RULE_CHECK_DT IN DATE,
1263   X_PUBLISH_OUTCOMES_IND IN VARCHAR2,
1264   X_COURSE_RQRMNT_COMPLETE_IND IN VARCHAR2,
1265   X_COURSE_RQRMNTS_COMPLETE_DT IN DATE,
1266   X_S_COMPLETED_SOURCE_TYPE IN VARCHAR2,
1267   X_OVERRIDE_TIME_LIMITATION IN NUMBER,
1268   X_ADVANCED_STANDING_IND IN VARCHAR2,
1269   X_FEE_CAT IN VARCHAR2,
1270   X_FC_DESCRIPTION IN VARCHAR2,
1271   X_CORRESPONDENCE_CAT IN VARCHAR2,
1272   X_CC_DESCRIPTION IN VARCHAR2,
1273   X_SELF_HELP_GROUP_IND IN VARCHAR2,
1274   X_ADM_ADMISSION_APPL_NUMBER IN NUMBER,
1275   X_ADM_NOMINATED_COURSE_CD IN VARCHAR2,
1276   X_ADM_SEQUENCE_NUMBER IN NUMBER,
1277   X_MODE IN VARCHAR2 DEFAULT 'R',
1278   X_LAST_DATE_OF_ATTENDANCE IN DATE DEFAULT NULL,
1279   X_DROPPED_BY  IN VARCHAR2 DEFAULT NULL ,
1280   X_PRIMARY_PROGRAM_TYPE IN VARCHAR2 DEFAULT NULL,
1281   X_PRIMARY_PROG_TYPE_SOURCE IN VARCHAR2 DEFAULT NULL,
1282   X_CATALOG_CAL_TYPE IN VARCHAR2 DEFAULT NULL,
1283   X_CATALOG_SEQ_NUM IN NUMBER DEFAULT NULL,
1284   X_KEY_PROGRAM IN VARCHAR2 DEFAULT 'N',
1285   X_OVERRIDE_CMPL_DT  IN DATE DEFAULT NULL,
1286   X_MANUAL_OVR_CMPL_DT_IND IN VARCHAR2 DEFAULT 'N',
1287   X_COO_ID IN NUMBER DEFAULT NULL,
1288   X_IGS_PR_CLASS_STD_ID IN NUMBER DEFAULT NULL
1289  ) AS
1290     X_LAST_UPDATE_DATE DATE;
1291     X_LAST_UPDATED_BY NUMBER;
1292     X_LAST_UPDATE_LOGIN NUMBER;
1293 BEGIN
1294   X_LAST_UPDATE_DATE := SYSDATE;
1295   IF(X_MODE = 'I') THEN
1296     X_LAST_UPDATED_BY := 1;
1297     X_LAST_UPDATE_LOGIN := 0;
1298   ELSIF (X_MODE = 'R') THEN
1299     X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1300     IF X_LAST_UPDATED_BY IS NULL THEN
1301       X_LAST_UPDATED_BY := -1;
1302     END IF;
1303     X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
1304     IF X_LAST_UPDATE_LOGIN IS NULL THEN
1305       X_LAST_UPDATE_LOGIN := -1;
1306     END IF;
1307   ELSE
1308     FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
1309 IGS_GE_MSG_STACK.ADD;
1310     APP_EXCEPTION.RAISE_EXCEPTION;
1311   END IF;
1312 Before_DML(
1313   p_action=>'UPDATE',
1314   x_rowid=>X_ROWID,
1315   x_adm_admission_appl_number=>X_ADM_ADMISSION_APPL_NUMBER,
1316   x_adm_nominated_course_cd=>X_ADM_NOMINATED_COURSE_CD,
1317   x_adm_sequence_number=>X_ADM_SEQUENCE_NUMBER,
1318   x_advanced_standing_ind=>X_ADVANCED_STANDING_IND,
1319   x_attendance_mode=>X_ATTENDANCE_MODE,
1320   x_attendance_type=>X_ATTENDANCE_TYPE,
1321   x_cal_type=>X_CAL_TYPE,
1322   x_cc_description=>X_CC_DESCRIPTION,
1323   x_commencement_dt=>X_COMMENCEMENT_DT,
1324   x_correspondence_cat=>X_CORRESPONDENCE_CAT,
1325   x_course_attempt_status=>X_COURSE_ATTEMPT_STATUS,
1326   x_course_cd=>X_COURSE_CD,
1327   x_course_rqrmnt_complete_ind=>X_COURSE_RQRMNT_COMPLETE_IND,
1328   x_course_rqrmnts_complete_dt=>X_COURSE_RQRMNTS_COMPLETE_DT,
1329   x_derived_att_mode=>X_DERIVED_ATT_MODE,
1330   x_derived_att_type=>X_DERIVED_ATT_TYPE,
1331   x_derived_completion_perd=>X_DERIVED_COMPLETION_PERD,
1332   x_derived_completion_yr=>X_DERIVED_COMPLETION_YR,
1333   x_discontinuation_reason_cd=>X_DISCONTINUATION_REASON_CD,
1334   x_discontinued_dt=>X_DISCONTINUED_DT,
1335   x_elo_description=>X_ELO_DESCRIPTION,
1336   x_exam_location_cd=>X_EXAM_LOCATION_CD,
1337   x_fc_description=>X_FC_DESCRIPTION,
1338   x_fee_cat=>X_FEE_CAT,
1342   x_hist_start_dt=>X_HIST_START_DT,
1339   x_fs_description=>X_FS_DESCRIPTION,
1340   x_funding_source=>X_FUNDING_SOURCE,
1341   x_hist_end_dt=>X_HIST_END_DT,
1343   x_hist_who=>X_HIST_WHO,
1344   x_lapsed_dt=>X_LAPSED_DT,
1345   x_last_rule_check_dt=>X_LAST_RULE_CHECK_DT,
1346   x_location_cd=>X_LOCATION_CD,
1347   x_nominated_completion_perd=>X_NOMINATED_COMPLETION_PERD,
1348   x_nominated_completion_yr=>X_NOMINATED_COMPLETION_YR,
1349   x_override_time_limitation=>X_OVERRIDE_TIME_LIMITATION,
1350   x_person_id=>X_PERSON_ID,
1351   x_progression_status=>X_PROGRESSION_STATUS,
1352   x_provisional_ind=>X_PROVISIONAL_IND,
1353   x_publish_outcomes_ind=>X_PUBLISH_OUTCOMES_IND,
1354   x_rule_check_ind=>X_RULE_CHECK_IND,
1355   x_s_completed_source_type=>X_S_COMPLETED_SOURCE_TYPE,
1356   x_self_help_group_ind=>X_SELF_HELP_GROUP_IND,
1357   x_student_confirmed_ind=>X_STUDENT_CONFIRMED_IND,
1358   x_version_number=>X_VERSION_NUMBER,
1359   x_waive_option_check_ind=>X_WAIVE_OPTION_CHECK_IND,
1360   x_creation_date=>X_LAST_UPDATE_DATE,
1361   x_created_by=>X_LAST_UPDATED_BY,
1362   x_last_update_date=>X_LAST_UPDATE_DATE,
1363   x_last_updated_by=>X_LAST_UPDATED_BY,
1364   x_last_update_login=>X_LAST_UPDATE_LOGIN,
1365   x_last_date_of_attendance =>X_LAST_DATE_OF_ATTENDANCE,
1366   x_dropped_by =>X_DROPPED_BY,
1367   x_primary_program_type=>X_PRIMARY_PROGRAM_TYPE,
1368   x_primary_prog_type_source=>X_PRIMARY_PROG_TYPE_SOURCE,
1369   x_catalog_cal_type=>X_CATALOG_CAL_TYPE,
1370   x_catalog_seq_num=>X_CATALOG_SEQ_NUM,
1371   x_key_program=>X_KEY_PROGRAM,
1372   x_override_cmpl_dt  => X_OVERRIDE_CMPL_DT,
1373   x_manual_ovr_cmpl_dt_ind => X_MANUAL_OVR_CMPL_DT_IND,
1374   x_coo_id   => X_COO_ID,
1375   X_igs_pr_class_std_id => X_IGS_PR_CLASS_STD_ID
1376   );
1377   UPDATE IGS_AS_SC_ATTEMPT_H_ALL SET
1378     HIST_END_DT = NEW_REFERENCES.HIST_END_DT,
1379     HIST_WHO = NEW_REFERENCES.HIST_WHO,
1380     VERSION_NUMBER = NEW_REFERENCES.VERSION_NUMBER,
1381     CAL_TYPE = NEW_REFERENCES.CAL_TYPE,
1382     LOCATION_CD = NEW_REFERENCES.LOCATION_CD,
1383     ATTENDANCE_MODE = NEW_REFERENCES.ATTENDANCE_MODE,
1384     ATTENDANCE_TYPE = NEW_REFERENCES.ATTENDANCE_TYPE,
1385     STUDENT_CONFIRMED_IND = NEW_REFERENCES.STUDENT_CONFIRMED_IND,
1386     COMMENCEMENT_DT = NEW_REFERENCES.COMMENCEMENT_DT,
1387     COURSE_ATTEMPT_STATUS = NEW_REFERENCES.COURSE_ATTEMPT_STATUS,
1388     PROGRESSION_STATUS = NEW_REFERENCES.PROGRESSION_STATUS,
1389     DERIVED_ATT_TYPE = NEW_REFERENCES.DERIVED_ATT_TYPE,
1390     DERIVED_ATT_MODE = NEW_REFERENCES.DERIVED_ATT_MODE,
1391     PROVISIONAL_IND = NEW_REFERENCES.PROVISIONAL_IND,
1392     DISCONTINUED_DT = NEW_REFERENCES.DISCONTINUED_DT,
1393     DISCONTINUATION_REASON_CD = NEW_REFERENCES.DISCONTINUATION_REASON_CD,
1394     LAPSED_DT = NEW_REFERENCES.LAPSED_DT,
1395     FUNDING_SOURCE = NEW_REFERENCES.FUNDING_SOURCE,
1396     FS_DESCRIPTION = NEW_REFERENCES.FS_DESCRIPTION,
1397     EXAM_LOCATION_CD = NEW_REFERENCES.EXAM_LOCATION_CD,
1398     ELO_DESCRIPTION = NEW_REFERENCES.ELO_DESCRIPTION,
1399     DERIVED_COMPLETION_YR = NEW_REFERENCES.DERIVED_COMPLETION_YR,
1400     DERIVED_COMPLETION_PERD = NEW_REFERENCES.DERIVED_COMPLETION_PERD,
1401     NOMINATED_COMPLETION_YR = NEW_REFERENCES.NOMINATED_COMPLETION_YR,
1402     NOMINATED_COMPLETION_PERD = NEW_REFERENCES.NOMINATED_COMPLETION_PERD,
1403     RULE_CHECK_IND = NEW_REFERENCES.RULE_CHECK_IND,
1404     WAIVE_OPTION_CHECK_IND = NEW_REFERENCES.WAIVE_OPTION_CHECK_IND,
1405     LAST_RULE_CHECK_DT = NEW_REFERENCES.LAST_RULE_CHECK_DT,
1406     PUBLISH_OUTCOMES_IND = NEW_REFERENCES.PUBLISH_OUTCOMES_IND,
1407     COURSE_RQRMNT_COMPLETE_IND = NEW_REFERENCES.COURSE_RQRMNT_COMPLETE_IND,
1408     COURSE_RQRMNTS_COMPLETE_DT = NEW_REFERENCES.COURSE_RQRMNTS_COMPLETE_DT,
1409     S_COMPLETED_SOURCE_TYPE = NEW_REFERENCES.S_COMPLETED_SOURCE_TYPE,
1410     OVERRIDE_TIME_LIMITATION = NEW_REFERENCES.OVERRIDE_TIME_LIMITATION,
1411     ADVANCED_STANDING_IND = NEW_REFERENCES.ADVANCED_STANDING_IND,
1412     FEE_CAT = NEW_REFERENCES.FEE_CAT,
1413     FC_DESCRIPTION = NEW_REFERENCES.FC_DESCRIPTION,
1414     CORRESPONDENCE_CAT = NEW_REFERENCES.CORRESPONDENCE_CAT,
1415     CC_DESCRIPTION = NEW_REFERENCES.CC_DESCRIPTION,
1416     SELF_HELP_GROUP_IND = NEW_REFERENCES.SELF_HELP_GROUP_IND,
1417     ADM_ADMISSION_APPL_NUMBER = NEW_REFERENCES.ADM_ADMISSION_APPL_NUMBER,
1418     ADM_NOMINATED_COURSE_CD = NEW_REFERENCES.ADM_NOMINATED_COURSE_CD,
1419     ADM_SEQUENCE_NUMBER = NEW_REFERENCES.ADM_SEQUENCE_NUMBER,
1420     LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
1421     LAST_UPDATED_BY = X_LAST_UPDATED_BY,
1422     LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
1423     LAST_DATE_OF_ATTENDANCE= NEW_REFERENCES.LAST_DATE_OF_ATTENDANCE,
1424     DROPPED_BY = NEW_REFERENCES.DROPPED_BY,
1425     PRIMARY_PROGRAM_TYPE=NEW_REFERENCES.PRIMARY_PROGRAM_TYPE,
1426     PRIMARY_PROG_TYPE_SOURCE=NEW_REFERENCES.PRIMARY_PROG_TYPE_SOURCE,
1427     CATALOG_CAL_TYPE=NEW_REFERENCES.CATALOG_CAL_TYPE,
1428     CATALOG_SEQ_NUM=NEW_REFERENCES.CATALOG_SEQ_NUM,
1429     KEY_PROGRAM=NEW_REFERENCES.KEY_PROGRAM,
1430     OVERRIDE_CMPL_DT = NEW_REFERENCES.OVERRIDE_CMPL_DT,
1431     MANUAL_OVR_CMPL_DT_IND = NEW_REFERENCES.MANUAL_OVR_CMPL_DT_IND,
1432     COO_ID = NEW_REFERENCES.COO_ID,
1433     IGS_PR_CLASS_STD_ID=NEW_REFERENCES.IGS_PR_CLASS_STD_ID
1434   WHERE ROWID = X_ROWID;
1435   IF (SQL%NOTFOUND) THEN
1436     RAISE NO_DATA_FOUND;
1437   END IF;
1438 
1439 END UPDATE_ROW;
1440 PROCEDURE ADD_ROW (
1441   X_ROWID IN OUT NOCOPY VARCHAR2,
1442   X_ORG_ID IN NUMBER,
1443   X_PERSON_ID IN NUMBER,
1444   X_COURSE_CD IN VARCHAR2,
1445   X_HIST_START_DT IN DATE,
1446   X_HIST_END_DT IN DATE,
1450   X_LOCATION_CD IN VARCHAR2,
1447   X_HIST_WHO IN NUMBER,
1448   X_VERSION_NUMBER IN NUMBER,
1449   X_CAL_TYPE IN VARCHAR2,
1451   X_ATTENDANCE_MODE IN VARCHAR2,
1452   X_ATTENDANCE_TYPE IN VARCHAR2,
1453   X_STUDENT_CONFIRMED_IND IN VARCHAR2,
1454   X_COMMENCEMENT_DT IN DATE,
1455   X_COURSE_ATTEMPT_STATUS IN VARCHAR2,
1456   X_PROGRESSION_STATUS IN VARCHAR2,
1457   X_DERIVED_ATT_TYPE IN VARCHAR2,
1458   X_DERIVED_ATT_MODE IN VARCHAR2,
1459   X_PROVISIONAL_IND IN VARCHAR2,
1460   X_DISCONTINUED_DT IN DATE,
1461   X_DISCONTINUATION_REASON_CD IN VARCHAR2,
1462   X_LAPSED_DT IN DATE,
1463   X_FUNDING_SOURCE IN VARCHAR2,
1464   X_FS_DESCRIPTION IN VARCHAR2,
1465   X_EXAM_LOCATION_CD IN VARCHAR2,
1466   X_ELO_DESCRIPTION IN VARCHAR2,
1467   X_DERIVED_COMPLETION_YR IN NUMBER,
1468   X_DERIVED_COMPLETION_PERD IN VARCHAR2,
1469   X_NOMINATED_COMPLETION_YR IN NUMBER,
1470   X_NOMINATED_COMPLETION_PERD IN VARCHAR2,
1471   X_RULE_CHECK_IND IN VARCHAR2,
1472   X_WAIVE_OPTION_CHECK_IND IN VARCHAR2,
1473   X_LAST_RULE_CHECK_DT IN DATE,
1474   X_PUBLISH_OUTCOMES_IND IN VARCHAR2,
1475   X_COURSE_RQRMNT_COMPLETE_IND IN VARCHAR2,
1476   X_COURSE_RQRMNTS_COMPLETE_DT IN DATE,
1477   X_S_COMPLETED_SOURCE_TYPE IN VARCHAR2,
1478   X_OVERRIDE_TIME_LIMITATION IN NUMBER,
1479   X_ADVANCED_STANDING_IND IN VARCHAR2,
1480   X_FEE_CAT IN VARCHAR2,
1481   X_FC_DESCRIPTION IN VARCHAR2,
1482   X_CORRESPONDENCE_CAT IN VARCHAR2,
1483   X_CC_DESCRIPTION IN VARCHAR2,
1484   X_SELF_HELP_GROUP_IND IN VARCHAR2,
1485   X_ADM_ADMISSION_APPL_NUMBER IN NUMBER,
1486   X_ADM_NOMINATED_COURSE_CD IN VARCHAR2,
1487   X_ADM_SEQUENCE_NUMBER IN NUMBER,
1488   X_MODE IN VARCHAR2 DEFAULT 'R',
1489   X_LAST_DATE_OF_ATTENDANCE IN DATE DEFAULT NULL,
1490   X_DROPPED_BY  IN VARCHAR2 DEFAULT NULL ,
1491   X_PRIMARY_PROGRAM_TYPE IN VARCHAR2 DEFAULT NULL,
1492   X_PRIMARY_PROG_TYPE_SOURCE IN VARCHAR2 DEFAULT NULL,
1493   X_CATALOG_CAL_TYPE IN VARCHAR2 DEFAULT NULL,
1494   X_CATALOG_SEQ_NUM IN NUMBER DEFAULT NULL,
1495   X_KEY_PROGRAM IN VARCHAR2 DEFAULT 'N',
1496   X_OVERRIDE_CMPL_DT  IN DATE DEFAULT NULL,
1497   X_MANUAL_OVR_CMPL_DT_IND  IN VARCHAR2 DEFAULT 'N',
1498   X_COO_ID IN NUMBER DEFAULT NULL,
1499   X_IGS_PR_CLASS_STD_ID IN NUMBER DEFAULT NULL
1500   ) AS
1501   CURSOR c1 IS SELECT ROWID FROM IGS_AS_SC_ATTEMPT_H_ALL
1502      WHERE PERSON_ID = X_PERSON_ID
1503      AND COURSE_CD = X_COURSE_CD
1504      AND HIST_START_DT = X_HIST_START_DT
1505   ;
1506 BEGIN
1507   OPEN c1;
1508   FETCH c1 INTO X_ROWID;
1509   IF (c1%NOTFOUND) THEN
1510     CLOSE c1;
1511     INSERT_ROW (
1512      X_ROWID,
1513      X_ORG_ID,
1514      X_PERSON_ID,
1515      X_COURSE_CD,
1516      X_HIST_START_DT,
1517      X_HIST_END_DT,
1518      X_HIST_WHO,
1519      X_VERSION_NUMBER,
1520      X_CAL_TYPE,
1521      X_LOCATION_CD,
1522      X_ATTENDANCE_MODE,
1523      X_ATTENDANCE_TYPE,
1524      X_STUDENT_CONFIRMED_IND,
1525      X_COMMENCEMENT_DT,
1526      X_COURSE_ATTEMPT_STATUS,
1527      X_PROGRESSION_STATUS,
1528      X_DERIVED_ATT_TYPE,
1529      X_DERIVED_ATT_MODE,
1530      X_PROVISIONAL_IND,
1531      X_DISCONTINUED_DT,
1532      X_DISCONTINUATION_REASON_CD,
1533      X_LAPSED_DT,
1534      X_FUNDING_SOURCE,
1535      X_FS_DESCRIPTION,
1536      X_EXAM_LOCATION_CD,
1537      X_ELO_DESCRIPTION,
1538      X_DERIVED_COMPLETION_YR,
1539      X_DERIVED_COMPLETION_PERD,
1540      X_NOMINATED_COMPLETION_YR,
1541      X_NOMINATED_COMPLETION_PERD,
1542      X_RULE_CHECK_IND,
1543      X_WAIVE_OPTION_CHECK_IND,
1544      X_LAST_RULE_CHECK_DT,
1545      X_PUBLISH_OUTCOMES_IND,
1546      X_COURSE_RQRMNT_COMPLETE_IND,
1547      X_COURSE_RQRMNTS_COMPLETE_DT,
1548      X_S_COMPLETED_SOURCE_TYPE,
1549      X_OVERRIDE_TIME_LIMITATION,
1550      X_ADVANCED_STANDING_IND,
1551      X_FEE_CAT,
1552      X_FC_DESCRIPTION,
1553      X_CORRESPONDENCE_CAT,
1554      X_CC_DESCRIPTION,
1555      X_SELF_HELP_GROUP_IND,
1556      X_ADM_ADMISSION_APPL_NUMBER,
1557      X_ADM_NOMINATED_COURSE_CD,
1561      X_DROPPED_BY,
1558      X_ADM_SEQUENCE_NUMBER,
1559      X_MODE,
1560      X_LAST_DATE_OF_ATTENDANCE,
1562      X_PRIMARY_PROGRAM_TYPE,
1563      X_PRIMARY_PROG_TYPE_SOURCE,
1564      X_CATALOG_CAL_TYPE,
1565      X_CATALOG_SEQ_NUM,
1566      X_KEY_PROGRAM,
1567      X_OVERRIDE_CMPL_DT,
1568      X_MANUAL_OVR_CMPL_DT_IND,
1569      X_COO_ID,
1570      X_IGS_PR_CLASS_STD_ID
1571 );
1572     RETURN;
1573   END IF;
1574   CLOSE c1;
1575   UPDATE_ROW (
1576    X_ROWID,
1577    X_PERSON_ID,
1578    X_COURSE_CD,
1579    X_HIST_START_DT,
1580    X_HIST_END_DT,
1581    X_HIST_WHO,
1582    X_VERSION_NUMBER,
1583    X_CAL_TYPE,
1584    X_LOCATION_CD,
1585    X_ATTENDANCE_MODE,
1586    X_ATTENDANCE_TYPE,
1587    X_STUDENT_CONFIRMED_IND,
1588    X_COMMENCEMENT_DT,
1589    X_COURSE_ATTEMPT_STATUS,
1590    X_PROGRESSION_STATUS,
1591    X_DERIVED_ATT_TYPE,
1592    X_DERIVED_ATT_MODE,
1593    X_PROVISIONAL_IND,
1594    X_DISCONTINUED_DT,
1595    X_DISCONTINUATION_REASON_CD,
1596    X_LAPSED_DT,
1597    X_FUNDING_SOURCE,
1598    X_FS_DESCRIPTION,
1599    X_EXAM_LOCATION_CD,
1600    X_ELO_DESCRIPTION,
1601    X_DERIVED_COMPLETION_YR,
1602    X_DERIVED_COMPLETION_PERD,
1603    X_NOMINATED_COMPLETION_YR,
1604    X_NOMINATED_COMPLETION_PERD,
1605    X_RULE_CHECK_IND,
1606    X_WAIVE_OPTION_CHECK_IND,
1607    X_LAST_RULE_CHECK_DT,
1608    X_PUBLISH_OUTCOMES_IND,
1609    X_COURSE_RQRMNT_COMPLETE_IND,
1610    X_COURSE_RQRMNTS_COMPLETE_DT,
1611    X_S_COMPLETED_SOURCE_TYPE,
1612    X_OVERRIDE_TIME_LIMITATION,
1613    X_ADVANCED_STANDING_IND,
1614    X_FEE_CAT,
1615    X_FC_DESCRIPTION,
1616    X_CORRESPONDENCE_CAT,
1617    X_CC_DESCRIPTION,
1618    X_SELF_HELP_GROUP_IND,
1619    X_ADM_ADMISSION_APPL_NUMBER,
1620    X_ADM_NOMINATED_COURSE_CD,
1621    X_ADM_SEQUENCE_NUMBER,
1622    X_MODE,
1623    X_LAST_DATE_OF_ATTENDANCE,
1624    X_DROPPED_BY,
1625    X_PRIMARY_PROGRAM_TYPE,
1626    X_PRIMARY_PROG_TYPE_SOURCE,
1627    X_CATALOG_CAL_TYPE,
1628    X_CATALOG_SEQ_NUM,
1629    X_KEY_PROGRAM,
1630    X_OVERRIDE_CMPL_DT,
1631    X_MANUAL_OVR_CMPL_DT_IND,
1632    X_COO_ID,
1633    X_IGS_PR_CLASS_STD_ID
1634 );
1635 END ADD_ROW;
1636 PROCEDURE DELETE_ROW (
1637   X_ROWID IN VARCHAR2) AS
1638 BEGIN
1639 Before_DML(
1640   p_action => 'DELETE',
1641   x_rowid => X_ROWID
1642   );
1643   DELETE FROM IGS_AS_SC_ATTEMPT_H_ALL
1644  WHERE ROWID = X_ROWID;
1645   IF (SQL%NOTFOUND) THEN
1646     RAISE NO_DATA_FOUND;
1647   END IF;
1648 END DELETE_ROW;
1649 
1650 END IGS_AS_SC_ATTEMPT_H_PKG;