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_RE_THS_PNL_MBR
WHERE rowid = x_rowid;
IF (cur_old_ref_values%NOTFOUND) AND (p_action NOT IN ('INSERT', 'VALIDATE_INSERT')) THEN
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);
-- Turn off trigger validation when performing insert of IGS_RE_CANDIDATURE details
-- as a result of IGS_PS_COURSE transfer
IF igs_as_val_suaap.genp_val_sdtt_sess('ENRP_INS_CA_TRNSFR') THEN
IF p_inserting OR
( p_updating AND
( NVL(old_references.thesis_result_cd,' ') <> NVL(new_references.thesis_result_cd,' ') OR
old_references.panel_member_type <> new_references.panel_member_type OR
NVL(old_references.confirmed_dt, igs_ge_date.igsdate('1900/01/01')) <>
NVL(new_references.confirmed_dt, igs_ge_date.igsdate('1900/01/01')))) THEN
IF p_inserting THEN
v_transaction_type := 'INSERT';
v_transaction_type := 'UPDATE';
-- Validate whether insert or update is permitted.
IF IGS_RE_VAL_TPM.resp_val_tpm_upd( new_references.ca_person_id,
new_references.ca_sequence_number,
new_references.the_sequence_number,
new_references.creation_dt,
v_transaction_type,
old_references.thesis_result_cd,
new_references.thesis_result_cd,
old_references.panel_member_type,
new_references.panel_member_type,
old_references.confirmed_dt,
new_references.confirmed_dt,
v_message_name) = FALSE THEN
Fnd_Message.Set_Name ('IGS', v_message_name);
-- Validate whether insert or update is permitted.
IF IGS_RE_VAL_TPM.resp_val_tpm_upd( old_references.ca_person_id,
old_references.ca_sequence_number,
old_references.the_sequence_number,
old_references.creation_dt,
'DELETE',
old_references.thesis_result_cd,
new_references.thesis_result_cd,
old_references.panel_member_type,
new_references.panel_member_type,
old_references.confirmed_dt,
new_references.confirmed_dt,
v_message_name) = FALSE THEN
Fnd_Message.Set_Name ('IGS', v_message_name);
IF p_inserting THEN
-- Validate examiner IGS_PE_PERSON ID - only on insert as pk field.
IF IGS_RE_VAL_TPM.resp_val_tpm_pe( new_references.ca_person_id,
new_references.ca_sequence_number,
new_references.person_id,
v_message_name) = FALSE THEN
Fnd_Message.Set_Name ('IGS', v_message_name);
IF p_inserting OR
( p_updating AND
(old_references.panel_member_type <> new_references.panel_member_type)) THEN
-- Validate panel member type if p_inserting or changed.
IF IGS_RE_VAL_TPM.resp_val_tpm_tpmt( new_references.panel_member_type,
v_message_name) = FALSE THEN
Fnd_Message.Set_Name ('IGS', v_message_name);
IF (p_inserting AND new_references.thesis_result_cd IS NOT NULL) OR
( p_updating AND
(NVL(old_references.thesis_result_cd,' ') <> NVL(new_references.thesis_result_cd,' '))) THEN
-- Validate IGS_RE_THESIS result code on p_inserting or change.
IF IGS_RE_VAL_TPM.resp_val_tpm_thr( new_references.ca_person_id,
new_references.ca_sequence_number,
new_references.the_sequence_number,
new_references.creation_dt,
new_references.thesis_result_cd,
new_references.recommendation_summary,
new_references.confirmed_dt,
v_message_name) = FALSE THEN
Fnd_Message.Set_Name ('IGS', v_message_name);
IF p_inserting OR
( p_updating AND
(NVL(old_references.confirmed_dt,igs_ge_date.igsdate('1900/01/01')) <>
NVL(new_references.confirmed_dt,igs_ge_date.igsdate('1900/01/01')) OR
NVL(old_references.declined_dt,igs_ge_date.igsdate('1900/01/01')) <>
NVL(new_references.declined_dt,igs_ge_date.igsdate('1900/01/01')))) THEN
-- Validate declined date and confirmed dates.
IF IGS_RE_VAL_TPM.resp_val_tpm_dcln( new_references.declined_dt,
new_references.confirmed_dt,
v_message_name) = FALSE THEN
Fnd_Message.Set_Name ('IGS', v_message_name);
IF ( p_inserting AND new_references.paid_dt IS NOT NULL ) OR
( p_updating AND
NVL(old_references.paid_dt,igs_ge_date.igsdate('1900/01/01')) <>
NVL(new_references.paid_dt,igs_ge_date.igsdate('1900/01/01'))) THEN
-- Validate the paid date.
IF IGS_RE_VAL_TPM.resp_val_tpm_paid( new_references.paid_dt,
new_references.confirmed_dt,
v_message_name ) = FALSE THEN
Fnd_Message.Set_Name ('IGS', v_message_name);
END BeforeRowInsertUpdateDelete1;
PROCEDURE AfterRowUpdateDelete2(
p_inserting IN BOOLEAN DEFAULT FALSE,
p_updating IN BOOLEAN DEFAULT FALSE,
p_deleting IN BOOLEAN DEFAULT FALSE
) AS
BEGIN
IF p_updating OR p_deleting THEN
IGS_RE_GEN_003.RESP_INS_TPM_HIST(old_references.ca_person_id,
old_references.ca_sequence_number,
old_references.the_sequence_number,
old_references.creation_dt,
old_references.person_id,
old_references.panel_member_type,
new_references.panel_member_type,
old_references.confirmed_dt,
new_references.confirmed_dt,
old_references.declined_dt,
new_references.declined_dt,
old_references.anonymity_ind,
new_references.anonymity_ind,
old_references.thesis_result_cd,
new_references.thesis_result_cd,
old_references.paid_dt,
new_references.paid_dt,
old_references.tracking_id,
new_references.tracking_id,
old_references.recommendation_summary,
new_references.recommendation_summary,
old_references.last_updated_by,
new_references.last_updated_by,
old_references.last_update_date,
new_references.last_update_date);
END AfterRowUpdateDelete2;
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_RE_THS_PNL_MBR
WHERE ca_person_id = x_ca_person_id
AND ca_sequence_number = x_ca_sequence_number
AND the_sequence_number = x_the_sequence_number
AND creation_dt = x_creation_dt
AND person_id = x_person_id
FOR UPDATE NOWAIT;
SELECT rowid
FROM IGS_RE_THS_PNL_MBR
WHERE person_id = x_person_id ;
SELECT rowid
FROM IGS_RE_THS_PNL_MBR
WHERE ca_person_id = x_person_id
AND ca_sequence_number = x_ca_sequence_number
AND the_sequence_number = x_the_sequence_number
AND creation_dt = x_creation_dt ;
SELECT rowid
FROM IGS_RE_THS_PNL_MBR
WHERE thesis_result_cd = x_thesis_result_cd ;
SELECT rowid
FROM IGS_RE_THS_PNL_MBR
WHERE panel_member_type = x_panel_member_type ;
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_ca_person_id,
x_ca_sequence_number,
x_the_sequence_number,
x_creation_dt,
x_person_id,
x_panel_member_type,
x_confirmed_dt,
x_declined_dt,
x_anonymity_ind,
x_thesis_result_cd,
x_paid_dt,
x_tracking_id,
x_recommendation_summary,
x_creation_date,
x_created_by,
x_last_update_date,
x_last_updated_by,
x_last_update_login
);
IF (p_action = 'INSERT') THEN
-- Call all the procedures related to Before Insert.
BeforeRowInsertUpdateDelete1 ( p_inserting => TRUE );
ELSIF (p_action = 'UPDATE') THEN
-- Call all the procedures related to Before Update.
BeforeRowInsertUpdateDelete1 ( p_updating => TRUE );
ELSIF (p_action = 'DELETE') THEN
-- Call all the procedures related to Before Delete.
BeforeRowInsertUpdateDelete1 ( p_deleting => TRUE );
ELSIF (p_action = 'VALIDATE_INSERT') THEN
IF Get_PK_For_Validation(
new_references.ca_person_id ,
new_references.ca_sequence_number ,
new_references.the_sequence_number ,
new_references.creation_dt ,
new_references.person_id
)THEN
Fnd_Message.Set_Name('IGS','IGS_GE_RECORD_ALREADY_EXISTS');
ELSIF (p_action = 'VALIDATE_UPDATE') THEN
Check_Constraints;
ELSIF (p_action = 'VALIDATE_DELETE') THEN
NULL;
IF (p_action = 'INSERT') THEN
-- Call all the procedures related to After Insert.
Null;
ELSIF (p_action = 'UPDATE') THEN
-- Call all the procedures related to After Update.
AfterRowUpdateDelete2 ( p_updating => TRUE );
ELSIF (p_action = 'DELETE') THEN
-- Call all the procedures related to After Delete.
AfterRowUpdateDelete2 ( p_deleting => TRUE );
procedure INSERT_ROW (
X_ROWID in out NOCOPY VARCHAR2,
X_CA_PERSON_ID in NUMBER,
X_CA_SEQUENCE_NUMBER in NUMBER,
X_THE_SEQUENCE_NUMBER in NUMBER,
X_CREATION_DT in DATE,
X_PERSON_ID in NUMBER,
X_PANEL_MEMBER_TYPE in VARCHAR2,
X_CONFIRMED_DT in DATE,
X_DECLINED_DT in DATE,
X_ANONYMITY_IND in VARCHAR2,
X_THESIS_RESULT_CD in VARCHAR2,
X_PAID_DT in DATE,
X_TRACKING_ID in NUMBER,
X_RECOMMENDATION_SUMMARY in VARCHAR2,
X_MODE in VARCHAR2 default 'R'
) as
cursor C is select ROWID from IGS_RE_THS_PNL_MBR
where CA_PERSON_ID = X_CA_PERSON_ID
and CA_SEQUENCE_NUMBER = X_CA_SEQUENCE_NUMBER
and THE_SEQUENCE_NUMBER = X_THE_SEQUENCE_NUMBER
and CREATION_DT = X_CREATION_DT
and PERSON_ID = X_PERSON_ID;
X_LAST_UPDATE_DATE DATE;
X_LAST_UPDATED_BY NUMBER;
X_LAST_UPDATE_LOGIN NUMBER;
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;
p_action => 'INSERT',
x_rowid => X_ROWID,
x_ca_person_id => X_CA_PERSON_ID,
x_ca_sequence_number => X_CA_SEQUENCE_NUMBER,
x_the_sequence_number => X_THE_SEQUENCE_NUMBER,
x_creation_dt => X_CREATION_DT,
x_person_id => X_PERSON_ID,
x_panel_member_type => X_PANEL_MEMBER_TYPE,
x_confirmed_dt => X_CONFIRMED_DT,
x_declined_dt => X_DECLINED_DT,
x_anonymity_ind => NVL(X_ANONYMITY_IND, 'N'),
x_thesis_result_cd => X_THESIS_RESULT_CD,
x_paid_dt => X_PAID_DT,
x_tracking_id => X_TRACKING_ID,
x_recommendation_summary => X_RECOMMENDATION_SUMMARY,
x_created_by => X_LAST_UPDATED_BY,
x_creation_date => X_LAST_UPDATE_DATE,
x_last_updated_by => X_LAST_UPDATED_BY,
x_last_update_date => X_LAST_UPDATE_DATE,
x_last_update_login => X_LAST_UPDATE_LOGIN
);
insert into IGS_RE_THS_PNL_MBR (
CA_PERSON_ID,
CA_SEQUENCE_NUMBER,
THE_SEQUENCE_NUMBER,
CREATION_DT,
PERSON_ID,
PANEL_MEMBER_TYPE,
CONFIRMED_DT,
DECLINED_DT,
ANONYMITY_IND,
THESIS_RESULT_CD,
PAID_DT,
TRACKING_ID,
RECOMMENDATION_SUMMARY,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN
) values (
NEW_REFERENCES.CA_PERSON_ID,
NEW_REFERENCES.CA_SEQUENCE_NUMBER,
NEW_REFERENCES.THE_SEQUENCE_NUMBER,
NEW_REFERENCES.CREATION_DT,
NEW_REFERENCES.PERSON_ID,
NEW_REFERENCES.PANEL_MEMBER_TYPE,
NEW_REFERENCES.CONFIRMED_DT,
NEW_REFERENCES.DECLINED_DT,
NEW_REFERENCES.ANONYMITY_IND,
NEW_REFERENCES.THESIS_RESULT_CD,
NEW_REFERENCES.PAID_DT,
NEW_REFERENCES.TRACKING_ID,
NEW_REFERENCES.RECOMMENDATION_SUMMARY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_LOGIN
);
p_action => 'INSERT',
x_rowid => X_ROWID
);
end INSERT_ROW;
cursor c1 is select
PANEL_MEMBER_TYPE,
CONFIRMED_DT,
DECLINED_DT,
ANONYMITY_IND,
THESIS_RESULT_CD,
PAID_DT,
TRACKING_ID,
RECOMMENDATION_SUMMARY
from IGS_RE_THS_PNL_MBR
where ROWID = X_ROWID
for update nowait;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
procedure UPDATE_ROW (
X_ROWID in VARCHAR2,
X_CA_PERSON_ID in NUMBER,
X_CA_SEQUENCE_NUMBER in NUMBER,
X_THE_SEQUENCE_NUMBER in NUMBER,
X_CREATION_DT in DATE,
X_PERSON_ID in NUMBER,
X_PANEL_MEMBER_TYPE in VARCHAR2,
X_CONFIRMED_DT in DATE,
X_DECLINED_DT in DATE,
X_ANONYMITY_IND in VARCHAR2,
X_THESIS_RESULT_CD in VARCHAR2,
X_PAID_DT in DATE,
X_TRACKING_ID in NUMBER,
X_RECOMMENDATION_SUMMARY 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_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;
p_action => 'UPDATE',
x_rowid => X_ROWID,
x_ca_person_id => X_CA_PERSON_ID,
x_ca_sequence_number => X_CA_SEQUENCE_NUMBER,
x_the_sequence_number => X_THE_SEQUENCE_NUMBER,
x_creation_dt => X_CREATION_DT,
x_person_id => X_PERSON_ID,
x_panel_member_type => X_PANEL_MEMBER_TYPE,
x_confirmed_dt => X_CONFIRMED_DT,
x_declined_dt => X_DECLINED_DT,
x_anonymity_ind => X_ANONYMITY_IND,
x_thesis_result_cd => X_THESIS_RESULT_CD,
x_paid_dt => X_PAID_DT,
x_tracking_id => X_TRACKING_ID,
x_recommendation_summary => X_RECOMMENDATION_SUMMARY,
x_created_by => X_LAST_UPDATED_BY,
x_creation_date => X_LAST_UPDATE_DATE,
x_last_updated_by => X_LAST_UPDATED_BY,
x_last_update_date => X_LAST_UPDATE_DATE,
x_last_update_login => X_LAST_UPDATE_LOGIN
);
update IGS_RE_THS_PNL_MBR set
PANEL_MEMBER_TYPE = NEW_REFERENCES.PANEL_MEMBER_TYPE,
CONFIRMED_DT = NEW_REFERENCES.CONFIRMED_DT,
DECLINED_DT = NEW_REFERENCES.DECLINED_DT,
ANONYMITY_IND = NEW_REFERENCES.ANONYMITY_IND,
THESIS_RESULT_CD = NEW_REFERENCES.THESIS_RESULT_CD,
PAID_DT = NEW_REFERENCES.PAID_DT,
TRACKING_ID = NEW_REFERENCES.TRACKING_ID,
RECOMMENDATION_SUMMARY = NEW_REFERENCES.RECOMMENDATION_SUMMARY,
LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
LAST_UPDATED_BY = X_LAST_UPDATED_BY,
LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
where ROWID = X_ROWID
;
p_action => 'UPDATE',
x_rowid => X_ROWID
);
end UPDATE_ROW;
cursor c1 is select rowid from IGS_RE_THS_PNL_MBR
where CA_PERSON_ID = X_CA_PERSON_ID
and CA_SEQUENCE_NUMBER = X_CA_SEQUENCE_NUMBER
and THE_SEQUENCE_NUMBER = X_THE_SEQUENCE_NUMBER
and CREATION_DT = X_CREATION_DT
and PERSON_ID = X_PERSON_ID
;
INSERT_ROW (
X_ROWID,
X_CA_PERSON_ID,
X_CA_SEQUENCE_NUMBER,
X_THE_SEQUENCE_NUMBER,
X_CREATION_DT,
X_PERSON_ID,
X_PANEL_MEMBER_TYPE,
X_CONFIRMED_DT,
X_DECLINED_DT,
X_ANONYMITY_IND,
X_THESIS_RESULT_CD,
X_PAID_DT,
X_TRACKING_ID,
X_RECOMMENDATION_SUMMARY,
X_MODE);
UPDATE_ROW (
X_ROWID,
X_CA_PERSON_ID,
X_CA_SEQUENCE_NUMBER,
X_THE_SEQUENCE_NUMBER,
X_CREATION_DT,
X_PERSON_ID,
X_PANEL_MEMBER_TYPE,
X_CONFIRMED_DT,
X_DECLINED_DT,
X_ANONYMITY_IND,
X_THESIS_RESULT_CD,
X_PAID_DT,
X_TRACKING_ID,
X_RECOMMENDATION_SUMMARY,
X_MODE);
procedure DELETE_ROW (
X_ROWID in VARCHAR2,
x_mode IN VARCHAR2
) as
begin
Before_DML (
p_action => 'DELETE',
x_rowid => X_ROWID
);
delete from IGS_RE_THS_PNL_MBR
where ROWID = X_ROWID;
p_action => 'DELETE',
x_rowid => X_ROWID
);
end DELETE_ROW;