[Home] [Help]
PACKAGE BODY: APPS.IGS_PR_RULE_PKG
Source
1 package body IGS_PR_RULE_PKG AS
2 /* $Header: IGSQI09B.pls 115.10 2003/05/19 06:14:14 ijeddy ship $ */
3
4 l_rowid VARCHAR2(25);
5 old_references IGS_PR_RULE_ALL%RowType;
6 new_references IGS_PR_RULE_ALL%RowType;
7
8 PROCEDURE Set_Column_Values (
9 p_action IN VARCHAR2,
10 x_rowid IN VARCHAR2 DEFAULT NULL,
11 x_progression_rule_cat IN VARCHAR2 DEFAULT NULL,
12 x_progression_rule_cd IN VARCHAR2 DEFAULT NULL,
13 x_description IN VARCHAR2 DEFAULT NULL,
14 x_rul_sequence_number IN NUMBER DEFAULT NULL,
15 x_closed_ind IN VARCHAR2 DEFAULT NULL,
16 x_message IN VARCHAR2 DEFAULT NULL,
17 x_creation_date IN DATE DEFAULT NULL,
18 x_created_by IN NUMBER DEFAULT NULL,
19 x_last_update_date IN DATE DEFAULT NULL,
20 x_last_updated_by IN NUMBER DEFAULT NULL,
21 x_last_update_login IN NUMBER DEFAULT NULL,
22 x_org_id IN NUMBER DEFAULT NULL
23 ) AS
24
25 CURSOR cur_old_ref_values IS
26 SELECT *
27 FROM IGS_PR_RULE_ALL
28 WHERE rowid = x_rowid;
29
30 BEGIN
31
32 l_rowid := x_rowid;
33
34 -- Code for setting the Old and New Reference Values.
35 -- Populate Old Values.
36 Open cur_old_ref_values;
37 Fetch cur_old_ref_values INTO old_references;
38 IF (cur_old_ref_values%NOTFOUND) AND (p_action not in ('INSERT','VALIDATE_INSERT')) THEN
39 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
40 IGS_GE_MSG_STACK.ADD;
41 Close cur_old_ref_values;
42 App_Exception.Raise_Exception;
43 Return;
44 END IF;
45 Close cur_old_ref_values;
46
47 -- Populate New Values.
48 new_references.progression_rule_cat := x_progression_rule_cat;
49 new_references.progression_rule_cd := x_progression_rule_cd;
50 new_references.description := x_description;
51 new_references.rul_sequence_number := x_rul_sequence_number;
52 new_references.closed_ind := x_closed_ind;
53 new_references.message := x_message;
54 IF (p_action = 'UPDATE') THEN
55 new_references.creation_date := old_references.creation_date;
56 new_references.created_by := old_references.created_by;
57 ELSE
58 new_references.creation_date := x_creation_date;
59 new_references.created_by := x_created_by;
60 END IF;
61 new_references.last_update_date := x_last_update_date;
62 new_references.last_updated_by := x_last_updated_by;
63 new_references.last_update_login := x_last_update_login;
64 new_references.org_id := x_org_id;
65 END Set_Column_Values;
66
67 -- Trigger description :-
68 -- "OSS_TST".trg_prr_br_iu
69 -- BEFORE INSERT OR UPDATE
70 -- ON IGS_PR_RULE
71 -- FOR EACH ROW
72
73 PROCEDURE BeforeRowInsertUpdate1(
74 p_inserting IN BOOLEAN DEFAULT FALSE,
75 p_updating IN BOOLEAN DEFAULT FALSE,
76 p_deleting IN BOOLEAN DEFAULT FALSE
77 ) AS
78 v_message_name varchar2(30);
79 BEGIN
80 -- Validate the progression IGS_RU_RULE category
81 IF p_inserting THEN
82 /*
83 || Bug ID 1956374 - Removal of Duplicate Program Units from OSS.
84 || Changed the reference of "IGS_PR_VAL_PRR.PRGP_VAL_PRGC_CLOSED" to program unit "IGS_PR_VAL_PRA.PRGP_VAL_PRGC_CLOSED". -- kdande
85 */
86 IF IGS_PR_VAL_PRA.prgp_val_prgc_closed (
87 new_references.progression_rule_cat,
88 v_message_name) = FALSE THEN
89 Fnd_Message.Set_Name('IGS',v_message_name);
90 IGS_GE_MSG_STACK.ADD;
91 App_Exception.Raise_Exception;
92 END IF;
93 END IF;
94
95
96 END BeforeRowInsertUpdate1;
97 PROCEDURE Check_Parent_Existance AS
98 BEGIN
99
100 IF (((old_references.progression_rule_cat = new_references.progression_rule_cat)) OR
101 ((new_references.progression_rule_cat IS NULL))) THEN
102 NULL;
103 ELSE
104 IF NOT IGS_PR_RU_CAT_PKG.Get_PK_For_Validation (
105 new_references.progression_rule_cat
106 ) THEN
107
108 Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
109 IGS_GE_MSG_STACK.ADD;
110 App_Exception.Raise_Exception;
111
112 END IF;
113 END IF;
114
115 IF (((old_references.rul_sequence_number = new_references.rul_sequence_number)) OR
116 ((new_references.rul_sequence_number IS NULL))) THEN
117 NULL;
118 ELSE
119 IF NOT IGS_RU_RULE_PKG.Get_PK_For_Validation (
120 new_references.rul_sequence_number
121 ) THEN
122 Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
123 IGS_GE_MSG_STACK.ADD;
124 App_Exception.Raise_Exception;
125
126 END IF;
127 END IF;
128
129 END Check_Parent_Existance;
130
131 PROCEDURE Check_Child_Existance AS
132 BEGIN
133
134 IGS_PR_RU_APPL_PKG.GET_FK_IGS_PR_RULE (
135 old_references.progression_rule_cat,
136 old_references.progression_rule_cd
137 );
138
139 END Check_Child_Existance;
140
141 FUNCTION Get_PK_For_Validation (
142 x_progression_rule_cat IN VARCHAR2,
143 x_progression_rule_cd IN VARCHAR2
144 ) RETURN BOOLEAN AS
145
146 CURSOR cur_rowid IS
147 SELECT rowid
148 FROM IGS_PR_RULE_ALL
149 WHERE progression_rule_cat = x_progression_rule_cat
150 AND progression_rule_cd = x_progression_rule_cd
151 FOR UPDATE NOWAIT;
152
153 lv_rowid cur_rowid%RowType;
154
155 BEGIN
156
157 Open cur_rowid;
158 Fetch cur_rowid INTO lv_rowid;
159 IF (cur_rowid%FOUND) THEN
160 Close cur_rowid;
161 Return (TRUE);
162 ELSE
163 Close cur_rowid;
164 Return (FALSE);
165 END IF;
166
167 END Get_PK_For_Validation;
168
169 PROCEDURE GET_FK_IGS_PR_RU_CAT (
170 x_progression_rule_cat IN VARCHAR2
171 ) AS
172
173 CURSOR cur_rowid IS
174 SELECT rowid
175 FROM IGS_PR_RULE_ALL
176 WHERE progression_rule_cat = x_progression_rule_cat ;
177
178 lv_rowid cur_rowid%RowType;
179
180 BEGIN
181
182 Open cur_rowid;
183 Fetch cur_rowid INTO lv_rowid;
184 IF (cur_rowid%FOUND) THEN
185 Fnd_Message.Set_Name ('IGS', 'IGS_PR_PRR_PRGC_FK');
186 IGS_GE_MSG_STACK.ADD;
187 Close cur_rowid;
188 App_Exception.Raise_Exception;
189 Return;
190 END IF;
191 Close cur_rowid;
192
193 END GET_FK_IGS_PR_RU_CAT;
194
195 PROCEDURE GET_FK_IGS_RU_RULE (
196 x_sequence_number IN NUMBER
197 ) AS
198
199 CURSOR cur_rowid IS
200 SELECT rowid
201 FROM IGS_PR_RULE_ALL
202 WHERE rul_sequence_number = x_sequence_number ;
203
204 lv_rowid cur_rowid%RowType;
205
206 BEGIN
207
208 Open cur_rowid;
209 Fetch cur_rowid INTO lv_rowid;
210 IF (cur_rowid%FOUND) THEN
211 Fnd_Message.Set_Name ('IGS', 'IGS_PR_PRR_RUL_FK');
212 IGS_GE_MSG_STACK.ADD;
213 Close cur_rowid;
214 App_Exception.Raise_Exception;
215 Return;
216 END IF;
217 Close cur_rowid;
218
219 END GET_FK_IGS_RU_RULE;
220
221 PROCEDURE Before_DML (
222 p_action IN VARCHAR2,
223 x_rowid IN VARCHAR2 DEFAULT NULL,
224 x_progression_rule_cat IN VARCHAR2 DEFAULT NULL,
225 x_progression_rule_cd IN VARCHAR2 DEFAULT NULL,
226 x_description IN VARCHAR2 DEFAULT NULL,
227 x_rul_sequence_number IN NUMBER DEFAULT NULL,
228 x_closed_ind IN VARCHAR2 DEFAULT NULL,
229 x_message IN VARCHAR2 DEFAULT NULL,
230 x_creation_date IN DATE DEFAULT NULL,
231 x_created_by IN NUMBER DEFAULT NULL,
232 x_last_update_date IN DATE DEFAULT NULL,
233 x_last_updated_by IN NUMBER DEFAULT NULL,
234 x_last_update_login IN NUMBER DEFAULT NULL,
235 x_org_id IN NUMBER DEFAULT NULL
236 ) AS
237 BEGIN
238
239 Set_Column_Values (
240 p_action,
241 x_rowid,
242 x_progression_rule_cat,
243 x_progression_rule_cd,
244 x_description,
245 x_rul_sequence_number,
246 x_closed_ind,
247 x_message,
248 x_creation_date,
249 x_created_by,
250 x_last_update_date,
251 x_last_updated_by,
252 x_last_update_login,
253 x_org_id
254 );
255
256 IF (p_action = 'INSERT') THEN
257 -- Call all the procedures related to Before Insert.
258 BeforeRowInsertUpdate1 ( p_inserting => TRUE );
259 Check_Parent_Existance;
260
261 IF Get_PK_For_Validation (
262 new_references.progression_rule_cat,
263 new_references.progression_rule_cd
264 ) THEN
265 Fnd_Message.Set_Name('IGS','IGS_GE_MULTI_ORG_DUP_REC');
266 IGS_GE_MSG_STACK.ADD;
267 App_Exception.Raise_Exception;
268
269 END IF;
270 CHECK_CONSTRAINTS;
271 ELSIF (p_action = 'UPDATE') THEN
272 -- Call all the procedures related to Before Update.
273 BeforeRowInsertUpdate1 ( p_updating => TRUE );
274 Check_Parent_Existance;
275 CHECK_CONSTRAINTS;
276 ELSIF (p_action = 'DELETE') THEN
277 -- Call all the procedures related to Before Delete.
278 Check_Child_Existance;
279 ELSIF (p_action = 'VALIDATE_INSERT') THEN
280 IF Get_PK_For_Validation (
281 new_references.progression_rule_cat,
282 new_references.progression_rule_cd
283 ) THEN
284 Fnd_Message.Set_Name('IGS','IGS_GE_MULTI_ORG_DUP_REC');
285 IGS_GE_MSG_STACK.ADD;
286 App_Exception.Raise_Exception;
287
288 END IF;
289 CHECK_CONSTRAINTS;
290 ELSIF (p_action = 'VALIDATE_UPDATE') THEN
291 CHECK_CONSTRAINTS;
292 ELSIF (p_action = 'VALIDATE_DELETE') THEN
293 Check_Child_Existance;
294 END IF;
295 /*
296 The (L_ROWID := null) was added by ijeddy on the 19-May-2003 as
297 part of the bug fix for bug no 2868726, (Uniqueness Check at Item Level)
298 */
299 L_ROWID := null;
300 END Before_DML;
301
302 procedure INSERT_ROW (
303 X_ROWID in out NOCOPY VARCHAR2,
304 X_PROGRESSION_RULE_CAT in VARCHAR2,
305 X_PROGRESSION_RULE_CD in VARCHAR2,
306 X_DESCRIPTION in VARCHAR2,
307 X_RUL_SEQUENCE_NUMBER in NUMBER,
308 X_CLOSED_IND in VARCHAR2,
309 X_MESSAGE in VARCHAR2,
310 X_MODE in VARCHAR2 default 'R',
311 X_ORG_ID in NUMBER
312 ) AS
313 cursor C is select ROWID from IGS_PR_RULE_ALL
314 where PROGRESSION_RULE_CAT = X_PROGRESSION_RULE_CAT
315 and PROGRESSION_RULE_CD = X_PROGRESSION_RULE_CD;
316 X_LAST_UPDATE_DATE DATE;
317 X_LAST_UPDATED_BY NUMBER;
318 X_LAST_UPDATE_LOGIN NUMBER;
319 begin
320 X_LAST_UPDATE_DATE := SYSDATE;
321 if(X_MODE = 'I') then
322 X_LAST_UPDATED_BY := 1;
323 X_LAST_UPDATE_LOGIN := 0;
324 elsif (X_MODE = 'R') then
325 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
326 if X_LAST_UPDATED_BY is NULL then
327 X_LAST_UPDATED_BY := -1;
328 end if;
329 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
330 if X_LAST_UPDATE_LOGIN is NULL then
331 X_LAST_UPDATE_LOGIN := -1;
332 end if;
333 else
334 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
335 IGS_GE_MSG_STACK.ADD;
336 app_exception.raise_exception;
337 end if;
338 Before_DML (
339 p_action => 'INSERT',
340 x_rowid => x_rowid,
341 x_progression_rule_cat => x_progression_rule_cat,
342 x_progression_rule_cd => x_progression_rule_cd,
343 x_description => x_description,
344 x_rul_sequence_number => x_rul_sequence_number,
345 x_closed_ind => nvl( x_closed_ind, 'N'),
346 x_message => x_message,
347 x_creation_date => x_last_update_date,
348 x_created_by => x_last_updated_by,
349 x_last_update_date => x_last_update_date,
350 x_last_updated_by => x_last_updated_by,
351 x_last_update_login => x_last_update_login,
352 x_org_id=>igs_ge_gen_003.get_org_id
353 ) ;
354 insert into IGS_PR_RULE_ALL (
355 PROGRESSION_RULE_CAT,
356 PROGRESSION_RULE_CD,
357 DESCRIPTION,
358 RUL_SEQUENCE_NUMBER,
359 CLOSED_IND,
360 MESSAGE,
361 CREATION_DATE,
362 CREATED_BY,
363 LAST_UPDATE_DATE,
364 LAST_UPDATED_BY,
365 LAST_UPDATE_LOGIN,
366 ORG_ID
367 ) values (
368 NEW_REFERENCES.PROGRESSION_RULE_CAT,
369 NEW_REFERENCES.PROGRESSION_RULE_CD,
370 NEW_REFERENCES.DESCRIPTION,
371 NEW_REFERENCES.RUL_SEQUENCE_NUMBER,
372 NEW_REFERENCES.CLOSED_IND,
373 NEW_REFERENCES.MESSAGE,
374 X_LAST_UPDATE_DATE,
375 X_LAST_UPDATED_BY,
376 X_LAST_UPDATE_DATE,
377 X_LAST_UPDATED_BY,
378 X_LAST_UPDATE_LOGIN,
379 NEW_REFERENCES.ORG_ID
380 );
381
382 open c;
383 fetch c into X_ROWID;
384 if (c%notfound) then
385 close c;
386 raise no_data_found;
387 end if;
388 close c;
389 end INSERT_ROW;
390
391 procedure LOCK_ROW (
392 X_ROWID in VARCHAR2,
393 X_PROGRESSION_RULE_CAT in VARCHAR2,
394 X_PROGRESSION_RULE_CD in VARCHAR2,
395 X_DESCRIPTION in VARCHAR2,
396 X_RUL_SEQUENCE_NUMBER in NUMBER,
397 X_CLOSED_IND in VARCHAR2,
398 X_MESSAGE in VARCHAR2
399 ) AS
400 cursor c1 is select
401 DESCRIPTION,
402 RUL_SEQUENCE_NUMBER,
403 CLOSED_IND,
404 MESSAGE
405 from IGS_PR_RULE_ALL
406 where ROWID = X_ROWID for update nowait;
407 tlinfo c1%rowtype;
408
409 begin
410 open c1;
411 fetch c1 into tlinfo;
412 if (c1%notfound) then
413 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
414 IGS_GE_MSG_STACK.ADD;
415 close c1;
416 app_exception.raise_exception;
417 return;
418 end if;
419 close c1;
420
421 if ( (tlinfo.DESCRIPTION = X_DESCRIPTION)
422 AND (tlinfo.RUL_SEQUENCE_NUMBER = X_RUL_SEQUENCE_NUMBER)
423 AND (tlinfo.CLOSED_IND = X_CLOSED_IND)
424 AND ((tlinfo.MESSAGE = X_MESSAGE)
425 OR ((tlinfo.MESSAGE is null)
426 AND (X_MESSAGE is null)))
427 ) then
428 null;
429 else
430 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
431 IGS_GE_MSG_STACK.ADD;
432 app_exception.raise_exception;
433 end if;
434 return;
435 end LOCK_ROW;
436
437 procedure UPDATE_ROW (
438 X_ROWID in VARCHAR2,
439 X_PROGRESSION_RULE_CAT in VARCHAR2,
440 X_PROGRESSION_RULE_CD in VARCHAR2,
441 X_DESCRIPTION in VARCHAR2,
442 X_RUL_SEQUENCE_NUMBER in NUMBER,
443 X_CLOSED_IND in VARCHAR2,
444 X_MESSAGE in VARCHAR2,
445 X_MODE in VARCHAR2 default 'R'
446 ) AS
447 X_LAST_UPDATE_DATE DATE;
448 X_LAST_UPDATED_BY NUMBER;
449 X_LAST_UPDATE_LOGIN NUMBER;
450 begin
451 X_LAST_UPDATE_DATE := SYSDATE;
452 if(X_MODE = 'I') then
453 X_LAST_UPDATED_BY := 1;
454 X_LAST_UPDATE_LOGIN := 0;
455 elsif (X_MODE = 'R') then
456 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
457 if X_LAST_UPDATED_BY is NULL then
458 X_LAST_UPDATED_BY := -1;
459 end if;
460 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
461 if X_LAST_UPDATE_LOGIN is NULL then
462 X_LAST_UPDATE_LOGIN := -1;
463 end if;
464 else
465 FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
466 IGS_GE_MSG_STACK.ADD;
467 app_exception.raise_exception;
468 end if;
469 Before_DML (
470 p_action => 'UPDATE',
471 x_rowid => x_rowid,
472 x_progression_rule_cat => x_progression_rule_cat,
473 x_progression_rule_cd => x_progression_rule_cd,
474 x_description => x_description,
475 x_rul_sequence_number => x_rul_sequence_number,
476 x_closed_ind => x_closed_ind,
477 x_message => x_message,
478 x_creation_date => x_last_update_date,
479 x_created_by => x_last_updated_by,
480 x_last_update_date => x_last_update_date,
481 x_last_updated_by => x_last_updated_by,
482 x_last_update_login => x_last_update_login
483
484 ) ;
485
486 update IGS_PR_RULE_ALL set
487 DESCRIPTION = NEW_REFERENCES.DESCRIPTION,
488 RUL_SEQUENCE_NUMBER = NEW_REFERENCES.RUL_SEQUENCE_NUMBER,
489 CLOSED_IND = NEW_REFERENCES.CLOSED_IND,
490 MESSAGE = NEW_REFERENCES.MESSAGE,
491 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
492 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
493 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
494 where ROWID = X_ROWID
495 ;
496 if (sql%notfound) then
497 raise no_data_found;
498 end if;
499 end UPDATE_ROW;
500
501 procedure ADD_ROW (
502 X_ROWID in out NOCOPY VARCHAR2,
503 X_PROGRESSION_RULE_CAT in VARCHAR2,
504 X_PROGRESSION_RULE_CD in VARCHAR2,
505 X_DESCRIPTION in VARCHAR2,
506 X_RUL_SEQUENCE_NUMBER in NUMBER,
507 X_CLOSED_IND in VARCHAR2,
508 X_MESSAGE in VARCHAR2,
509 X_MODE in VARCHAR2 default 'R',
510 X_ORG_ID in NUMBER
511 ) AS
512 cursor c1 is select rowid from IGS_PR_RULE_ALL
513 where PROGRESSION_RULE_CAT = X_PROGRESSION_RULE_CAT
514 and PROGRESSION_RULE_CD = X_PROGRESSION_RULE_CD
515 ;
516 begin
517 open c1;
518 fetch c1 into X_ROWID;
519 if (c1%notfound) then
520 close c1;
521 INSERT_ROW (
522 X_ROWID,
523 X_PROGRESSION_RULE_CAT,
524 X_PROGRESSION_RULE_CD,
525 X_DESCRIPTION,
526 X_RUL_SEQUENCE_NUMBER,
527 X_CLOSED_IND,
528 X_MESSAGE,
529 X_MODE,
530 X_ORG_ID);
531 return;
532 end if;
533 close c1;
534 UPDATE_ROW (
535 X_ROWID ,
536 X_PROGRESSION_RULE_CAT,
537 X_PROGRESSION_RULE_CD,
538 X_DESCRIPTION,
539 X_RUL_SEQUENCE_NUMBER,
540 X_CLOSED_IND,
541 X_MESSAGE,
542 X_MODE
543 );
544 end ADD_ROW;
545
546 procedure DELETE_ROW (
547 X_ROWID in VARCHAR2
548 ) is
549 begin
550 Before_DML (
551 p_action => 'DELETE',
552 x_rowid => X_ROWID
553 );
554
555 delete from IGS_PR_RULE_ALL
556 where ROWID = X_ROWID;
557 if (sql%notfound) then
558 raise no_data_found;
559 end if;
560
561 end DELETE_ROW;
562
563 PROCEDURE Check_Constraints (
564 Column_Name IN VARCHAR2 DEFAULT NULL,
565 Column_Value IN VARCHAR2 DEFAULT NULL
566 ) AS
567 BEGIN
568 IF Column_Name is null THEN
569 NULL;
570 ELSIF upper(Column_name) = 'CLOSED_IND' THEN
571 new_references.CLOSED_IND:= COLUMN_VALUE ;
572
573 ELSIF upper(Column_name) = 'PROGRESSION_RULE_CAT' THEN
574 new_references.PROGRESSION_RULE_CAT:= COLUMN_VALUE ;
575
576 ELSIF upper(Column_name) = 'PROGRESSION_RULE_CD' THEN
577 new_references.PROGRESSION_RULE_CD:= COLUMN_VALUE ;
578
579 END IF ;
580
581 IF upper(Column_name) = 'CLOSED_IND' OR COLUMN_NAME IS NULL THEN
582 IF new_references.CLOSED_IND not in ('Y','N') then
583 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
584 IGS_GE_MSG_STACK.ADD;
585 App_Exception.Raise_Exception ;
586 END IF;
587 END IF ;
588
589 IF upper(Column_name) = 'PROGRESSION_RULE_CAT' OR COLUMN_NAME IS NULL THEN
590 IF new_references.PROGRESSION_RULE_CAT<> upper(new_references.PROGRESSION_RULE_CAT) then
591 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
592 IGS_GE_MSG_STACK.ADD;
593 App_Exception.Raise_Exception ;
594 END IF;
595
596 END IF ;
597
598 IF (Column_name) = 'PROGRESSION_RULE_CD' OR COLUMN_NAME IS NULL THEN
599 IF new_references.PROGRESSION_RULE_CD<> (new_references.PROGRESSION_RULE_CD) then
600 Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');
601 IGS_GE_MSG_STACK.ADD;
602 App_Exception.Raise_Exception ;
603 END IF;
604
605 END IF ;
606
607 END Check_Constraints;
608
609 end IGS_PR_RULE_PKG;