[Home] [Help]
PACKAGE BODY: APPS.IGS_PS_ENT_PT_REF_CD_PKG
Source
1 package body IGS_PS_ENT_PT_REF_CD_PKG AS
2 /* $Header: IGSPI10B.pls 120.1 2006/05/29 07:29:39 sarakshi noship $ */
3
4 --sarakshi 20-Apr-2002 As a part of the bug #2146753 removed the call to the function
5 -- igs_ps_val_ceprc.crsp_val_ceprc_uref from beforerowinsertupdatedelete1
6 -- Also addd few columns in lock_row,update_row which were missing.
7 --sarakshi 27-Apr-2006 Bug#5165619, modified check_parent_existance and created procedure GET_FK_IGS_PS_OFR_UNIT_SET
8
9 l_rowid VARCHAR2(25);
10 old_references IGS_PS_ENT_PT_REF_CD%RowType;
11 new_references IGS_PS_ENT_PT_REF_CD%RowType;
12
13 PROCEDURE Set_Column_Values (
14 p_action IN VARCHAR2,
15 x_rowid IN VARCHAR2 DEFAULT NULL,
16 x_course_cd IN VARCHAR2 DEFAULT NULL,
17 x_version_number IN NUMBER DEFAULT NULL,
18 x_cal_type IN VARCHAR2 DEFAULT NULL,
19 x_location_cd IN VARCHAR2 DEFAULT NULL,
20 x_attendance_mode IN VARCHAR2 DEFAULT NULL,
21 x_attendance_type IN VARCHAR2 DEFAULT NULL,
22 x_reference_cd_type IN VARCHAR2 DEFAULT NULL,
23 x_sequence_number IN NUMBER DEFAULT NULL,
24 x_coo_id IN NUMBER DEFAULT NULL,
25 x_unit_set_cd IN VARCHAR2 DEFAULT NULL,
26 x_us_version_number IN NUMBER DEFAULT NULL,
27 x_reference_cd IN VARCHAR2 DEFAULT NULL,
28 x_description 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_PS_ENT_PT_REF_CD
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 Close cur_old_ref_values;
51 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
52 IGS_GE_MSG_STACK.ADD;
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.course_cd := x_course_cd;
61 new_references.version_number := x_version_number;
62 new_references.cal_type := x_cal_type;
63 new_references.location_cd := x_location_cd;
64 new_references.attendance_mode := x_attendance_mode;
65 new_references.attendance_type := x_attendance_type;
66 new_references.reference_cd_type := x_reference_cd_type;
67 new_references.sequence_number := x_sequence_number;
68 new_references.coo_id := x_coo_id;
69 new_references.unit_set_cd := x_unit_set_cd;
70 new_references.us_version_number := x_us_version_number;
71 new_references.reference_cd := x_reference_cd;
72 new_references.description := x_description;
73 IF (p_action = 'UPDATE') THEN
74 new_references.creation_date := old_references.creation_date;
75 new_references.created_by := old_references.created_by;
76 ELSE
77 new_references.creation_date := x_creation_date;
78 new_references.created_by := x_created_by;
79 END IF;
80 new_references.last_update_date := x_last_update_date;
81 new_references.last_updated_by := x_last_updated_by;
82 new_references.last_update_login := x_last_update_login;
83
84 END Set_Column_Values;
85
86 -- Trigger description :-
87 -- "OSS_TST".trg_ceprc_br_iud
88 -- BEFORE INSERT OR DELETE OR UPDATE
89 -- ON IGS_PS_ENT_PT_REF_CD
90 -- FOR EACH ROW
91
92 PROCEDURE BeforeRowInsertUpdateDelete1(
93 p_inserting IN BOOLEAN DEFAULT FALSE,
94 p_updating IN BOOLEAN DEFAULT FALSE,
95 p_deleting IN BOOLEAN DEFAULT FALSE
96 ) AS
97
98 v_message_name varchar2(30);
99 v_course_cd IGS_PS_VER.course_cd%TYPE;
100 v_version_number IGS_PS_VER.version_number%TYPE;
101
102 BEGIN
103
104 -- Set IGS_PS_OFR_OPT key.
105 IF p_inserting THEN
106 IGS_PS_GEN_003.CRSP_GET_COO_KEY (
107 new_references.coo_id,
108 new_references.course_cd,
109 new_references.version_number,
110 new_references.cal_type,
111 new_references.location_cd,
112 new_references.attendance_mode,
113 new_references.attendance_type);
114 END IF;
115 -- Set variables
116 IF p_inserting OR p_updating THEN
117 v_course_cd := new_references.course_cd;
118 v_version_number := new_references.version_number;
119 ELSE -- p_deleting
120 v_course_cd := old_references.course_cd;
121 v_version_number := old_references.version_number;
122 END IF;
123 -- Validate that inserts/updates/deletes are allowed
124 IF IGS_PS_VAL_CRS.CRSP_VAL_IUD_CRV_DTL(v_course_cd,
125 v_version_number,
126 v_message_name) = FALSE THEN
127 Fnd_Message.Set_Name('IGS',v_message_name);
128 IGS_GE_MSG_STACK.ADD;
129 App_Exception.Raise_Exception;
130 END IF;
131 IF p_inserting THEN
132 -- Validate IGS_PS_COURSE offering option
133 -- IGS_GE_NOTE:crsp_val_iud_crv_dtl called from this function
134 IF IGS_PS_VAL_COp.crsp_val_coo_inactiv (
135 new_references.course_cd,
136 new_references.version_number,
137 new_references.cal_type,
138 new_references.location_cd,
139 new_references.attendance_mode,
140 new_references.attendance_type,
141 v_message_name) = FALSE THEN
142 Fnd_Message.Set_Name('IGS',v_message_name);
143 IGS_GE_MSG_STACK.ADD;
144 App_Exception.Raise_Exception;
145 END IF;
146 -- Validate reference code type
147 IF IGS_PS_VAL_CRFC.crsp_val_ref_cd_type(
148 new_references.reference_cd_type,
149 v_message_name) = FALSE THEN
150 Fnd_Message.Set_Name('IGS',v_message_name);
151 IGS_GE_MSG_STACK.ADD;
152 App_Exception.Raise_Exception;
153 END IF;
154 END IF;
155 IF p_inserting OR p_updating THEN
156 -- Validate IGS_PS_UNIT sets are valid for the IGS_PS_COURSE offering option
157 IF (new_references.unit_set_cd IS NOT NULL OR
158 new_references.us_version_number IS NOT NULL) THEN
159 IF IGS_PS_VAL_CEPRC.crsp_val_ceprc_coous (
160 new_references.coo_id,
161 new_references.unit_set_cd,
162 new_references.us_version_number,
163 v_message_name) = 'FALSE' THEN
164 Fnd_Message.Set_Name('IGS',v_message_name);
165 IGS_GE_MSG_STACK.ADD;
166 App_Exception.Raise_Exception;
167 END IF;
168 END IF;
169 END IF;
170 IF p_inserting THEN
171 IF IGS_PS_VAL_CEPRC.crsp_val_ceprc_uniq (
172 new_references.coo_id,
173 new_references.reference_cd_type,
174 new_references.sequence_number,
175 new_references.unit_set_cd,
176 new_references.us_version_number,
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 --As a part of the bug #2146753 removed the call to the function
183 --igs_ps_val_ceprc.crsp_val_ceprc_uref
184 END IF;
185 IF p_deleting THEN
186 IF IGS_PS_VAL_ATL.chk_mandatory_ref_cd(
187 new_references.reference_cd_type) = TRUE THEN
188 Fnd_Message.Set_Name('IGS','IGS_PS_REF_CD_MANDATORY');
189 IGS_GE_MSG_STACK.ADD;
190 App_Exception.Raise_Exception;
191 END IF;
192 END IF;
193 END BeforeRowInsertUpdateDelete1;
194
195 PROCEDURE Check_Constraints (
196 Column_Name IN VARCHAR2 DEFAULT NULL,
197 Column_Value IN VARCHAR2 DEFAULT NULL
198 )
199 AS
200 BEGIN
201
202 IF column_name is null then
203 NULL;
204 ELSIF upper(Column_name) = 'ATTENDANCE_MODE' then
205 new_references.attendance_mode := column_value;
206 ELSIF upper(Column_name) = 'ATTENDANCE_TYPE' then
207 new_references.attendance_type := column_value;
208 ELSIF upper(Column_name) = 'CAL_TYPE' then
209 new_references.cal_type := column_value;
210 ELSIF upper(Column_name) = 'COURSE_CD' then
211 new_references.course_cd := column_value;
212 ELSIF upper(Column_name) = 'LOCATION_CD' then
213 new_references.location_cd := column_value;
214 ELSIF upper(Column_name) = 'REFERENCE_CD' then
215 new_references.reference_cd := column_value;
216 ELSIF upper(Column_name) = 'REFERENCE_CD_TYPE' then
217 new_references.reference_cd_type := column_value;
218 ELSIF upper(Column_name) = 'UNIT_SET_CD' then
219 new_references.unit_set_cd := column_value;
220 ELSIF upper(Column_name) = 'SEQUENCE_NUMBER' then
221 new_references.sequence_number := igs_ge_number.to_num(column_value);
222 END IF;
223
224 IF upper(column_name) = 'ATTENDANCE_MODE' OR
225 column_name is null Then
226 IF ( new_references.attendance_mode <> UPPER(new_references.attendance_mode) ) Then
227 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
228 IGS_GE_MSG_STACK.ADD;
229 App_Exception.Raise_Exception;
230 END IF;
231 END IF;
232
233 IF upper(column_name) = 'ATTENDANCE_TYPE' OR
234 column_name is null Then
235 IF ( new_references.attendance_type <> UPPER(new_references.attendance_type) ) Then
236 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
237 IGS_GE_MSG_STACK.ADD;
238 App_Exception.Raise_Exception;
239 END IF;
240 END IF;
241
242 IF upper(column_name) = 'CAL_TYPE' OR
243 column_name is null Then
244 IF ( new_references.cal_type <> UPPER(new_references.cal_type) ) Then
245 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
246 IGS_GE_MSG_STACK.ADD;
247 App_Exception.Raise_Exception;
248 END IF;
249 END IF;
250
251 IF upper(column_name) = 'COURSE_CD' OR
252 column_name is null Then
253 IF ( new_references.course_cd <> UPPER(new_references.course_cd) ) Then
254 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
255 IGS_GE_MSG_STACK.ADD;
256 App_Exception.Raise_Exception;
257 END IF;
258 END IF;
259
260 IF upper(column_name) = 'LOCATION_CD' OR
261 column_name is null Then
262 IF ( new_references.location_cd <> UPPER(new_references.location_cd) ) Then
263 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
264 IGS_GE_MSG_STACK.ADD;
265 App_Exception.Raise_Exception;
266 END IF;
267 END IF;
268
269 IF upper(column_name) = 'REFERENCE_CD' OR
270 column_name is null Then
271 IF ( new_references.reference_cd <> UPPER(new_references.reference_cd) ) Then
272 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
273 IGS_GE_MSG_STACK.ADD;
274 App_Exception.Raise_Exception;
275 END IF;
276 END IF;
277
278 IF upper(column_name) = 'REFERENCE_CD_TYPE' OR
279 column_name is null Then
280 IF ( new_references.reference_cd_type <> UPPER(new_references.reference_cd_type) ) Then
281 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
282 IGS_GE_MSG_STACK.ADD;
283 App_Exception.Raise_Exception;
284 END IF;
285 END IF;
286
287 IF upper(column_name) = 'UNIT_SET_CD' OR
288 column_name is null Then
289 IF ( new_references.unit_set_cd <> UPPER(new_references.unit_set_cd) ) Then
290 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
291 IGS_GE_MSG_STACK.ADD;
292 App_Exception.Raise_Exception;
293 END IF;
294 END IF;
295
296 IF upper(column_name) = 'SEQUENCE_NUMBER' OR
297 column_name is null Then
298 IF ( new_references.sequence_number < 1 OR new_references.sequence_number > 999999 ) Then
299 Fnd_Message.Set_Name ('IGS', 'IGS_GE_INVALID_VALUE');
300 IGS_GE_MSG_STACK.ADD;
301 App_Exception.Raise_Exception;
302 END IF;
303 END IF;
304
305 END Check_Constraints;
306
307 PROCEDURE Check_Parent_Existance AS
308
309 CURSOR cur_reference_cd_chk(cp_reference_cd_type igs_ge_ref_cd_type_all.reference_cd_type%TYPE) IS
310 SELECT 'X'
311 FROM igs_ge_ref_cd_type_all
312 WHERE restricted_flag='Y'
313 AND reference_cd_type=cp_reference_cd_type;
314 l_var VARCHAR2(1);
315
316 CURSOR cur_check(cp_course_cd igs_ps_ofr_opt_unit_set_v.course_cd%TYPE,
317 cp_crv_version_number igs_ps_ofr_opt_unit_set_v.crv_version_number%TYPE,
318 cp_cal_type igs_ps_ofr_opt_unit_set_v.cal_type%TYPE,
319 cp_location_cd igs_ps_ofr_opt_unit_set_v.location_cd%TYPE,
320 cp_attendance_mode igs_ps_ofr_opt_unit_set_v.attendance_mode%TYPE,
321 cp_attendance_type igs_ps_ofr_opt_unit_set_v.attendance_type%TYPE,
322 cp_unit_set_cd igs_ps_ofr_opt_unit_set_v.unit_set_cd%TYPE,
323 cp_us_version_number igs_ps_ofr_opt_unit_set_v.us_version_number%TYPE) IS
324 SELECT 'X'
325 FROM igs_ps_ofr_opt_unit_set_v
326 WHERE course_cd=cp_course_cd
327 AND crv_version_number=cp_crv_version_number
328 AND cal_type = cp_cal_type
329 AND location_cd = cp_location_cd
330 AND attendance_mode = cp_attendance_mode
331 AND attendance_type = cp_attendance_type
332 AND unit_set_cd = cp_unit_set_cd
333 AND us_version_number = cp_us_version_number;
334 l_c_var VARCHAR2(1);
335
336
337 BEGIN
338
339 IF (((old_references.course_cd = new_references.course_cd) AND
340 (old_references.version_number = new_references.version_number) AND
341 (old_references.cal_type = new_references.cal_type) AND
342 (old_references.location_cd = new_references.location_cd) AND
343 (old_references.attendance_mode = new_references.attendance_mode) AND
344 (old_references.attendance_type = new_references.attendance_type)) OR
345 ((new_references.course_cd IS NULL) OR
346 (new_references.version_number IS NULL) OR
347 (new_references.cal_type IS NULL) OR
348 (new_references.location_cd IS NULL) OR
349 (new_references.attendance_mode IS NULL) OR
350 (new_references.attendance_type IS NULL))) THEN
351 NULL;
352 ELSE
353 IF NOT IGS_PS_OFR_OPT_PKG.Get_PK_For_Validation (
354 new_references.course_cd,
355 new_references.version_number,
356 new_references.cal_type,
357 new_references.location_cd,
358 new_references.attendance_mode,
359 new_references.attendance_type
360 ) THEN
361 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
362 IGS_GE_MSG_STACK.ADD;
363 App_Exception.Raise_Exception;
364 END IF;
365 END IF;
366
367 IF (((old_references.coo_id = new_references.coo_id)) OR
368 ((new_references.coo_id IS NULL))) THEN
369 NULL;
370 ELSE
371 IF NOT IGS_PS_OFR_OPT_PKG.Get_UK_For_Validation (
372 new_references.coo_id
373 ) THEN
374 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
375 IGS_GE_MSG_STACK.ADD;
376 App_Exception.Raise_Exception;
377 END IF;
378 END IF;
379
380 IF (((old_references.reference_cd_type = new_references.reference_cd_type)) OR
381 ((new_references.reference_cd_type IS NULL))) THEN
382 NULL;
383 ELSE
384 IF NOT IGS_GE_REF_CD_TYPE_PKG.Get_PK_For_Validation (
385 new_references.reference_cd_type
386 ) THEN
387 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
388 IGS_GE_MSG_STACK.ADD;
389 App_Exception.Raise_Exception;
390 END IF;
391 END IF;
392
393 IF (((old_references.unit_set_cd = new_references.unit_set_cd) AND
394 (old_references.us_version_number = new_references.us_version_number)) OR
395 ((new_references.unit_set_cd IS NULL) OR
396 (new_references.us_version_number IS NULL))) THEN
397 NULL;
398 ELSE
399 IF NOT IGS_EN_UNIT_SET_PKG.Get_PK_For_Validation (
400 new_references.unit_set_cd,
401 new_references.us_version_number
402 ) THEN
403 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
404 IGS_GE_MSG_STACK.ADD;
405 App_Exception.Raise_Exception;
406 END IF;
407
408 --Added the check parent existance for the IGS_PS_OFR_UNIT_SET and IGS_PS_OF_OPT_UNT_ST
409 OPEN cur_check( new_references.course_cd,
410 new_references.version_number,
411 new_references.cal_type,
412 new_references.location_cd,
413 new_references.attendance_mode,
414 new_references.attendance_type,
415 new_references.unit_set_cd,
416 new_references.us_version_number);
417 FETCH cur_check INTO l_c_var;
418 IF cur_check%NOTFOUND THEN
419 CLOSE cur_check;
420 Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
421 IGS_GE_MSG_STACK.ADD;
422 App_Exception.Raise_Exception;
423 END IF;
424 CLOSE cur_check;
425 END IF;
426
427 OPEN cur_reference_cd_chk(new_references.reference_cd_type);
428 FETCH cur_reference_cd_chk INTO l_var;
429 IF cur_reference_cd_chk%FOUND THEN
430 IF (((old_references.reference_cd_type = new_references.reference_cd_type) AND
431 (old_references.reference_cd = new_references.reference_cd)) OR
432 ((new_references.reference_cd_type IS NULL) OR
433 (new_references.reference_cd IS NULL))) THEN
434 NULL;
435 ELSIF NOT igs_ge_ref_cd_pkg.get_uk_for_validation (
436 new_references.reference_cd_type,
437 new_references.reference_cd
438 ) THEN
439 Fnd_Message.Set_Name ('FND','FORM_RECORD_DELETED');
440 IGS_GE_MSG_STACK.ADD;
441 App_Exception.Raise_Exception;
442 END IF;
443 END IF;
444 CLOSE cur_reference_cd_chk;
445
446
447 END Check_Parent_Existance;
448
449 FUNCTION Get_PK_For_Validation (
450 x_course_cd IN VARCHAR2,
451 x_version_number IN NUMBER,
452 x_cal_type IN VARCHAR2,
453 x_location_cd IN VARCHAR2,
454 x_attendance_mode IN VARCHAR2,
455 x_attendance_type IN VARCHAR2,
456 x_reference_cd_type IN VARCHAR2,
457 x_sequence_number IN NUMBER
458 )
459 RETURN BOOLEAN AS
460
461 CURSOR cur_rowid IS
462 SELECT rowid
463 FROM IGS_PS_ENT_PT_REF_CD
464 WHERE course_cd = x_course_cd
465 AND version_number = x_version_number
466 AND cal_type = x_cal_type
467 AND location_cd = x_location_cd
468 AND attendance_mode = x_attendance_mode
469 AND attendance_type = x_attendance_type
470 AND reference_cd_type = x_reference_cd_type
471 AND sequence_number = x_sequence_number
472 FOR UPDATE NOWAIT;
473
474 lv_rowid cur_rowid%RowType;
475
476 BEGIN
477
478 Open cur_rowid;
479 Fetch cur_rowid INTO lv_rowid;
480 IF (cur_rowid%FOUND) THEN
481 Close cur_rowid;
482 Return (TRUE);
483 ELSE
484 Close cur_rowid;
485 Return (FALSE);
486 END IF;
487
488 END Get_PK_For_Validation;
489
490 PROCEDURE GET_FK_IGS_PS_OFR_OPT (
491 x_course_cd IN VARCHAR2,
492 x_version_number IN NUMBER,
493 x_cal_type IN VARCHAR2,
494 x_location_cd IN VARCHAR2,
495 x_attendance_mode IN VARCHAR2,
496 x_attendance_type IN VARCHAR2
497 ) AS
498
499 CURSOR cur_rowid IS
500 SELECT rowid
501 FROM IGS_PS_ENT_PT_REF_CD
502 WHERE course_cd = x_course_cd
503 AND version_number = x_version_number
504 AND cal_type = x_cal_type
505 AND location_cd = x_location_cd
506 AND attendance_mode = x_attendance_mode
507 AND attendance_type = x_attendance_type ;
508
509 lv_rowid cur_rowid%RowType;
510
511 BEGIN
512
513 Open cur_rowid;
514 Fetch cur_rowid INTO lv_rowid;
515 IF (cur_rowid%FOUND) THEN
516 Close cur_rowid;
517 Fnd_Message.Set_Name ('IGS', 'IGS_PS_CEPRC_COO_FK');
518 IGS_GE_MSG_STACK.ADD;
519 App_Exception.Raise_Exception;
520 Return;
521 END IF;
522 Close cur_rowid;
523
524 END GET_FK_IGS_PS_OFR_OPT;
525
526 PROCEDURE GET_UFK_IGS_PS_OFR_OPT (
527 x_coo_id IN NUMBER
528 ) AS
529
530 CURSOR cur_rowid IS
531 SELECT rowid
532 FROM IGS_PS_ENT_PT_REF_CD
533 WHERE coo_id = x_coo_id ;
534
535 lv_rowid cur_rowid%RowType;
536
537 BEGIN
538
539 Open cur_rowid;
540 Fetch cur_rowid INTO lv_rowid;
541 IF (cur_rowid%FOUND) THEN
542 Close cur_rowid;
543 Fnd_Message.Set_Name ('IGS', 'IGS_PS_CEPRC_COO_FK');
544 IGS_GE_MSG_STACK.ADD;
545 App_Exception.Raise_Exception;
546 Return;
547 END IF;
548 Close cur_rowid;
549
550 END GET_UFK_IGS_PS_OFR_OPT;
551
552 PROCEDURE GET_FK_IGS_GE_REF_CD_TYPE (
553 x_reference_cd_type IN VARCHAR2
554 ) AS
555
556 CURSOR cur_rowid IS
557 SELECT rowid
558 FROM IGS_PS_ENT_PT_REF_CD
559 WHERE reference_cd_type = x_reference_cd_type ;
560
561 lv_rowid cur_rowid%RowType;
562
563 BEGIN
564
565 Open cur_rowid;
566 Fetch cur_rowid INTO lv_rowid;
567 IF (cur_rowid%FOUND) THEN
568 Close cur_rowid;
569 Fnd_Message.Set_Name ('IGS', 'IGS_PS_CEPRC_RCT_FK');
570 IGS_GE_MSG_STACK.ADD;
571 App_Exception.Raise_Exception;
572 Return;
573 END IF;
574 Close cur_rowid;
575
576 END GET_FK_IGS_GE_REF_CD_TYPE;
577
578 PROCEDURE GET_FK_IGS_EN_UNIT_SET (
579 x_unit_set_cd IN VARCHAR2,
580 x_version_number IN NUMBER
581 ) AS
582
583 CURSOR cur_rowid IS
584 SELECT rowid
585 FROM IGS_PS_ENT_PT_REF_CD
586 WHERE unit_set_cd = x_unit_set_cd
587 AND us_version_number = x_version_number ;
588
589 lv_rowid cur_rowid%RowType;
590
591 BEGIN
592
593 Open cur_rowid;
594 Fetch cur_rowid INTO lv_rowid;
595 IF (cur_rowid%FOUND) THEN
596 Close cur_rowid;
597 Fnd_Message.Set_Name ('IGS', 'IGS_PS_CEPRC_US_FK');
598 IGS_GE_MSG_STACK.ADD;
599 App_Exception.Raise_Exception;
600 Return;
601 END IF;
602 Close cur_rowid;
603
604 END GET_FK_IGS_EN_UNIT_SET;
605
606 PROCEDURE GET_FK_IGS_PS_OFR_UNIT_SET (
607 x_course_cd IN VARCHAR2,
608 x_version_number IN NUMBER,
609 x_cal_type IN VARCHAR2,
610 x_unit_set_cd IN VARCHAR2,
611 x_us_version_number IN NUMBER
612 ) AS
613 /*************************************************************
614 Created By :sarakshi
615 Date Created By :27-APR-2006
616 Purpose :
617 Know limitations, enhancements or remarks
618 Change History
619 Who When What
620
621 (reverse chronological order - newest change first)
622 ***************************************************************/
623 CURSOR cur_rowid IS
624 SELECT rowid
625 FROM IGS_PS_ENT_PT_REF_CD
626 WHERE course_cd = x_course_cd
627 AND version_number = x_version_number
628 AND cal_type = x_cal_type
629 AND unit_set_cd = x_unit_set_cd
630 AND us_version_number = x_us_version_number ;
631
632 lv_rowid cur_rowid%RowType;
633
634 BEGIN
635
636 Open cur_rowid;
637 Fetch cur_rowid INTO lv_rowid;
638 IF (cur_rowid%FOUND) THEN
639 Close cur_rowid;
640 Fnd_Message.Set_Name ('IGS', 'IGS_PS_CEPRC_US_FK');
641 IGS_GE_MSG_STACK.ADD;
642 App_Exception.Raise_Exception;
643 Return;
644 END IF;
645 Close cur_rowid;
646
647 END GET_FK_IGS_PS_OFR_UNIT_SET;
648
649
650
651 PROCEDURE get_ufk_igs_ge_ref_cd (
652 x_reference_cd_type IN VARCHAR2,
653 x_reference_cd IN VARCHAR2
654 ) AS
655
656 /*************************************************************
657 Created By :sarakshi
658 Date Created By :7-May-2003
659 Purpose :
660 Know limitations, enhancements or remarks
661 Change History
662 Who When What
663
664 (reverse chronological order - newest change first)
665 ***************************************************************/
666
667 CURSOR cur_rowid IS
668 SELECT ROWID
669 FROM igs_ps_ref_cd
670 WHERE reference_cd_type = x_reference_cd_type
671 AND reference_cd = x_reference_cd ;
672
673 lv_rowid cur_rowid%ROWTYPE;
674
675 BEGIN
676
677 OPEN cur_rowid;
678 FETCH cur_rowid INTO lv_rowid;
679 IF (cur_rowid%FOUND) THEN
680 CLOSE cur_rowid;
681 fnd_message.set_name ('IGS', 'IGS_PS_CRCC_RC_FK');
682 igs_ge_msg_stack.add;
683 app_exception.raise_exception;
684 RETURN;
685 END IF;
686 CLOSE cur_rowid;
687
688 END get_ufk_igs_ge_ref_cd;
689
690 PROCEDURE Before_DML (
691 p_action IN VARCHAR2,
692 x_rowid IN VARCHAR2 DEFAULT NULL,
693 x_course_cd IN VARCHAR2 DEFAULT NULL,
694 x_version_number IN NUMBER DEFAULT NULL,
695 x_cal_type IN VARCHAR2 DEFAULT NULL,
696 x_location_cd IN VARCHAR2 DEFAULT NULL,
697 x_attendance_mode IN VARCHAR2 DEFAULT NULL,
698 x_attendance_type IN VARCHAR2 DEFAULT NULL,
699 x_reference_cd_type IN VARCHAR2 DEFAULT NULL,
700 x_sequence_number IN NUMBER DEFAULT NULL,
701 x_coo_id IN NUMBER DEFAULT NULL,
702 x_unit_set_cd IN VARCHAR2 DEFAULT NULL,
703 x_us_version_number IN NUMBER DEFAULT NULL,
704 x_reference_cd IN VARCHAR2 DEFAULT NULL,
705 x_description IN VARCHAR2 DEFAULT NULL,
706 x_creation_date IN DATE DEFAULT NULL,
707 x_created_by IN NUMBER DEFAULT NULL,
708 x_last_update_date IN DATE DEFAULT NULL,
709 x_last_updated_by IN NUMBER DEFAULT NULL,
710 x_last_update_login IN NUMBER DEFAULT NULL
711 ) AS
712 BEGIN
713
714 Set_Column_Values (
715 p_action,
716 x_rowid,
717 x_course_cd,
718 x_version_number,
719 x_cal_type,
720 x_location_cd,
721 x_attendance_mode,
722 x_attendance_type,
723 x_reference_cd_type,
724 x_sequence_number,
725 x_coo_id,
726 x_unit_set_cd,
727 x_us_version_number,
728 x_reference_cd,
729 x_description,
730 x_creation_date,
731 x_created_by,
732 x_last_update_date,
733 x_last_updated_by,
734 x_last_update_login
735 );
736
737 IF (p_action = 'INSERT') THEN
738 -- Call all the procedures related to Before Insert.
739 BeforeRowInsertUpdateDelete1 ( p_inserting => TRUE );
740 IF Get_PK_For_Validation (
741 new_references.course_cd ,
742 new_references.version_number,
743 new_references.cal_type,
744 new_references.location_cd,
745 new_references.attendance_mode,
746 new_references.attendance_type,
747 new_references.reference_cd_type,
748 new_references.sequence_number) THEN
749 Fnd_Message.Set_Name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
750 IGS_GE_MSG_STACK.ADD;
751 App_Exception.Raise_Exception;
752 END IF;
753 Check_Constraints;
754 Check_Parent_Existance;
755 ELSIF (p_action = 'UPDATE') THEN
756 -- Call all the procedures related to Before Update.
757 BeforeRowInsertUpdateDelete1 ( p_updating => TRUE );
758 Check_Constraints;
759 Check_Parent_Existance;
760 ELSIF (p_action = 'DELETE') THEN
761 -- Call all the procedures related to Before Delete.
762 BeforeRowInsertUpdateDelete1 ( p_deleting => TRUE );
763 ELSIF (p_action = 'VALIDATE_INSERT') THEN
764 IF Get_PK_For_Validation (
765 new_references.course_cd ,
766 new_references.version_number,
767 new_references.cal_type,
768 new_references.location_cd,
769 new_references.attendance_mode,
770 new_references.attendance_type,
771 new_references.reference_cd_type,
772 new_references.sequence_number) THEN
773 Fnd_Message.Set_Name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
774 IGS_GE_MSG_STACK.ADD;
775 App_Exception.Raise_Exception;
776 END IF;
777 Check_Constraints;
778 ELSIF (p_action = 'VALIDATE_UPDATE') THEN
779 Check_Constraints;
780 END IF;
781
782 END Before_DML;
783
784 PROCEDURE After_DML (
785 p_action IN VARCHAR2,
786 x_rowid IN VARCHAR2
787 ) AS
788 BEGIN
789
790 l_rowid := x_rowid;
791
792
793 END After_DML;
794
795 procedure INSERT_ROW (
796 X_ROWID in out NOCOPY VARCHAR2,
797 X_COURSE_CD in VARCHAR2,
798 X_SEQUENCE_NUMBER in NUMBER,
799 X_REFERENCE_CD_TYPE in VARCHAR2,
800 X_ATTENDANCE_TYPE in VARCHAR2,
801 X_CAL_TYPE in VARCHAR2,
802 X_LOCATION_CD in VARCHAR2,
803 X_VERSION_NUMBER in NUMBER,
804 X_ATTENDANCE_MODE in VARCHAR2,
805 X_COO_ID in NUMBER,
806 X_UNIT_SET_CD in VARCHAR2,
807 X_US_VERSION_NUMBER in NUMBER,
808 X_REFERENCE_CD in VARCHAR2,
809 X_DESCRIPTION in VARCHAR2,
810 X_MODE in VARCHAR2 default 'R'
811 ) AS
812 cursor C is select ROWID from IGS_PS_ENT_PT_REF_CD
813 where COURSE_CD = X_COURSE_CD
814 and SEQUENCE_NUMBER = X_SEQUENCE_NUMBER
815 and REFERENCE_CD_TYPE = X_REFERENCE_CD_TYPE
816 and ATTENDANCE_TYPE = X_ATTENDANCE_TYPE
817 and CAL_TYPE = X_CAL_TYPE
818 and LOCATION_CD = X_LOCATION_CD
819 and VERSION_NUMBER = X_VERSION_NUMBER
820 and ATTENDANCE_MODE = X_ATTENDANCE_MODE;
821 X_LAST_UPDATE_DATE DATE;
822 X_LAST_UPDATED_BY NUMBER;
823 X_LAST_UPDATE_LOGIN NUMBER;
824 begin
825 X_LAST_UPDATE_DATE := SYSDATE;
826 if(X_MODE = 'I') then
827 X_LAST_UPDATED_BY := 1;
828 X_LAST_UPDATE_LOGIN := 0;
829 elsif (X_MODE = 'R') then
830 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
831 if X_LAST_UPDATED_BY is NULL then
832 X_LAST_UPDATED_BY := -1;
833 end if;
834 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
835 if X_LAST_UPDATE_LOGIN is NULL then
836 X_LAST_UPDATE_LOGIN := -1;
837 end if;
838 else
839 FND_MESSAGE.SET_NAME( 'FND', 'SYSTEM-INVALID ARGS');
840 IGS_GE_MSG_STACK.ADD;
841 app_exception.raise_exception;
842 end if;
843
844 Before_DML (
845 p_action => 'INSERT',
846 x_rowid => X_ROWID,
847 x_course_cd => X_COURSE_CD,
848 x_version_number => X_VERSION_NUMBER,
849 x_cal_type => X_CAL_TYPE,
850 x_location_cd => X_LOCATION_CD,
851 x_attendance_mode => X_ATTENDANCE_MODE,
852 x_attendance_type => X_ATTENDANCE_TYPE,
853 x_reference_cd_type => X_REFERENCE_CD_TYPE,
854 x_sequence_number => X_SEQUENCE_NUMBER,
855 x_coo_id => X_COO_ID ,
856 x_unit_set_cd => X_UNIT_SET_CD ,
857 x_us_version_number => X_US_VERSION_NUMBER ,
858 x_reference_cd => X_REFERENCE_CD ,
859 x_description => X_DESCRIPTION ,
860 x_creation_date => X_LAST_UPDATE_DATE ,
861 x_created_by => X_LAST_UPDATED_BY ,
862 x_last_update_date => X_LAST_UPDATE_DATE ,
863 x_last_updated_by => X_LAST_UPDATED_BY ,
864 x_last_update_login => X_LAST_UPDATE_LOGIN
865 );
866
867 insert into IGS_PS_ENT_PT_REF_CD (
868 COURSE_CD,
869 VERSION_NUMBER,
870 CAL_TYPE,
871 LOCATION_CD,
872 ATTENDANCE_MODE,
873 ATTENDANCE_TYPE,
874 COO_ID,
875 REFERENCE_CD_TYPE,
876 SEQUENCE_NUMBER,
877 UNIT_SET_CD,
878 US_VERSION_NUMBER,
879 REFERENCE_CD,
880 DESCRIPTION,
881 CREATION_DATE,
882 CREATED_BY,
883 LAST_UPDATE_DATE,
884 LAST_UPDATED_BY,
885 LAST_UPDATE_LOGIN
886 ) values (
887 NEW_REFERENCES.COURSE_CD,
888 NEW_REFERENCES.VERSION_NUMBER,
889 NEW_REFERENCES.CAL_TYPE,
890 NEW_REFERENCES.LOCATION_CD,
891 NEW_REFERENCES.ATTENDANCE_MODE,
892 NEW_REFERENCES.ATTENDANCE_TYPE,
893 NEW_REFERENCES.COO_ID,
894 NEW_REFERENCES.REFERENCE_CD_TYPE,
895 NEW_REFERENCES.SEQUENCE_NUMBER,
896 NEW_REFERENCES.UNIT_SET_CD,
897 NEW_REFERENCES.US_VERSION_NUMBER,
898 NEW_REFERENCES.REFERENCE_CD,
899 NEW_REFERENCES.DESCRIPTION,
900 X_LAST_UPDATE_DATE,
901 X_LAST_UPDATED_BY,
902 X_LAST_UPDATE_DATE,
903 X_LAST_UPDATED_BY,
904 X_LAST_UPDATE_LOGIN
905 );
906
907 open c;
908 fetch c into X_ROWID;
909 if (c%notfound) then
910 close c;
911 raise no_data_found;
912 end if;
913 close c;
914 After_DML (
915 p_action => 'INSERT',
916 x_rowid => X_ROWID
917 );
918
919 end INSERT_ROW;
920
921 procedure LOCK_ROW (
922 X_ROWID IN VARCHAR2,
923 X_COURSE_CD in VARCHAR2,
924 X_SEQUENCE_NUMBER in NUMBER,
925 X_REFERENCE_CD_TYPE in VARCHAR2,
926 X_ATTENDANCE_TYPE in VARCHAR2,
927 X_CAL_TYPE in VARCHAR2,
928 X_LOCATION_CD in VARCHAR2,
929 X_VERSION_NUMBER in NUMBER,
930 X_ATTENDANCE_MODE in VARCHAR2,
931 X_COO_ID in NUMBER,
932 X_UNIT_SET_CD in VARCHAR2,
933 X_US_VERSION_NUMBER in NUMBER,
934 X_REFERENCE_CD in VARCHAR2,
935 X_DESCRIPTION in VARCHAR2
936 ) AS
937 cursor c1 is select
938 COO_ID,
939 --added by sarakshi, bug#2146753
940 course_cd,
941 version_number,
942 cal_type,
943 location_cd,
944 attendance_mode,
945 attendance_type,
946 reference_cd_type,
947 sequence_number,
948 --
949 UNIT_SET_CD,
950 US_VERSION_NUMBER,
951 REFERENCE_CD,
952 DESCRIPTION
953 from IGS_PS_ENT_PT_REF_CD
954 where ROWID = X_ROWID
955 for update nowait;
956 tlinfo c1%rowtype;
957
958 begin
959 open c1;
960 fetch c1 into tlinfo;
961 if (c1%notfound) then
962 close c1;
963 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
964 IGS_GE_MSG_STACK.ADD;
965 app_exception.raise_exception;
966 return;
967 end if;
968 close c1;
969
970 if ((tlinfo.COO_ID = X_COO_ID)
971 --added by sarakshi, bug#2146753
972 AND (tlinfo.course_cd = x_course_cd)
973 AND (tlinfo.version_number = x_version_number)
974 AND (tlinfo.cal_type = x_cal_type)
975 AND (tlinfo.location_cd = x_location_cd)
976 AND (tlinfo.attendance_mode = x_attendance_mode)
977 AND (tlinfo.attendance_type = x_attendance_type)
978 AND (tlinfo.reference_cd_type = x_reference_cd_type)
979 AND (tlinfo.sequence_number = x_sequence_number)
980 --
981 AND ((tlinfo.UNIT_SET_CD = X_UNIT_SET_CD)
982 OR ((tlinfo.UNIT_SET_CD is null)
983 AND (X_UNIT_SET_CD is null)))
984 AND ((tlinfo.US_VERSION_NUMBER = X_US_VERSION_NUMBER)
985 OR ((tlinfo.US_VERSION_NUMBER is null)
986 AND (X_US_VERSION_NUMBER is null)))
987 AND (tlinfo.REFERENCE_CD = X_REFERENCE_CD)
988 AND ((tlinfo.DESCRIPTION= X_DESCRIPTION)
989 OR ((tlinfo.DESCRIPTION is null)
990 AND (X_DESCRIPTION is null)))
991 ) then
992 null;
993 else
994 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
995 IGS_GE_MSG_STACK.ADD;
996 app_exception.raise_exception;
997 end if;
998 return;
999 end LOCK_ROW;
1000
1001 procedure UPDATE_ROW (
1002 X_ROWID IN VARCHAR2,
1003 X_COURSE_CD in VARCHAR2,
1004 X_SEQUENCE_NUMBER in NUMBER,
1005 X_REFERENCE_CD_TYPE in VARCHAR2,
1006 X_ATTENDANCE_TYPE in VARCHAR2,
1007 X_CAL_TYPE in VARCHAR2,
1008 X_LOCATION_CD in VARCHAR2,
1009 X_VERSION_NUMBER in NUMBER,
1010 X_ATTENDANCE_MODE in VARCHAR2,
1011 X_COO_ID in NUMBER,
1012 X_UNIT_SET_CD in VARCHAR2,
1013 X_US_VERSION_NUMBER in NUMBER,
1014 X_REFERENCE_CD in VARCHAR2,
1015 X_DESCRIPTION in VARCHAR2,
1016 X_MODE in VARCHAR2 default 'R'
1017 ) AS
1018 X_LAST_UPDATE_DATE DATE;
1019 X_LAST_UPDATED_BY NUMBER;
1020 X_LAST_UPDATE_LOGIN NUMBER;
1021 begin
1022 X_LAST_UPDATE_DATE := SYSDATE;
1023 if(X_MODE = 'I') then
1024 X_LAST_UPDATED_BY := 1;
1025 X_LAST_UPDATE_LOGIN := 0;
1026 elsif (X_MODE = 'R') then
1027 X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
1028 if X_LAST_UPDATED_BY is NULL then
1029 X_LAST_UPDATED_BY := -1;
1030 end if;
1031 X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
1032 if X_LAST_UPDATE_LOGIN is NULL then
1033 X_LAST_UPDATE_LOGIN := -1;
1034 end if;
1035 else
1036 FND_MESSAGE.SET_NAME('FND', 'SYSTEM-INVALID ARGS');
1037 IGS_GE_MSG_STACK.ADD;
1038 app_exception.raise_exception;
1039 end if;
1040
1041 Before_DML (
1042 p_action => 'UPDATE',
1043 x_rowid => X_ROWID,
1044 x_course_cd => X_COURSE_CD,
1045 x_version_number => X_VERSION_NUMBER,
1046 x_cal_type => X_CAL_TYPE,
1047 x_location_cd => X_LOCATION_CD,
1048 x_attendance_mode => X_ATTENDANCE_MODE,
1049 x_attendance_type => X_ATTENDANCE_TYPE,
1050 x_reference_cd_type => X_REFERENCE_CD_TYPE,
1051 x_sequence_number => X_SEQUENCE_NUMBER,
1052 x_coo_id => X_COO_ID ,
1053 x_unit_set_cd => X_UNIT_SET_CD ,
1054 x_us_version_number => X_US_VERSION_NUMBER ,
1055 x_reference_cd => X_REFERENCE_CD ,
1056 x_description => X_DESCRIPTION ,
1057 x_creation_date => X_LAST_UPDATE_DATE ,
1058 x_created_by => X_LAST_UPDATED_BY ,
1059 x_last_update_date => X_LAST_UPDATE_DATE ,
1060 x_last_updated_by => X_LAST_UPDATED_BY ,
1061 x_last_update_login => X_LAST_UPDATE_LOGIN
1062 );
1063
1064 update IGS_PS_ENT_PT_REF_CD set
1065 --added by sarakshi, bug#2146753
1066 course_cd=new_references.course_cd,
1067 version_number=new_references.version_number,
1068 cal_type=new_references.cal_type,
1069 location_cd=new_references.location_cd,
1070 attendance_mode=new_references.attendance_mode,
1071 attendance_type=new_references.attendance_type,
1072 reference_cd_type=new_references.reference_cd_type,
1073 sequence_number=new_references.sequence_number,
1074 --
1075 COO_ID = NEW_REFERENCES.COO_ID,
1076 UNIT_SET_CD = NEW_REFERENCES.UNIT_SET_CD,
1077 US_VERSION_NUMBER = NEW_REFERENCES.US_VERSION_NUMBER,
1078 REFERENCE_CD = NEW_REFERENCES.REFERENCE_CD,
1079 DESCRIPTION = NEW_REFERENCES.DESCRIPTION,
1080 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
1081 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
1082 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
1083 where ROWID = X_ROWID
1084 ;
1085 if (sql%notfound) then
1086 raise no_data_found;
1087 end if;
1088
1089 After_DML (
1090 p_action => 'UPDATE',
1091 x_rowid => X_ROWID
1092 );
1093
1094 end UPDATE_ROW;
1095
1096 procedure ADD_ROW (
1097 X_ROWID in out NOCOPY VARCHAR2,
1098 X_COURSE_CD in VARCHAR2,
1099 X_SEQUENCE_NUMBER in NUMBER,
1100 X_REFERENCE_CD_TYPE in VARCHAR2,
1101 X_ATTENDANCE_TYPE in VARCHAR2,
1102 X_CAL_TYPE in VARCHAR2,
1103 X_LOCATION_CD in VARCHAR2,
1104 X_VERSION_NUMBER in NUMBER,
1105 X_ATTENDANCE_MODE in VARCHAR2,
1106 X_COO_ID in NUMBER,
1107 X_UNIT_SET_CD in VARCHAR2,
1108 X_US_VERSION_NUMBER in NUMBER,
1109 X_REFERENCE_CD in VARCHAR2,
1110 X_DESCRIPTION in VARCHAR2,
1111 X_MODE in VARCHAR2 default 'R'
1112 ) AS
1113 cursor c1 is select rowid from IGS_PS_ENT_PT_REF_CD
1114 where COURSE_CD = X_COURSE_CD
1115 and SEQUENCE_NUMBER = X_SEQUENCE_NUMBER
1116 and REFERENCE_CD_TYPE = X_REFERENCE_CD_TYPE
1117 and ATTENDANCE_TYPE = X_ATTENDANCE_TYPE
1118 and CAL_TYPE = X_CAL_TYPE
1119 and LOCATION_CD = X_LOCATION_CD
1120 and VERSION_NUMBER = X_VERSION_NUMBER
1121 and ATTENDANCE_MODE = X_ATTENDANCE_MODE
1122 ;
1123 begin
1124 open c1;
1125 fetch c1 into X_ROWID;
1126 if (c1%notfound) then
1127 close c1;
1128 INSERT_ROW (
1129 X_ROWID,
1130 X_COURSE_CD,
1131 X_SEQUENCE_NUMBER,
1132 X_REFERENCE_CD_TYPE,
1133 X_ATTENDANCE_TYPE,
1134 X_CAL_TYPE,
1135 X_LOCATION_CD,
1136 X_VERSION_NUMBER,
1137 X_ATTENDANCE_MODE,
1138 X_COO_ID,
1139 X_UNIT_SET_CD,
1140 X_US_VERSION_NUMBER,
1141 X_REFERENCE_CD,
1142 X_DESCRIPTION,
1143 X_MODE);
1144 return;
1145 end if;
1146 close c1;
1147 UPDATE_ROW (
1148 X_ROWID,
1149 X_COURSE_CD,
1150 X_SEQUENCE_NUMBER,
1151 X_REFERENCE_CD_TYPE,
1152 X_ATTENDANCE_TYPE,
1153 X_CAL_TYPE,
1154 X_LOCATION_CD,
1155 X_VERSION_NUMBER,
1156 X_ATTENDANCE_MODE,
1157 X_COO_ID,
1158 X_UNIT_SET_CD,
1159 X_US_VERSION_NUMBER,
1160 X_REFERENCE_CD,
1161 X_DESCRIPTION,
1162 X_MODE);
1163 end ADD_ROW;
1164
1165 procedure DELETE_ROW (
1166 X_ROWID in VARCHAR2
1167 ) AS
1168 begin
1169 Before_DML (
1170 p_action => 'DELETE',
1171 x_rowid => X_ROWID
1172 );
1173 delete from IGS_PS_ENT_PT_REF_CD
1174 where ROWID = X_ROWID;
1175 if (sql%notfound) then
1176 raise no_data_found;
1177 end if;
1178 After_DML (
1179 p_action => 'DELETE',
1180 x_rowid => X_ROWID
1181 );
1182 end DELETE_ROW;
1183
1184 end IGS_PS_ENT_PT_REF_CD_PKG;