The following lines contain the word 'select', 'insert', 'update' or 'delete':
x_last_update_date IN DATE DEFAULT NULL,
x_last_updated_by IN NUMBER DEFAULT NULL,
x_last_update_login IN NUMBER DEFAULT NULL
) AS
CURSOR cur_old_ref_values IS
SELECT *
FROM IGS_AD_PRD_PS_OF_OPT
WHERE rowid = x_rowid;
IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT','VALIDATE_INSERT')) THEN
Close cur_old_ref_values;
Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
IF (p_action = 'UPDATE') THEN
new_references.creation_date := old_references.creation_date;
new_references.last_update_date := x_last_update_date;
new_references.last_updated_by := x_last_updated_by;
new_references.last_update_login := x_last_update_login;
PROCEDURE BeforeRowInsertUpdateDelete1(
p_inserting IN BOOLEAN DEFAULT FALSE,
p_updating IN BOOLEAN DEFAULT FALSE,
p_deleting IN BOOLEAN DEFAULT FALSE
) AS
v_message_name varchar2(30);
IF p_inserting THEN
-- Validate course offering
IF IGS_AD_VAL_APCOO.admp_val_apcoo_co(
new_references.course_cd,
new_references.version_number,
new_references.acad_cal_type,
new_references.admission_cat,
new_references.s_admission_process_type,
new_references.adm_cal_type,
new_references.adm_ci_sequence_number,
v_message_name) = FALSE THEN
Fnd_Message.Set_Name('IGS',v_message_name);
IF p_inserting OR p_updating THEN
-- Validate admission period course offering option components
IF IGS_AD_VAL_APCOO.admp_val_apcoo_opt(
new_references.course_cd,
new_references.version_number,
new_references.acad_cal_type,
new_references.location_cd,
new_references.attendance_mode,
new_references.attendance_type,
new_references.adm_cal_type,
new_references.adm_ci_sequence_number,
new_references.admission_cat,
new_references.s_admission_process_type,
v_message_name) = FALSE THEN
Fnd_Message.Set_Name('IGS',v_message_name);
END BeforeRowInsertUpdateDelete1;
PROCEDURE AfterRowInsertUpdate2(
p_inserting IN BOOLEAN DEFAULT FALSE,
p_updating IN BOOLEAN DEFAULT FALSE,
p_deleting IN BOOLEAN DEFAULT FALSE
) AS
v_message_name VARCHAR2(30);
-- Cannot call admp_val_apcoo_links because insert sequence number
-- is required.
-- Save the rowid of the current row.
IF p_inserting OR p_updating THEN
-- Validate the admission period course offering option
IF IGS_AD_VAL_APCOO.admp_val_apcoo_links (
new_references.adm_cal_type,
new_references.adm_ci_sequence_number,
new_references.admission_cat,
new_references.s_admission_process_type,
new_references.course_cd,
new_references.version_number,
new_references.acad_cal_type,
new_references.sequence_number,
new_references.location_cd,
new_references.attendance_mode,
new_references.attendance_type,
v_message_name) = FALSE THEN
Fnd_Message.Set_Name('IGS',v_message_name);
END AfterRowInsertUpdate2;
Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
Fnd_Message.Set_Name ('FND', 'FORM_RECORD_DELETED');
SELECT rowid
FROM IGS_AD_PRD_PS_OF_OPT
WHERE adm_cal_type = x_adm_cal_type
AND adm_ci_sequence_number = x_adm_ci_sequence_number
AND admission_cat = x_admission_cat
AND s_admission_process_type = x_s_admission_process_type
AND course_cd = x_course_cd
AND version_number = x_version_number
AND acad_cal_type = x_acad_cal_type
AND sequence_number = x_sequence_number
FOR UPDATE NOWAIT;
SELECT rowid
FROM IGS_AD_PRD_PS_OF_OPT
WHERE attendance_mode = x_attendance_mode ;
SELECT rowid
FROM IGS_AD_PRD_PS_OF_OPT
WHERE adm_cal_type = x_adm_cal_type
AND adm_ci_sequence_number = x_adm_ci_sequence_number
AND admission_cat = x_admission_cat
AND s_admission_process_type = x_s_admission_process_type ;
SELECT rowid
FROM IGS_AD_PRD_PS_OF_OPT
WHERE attendance_type = x_attendance_type ;
SELECT rowid
FROM IGS_AD_PRD_PS_OF_OPT
WHERE course_cd = x_course_cd
AND version_number = x_version_number
AND acad_cal_type = x_cal_type ;
SELECT rowid
FROM IGS_AD_PRD_PS_OF_OPT
WHERE location_cd = x_location_cd ;
x_last_update_date IN DATE DEFAULT NULL,
x_last_updated_by IN NUMBER DEFAULT NULL,
x_last_update_login IN NUMBER DEFAULT NULL
) AS
BEGIN
Set_Column_Values (
p_action,
x_rowid,
x_adm_cal_type,
x_adm_ci_sequence_number,
x_admission_cat,
x_s_admission_process_type,
x_course_cd,
x_version_number,
x_acad_cal_type,
x_sequence_number,
x_location_cd,
x_attendance_mode,
x_attendance_type,
x_rollover_inclusion_ind,
x_creation_date,
x_created_by,
x_last_update_date,
x_last_updated_by,
x_last_update_login
);
IF (p_action = 'INSERT') THEN
BeforeRowInsertUpdateDelete1 ( p_inserting => TRUE );
ELSIF (p_action = 'UPDATE') THEN
BeforeRowInsertUpdateDelete1 ( p_updating => TRUE );
ELSIF (p_action = 'DELETE') THEN
BeforeRowInsertUpdateDelete1 ( p_deleting => TRUE );
ELSIF (p_action = 'VALIDATE_INSERT') THEN
IF Get_PK_For_Validation (
new_references.adm_cal_type,
new_references.adm_ci_sequence_number,
new_references.admission_cat,
new_references.s_admission_process_type,
new_references.course_cd,
new_references.version_number,
new_references.acad_cal_type,
new_references.sequence_number
) THEN
Fnd_Message.Set_Name ('IGS', 'IGS_GE_RECORD_ALREADY_EXISTS');
ELSIF (p_action = 'VALIDATE_UPDATE') THEN
Check_Constraints;
IF (p_action = 'INSERT') THEN
AfterRowInsertUpdate2 ( p_inserting => TRUE );
ELSIF (p_action = 'UPDATE') THEN
AfterRowInsertUpdate2 ( p_updating => TRUE );
procedure INSERT_ROW (
X_ROWID in out NOCOPY VARCHAR2,
X_ADM_CAL_TYPE in VARCHAR2,
X_ADM_CI_SEQUENCE_NUMBER in NUMBER,
X_ADMISSION_CAT in VARCHAR2,
X_S_ADMISSION_PROCESS_TYPE in VARCHAR2,
X_COURSE_CD in VARCHAR2,
X_VERSION_NUMBER in NUMBER,
X_ACAD_CAL_TYPE in VARCHAR2,
X_SEQUENCE_NUMBER in NUMBER,
X_LOCATION_CD in VARCHAR2,
X_ATTENDANCE_MODE in VARCHAR2,
X_ATTENDANCE_TYPE in VARCHAR2,
X_ROLLOVER_INCLUSION_IND in VARCHAR2,
X_MODE in VARCHAR2 default 'R'
) AS
cursor C is select ROWID from IGS_AD_PRD_PS_OF_OPT
where ADM_CAL_TYPE = X_ADM_CAL_TYPE
and ADM_CI_SEQUENCE_NUMBER = X_ADM_CI_SEQUENCE_NUMBER
and ADMISSION_CAT = X_ADMISSION_CAT
and S_ADMISSION_PROCESS_TYPE = X_S_ADMISSION_PROCESS_TYPE
and COURSE_CD = X_COURSE_CD
and VERSION_NUMBER = X_VERSION_NUMBER
and ACAD_CAL_TYPE = X_ACAD_CAL_TYPE
and SEQUENCE_NUMBER = X_SEQUENCE_NUMBER;
X_LAST_UPDATE_DATE DATE;
X_LAST_UPDATED_BY NUMBER;
X_LAST_UPDATE_LOGIN NUMBER;
X_PROGRAM_UPDATE_DATE DATE;
X_LAST_UPDATE_DATE := SYSDATE;
X_LAST_UPDATED_BY := 1;
X_LAST_UPDATE_LOGIN := 0;
X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
if X_LAST_UPDATED_BY is NULL then
X_LAST_UPDATED_BY := -1;
X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
if X_LAST_UPDATE_LOGIN is NULL then
X_LAST_UPDATE_LOGIN := -1;
X_PROGRAM_UPDATE_DATE := NULL;
X_PROGRAM_UPDATE_DATE := SYSDATE;
Before_DML(p_action =>'INSERT',
x_rowid =>X_ROWID,
x_adm_cal_type => X_ADM_CAL_TYPE,
x_adm_ci_sequence_number => X_ADM_CI_SEQUENCE_NUMBER,
x_admission_cat => X_ADMISSION_CAT,
x_s_admission_process_type => X_S_ADMISSION_PROCESS_TYPE,
x_course_cd =>X_COURSE_CD,
x_version_number=> X_VERSION_NUMBER,
x_acad_cal_type => X_ACAD_CAL_TYPE ,
x_sequence_number=> X_SEQUENCE_NUMBER,
x_location_cd => X_LOCATION_CD,
x_attendance_mode=> X_ATTENDANCE_MODE,
x_attendance_type => X_ATTENDANCE_TYPE ,
x_rollover_inclusion_ind=> NVL(X_ROLLOVER_INCLUSION_IND,'Y'),
x_creation_date => X_LAST_UPDATE_DATE,
x_created_by => X_LAST_UPDATED_BY,
x_last_update_date => X_LAST_UPDATE_DATE,
x_last_updated_by => X_LAST_UPDATED_BY,
x_last_update_login => X_LAST_UPDATE_LOGIN
);
insert into IGS_AD_PRD_PS_OF_OPT (
ADM_CAL_TYPE,
ADM_CI_SEQUENCE_NUMBER,
ADMISSION_CAT,
S_ADMISSION_PROCESS_TYPE,
COURSE_CD,
VERSION_NUMBER,
ACAD_CAL_TYPE,
SEQUENCE_NUMBER,
LOCATION_CD,
ATTENDANCE_MODE,
ATTENDANCE_TYPE,
ROLLOVER_INCLUSION_IND,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN,
REQUEST_ID,
PROGRAM_ID,
PROGRAM_APPLICATION_ID,
PROGRAM_UPDATE_DATE
) values (
NEW_REFERENCES.ADM_CAL_TYPE,
NEW_REFERENCES.ADM_CI_SEQUENCE_NUMBER,
NEW_REFERENCES.ADMISSION_CAT,
NEW_REFERENCES.S_ADMISSION_PROCESS_TYPE,
NEW_REFERENCES.COURSE_CD,
NEW_REFERENCES.VERSION_NUMBER,
NEW_REFERENCES.ACAD_CAL_TYPE,
NEW_REFERENCES.SEQUENCE_NUMBER,
NEW_REFERENCES.LOCATION_CD,
NEW_REFERENCES.ATTENDANCE_MODE,
NEW_REFERENCES.ATTENDANCE_TYPE,
NEW_REFERENCES.ROLLOVER_INCLUSION_IND,
X_LAST_UPDATE_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_LOGIN,
X_REQUEST_ID,
X_PROGRAM_ID,
X_PROGRAM_APPLICATION_ID,
X_PROGRAM_UPDATE_DATE
);
p_action =>'INSERT',
x_rowid => X_ROWID
);
end INSERT_ROW;
cursor c1 is select
LOCATION_CD,
ATTENDANCE_MODE,
ATTENDANCE_TYPE,
ROLLOVER_INCLUSION_IND
from IGS_AD_PRD_PS_OF_OPT
where ROWID = X_ROWID for update nowait;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
procedure UPDATE_ROW (
X_ROWID in VARCHAR2,
X_ADM_CAL_TYPE in VARCHAR2,
X_ADM_CI_SEQUENCE_NUMBER in NUMBER,
X_ADMISSION_CAT in VARCHAR2,
X_S_ADMISSION_PROCESS_TYPE in VARCHAR2,
X_COURSE_CD in VARCHAR2,
X_VERSION_NUMBER in NUMBER,
X_ACAD_CAL_TYPE in VARCHAR2,
X_SEQUENCE_NUMBER in NUMBER,
X_LOCATION_CD in VARCHAR2,
X_ATTENDANCE_MODE in VARCHAR2,
X_ATTENDANCE_TYPE in VARCHAR2,
X_ROLLOVER_INCLUSION_IND in VARCHAR2,
X_MODE in VARCHAR2 default 'R'
) AS
X_LAST_UPDATE_DATE DATE;
X_LAST_UPDATED_BY NUMBER;
X_LAST_UPDATE_LOGIN NUMBER;
X_PROGRAM_UPDATE_DATE DATE;
X_LAST_UPDATE_DATE := SYSDATE;
X_LAST_UPDATED_BY := 1;
X_LAST_UPDATE_LOGIN := 0;
X_LAST_UPDATED_BY := FND_GLOBAL.USER_ID;
if X_LAST_UPDATED_BY is NULL then
X_LAST_UPDATED_BY := -1;
X_LAST_UPDATE_LOGIN :=FND_GLOBAL.LOGIN_ID;
if X_LAST_UPDATE_LOGIN is NULL then
X_LAST_UPDATE_LOGIN := -1;
Before_DML(p_action =>'UPDATE',
x_rowid =>X_ROWID,
x_adm_cal_type => X_ADM_CAL_TYPE,
x_adm_ci_sequence_number => X_ADM_CI_SEQUENCE_NUMBER,
x_admission_cat => X_ADMISSION_CAT,
x_s_admission_process_type => X_S_ADMISSION_PROCESS_TYPE,
x_course_cd =>X_COURSE_CD ,
x_version_number=> X_VERSION_NUMBER,
x_acad_cal_type => X_ACAD_CAL_TYPE ,
x_sequence_number=> X_SEQUENCE_NUMBER,
x_location_cd => X_LOCATION_CD ,
x_attendance_mode=> X_ATTENDANCE_MODE,
x_attendance_type => X_ATTENDANCE_TYPE ,
x_rollover_inclusion_ind=> X_ROLLOVER_INCLUSION_IND,
x_creation_date => X_LAST_UPDATE_DATE,
x_created_by => X_LAST_UPDATED_BY,
x_last_update_date => X_LAST_UPDATE_DATE,
x_last_updated_by => X_LAST_UPDATED_BY,
x_last_update_login => X_LAST_UPDATE_LOGIN
);
X_PROGRAM_UPDATE_DATE := SYSDATE;
update IGS_AD_PRD_PS_OF_OPT set
LOCATION_CD = NEW_REFERENCES.LOCATION_CD,
ATTENDANCE_MODE = NEW_REFERENCES.ATTENDANCE_MODE,
ATTENDANCE_TYPE = NEW_REFERENCES.ATTENDANCE_TYPE,
ROLLOVER_INCLUSION_IND = NEW_REFERENCES.ROLLOVER_INCLUSION_IND,
LAST_UPDATE_DATE = NEW_REFERENCES.LAST_UPDATE_DATE,
LAST_UPDATED_BY = X_LAST_UPDATED_BY,
LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
REQUEST_ID = X_REQUEST_ID,
PROGRAM_ID = X_PROGRAM_ID,
PROGRAM_APPLICATION_ID = X_PROGRAM_APPLICATION_ID,
PROGRAM_UPDATE_DATE = X_PROGRAM_UPDATE_DATE
where ROWID = X_ROWID
;
p_action =>'UPDATE',
x_rowid => X_ROWID
);
end UPDATE_ROW;
cursor c1 is select rowid from IGS_AD_PRD_PS_OF_OPT
where ADM_CAL_TYPE = X_ADM_CAL_TYPE
and ADM_CI_SEQUENCE_NUMBER = X_ADM_CI_SEQUENCE_NUMBER
and ADMISSION_CAT = X_ADMISSION_CAT
and S_ADMISSION_PROCESS_TYPE = X_S_ADMISSION_PROCESS_TYPE
and COURSE_CD = X_COURSE_CD
and VERSION_NUMBER = X_VERSION_NUMBER
and ACAD_CAL_TYPE = X_ACAD_CAL_TYPE
and SEQUENCE_NUMBER = X_SEQUENCE_NUMBER
;
INSERT_ROW (
X_ROWID,
X_ADM_CAL_TYPE,
X_ADM_CI_SEQUENCE_NUMBER,
X_ADMISSION_CAT,
X_S_ADMISSION_PROCESS_TYPE,
X_COURSE_CD,
X_VERSION_NUMBER,
X_ACAD_CAL_TYPE,
X_SEQUENCE_NUMBER,
X_LOCATION_CD,
X_ATTENDANCE_MODE,
X_ATTENDANCE_TYPE,
X_ROLLOVER_INCLUSION_IND,
X_MODE);
UPDATE_ROW (
X_ROWID,
X_ADM_CAL_TYPE,
X_ADM_CI_SEQUENCE_NUMBER,
X_ADMISSION_CAT,
X_S_ADMISSION_PROCESS_TYPE,
X_COURSE_CD,
X_VERSION_NUMBER,
X_ACAD_CAL_TYPE,
X_SEQUENCE_NUMBER,
X_LOCATION_CD,
X_ATTENDANCE_MODE,
X_ATTENDANCE_TYPE,
X_ROLLOVER_INCLUSION_IND,
X_MODE);
procedure DELETE_ROW (
X_ROWID in VARCHAR2
) AS
begin
Before_DML(
p_action =>'DELETE',
x_rowid => X_ROWID
);
delete from IGS_AD_PRD_PS_OF_OPT
where ROWID = X_ROWID;
p_action =>'DELETE',
x_rowid => X_ROWID
);
end DELETE_ROW;