The following lines contain the word 'select', 'insert', 'update' or 'delete':
x_selection_criteria IN VARCHAR2 DEFAULT NULL,
x_creation_date IN DATE DEFAULT NULL,
x_created_by IN NUMBER DEFAULT NULL,
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_TYPE
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');
new_references.selection_criteria := x_selection_criteria;
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 BeforeRowInsertUpdate(
p_inserting IN BOOLEAN DEFAULT FALSE,
p_updating IN BOOLEAN DEFAULT FALSE
) as
v_message_name VARCHAR2(30);
IF (p_inserting OR (p_updating AND (old_references.tracking_type <> new_references.tracking_type))) THEN
IF NOT IGS_TR_VAL_TRI.TRKP_VAL_TRI_TYPE (new_references.tracking_type,
v_message_name) THEN
Fnd_Message.Set_Name('IGS', v_message_name);
END BeforeRowInsertUpdate;
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
SELECT rowid
FROM IGS_RE_THS_PNL_TYPE
WHERE thesis_panel_type = x_thesis_panel_type
FOR UPDATE NOWAIT;
x_selection_criteria IN VARCHAR2 DEFAULT NULL,
x_creation_date IN DATE DEFAULT NULL,
x_created_by IN NUMBER DEFAULT NULL,
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_thesis_panel_type,
x_description,
x_closed_ind,
x_recommended_panel_size,
x_tracking_type,
x_selection_criteria,
x_creation_date,
x_created_by,
x_last_update_date,
x_last_updated_by,
x_last_update_login
);
IF (p_action = 'INSERT') THEN
BeforeRowInsertUpdate(p_inserting => TRUE);
ELSIF (p_action = 'UPDATE') THEN
BeforeRowInsertUpdate(p_updating => TRUE);
ELSIF (p_action = 'DELETE') THEN
-- Call all the procedures related to Before Delete.
Check_Child_Existance;
ELSIF (p_action = 'VALIDATE_INSERT') THEN
IF Get_PK_For_Validation(
new_references.thesis_panel_type
)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
Check_Child_Existance;
procedure INSERT_ROW (
X_ROWID in out NOCOPY VARCHAR2,
X_THESIS_PANEL_TYPE in VARCHAR2,
X_DESCRIPTION in VARCHAR2,
X_CLOSED_IND in VARCHAR2,
X_RECOMMENDED_PANEL_SIZE in NUMBER,
X_TRACKING_TYPE in VARCHAR2,
X_SELECTION_CRITERIA in VARCHAR2,
X_MODE in VARCHAR2 default 'R'
) as
cursor C is select ROWID from IGS_RE_THS_PNL_TYPE
where THESIS_PANEL_TYPE = X_THESIS_PANEL_TYPE;
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_thesis_panel_type => X_THESIS_PANEL_TYPE,
x_description => X_DESCRIPTION,
x_closed_ind => NVL(X_CLOSED_IND, 'N'),
x_recommended_panel_size => X_RECOMMENDED_PANEL_SIZE,
x_tracking_type => X_TRACKING_TYPE,
x_selection_criteria => X_SELECTION_CRITERIA,
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_TYPE (
THESIS_PANEL_TYPE,
DESCRIPTION,
CLOSED_IND,
RECOMMENDED_PANEL_SIZE,
TRACKING_TYPE,
SELECTION_CRITERIA,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN
) values (
NEW_REFERENCES.THESIS_PANEL_TYPE,
NEW_REFERENCES.DESCRIPTION,
NEW_REFERENCES.CLOSED_IND,
NEW_REFERENCES.RECOMMENDED_PANEL_SIZE,
NEW_REFERENCES.TRACKING_TYPE,
NEW_REFERENCES.SELECTION_CRITERIA,
X_LAST_UPDATE_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_LOGIN
);
end INSERT_ROW;
X_SELECTION_CRITERIA in VARCHAR2
) as
cursor c1 is select
DESCRIPTION,
CLOSED_IND,
RECOMMENDED_PANEL_SIZE,
TRACKING_TYPE,
SELECTION_CRITERIA
from IGS_RE_THS_PNL_TYPE
where ROWID = X_ROWID
for update nowait;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
AND ((tlinfo.SELECTION_CRITERIA = X_SELECTION_CRITERIA)
OR ((tlinfo.SELECTION_CRITERIA is null)
AND (X_SELECTION_CRITERIA is null)))
) then
null;
procedure UPDATE_ROW (
X_ROWID in VARCHAR2,
X_THESIS_PANEL_TYPE in VARCHAR2,
X_DESCRIPTION in VARCHAR2,
X_CLOSED_IND in VARCHAR2,
X_RECOMMENDED_PANEL_SIZE in NUMBER,
X_TRACKING_TYPE in VARCHAR2,
X_SELECTION_CRITERIA 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_thesis_panel_type => X_THESIS_PANEL_TYPE,
x_description => X_DESCRIPTION,
x_closed_ind => X_CLOSED_IND,
x_recommended_panel_size => X_RECOMMENDED_PANEL_SIZE,
x_tracking_type => X_TRACKING_TYPE,
x_selection_criteria => X_SELECTION_CRITERIA,
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_TYPE set
DESCRIPTION = NEW_REFERENCES.DESCRIPTION,
CLOSED_IND = NEW_REFERENCES.CLOSED_IND,
RECOMMENDED_PANEL_SIZE = NEW_REFERENCES.RECOMMENDED_PANEL_SIZE,
TRACKING_TYPE = NEW_REFERENCES.TRACKING_TYPE,
SELECTION_CRITERIA = NEW_REFERENCES.SELECTION_CRITERIA,
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
;
end UPDATE_ROW;
X_SELECTION_CRITERIA in VARCHAR2,
X_MODE in VARCHAR2 default 'R'
) as
cursor c1 is select rowid from IGS_RE_THS_PNL_TYPE
where THESIS_PANEL_TYPE = X_THESIS_PANEL_TYPE
;
INSERT_ROW (
X_ROWID,
X_THESIS_PANEL_TYPE,
X_DESCRIPTION,
X_CLOSED_IND,
X_RECOMMENDED_PANEL_SIZE,
X_TRACKING_TYPE,
X_SELECTION_CRITERIA,
X_MODE);
UPDATE_ROW (
X_ROWID,
X_THESIS_PANEL_TYPE,
X_DESCRIPTION,
X_CLOSED_IND,
X_RECOMMENDED_PANEL_SIZE,
X_TRACKING_TYPE,
X_SELECTION_CRITERIA,
X_MODE);
procedure DELETE_ROW (
X_ROWID in VARCHAR2
) as
begin
Before_DML (
p_action => 'DELETE',
x_rowid => X_ROWID
);
delete from IGS_RE_THS_PNL_TYPE
where ROWID = X_ROWID;
end DELETE_ROW;