1 package body IGS_PR_S_PRG_CONF_PKG AS
2 /* $Header: IGSQI26B.pls 115.6 2002/11/29 03:20:51 nsidana ship $ */
3
4 l_rowid VARCHAR2(25);
5 old_references IGS_PR_S_PRG_CONF%RowType;
6 new_references IGS_PR_S_PRG_CONF%RowType;
7
8 PROCEDURE Set_Column_Values (
9 p_action IN VARCHAR2,
10 x_rowid IN VARCHAR2 DEFAULT NULL,
11 x_s_control_num IN NUMBER DEFAULT NULL,
12 x_effective_end_dt_alias IN VARCHAR2 DEFAULT NULL,
13 x_apply_start_dt_alias IN VARCHAR2 DEFAULT NULL,
14 x_apply_end_dt_alias IN VARCHAR2 DEFAULT NULL,
15 x_end_benefit_dt_alias IN VARCHAR2 DEFAULT NULL,
16 x_end_penalty_dt_alias IN VARCHAR2 DEFAULT NULL,
17 x_show_cause_cutoff_dt_alias IN VARCHAR2 DEFAULT NULL,
18 x_appeal_cutoff_dt_alias IN VARCHAR2 DEFAULT NULL,
19 x_show_cause_ind IN VARCHAR2 DEFAULT NULL,
20 x_apply_before_show_ind IN VARCHAR2 DEFAULT NULL,
21 x_appeal_ind IN VARCHAR2 DEFAULT NULL,
22 x_apply_before_appeal_ind IN VARCHAR2 DEFAULT NULL,
23 x_count_sus_in_time_ind IN VARCHAR2 DEFAULT NULL,
24 x_count_exc_in_time_ind IN VARCHAR2 DEFAULT NULL,
25 x_calculate_wam_ind IN VARCHAR2 DEFAULT NULL,
26 x_calculate_gpa_ind IN VARCHAR2 DEFAULT NULL,
27 x_encumb_end_dt_alias IN VARCHAR2 DEFAULT NULL,
28 x_outcome_check_type IN VARCHAR2 DEFAULT NULL,
29 x_creation_date IN DATE DEFAULT NULL,
30 x_created_by IN NUMBER DEFAULT NULL,
31 x_last_update_date IN DATE DEFAULT NULL,
32 x_last_updated_by IN NUMBER DEFAULT NULL,
33 x_last_update_login IN NUMBER DEFAULT NULL
34 ) AS
35
36 CURSOR cur_old_ref_values IS
37 SELECT *
38 FROM IGS_PR_S_PRG_CONF
39 WHERE rowid = x_rowid;
40
41 BEGIN
42
43 l_rowid := x_rowid;
44
45 -- Code for setting the Old and New Reference Values.
46 -- Populate Old Values.
47 Open cur_old_ref_values;
48 Fetch cur_old_ref_values INTO old_references;
49 IF (cur_old_ref_values%NOTFOUND) AND (p_action not in ('INSERT','VALIDATE_INSERT')) THEN
50 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
51 IGS_GE_MSG_STACK.ADD;
52 Close cur_old_ref_values;
53 App_Exception.Raise_Exception;
54
55 Return;
56 END IF;
57 Close cur_old_ref_values;
58
59 -- Populate New Values.
60 new_references.s_control_num := x_s_control_num;
61 new_references.effective_end_dt_alias := x_effective_end_dt_alias;
62 new_references.apply_start_dt_alias := x_apply_start_dt_alias;
63 new_references.apply_end_dt_alias := x_apply_end_dt_alias;
64 new_references.end_benefit_dt_alias := x_end_benefit_dt_alias;
65 new_references.end_penalty_dt_alias := x_end_penalty_dt_alias;
66 new_references.show_cause_cutoff_dt_alias := x_show_cause_cutoff_dt_alias;
67 new_references.appeal_cutoff_dt_alias := x_appeal_cutoff_dt_alias;
68 new_references.show_cause_ind := x_show_cause_ind;
69 new_references.apply_before_show_ind := x_apply_before_show_ind;
70 new_references.appeal_ind := x_appeal_ind;
71 new_references.apply_before_appeal_ind := x_apply_before_appeal_ind;
72 new_references.count_sus_in_time_ind := x_count_sus_in_time_ind;
73 new_references.count_exc_in_time_ind := x_count_exc_in_time_ind;
74 new_references.calculate_wam_ind := x_calculate_wam_ind;
75 new_references.calculate_gpa_ind := x_calculate_gpa_ind;
76 new_references.encumb_end_dt_alias := x_encumb_end_dt_alias;
77 new_references.outcome_check_type := x_outcome_check_type;
78 IF (p_action = 'UPDATE') THEN
79 new_references.creation_date := old_references.creation_date;
80 new_references.created_by := old_references.created_by;
81 ELSE
82 new_references.creation_date := x_creation_date;
83 new_references.created_by := x_created_by;
84 END IF;
85 new_references.last_update_date := x_last_update_date;
86 new_references.last_updated_by := x_last_updated_by;
87 new_references.last_update_login := x_last_update_login;
88
89 END Set_Column_Values;
90
91 -- Trigger description :-
92 -- "OSS_TST".trg_sprgc_br_iu
93 -- BEFORE INSERT OR UPDATE
94 -- ON IGS_PR_S_PRG_CONF
95 -- FOR EACH ROW
96
97 PROCEDURE BeforeRowInsertUpdate1(
98 p_inserting IN BOOLEAN DEFAULT FALSE,
99 p_updating IN BOOLEAN DEFAULT FALSE,
100 p_deleting IN BOOLEAN DEFAULT FALSE
101 ) AS
102 v_message_name varchar2(30);
103 BEGIN
104 -- Validate the effective end date alias
105 IF p_inserting OR (p_updating AND
106 new_references.effective_end_dt_alias <> old_references.effective_end_dt_alias) THEN
107 IF igs_pr_val_scpc.prgp_val_da_closed (
108 new_references.effective_end_dt_alias,
109 v_message_name) = FALSE THEN
110 Fnd_Message.Set_Name('IGS',v_message_name);
111 IGS_GE_MSG_STACK.ADD;
112 App_Exception.Raise_Exception;
113 END IF;
114 END IF;
115 -- Validate the application start date alias
116 IF p_inserting OR (p_updating AND
117 new_references.apply_start_dt_alias <> old_references.apply_start_dt_alias) THEN
118 IF igs_pr_val_scpc.prgp_val_da_closed (
119 new_references.apply_start_dt_alias,
120 v_message_name) = FALSE THEN
121 Fnd_Message.Set_Name('IGS',v_message_name);
122 IGS_GE_MSG_STACK.ADD;
123 App_Exception.Raise_Exception;
124 END IF;
125 END IF;
126 -- Validate the application end date alias
127 IF p_inserting OR (p_updating AND
128 new_references.apply_end_dt_alias <> old_references.apply_end_dt_alias) THEN
129 IF igs_pr_val_scpc.prgp_val_da_closed (
130 new_references.apply_end_dt_alias,
131 v_message_name) = FALSE THEN
132 Fnd_Message.Set_Name('IGS',v_message_name);
133 IGS_GE_MSG_STACK.ADD;
134 App_Exception.Raise_Exception;
135 END IF;
136 END IF;
137 -- Validate the end benefit date alias
138 IF p_inserting OR (p_updating AND
139 new_references.end_benefit_dt_alias <> old_references.end_benefit_dt_alias) THEN
140 IF igs_pr_val_scpc.prgp_val_da_closed (
141 new_references.end_benefit_dt_alias,
142 v_message_name) = FALSE THEN
143 Fnd_Message.Set_Name('IGS',v_message_name);
144 IGS_GE_MSG_STACK.ADD;
145 App_Exception.Raise_Exception;
146 END IF;
147 END IF;
148 -- Validate the end penalty date alias
149 IF p_inserting OR (p_updating AND
150 new_references.end_penalty_dt_alias <> old_references.end_penalty_dt_alias) THEN
151 IF igs_pr_val_scpc.prgp_val_da_closed (
152 new_references.end_penalty_dt_alias,
153 v_message_name) = FALSE THEN
154 Fnd_Message.Set_Name('IGS',v_message_name);
155 IGS_GE_MSG_STACK.ADD;
156 App_Exception.Raise_Exception;
157 END IF;
158 END IF;
159 -- Validate the show cause cut off date alias can only be set when the
160 -- show cause ind indicator is set to Y
161 IF p_inserting OR p_updating THEN
162 IF igs_pr_val_scpc.prgp_val_cause_da (
163 new_references.show_cause_ind,
164 new_references.show_cause_cutoff_dt_alias,
165 v_message_name) = FALSE THEN
166 Fnd_Message.Set_Name('IGS',v_message_name);
167 IGS_GE_MSG_STACK.ADD;
168 App_Exception.Raise_Exception;
169 END IF;
170 END IF;
171 -- Validate the appeal cut off date alias can only be set when the
172 -- appeal ind indicator is set to Y
173 IF p_inserting OR p_updating THEN
174 IF igs_pr_val_scpc.prgp_val_appeal_da (
175 new_references.appeal_ind,
176 new_references.appeal_cutoff_dt_alias,
177 v_message_name) = FALSE THEN
178 Fnd_Message.Set_Name('IGS',v_message_name);
179 IGS_GE_MSG_STACK.ADD;
180 App_Exception.Raise_Exception;
181 END IF;
182 END IF;
183 -- Validate the show cause ind indicator cannot be set to N when there are
184 -- related progression calendar records with show cause length set.
185 IF p_inserting OR p_updating THEN
186 IF IGS_PR_VAL_SPRGC.prgp_val_sprgc_cause (
187 new_references.show_cause_ind,
188 v_message_name) = FALSE THEN
189 Fnd_Message.Set_Name('IGS',v_message_name);
190 IGS_GE_MSG_STACK.ADD;
191 App_Exception.Raise_Exception;
192 END IF;
193 END IF;
194 -- Validate the appeal ind indicator cannot be set to N when there are
195 -- related progression calendar records with appeallength set.
196 IF p_inserting OR p_updating THEN
197 IF IGS_PR_VAL_SPRGC.prgp_val_sprgc_apl (
198 new_references.appeal_ind,
199 v_message_name) = FALSE THEN
200 Fnd_Message.Set_Name('IGS',v_message_name);
201 IGS_GE_MSG_STACK.ADD;
202 App_Exception.Raise_Exception;
203 END IF;
204 END IF;
205 -- Validate the show cause cut off date alias
206 IF p_inserting OR (p_updating AND
207 NVL(new_references.show_cause_cutoff_dt_alias, 'NULL') <>
208 NVL(old_references.show_cause_cutoff_dt_alias, 'NULL')) THEN
209 IF igs_pr_val_scpc.prgp_val_da_closed (
210 new_references.show_cause_cutoff_dt_alias,
211 v_message_name) = FALSE THEN
212 Fnd_Message.Set_Name('IGS',v_message_name);
213 IGS_GE_MSG_STACK.ADD;
214 App_Exception.Raise_Exception;
215 END IF;
216 END IF;
217 -- Validate the appeal cut off date alias
218 IF p_inserting OR (p_updating AND
219 NVL(new_references.appeal_cutoff_dt_alias, 'NULL') <>
220 NVL(old_references.appeal_cutoff_dt_alias, 'NULL')) THEN
221 IF igs_pr_val_scpc.prgp_val_da_closed (
222 new_references.appeal_cutoff_dt_alias,
223 v_message_name) = FALSE THEN
224 Fnd_Message.Set_Name('IGS',v_message_name);
225 IGS_GE_MSG_STACK.ADD;
226 App_Exception.Raise_Exception;
227 END IF;
228 END IF;
229
230
231 END BeforeRowInsertUpdate1;
232
233
234 PROCEDURE Check_Parent_Existance AS
235 BEGIN
236
237 IF (((old_references.appeal_cutoff_dt_alias = new_references.appeal_cutoff_dt_alias)) OR
238 ((new_references.appeal_cutoff_dt_alias IS NULL))) THEN
239 NULL;
240 ELSE
241 IF NOT IGS_CA_DA_PKG.Get_PK_For_Validation (
242 new_references.appeal_cutoff_dt_alias
243 ) THEN
244 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
245 IGS_GE_MSG_STACK.ADD;
246 App_Exception.Raise_Exception;
247 END IF;
248 END IF;
249
250 IF (((old_references.end_benefit_dt_alias = new_references.end_benefit_dt_alias)) OR
251 ((new_references.end_benefit_dt_alias IS NULL))) THEN
252 NULL;
253 ELSE
254 IF NOT IGS_CA_DA_PKG.Get_PK_For_Validation (
255 new_references.end_benefit_dt_alias
256 ) THEN
257 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
258 IGS_GE_MSG_STACK.ADD;
259 App_Exception.Raise_Exception;
260 END IF;
261 END IF;
262
263 IF (((old_references.show_cause_cutoff_dt_alias = new_references.show_cause_cutoff_dt_alias)) OR
264 ((new_references.show_cause_cutoff_dt_alias IS NULL))) THEN
265 NULL;
266 ELSE
267 IF NOT IGS_CA_DA_PKG.Get_PK_For_Validation (
268 new_references.show_cause_cutoff_dt_alias
269 ) THEN
270 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
271 IGS_GE_MSG_STACK.ADD;
272 App_Exception.Raise_Exception;
273 END IF;
274 END IF;
275
276 IF (((old_references.effective_end_dt_alias = new_references.effective_end_dt_alias)) OR
277 ((new_references.effective_end_dt_alias IS NULL))) THEN
278 NULL;
279 ELSE
280 IF NOT IGS_CA_DA_PKG.Get_PK_For_Validation (
281 new_references.effective_end_dt_alias
282 ) THEN
283 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
284 IGS_GE_MSG_STACK.ADD;
285 App_Exception.Raise_Exception;
286 END IF;
287 END IF;
288
289 IF (((old_references.apply_end_dt_alias = new_references.apply_end_dt_alias)) OR
290 ((new_references.apply_end_dt_alias IS NULL))) THEN
291 NULL;
292 ELSE
293 IF NOT IGS_CA_DA_PKG.Get_PK_For_Validation (
294 new_references.apply_end_dt_alias
295 ) THEN
296 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
297 IGS_GE_MSG_STACK.ADD;
298 App_Exception.Raise_Exception;
299 END IF;
300 END IF;
301
302 IF (((old_references.end_penalty_dt_alias = new_references.end_penalty_dt_alias)) OR
303 ((new_references.end_penalty_dt_alias IS NULL))) THEN
304 NULL;
305 ELSE
306 IF NOT IGS_CA_DA_PKG.Get_PK_For_Validation (
307 new_references.end_penalty_dt_alias
308 ) THEN
309 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
310 IGS_GE_MSG_STACK.ADD;
311 App_Exception.Raise_Exception;
312 END IF;
313 END IF;
314
315 IF (((old_references.apply_start_dt_alias = new_references.apply_start_dt_alias)) OR
316 ((new_references.apply_start_dt_alias IS NULL))) THEN
317 NULL;
318 ELSE
319 IF NOT IGS_CA_DA_PKG.Get_PK_For_Validation (
320 new_references.apply_start_dt_alias
321 ) THEN
322 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
323 IGS_GE_MSG_STACK.ADD;
324 App_Exception.Raise_Exception;
325 END IF;
326 END IF;
327
328 END Check_Parent_Existance;
329
330 PROCEDURE Check_Child_Existance AS
331 BEGIN
332
333 IGS_PR_S_PRG_CAL_PKG.GET_FK_IGS_PR_S_PRG_CONF (
334 old_references.s_control_num
335 );
336
337 END Check_Child_Existance;
338
339 FUNCTION Get_PK_For_Validation (
340 x_s_control_num IN NUMBER
341 ) RETURN BOOLEAN AS
342
343 CURSOR cur_rowid IS
344 SELECT rowid
345 FROM IGS_PR_S_PRG_CONF
346 WHERE s_control_num = x_s_control_num
347 FOR UPDATE NOWAIT;
348
349 lv_rowid cur_rowid%RowType;
350
351 BEGIN
352
353 Open cur_rowid;
354 Fetch cur_rowid INTO lv_rowid;
355 IF (cur_rowid%FOUND) THEN
356 Close Cur_rowid;
357 Return(TRUE);
358 ELSE
359 Close cur_rowid;
360 Return(FALSE);
361 END IF;
362
363 END Get_PK_For_Validation;
364
365
366 PROCEDURE GET_FK_IGS_CA_DA (
367 x_dt_alias IN varchar2
368 ) AS
369
370 CURSOR cur_rowid IS
371 SELECT rowid
372 FROM IGS_PR_S_PRG_CONF
373 WHERE apply_start_dt_alias = x_dt_alias
374 OR appeal_cutoff_dt_alias = x_dt_alias
375 OR end_benefit_dt_alias = x_dt_alias
376 OR show_cause_cutoff_dt_alias = x_dt_alias
377 OR effective_end_dt_alias = x_dt_alias
378 OR apply_end_dt_alias = x_dt_alias
379 OR end_penalty_dt_alias = x_dt_alias;
380
381 lv_rowid cur_rowid%RowType;
382
383 BEGIN
384
385 Open cur_rowid;
386 Fetch cur_rowid INTO lv_rowid;
387 IF (cur_rowid%FOUND) THEN
388 Fnd_Message.Set_Name ('IGS', 'IGS_PR_SPRGC_DA_APPEAL_FK');
389 IGS_GE_MSG_STACK.ADD;
390 Close cur_rowid;
391 App_Exception.Raise_Exception;
392
393 Return;
394 END IF;
395 Close cur_rowid;
396
397 END GET_FK_IGS_CA_DA;
398
399 PROCEDURE Before_DML (
400 p_action IN VARCHAR2,
401 x_rowid IN VARCHAR2 DEFAULT NULL,
402 x_s_control_num IN NUMBER DEFAULT NULL,
403 x_effective_end_dt_alias IN VARCHAR2 DEFAULT NULL,
404 x_apply_start_dt_alias IN VARCHAR2 DEFAULT NULL,
405 x_apply_end_dt_alias IN VARCHAR2 DEFAULT NULL,
406 x_end_benefit_dt_alias IN VARCHAR2 DEFAULT NULL,
407 x_end_penalty_dt_alias IN VARCHAR2 DEFAULT NULL,
408 x_show_cause_cutoff_dt_alias IN VARCHAR2 DEFAULT NULL,
409 x_appeal_cutoff_dt_alias IN VARCHAR2 DEFAULT NULL,
410 x_show_cause_ind IN VARCHAR2 DEFAULT NULL,
411 x_apply_before_show_ind IN VARCHAR2 DEFAULT NULL,
412 x_appeal_ind IN VARCHAR2 DEFAULT NULL,
413 x_apply_before_appeal_ind IN VARCHAR2 DEFAULT NULL,
414 x_count_sus_in_time_ind IN VARCHAR2 DEFAULT NULL,
415 x_count_exc_in_time_ind IN VARCHAR2 DEFAULT NULL,
416 x_calculate_wam_ind IN VARCHAR2 DEFAULT NULL,
417 x_calculate_gpa_ind IN VARCHAR2 DEFAULT NULL,
418 x_encumb_end_dt_alias IN VARCHAR2 DEFAULT NULL,
419 x_outcome_check_type IN VARCHAR2 DEFAULT NULL,
420 x_creation_date IN DATE DEFAULT NULL,
421 x_created_by IN NUMBER DEFAULT NULL,
422 x_last_update_date IN DATE DEFAULT NULL,
423 x_last_updated_by IN NUMBER DEFAULT NULL,
424 x_last_update_login IN NUMBER DEFAULT NULL
425 ) AS
426 BEGIN
427
428 Set_Column_Values (
429 p_action,
430 x_rowid,
431 x_s_control_num,
432 x_effective_end_dt_alias,
433 x_apply_start_dt_alias,
434 x_apply_end_dt_alias,
435 x_end_benefit_dt_alias,
436 x_end_penalty_dt_alias,
437 x_show_cause_cutoff_dt_alias,
438 x_appeal_cutoff_dt_alias,
439 x_show_cause_ind,
440 x_apply_before_show_ind,
441 x_appeal_ind,
442 x_apply_before_appeal_ind,
443 x_count_sus_in_time_ind,
444 x_count_exc_in_time_ind,
445 x_calculate_wam_ind,
446 x_calculate_gpa_ind,
447 x_encumb_end_dt_alias,
448 x_outcome_check_type,
449 x_creation_date,
450 x_created_by,
451 x_last_update_date,
452 x_last_updated_by,
453 x_last_update_login
454 );
455
456 IF (p_action = 'INSERT') THEN
457 -- Call all the procedures related to Before Insert.
458 BeforeRowInsertUpdate1 ( p_inserting => TRUE );
459 Check_Parent_Existance;
460 IF GET_PK_FOR_VALIDATION(new_references.s_control_num)THEN
461 Fnd_Message.Set_Name('IGS','IGS_PR_ONLY_ONE_CONFIG_ALLOWED');
462 IGS_GE_MSG_STACK.ADD;
463 App_Exception.Raise_Exception;
464 END IF;
465 CHECK_CONSTRAINTS;
466
467 ELSIF (p_action = 'UPDATE') THEN
468 -- Call all the procedures related to Before Update.
469 BeforeRowInsertUpdate1 ( p_updating => TRUE );
470 Check_Parent_Existance;
471 CHECK_CONSTRAINTS;
472 ELSIF (p_action = 'DELETE') THEN
473 -- Call all the procedures related to Before Delete.
474 Check_Child_Existance;
475 ELSIF (p_action = 'VALIDATE_INSERT') THEN
476 IF GET_PK_FOR_VALIDATION(new_references.s_control_num)THEN
477 Fnd_Message.Set_Name('IGS','IGS_PR_ONLY_ONE_CONFIG_ALLOWED');
478 IGS_GE_MSG_STACK.ADD;
479 App_Exception.Raise_Exception;
480 END IF;
481 CHECK_CONSTRAINTS;
482 ELSIF (p_action = 'VALIDATE_UPDATE') THEN
483 CHECK_CONSTRAINTS;
484 ELSIF (p_action = 'VALIDATE_DELETE') THEN
485 Check_Child_Existance;
486 END IF;
487
488 END Before_DML;
489
490 procedure INSERT_ROW (
491 X_ROWID in out NOCOPY VARCHAR2,
492 X_S_CONTROL_NUM in out NOCOPY NUMBER,
493 X_EFFECTIVE_END_DT_ALIAS in VARCHAR2,
494 X_APPLY_START_DT_ALIAS in VARCHAR2,
495 X_APPLY_END_DT_ALIAS in VARCHAR2,
496 X_END_BENEFIT_DT_ALIAS in VARCHAR2,
497 X_END_PENALTY_DT_ALIAS in VARCHAR2,
498 X_SHOW_CAUSE_CUTOFF_DT_ALIAS in VARCHAR2,
499 X_APPEAL_CUTOFF_DT_ALIAS in VARCHAR2,
500 X_SHOW_CAUSE_IND in VARCHAR2,
501 X_APPLY_BEFORE_SHOW_IND in VARCHAR2,
502 X_APPEAL_IND in VARCHAR2,
503 X_APPLY_BEFORE_APPEAL_IND in VARCHAR2,
504 X_COUNT_SUS_IN_TIME_IND in VARCHAR2,
505 X_COUNT_EXC_IN_TIME_IND in VARCHAR2,
506 X_CALCULATE_WAM_IND in VARCHAR2,
507 X_CALCULATE_GPA_IND in VARCHAR2,
508 X_ENCUMB_END_DT_ALIAS in VARCHAR2,
509 X_OUTCOME_CHECK_TYPE in VARCHAR2,
510 X_MODE in VARCHAR2 default 'R'
511 ) AS
512 cursor C is select ROWID from IGS_PR_S_PRG_CONF
513 where S_CONTROL_NUM = NEW_REFERENCES.S_CONTROL_NUM;
514 X_LAST_UPDATE_DATE DATE;
515 X_LAST_UPDATED_BY NUMBER;
516 X_LAST_UPDATE_LOGIN NUMBER;
517 begin
518 X_LAST_UPDATE_DATE := SYSDATE;
519 if(X_MODE = 'I') then
520 X_LAST_UPDATED_BY := 1;
521 X_LAST_UPDATE_LOGIN := 0;
522 elsif (X_MODE = 'R') then
523 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
524 if X_LAST_UPDATED_BY is NULL then
525 X_LAST_UPDATED_BY := -1;
526 end if;
527 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
528 if X_LAST_UPDATE_LOGIN is NULL then
529 X_LAST_UPDATE_LOGIN := -1;
530 end if;
531 else
532 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
533 IGS_GE_MSG_STACK.ADD;
534 app_exception.raise_exception;
535 end if;
536
537 Before_DML(
538 p_action => 'INSERT',
539 x_rowid => X_ROWID,
540 x_appeal_cutoff_dt_alias => X_APPEAL_CUTOFF_DT_ALIAS,
541 x_appeal_ind => nvl( X_APPEAL_IND, 'Y'),
542 x_apply_before_appeal_ind => nvl( X_APPLY_BEFORE_APPEAL_IND, 'Y'),
543 x_apply_before_show_ind => nvl( X_APPLY_BEFORE_SHOW_IND, 'N'),
544 x_apply_end_dt_alias => X_APPLY_END_DT_ALIAS,
545 x_apply_start_dt_alias => X_APPLY_START_DT_ALIAS,
546 x_calculate_gpa_ind => nvl( X_CALCULATE_GPA_IND, 'N'),
547 x_calculate_wam_ind => nvl( X_CALCULATE_WAM_IND, 'N'),
548 x_count_exc_in_time_ind => nvl( X_COUNT_EXC_IN_TIME_IND, 'N'),
549 x_count_sus_in_time_ind => nvl( X_COUNT_SUS_IN_TIME_IND, 'N'),
550 x_effective_end_dt_alias => X_EFFECTIVE_END_DT_ALIAS,
551 x_end_benefit_dt_alias => X_END_BENEFIT_DT_ALIAS,
552 x_end_penalty_dt_alias => X_END_PENALTY_DT_ALIAS,
553 x_s_control_num => nvl( X_S_CONTROL_NUM, 1),
554 x_show_cause_cutoff_dt_alias => X_SHOW_CAUSE_CUTOFF_DT_ALIAS,
555 x_show_cause_ind => nvl( X_SHOW_CAUSE_IND, 'Y'),
556 x_encumb_end_dt_alias => X_ENCUMB_END_DT_ALIAS,
557 x_outcome_check_type => X_OUTCOME_CHECK_TYPE,
558 x_creation_date => X_LAST_UPDATE_DATE,
559 x_created_by => X_LAST_UPDATED_BY,
560 x_last_update_date => X_LAST_UPDATE_DATE,
561 x_last_updated_by => X_LAST_UPDATED_BY,
562 x_last_update_login => X_LAST_UPDATE_LOGIN
563 );
564
565
566 insert into IGS_PR_S_PRG_CONF (
567 S_CONTROL_NUM,
568 EFFECTIVE_END_DT_ALIAS,
569 APPLY_START_DT_ALIAS,
570 APPLY_END_DT_ALIAS,
571 END_BENEFIT_DT_ALIAS,
572 END_PENALTY_DT_ALIAS,
573 SHOW_CAUSE_CUTOFF_DT_ALIAS,
574 APPEAL_CUTOFF_DT_ALIAS,
575 SHOW_CAUSE_IND,
576 APPLY_BEFORE_SHOW_IND,
577 APPEAL_IND,
578 APPLY_BEFORE_APPEAL_IND,
579 COUNT_SUS_IN_TIME_IND,
580 COUNT_EXC_IN_TIME_IND,
581 CALCULATE_WAM_IND,
582 CALCULATE_GPA_IND,
583 ENCUMB_END_DT_ALIAS,
584 OUTCOME_CHECK_TYPE,
585 CREATION_DATE,
586 CREATED_BY,
587 LAST_UPDATE_DATE,
588 LAST_UPDATED_BY,
589 LAST_UPDATE_LOGIN
590 ) values (
591 NEW_REFERENCES.S_CONTROL_NUM,
592 NEW_REFERENCES.EFFECTIVE_END_DT_ALIAS,
593 NEW_REFERENCES.APPLY_START_DT_ALIAS,
594 NEW_REFERENCES.APPLY_END_DT_ALIAS,
595 NEW_REFERENCES.END_BENEFIT_DT_ALIAS,
596 NEW_REFERENCES.END_PENALTY_DT_ALIAS,
597 NEW_REFERENCES.SHOW_CAUSE_CUTOFF_DT_ALIAS,
598 NEW_REFERENCES.APPEAL_CUTOFF_DT_ALIAS,
599 NEW_REFERENCES.SHOW_CAUSE_IND,
600 NEW_REFERENCES.APPLY_BEFORE_SHOW_IND,
601 NEW_REFERENCES.APPEAL_IND,
602 NEW_REFERENCES.APPLY_BEFORE_APPEAL_IND,
603 NEW_REFERENCES.COUNT_SUS_IN_TIME_IND,
604 NEW_REFERENCES.COUNT_EXC_IN_TIME_IND,
605 NEW_REFERENCES.CALCULATE_WAM_IND,
606 NEW_REFERENCES.CALCULATE_GPA_IND,
607 NEW_REFERENCES.ENCUMB_END_DT_ALIAS,
608 NEW_REFERENCES.OUTCOME_CHECK_TYPE,
609 X_LAST_UPDATE_DATE,
610 X_LAST_UPDATED_BY,
611 X_LAST_UPDATE_DATE,
612 X_LAST_UPDATED_BY,
613 X_LAST_UPDATE_LOGIN
614 );
615
616 open c;
617 fetch c into X_ROWID;
618 if (c%notfound) then
619 close c;
620 raise no_data_found;
621 end if;
622 close c;
623
624 end INSERT_ROW;
625
626 procedure LOCK_ROW (
627 X_ROWID in VARCHAR2,
628 X_S_CONTROL_NUM in NUMBER,
629 X_EFFECTIVE_END_DT_ALIAS in VARCHAR2,
630 X_APPLY_START_DT_ALIAS in VARCHAR2,
631 X_APPLY_END_DT_ALIAS in VARCHAR2,
632 X_END_BENEFIT_DT_ALIAS in VARCHAR2,
633 X_END_PENALTY_DT_ALIAS in VARCHAR2,
634 X_SHOW_CAUSE_CUTOFF_DT_ALIAS in VARCHAR2,
635 X_APPEAL_CUTOFF_DT_ALIAS in VARCHAR2,
636 X_SHOW_CAUSE_IND in VARCHAR2,
637 X_APPLY_BEFORE_SHOW_IND in VARCHAR2,
638 X_APPEAL_IND in VARCHAR2,
639 X_APPLY_BEFORE_APPEAL_IND in VARCHAR2,
640 X_COUNT_SUS_IN_TIME_IND in VARCHAR2,
641 X_COUNT_EXC_IN_TIME_IND in VARCHAR2,
642 X_CALCULATE_WAM_IND in VARCHAR2,
643 X_CALCULATE_GPA_IND in VARCHAR2,
644 X_ENCUMB_END_DT_ALIAS in VARCHAR2,
645 X_OUTCOME_CHECK_TYPE in VARCHAR2
646 ) AS
647 cursor c1 is select
648 EFFECTIVE_END_DT_ALIAS,
649 APPLY_START_DT_ALIAS,
650 APPLY_END_DT_ALIAS,
651 END_BENEFIT_DT_ALIAS,
652 END_PENALTY_DT_ALIAS,
653 SHOW_CAUSE_CUTOFF_DT_ALIAS,
654 APPEAL_CUTOFF_DT_ALIAS,
655 SHOW_CAUSE_IND,
656 APPLY_BEFORE_SHOW_IND,
657 APPEAL_IND,
658 APPLY_BEFORE_APPEAL_IND,
659 COUNT_SUS_IN_TIME_IND,
660 COUNT_EXC_IN_TIME_IND,
661 CALCULATE_WAM_IND,
662 CALCULATE_GPA_IND,
663 ENCUMB_END_DT_ALIAS,
664 OUTCOME_CHECK_TYPE
665 from IGS_PR_S_PRG_CONF
666 where ROWID = X_ROWID
667 for update nowait;
668 tlinfo c1%rowtype;
669
670 begin
671 open c1;
672 fetch c1 into tlinfo;
673 if (c1%notfound) then
674 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
675 IGS_GE_MSG_STACK.ADD;
676 close c1;
677 app_exception.raise_exception;
678
679 return;
680 end if;
681 close c1;
682
683 if ( (tlinfo.EFFECTIVE_END_DT_ALIAS = X_EFFECTIVE_END_DT_ALIAS)
684 AND (tlinfo.APPLY_START_DT_ALIAS = X_APPLY_START_DT_ALIAS)
685 AND (tlinfo.APPLY_END_DT_ALIAS = X_APPLY_END_DT_ALIAS)
686 AND (tlinfo.END_BENEFIT_DT_ALIAS = X_END_BENEFIT_DT_ALIAS)
687 AND (tlinfo.END_PENALTY_DT_ALIAS = X_END_PENALTY_DT_ALIAS)
688 AND ((tlinfo.SHOW_CAUSE_CUTOFF_DT_ALIAS = X_SHOW_CAUSE_CUTOFF_DT_ALIAS)
689 OR ((tlinfo.SHOW_CAUSE_CUTOFF_DT_ALIAS is null)
690 AND (X_SHOW_CAUSE_CUTOFF_DT_ALIAS is null)))
691 AND ((tlinfo.APPEAL_CUTOFF_DT_ALIAS = X_APPEAL_CUTOFF_DT_ALIAS)
692 OR ((tlinfo.APPEAL_CUTOFF_DT_ALIAS is null)
693 AND (X_APPEAL_CUTOFF_DT_ALIAS is null)))
694 AND (tlinfo.SHOW_CAUSE_IND = X_SHOW_CAUSE_IND)
695 AND (tlinfo.APPLY_BEFORE_SHOW_IND = X_APPLY_BEFORE_SHOW_IND)
696 AND (tlinfo.APPEAL_IND = X_APPEAL_IND)
697 AND (tlinfo.APPLY_BEFORE_APPEAL_IND = X_APPLY_BEFORE_APPEAL_IND)
698 AND (tlinfo.COUNT_SUS_IN_TIME_IND = X_COUNT_SUS_IN_TIME_IND)
699 AND (tlinfo.COUNT_EXC_IN_TIME_IND = X_COUNT_EXC_IN_TIME_IND)
700 AND (tlinfo.CALCULATE_WAM_IND = X_CALCULATE_WAM_IND)
701 AND (tlinfo.CALCULATE_GPA_IND = X_CALCULATE_GPA_IND)
702 AND ((tlinfo.ENCUMB_END_DT_ALIAS = X_ENCUMB_END_DT_ALIAS)
703 OR (( tlinfo.ENCUMB_END_DT_ALIAS is null )
704 AND ( tlinfo.ENCUMB_END_DT_ALIAS is null )))
705 AND ((tlinfo.OUTCOME_CHECK_TYPE = X_OUTCOME_CHECK_TYPE)
706 OR (( tlinfo.OUTCOME_CHECK_TYPE is null )
707 AND ( tlinfo.OUTCOME_CHECK_TYPE is null )))
708
709 ) then
710 null;
711 else
712 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
713 IGS_GE_MSG_STACK.ADD;
714 app_exception.raise_exception;
715 end if;
716 return;
717 end LOCK_ROW;
718
719 procedure UPDATE_ROW (
720 X_ROWID in VARCHAR2,
721 X_S_CONTROL_NUM in NUMBER,
722 X_EFFECTIVE_END_DT_ALIAS in VARCHAR2,
723 X_APPLY_START_DT_ALIAS in VARCHAR2,
724 X_APPLY_END_DT_ALIAS in VARCHAR2,
725 X_END_BENEFIT_DT_ALIAS in VARCHAR2,
726 X_END_PENALTY_DT_ALIAS in VARCHAR2,
727 X_SHOW_CAUSE_CUTOFF_DT_ALIAS in VARCHAR2,
728 X_APPEAL_CUTOFF_DT_ALIAS in VARCHAR2,
729 X_SHOW_CAUSE_IND in VARCHAR2,
730 X_APPLY_BEFORE_SHOW_IND in VARCHAR2,
731 X_APPEAL_IND in VARCHAR2,
732 X_APPLY_BEFORE_APPEAL_IND in VARCHAR2,
733 X_COUNT_SUS_IN_TIME_IND in VARCHAR2,
734 X_COUNT_EXC_IN_TIME_IND in VARCHAR2,
735 X_CALCULATE_WAM_IND in VARCHAR2,
736 X_CALCULATE_GPA_IND in VARCHAR2,
737 X_ENCUMB_END_DT_ALIAS in VARCHAR2,
738 X_OUTCOME_CHECK_TYPE in VARCHAR2,
739 X_MODE in VARCHAR2 default 'R'
740 ) AS
741 X_LAST_UPDATE_DATE DATE;
742 X_LAST_UPDATED_BY NUMBER;
743 X_LAST_UPDATE_LOGIN NUMBER;
744 begin
745 X_LAST_UPDATE_DATE := SYSDATE;
746 if(X_MODE = 'I') then
747 X_LAST_UPDATED_BY := 1;
748 X_LAST_UPDATE_LOGIN := 0;
749 elsif (X_MODE = 'R') then
750 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
751 if X_LAST_UPDATED_BY is NULL then
752 X_LAST_UPDATED_BY := -1;
753 end if;
754 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
755 if X_LAST_UPDATE_LOGIN is NULL then
756 X_LAST_UPDATE_LOGIN := -1;
757 end if;
758 else
759 FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
760 IGS_GE_MSG_STACK.ADD;
761 app_exception.raise_exception;
762 end if;
763
764 Before_DML(
765 p_action => 'UPDATE',
766 x_rowid => X_ROWID,
767 x_appeal_cutoff_dt_alias => X_APPEAL_CUTOFF_DT_ALIAS,
768 x_appeal_ind => X_APPEAL_IND,
769 x_apply_before_appeal_ind => X_APPLY_BEFORE_APPEAL_IND,
770 x_apply_before_show_ind => X_APPLY_BEFORE_SHOW_IND,
771 x_apply_end_dt_alias => X_APPLY_END_DT_ALIAS,
772 x_apply_start_dt_alias => X_APPLY_START_DT_ALIAS,
773 x_calculate_gpa_ind => X_CALCULATE_GPA_IND,
774 x_calculate_wam_ind => X_CALCULATE_WAM_IND,
775 x_count_exc_in_time_ind => X_COUNT_EXC_IN_TIME_IND,
776 x_count_sus_in_time_ind => X_COUNT_SUS_IN_TIME_IND,
777 x_effective_end_dt_alias => X_EFFECTIVE_END_DT_ALIAS,
778 x_end_benefit_dt_alias => X_END_BENEFIT_DT_ALIAS,
779 x_end_penalty_dt_alias => X_END_PENALTY_DT_ALIAS,
780 x_s_control_num => X_S_CONTROL_NUM,
781 x_show_cause_cutoff_dt_alias => X_SHOW_CAUSE_CUTOFF_DT_ALIAS,
782 x_show_cause_ind => X_SHOW_CAUSE_IND,
783 x_ENCUMB_END_DT_ALIAS => X_ENCUMB_END_DT_ALIAS,
784 x_outcome_check_type => X_outcome_check_type,
785 x_creation_date => X_LAST_UPDATE_DATE,
786 x_created_by => X_LAST_UPDATED_BY,
787 x_last_update_date => X_LAST_UPDATE_DATE,
788 x_last_updated_by => X_LAST_UPDATED_BY,
789 x_last_update_login => X_LAST_UPDATE_LOGIN
790 );
791
792 update IGS_PR_S_PRG_CONF set
793 EFFECTIVE_END_DT_ALIAS = NEW_REFERENCES.EFFECTIVE_END_DT_ALIAS,
794 APPLY_START_DT_ALIAS = NEW_REFERENCES.APPLY_START_DT_ALIAS,
795 APPLY_END_DT_ALIAS = NEW_REFERENCES.APPLY_END_DT_ALIAS,
796 END_BENEFIT_DT_ALIAS = NEW_REFERENCES.END_BENEFIT_DT_ALIAS,
797 END_PENALTY_DT_ALIAS = NEW_REFERENCES.END_PENALTY_DT_ALIAS,
798 SHOW_CAUSE_CUTOFF_DT_ALIAS = NEW_REFERENCES.SHOW_CAUSE_CUTOFF_DT_ALIAS,
799 APPEAL_CUTOFF_DT_ALIAS = NEW_REFERENCES.APPEAL_CUTOFF_DT_ALIAS,
800 SHOW_CAUSE_IND = NEW_REFERENCES.SHOW_CAUSE_IND,
801 APPLY_BEFORE_SHOW_IND = NEW_REFERENCES.APPLY_BEFORE_SHOW_IND,
802 APPEAL_IND = NEW_REFERENCES.APPEAL_IND,
803 APPLY_BEFORE_APPEAL_IND = NEW_REFERENCES.APPLY_BEFORE_APPEAL_IND,
804 COUNT_SUS_IN_TIME_IND = NEW_REFERENCES.COUNT_SUS_IN_TIME_IND,
805 COUNT_EXC_IN_TIME_IND = NEW_REFERENCES.COUNT_EXC_IN_TIME_IND,
806 CALCULATE_WAM_IND = NEW_REFERENCES.CALCULATE_WAM_IND,
807 CALCULATE_GPA_IND = NEW_REFERENCES.CALCULATE_GPA_IND,
808 ENCUMB_END_DT_ALIAS = NEW_REFERENCES.ENCUMB_END_DT_ALIAS,
809 OUTCOME_CHECK_TYPE = NEW_REFERENCES.OUTCOME_CHECK_TYPE,
810 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
811 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
812 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
813 where ROWID = X_ROWID
814 ;
815 if (sql%notfound) then
816 raise no_data_found;
817 end if;
818
819 end UPDATE_ROW;
820
821 procedure ADD_ROW (
822 X_ROWID in out NOCOPY VARCHAR2,
823 X_S_CONTROL_NUM in out NOCOPY NUMBER,
824 X_EFFECTIVE_END_DT_ALIAS in VARCHAR2,
825 X_APPLY_START_DT_ALIAS in VARCHAR2,
826 X_APPLY_END_DT_ALIAS in VARCHAR2,
827 X_END_BENEFIT_DT_ALIAS in VARCHAR2,
828 X_END_PENALTY_DT_ALIAS in VARCHAR2,
829 X_SHOW_CAUSE_CUTOFF_DT_ALIAS in VARCHAR2,
830 X_APPEAL_CUTOFF_DT_ALIAS in VARCHAR2,
831 X_SHOW_CAUSE_IND in VARCHAR2,
832 X_APPLY_BEFORE_SHOW_IND in VARCHAR2,
833 X_APPEAL_IND in VARCHAR2,
834 X_APPLY_BEFORE_APPEAL_IND in VARCHAR2,
835 X_COUNT_SUS_IN_TIME_IND in VARCHAR2,
836 X_COUNT_EXC_IN_TIME_IND in VARCHAR2,
837 X_CALCULATE_WAM_IND in VARCHAR2,
838 X_CALCULATE_GPA_IND in VARCHAR2,
839 X_ENCUMB_END_DT_ALIAS in VARCHAR2,
840 X_OUTCOME_CHECK_TYPE in VARCHAR2,
841 X_MODE in VARCHAR2 default 'R'
842 ) AS
843 cursor c1 is select rowid from IGS_PR_S_PRG_CONF
844 where S_CONTROL_NUM = NVL(S_CONTROL_NUM,1)
845 ;
846 begin
847 open c1;
848 fetch c1 into X_ROWID;
849 if (c1%notfound) then
850 close c1;
851 INSERT_ROW (
852 X_ROWID,
853 X_S_CONTROL_NUM,
854 X_EFFECTIVE_END_DT_ALIAS,
855 X_APPLY_START_DT_ALIAS,
856 X_APPLY_END_DT_ALIAS,
857 X_END_BENEFIT_DT_ALIAS,
858 X_END_PENALTY_DT_ALIAS,
859 X_SHOW_CAUSE_CUTOFF_DT_ALIAS,
860 X_APPEAL_CUTOFF_DT_ALIAS,
861 X_SHOW_CAUSE_IND,
862 X_APPLY_BEFORE_SHOW_IND,
863 X_APPEAL_IND,
864 X_APPLY_BEFORE_APPEAL_IND,
865 X_COUNT_SUS_IN_TIME_IND,
866 X_COUNT_EXC_IN_TIME_IND,
867 X_CALCULATE_WAM_IND,
868 X_CALCULATE_GPA_IND,
869 X_ENCUMB_END_DT_ALIAS,
870 X_OUTCOME_CHECK_TYPE,
871 X_MODE);
872 return;
873 end if;
874 close c1;
875 UPDATE_ROW (
876 X_ROWID,
877 X_S_CONTROL_NUM,
878 X_EFFECTIVE_END_DT_ALIAS,
879 X_APPLY_START_DT_ALIAS,
880 X_APPLY_END_DT_ALIAS,
881 X_END_BENEFIT_DT_ALIAS,
882 X_END_PENALTY_DT_ALIAS,
883 X_SHOW_CAUSE_CUTOFF_DT_ALIAS,
884 X_APPEAL_CUTOFF_DT_ALIAS,
885 X_SHOW_CAUSE_IND,
886 X_APPLY_BEFORE_SHOW_IND,
887 X_APPEAL_IND,
888 X_APPLY_BEFORE_APPEAL_IND,
889 X_COUNT_SUS_IN_TIME_IND,
890 X_COUNT_EXC_IN_TIME_IND,
891 X_CALCULATE_WAM_IND,
892 X_CALCULATE_GPA_IND,
893 X_ENCUMB_END_DT_ALIAS,
894 X_OUTCOME_CHECK_TYPE,
895 X_MODE);
896 end ADD_ROW;
897
898 procedure DELETE_ROW (
899 X_ROWID in VARCHAR2
900 ) AS
901 begin
902 Before_DML(
903 p_action => 'DELETE',
904 x_rowid => X_ROWID
905 );
906
907
908 delete from IGS_PR_S_PRG_CONF
909 where ROWID = X_ROWID;
910 if (sql%notfound) then
911 raise no_data_found;
912 end if;
913
914 end DELETE_ROW;
915
916 PROCEDURE Check_Constraints (
917 Column_Name IN VARCHAR2 DEFAULT NULL,
918 Column_Value IN VARCHAR2 DEFAULT NULL
919 ) AS
920 BEGIN
921
922 IF Column_Name is null THEN
923 NULL;
924 ELSIF upper(Column_name) = 'CALCULATE_GPA_IND' THEN
925 new_references.CALCULATE_GPA_IND:= COLUMN_VALUE ;
926
927 ELSIF upper(Column_name) = 'CALCULATE_WAM_IND' THEN
928 new_references.CALCULATE_WAM_IND:= COLUMN_VALUE ;
929
930 ELSIF upper(Column_name) = 'COUNT_EXC_IN_TIME_IND' THEN
931 new_references.COUNT_EXC_IN_TIME_IND:= COLUMN_VALUE ;
932
933 ELSIF upper(Column_name) = 'COUNT_SUS_IN_TIME_IND' THEN
934 new_references.COUNT_SUS_IN_TIME_IND:= COLUMN_VALUE ;
935
936 ELSIF upper(Column_name) = 'APPLY_BEFORE_APPEAL_IND' THEN
937 new_references.APPLY_BEFORE_APPEAL_IND:= COLUMN_VALUE ;
938
939 ELSIF upper(Column_name) = 'APPEAL_IND' THEN
940 new_references.APPEAL_IND:= COLUMN_VALUE ;
941
942 ELSIF upper(Column_name) = 'APPLY_BEFORE_SHOW_IND' THEN
943 new_references.APPLY_BEFORE_SHOW_IND:= COLUMN_VALUE ;
944
945 ELSIF upper(Column_name) = 'SHOW_CAUSE_IND' THEN
946 new_references.SHOW_CAUSE_IND:= COLUMN_VALUE ;
947
948 ELSIF upper(Column_name) = 'S_CONTROL_NUM' THEN
949 new_references.S_CONTROL_NUM:= IGS_GE_NUMBER.to_num(COLUMN_VALUE) ;
950
951 ELSIF upper(Column_name) = 'APPEAL_CUTOFF_DT_ALIAS' THEN
952 new_references.APPEAL_CUTOFF_DT_ALIAS:= COLUMN_VALUE ;
953
954 ELSIF upper(Column_name) = 'APPLY_END_DT_ALIAS' THEN
955 new_references.APPLY_END_DT_ALIAS:= COLUMN_VALUE ;
956
957 ELSIF upper(Column_name) = 'APPLY_START_DT_ALIAS' THEN
958 new_references.APPLY_START_DT_ALIAS:= COLUMN_VALUE ;
959
960 ELSIF upper(Column_name) = 'EFFECTIVE_END_DT_ALIAS' THEN
961 new_references.EFFECTIVE_END_DT_ALIAS:= COLUMN_VALUE ;
962
963 ELSIF upper(Column_name) = 'END_BENEFIT_DT_ALIAS' THEN
964 new_references.END_BENEFIT_DT_ALIAS:= COLUMN_VALUE ;
965
966 ELSIF upper(Column_name) = 'END_PENALTY_DT_ALIAS' THEN
967 new_references.END_PENALTY_DT_ALIAS:= COLUMN_VALUE ;
968
969 ELSIF upper(Column_name) = 'SHOW_CAUSE_CUTOFF_DT_ALIAS' THEN
970 new_references.SHOW_CAUSE_CUTOFF_DT_ALIAS:= COLUMN_VALUE ;
971
972 END IF ;
973
974 IF upper(Column_name) = 'CALCULATE_GPA_IND' OR COLUMN_NAME IS NULL THEN
975 IF new_references.CALCULATE_GPA_IND<> upper(new_references.CALCULATE_GPA_IND) then
976 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
977 IGS_GE_MSG_STACK.ADD;
978 App_Exception.Raise_Exception ;
979 END IF;
980
981 IF new_references.CALCULATE_GPA_IND not in ('Y','N') then
982 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
983 IGS_GE_MSG_STACK.ADD;
984 App_Exception.Raise_Exception ;
985 END IF;
986
987 END IF ;
988
989 IF upper(Column_name) = 'CALCULATE_WAM_IND' OR COLUMN_NAME IS NULL THEN
990 IF new_references.CALCULATE_WAM_IND<> upper(new_references.CALCULATE_WAM_IND) then
991 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
992 IGS_GE_MSG_STACK.ADD;
993 App_Exception.Raise_Exception ;
994 END IF;
995
996 IF new_references.CALCULATE_WAM_IND not in ('Y','N') then
997 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
998 IGS_GE_MSG_STACK.ADD;
999 App_Exception.Raise_Exception ;
1000 END IF;
1001
1002 END IF ;
1003
1004 IF upper(Column_name) = 'COUNT_EXC_IN_TIME_IND' OR COLUMN_NAME IS NULL THEN
1005 IF new_references.COUNT_EXC_IN_TIME_IND<> upper(new_references.COUNT_EXC_IN_TIME_IND) then
1006 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1007 IGS_GE_MSG_STACK.ADD;
1008 App_Exception.Raise_Exception ;
1009 END IF;
1010
1011 IF new_references.COUNT_EXC_IN_TIME_IND not in ('Y','N') then
1012 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1013 IGS_GE_MSG_STACK.ADD;
1014 App_Exception.Raise_Exception ;
1015 END IF;
1016
1017 END IF ;
1018
1019 IF upper(Column_name) = 'COUNT_SUS_IN_TIME_IND' OR COLUMN_NAME IS NULL THEN
1020 IF new_references.COUNT_SUS_IN_TIME_IND<> upper(new_references.COUNT_SUS_IN_TIME_IND) then
1021 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1022 IGS_GE_MSG_STACK.ADD;
1023 App_Exception.Raise_Exception ;
1024 END IF;
1025
1026 IF new_references.COUNT_SUS_IN_TIME_IND not in ('Y','N') then
1027 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1028 IGS_GE_MSG_STACK.ADD;
1029 App_Exception.Raise_Exception ;
1030 END IF;
1031
1032 END IF ;
1033
1034 IF upper(Column_name) = 'APPLY_BEFORE_APPEAL_IND' OR COLUMN_NAME IS NULL THEN
1035 IF new_references.APPLY_BEFORE_APPEAL_IND<> upper(new_references.APPLY_BEFORE_APPEAL_IND) then
1036 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1037 IGS_GE_MSG_STACK.ADD;
1038 App_Exception.Raise_Exception ;
1039 END IF;
1040
1041 IF new_references.APPLY_BEFORE_APPEAL_IND not in ('Y','N') then
1042 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1043 IGS_GE_MSG_STACK.ADD;
1044 App_Exception.Raise_Exception ;
1045 END IF;
1046
1047 END IF ;
1048
1049 IF upper(Column_name) = 'APPEAL_IND' OR COLUMN_NAME IS NULL THEN
1050 IF new_references.APPEAL_IND<> upper(new_references.APPEAL_IND) then
1051 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1052 IGS_GE_MSG_STACK.ADD;
1053 App_Exception.Raise_Exception ;
1054 END IF;
1055
1056 IF new_references.APPEAL_IND not in ('Y','N') then
1057 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1058 IGS_GE_MSG_STACK.ADD;
1059 App_Exception.Raise_Exception ;
1060 END IF;
1061
1062 END IF ;
1063
1064 IF upper(Column_name) = 'APPLY_BEFORE_SHOW_IND' OR COLUMN_NAME IS NULL THEN
1065 IF new_references.APPLY_BEFORE_SHOW_IND<> upper(new_references.APPLY_BEFORE_SHOW_IND) then
1066 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1067 IGS_GE_MSG_STACK.ADD;
1068 App_Exception.Raise_Exception ;
1069 END IF;
1070
1071 IF new_references.APPLY_BEFORE_SHOW_IND not in ('Y','N') then
1072 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1073 IGS_GE_MSG_STACK.ADD;
1074 App_Exception.Raise_Exception ;
1075 END IF;
1076
1077 END IF ;
1078
1079 IF upper(Column_name) = 'SHOW_CAUSE_IND' OR COLUMN_NAME IS NULL THEN
1080 IF new_references.SHOW_CAUSE_IND<> upper(new_references.SHOW_CAUSE_IND) then
1081 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1082 IGS_GE_MSG_STACK.ADD;
1083 App_Exception.Raise_Exception ;
1084 END IF;
1085
1086 IF new_references.SHOW_CAUSE_IND not in ('Y','N') then
1087 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1088 IGS_GE_MSG_STACK.ADD;
1089 App_Exception.Raise_Exception ;
1090 END IF;
1091
1092 END IF ;
1093
1094 IF upper(Column_name) = 'S_CONTROL_NUM' OR COLUMN_NAME IS NULL THEN
1095 IF new_references.S_CONTROL_NUM < 1 or new_references.S_CONTROL_NUM > 1 then
1096 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1097 IGS_GE_MSG_STACK.ADD;
1098 App_Exception.Raise_Exception ;
1099 END IF;
1100
1101 END IF ;
1102
1103 IF upper(Column_name) = 'APPEAL_CUTOFF_DT_ALIAS' OR COLUMN_NAME IS NULL THEN
1104 IF new_references.APPEAL_CUTOFF_DT_ALIAS<> upper(new_references.APPEAL_CUTOFF_DT_ALIAS) then
1105 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1106 IGS_GE_MSG_STACK.ADD;
1107 App_Exception.Raise_Exception ;
1108 END IF;
1109
1110 END IF ;
1111
1112 IF upper(Column_name) = 'APPLY_END_DT_ALIAS' OR COLUMN_NAME IS NULL THEN
1113 IF new_references.APPLY_END_DT_ALIAS<> upper(new_references.APPLY_END_DT_ALIAS) then
1114 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1115 IGS_GE_MSG_STACK.ADD;
1116 App_Exception.Raise_Exception ;
1117 END IF;
1118
1119 END IF ;
1120
1121 IF upper(Column_name) = 'APPLY_START_DT_ALIAS' OR COLUMN_NAME IS NULL THEN
1122 IF new_references.APPLY_START_DT_ALIAS<> upper(new_references.APPLY_START_DT_ALIAS) then
1123 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1124 IGS_GE_MSG_STACK.ADD;
1125 App_Exception.Raise_Exception ;
1126 END IF;
1127
1128 END IF ;
1129
1130 IF upper(Column_name) = 'EFFECTIVE_END_DT_ALIAS' OR COLUMN_NAME IS NULL THEN
1131 IF new_references.EFFECTIVE_END_DT_ALIAS<> upper(new_references.EFFECTIVE_END_DT_ALIAS) then
1132 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1133 IGS_GE_MSG_STACK.ADD;
1134 App_Exception.Raise_Exception ;
1135 END IF;
1136
1137 END IF ;
1138
1139 IF upper(Column_name) = 'END_BENEFIT_DT_ALIAS' OR COLUMN_NAME IS NULL THEN
1140 IF new_references.END_BENEFIT_DT_ALIAS<> upper(new_references.END_BENEFIT_DT_ALIAS) then
1141 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1142 IGS_GE_MSG_STACK.ADD;
1143 App_Exception.Raise_Exception ;
1144 END IF;
1145
1146 END IF ;
1147
1148 IF upper(Column_name) = 'END_PENALTY_DT_ALIAS' OR COLUMN_NAME IS NULL THEN
1149 IF new_references.END_PENALTY_DT_ALIAS<> upper(new_references.END_PENALTY_DT_ALIAS) then
1150 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1151 IGS_GE_MSG_STACK.ADD;
1152 App_Exception.Raise_Exception ;
1153 END IF;
1154
1155 END IF ;
1156
1157 IF upper(Column_name) = 'SHOW_CAUSE_CUTOFF_DT_ALIAS' OR COLUMN_NAME IS NULL THEN
1158 IF new_references.SHOW_CAUSE_CUTOFF_DT_ALIAS<> upper(new_references.SHOW_CAUSE_CUTOFF_DT_ALIAS) then
1159 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
1160 IGS_GE_MSG_STACK.ADD;
1161 App_Exception.Raise_Exception ;
1162 END IF;
1163
1164 END IF ;
1165
1166 END Check_Constraints;
1167 end IGS_PR_S_PRG_CONF_PKG;