The following lines contain the word 'select', 'insert', 'update' or 'delete':
x_select_group IN NUMBER ,
x_creation_date IN DATE ,
x_created_by IN NUMBER ,
x_last_update_date IN DATE ,
x_last_updated_by IN NUMBER ,
x_last_update_login IN NUMBER ) AS
CURSOR cur_old_ref_values IS
SELECT *
FROM IGS_RU_CALL
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');
IGS_RU_GEN_006.SET_TOKEN('IGS_RU_CALL : P_ACTION Insert, validate Insert : IGSUI01B.PLS');
new_references.select_group := x_select_group;
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;
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
IF (((old_references.select_group = new_references.select_group)) OR
((new_references.select_group IS NULL))) THEN
NULL;
new_references.select_group
)THEN
Fnd_Message.Set_Name('FND','FORM_RECORD_DELETED');
IGS_RU_GEN_006.SET_TOKEN('IGS_RU_GROUP : P_ACTION Check_Parent_Existance new_references.select_group : IGSUI01B.PLS');
SELECT rowid
FROM IGS_RU_CALL
WHERE s_rule_call_cd = x_s_rule_call_cd
FOR UPDATE NOWAIT;
SELECT rowid
FROM IGS_RU_CALL
WHERE rud_sequence_number = x_rud_sequence_number
AND ((l_rowid IS NULL) OR (rowid <> l_rowid));
SELECT rowid
FROM IGS_RU_CALL
WHERE default_rule = x_rul_sequence_number ;
SELECT rowid
FROM IGS_RU_CALL
WHERE rud_sequence_number = x_sequence_number ;
SELECT rowid
FROM IGS_RU_CALL
WHERE rug_sequence_number = x_sequence_number
OR select_group = x_sequence_number ;
SELECT rowid
FROM igs_ru_call
WHERE rug_sequence_number = x_sequence_number ;
x_select_group IN NUMBER ,
x_creation_date IN DATE ,
x_created_by IN NUMBER ,
x_last_update_date IN DATE ,
x_last_updated_by IN NUMBER ,
x_last_update_login IN NUMBER
) AS
BEGIN
Set_Column_Values (
p_action,
x_rowid,
x_s_rule_call_cd,
x_s_rule_type_cd,
x_rud_sequence_number,
x_true_message,
x_false_message,
x_default_rule,
x_rug_sequence_number,
x_select_group,
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.
Null;
ELSIF (p_action = 'UPDATE') THEN
-- Call all the procedures related to Before Update.
Check_uniqueness;
ELSIF (p_action = 'DELETE') THEN
-- Call all the procedures related to Before Delete.
--
-- svenkata - This table handler is released as part of IGS specific forms in SEED . As a consequence ,
-- the procedure Check_Child_Existance originally a part of this package , has been moved to Igs_Ru_Gen_005 .
-- This was done 'cos Check_Child_Existance makes calls to other procedures which are not being shipped !
-- Check_Child_Existance is called only when the user is not DATAMERGE . Hence , the proc.
-- Check_Child_Existance_ru_rule is being called using execute immediate only if the user is not DATAMERGE .
-- Bug # 2233951
--
IF (fnd_global.user_id <> 1) THEN
-- do execute immediate
EXECUTE IMMEDIATE 'BEGIN Igs_Ru_Gen_005.Check_Child_Existance_Ru_Call(:1,:2); END;'
ELSIF (p_action = 'VALIDATE_INSERT') THEN
-- Call all the procedures related to Before Delete.
IF GET_PK_FOR_VALIDATION(
new_references.s_rule_call_cd
)THEN
FND_MESSAGE.SET_NAME('IGS','IGS_GE_RECORD_ALREADY_EXISTS');
ELSIF (p_action = 'VALIDATE_UPDATE') THEN
-- Call all the procedures related to Before Delete.
Check_uniqueness;
ELSIF (p_action = 'VALIDATE_DELETE') THEN
-- Call all the procedures related to Before Delete.
--
-- svenkata - This table handler is released as part of IGS specific forms in SEED . As a consequence ,
-- the procedure Check_Child_Existance originally a part of this package , has been moved to Igs_Ru_Gen_005 .
-- This was done 'cos Check_Child_Existance makes calls to other procedures which are not being shipped !
-- Check_Child_Existance is called only when the user is not DATAMERGE . Hence , the proc.
-- Check_Child_Existance_ru_rule is being called using execute immediate only if the user is not DATAMERGE .
-- Bug # 2233951
--
IF (fnd_global.user_id <> 1) THEN
-- do execute immediate
EXECUTE IMMEDIATE 'BEGIN Igs_Ru_Gen_005.Check_Child_Existance_Ru_Call(:1,:2); END;'
procedure INSERT_ROW (
X_ROWID in out NOCOPY VARCHAR2,
X_S_RULE_CALL_CD in VARCHAR2,
X_S_RULE_TYPE_CD in VARCHAR2,
X_RUD_SEQUENCE_NUMBER in NUMBER,
X_SELECT_GROUP in NUMBER,
X_TRUE_MESSAGE in VARCHAR2,
X_FALSE_MESSAGE in VARCHAR2,
X_DEFAULT_RULE in NUMBER,
X_RUG_SEQUENCE_NUMBER in NUMBER,
X_MODE in VARCHAR2
) AS
cursor C is select ROWID from IGS_RU_CALL
where S_RULE_CALL_CD = X_S_RULE_CALL_CD;
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_s_rule_call_cd =>X_S_RULE_CALL_CD,
x_s_rule_type_cd =>X_S_RULE_TYPE_CD,
x_rud_sequence_number =>X_RUD_SEQUENCE_NUMBER,
x_true_message =>X_TRUE_MESSAGE,
x_false_message =>X_FALSE_MESSAGE,
x_default_rule =>X_DEFAULT_RULE,
x_rug_sequence_number =>X_RUG_SEQUENCE_NUMBER,
x_select_group =>X_SELECT_GROUP,
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_RU_CALL (
S_RULE_TYPE_CD,
S_RULE_CALL_CD,
RUD_SEQUENCE_NUMBER,
SELECT_GROUP,
TRUE_MESSAGE,
FALSE_MESSAGE,
DEFAULT_RULE,
RUG_SEQUENCE_NUMBER,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN
) values (
NEW_REFERENCES.S_RULE_TYPE_CD,
NEW_REFERENCES.S_RULE_CALL_CD,
NEW_REFERENCES.RUD_SEQUENCE_NUMBER,
NEW_REFERENCES.SELECT_GROUP,
NEW_REFERENCES.TRUE_MESSAGE,
NEW_REFERENCES.FALSE_MESSAGE,
NEW_REFERENCES.DEFAULT_RULE,
NEW_REFERENCES.RUG_SEQUENCE_NUMBER,
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;
X_SELECT_GROUP in NUMBER,
X_TRUE_MESSAGE in VARCHAR2,
X_FALSE_MESSAGE in VARCHAR2,
X_DEFAULT_RULE in NUMBER,
X_RUG_SEQUENCE_NUMBER in NUMBER
) AS
cursor c1 is select
S_RULE_TYPE_CD,
RUD_SEQUENCE_NUMBER,
SELECT_GROUP,
TRUE_MESSAGE,
FALSE_MESSAGE,
DEFAULT_RULE,
RUG_SEQUENCE_NUMBER
from IGS_RU_CALL
where ROWID = X_ROWID
for update nowait;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
AND (tlinfo.SELECT_GROUP = X_SELECT_GROUP)
AND ((tlinfo.TRUE_MESSAGE = X_TRUE_MESSAGE)
OR ((tlinfo.TRUE_MESSAGE is null)
AND (X_TRUE_MESSAGE is null)))
AND ((tlinfo.FALSE_MESSAGE = X_FALSE_MESSAGE)
OR ((tlinfo.FALSE_MESSAGE is null)
AND (X_FALSE_MESSAGE is null)))
AND ((tlinfo.DEFAULT_RULE = X_DEFAULT_RULE)
OR ((tlinfo.DEFAULT_RULE is null)
AND (X_DEFAULT_RULE is null)))
AND ((tlinfo.RUG_SEQUENCE_NUMBER = X_RUG_SEQUENCE_NUMBER)
OR ((tlinfo.RUG_SEQUENCE_NUMBER is null)
AND (X_RUG_SEQUENCE_NUMBER is null)))
) then
null;
procedure UPDATE_ROW (
X_ROWID in VARCHAR2,
X_S_RULE_CALL_CD in VARCHAR2,
X_S_RULE_TYPE_CD in VARCHAR2,
X_RUD_SEQUENCE_NUMBER in NUMBER,
X_SELECT_GROUP in NUMBER,
X_TRUE_MESSAGE in VARCHAR2,
X_FALSE_MESSAGE in VARCHAR2,
X_DEFAULT_RULE in NUMBER,
X_RUG_SEQUENCE_NUMBER in NUMBER,
X_MODE in VARCHAR2
) 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_s_rule_call_cd =>X_S_RULE_CALL_CD,
x_s_rule_type_cd =>X_S_RULE_TYPE_CD,
x_rud_sequence_number =>X_RUD_SEQUENCE_NUMBER,
x_true_message =>X_TRUE_MESSAGE,
x_false_message =>X_FALSE_MESSAGE,
x_default_rule =>X_DEFAULT_RULE,
x_rug_sequence_number =>X_RUG_SEQUENCE_NUMBER,
x_select_group =>X_SELECT_GROUP,
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
);
update IGS_RU_CALL set
S_RULE_TYPE_CD = NEW_REFERENCES.S_RULE_TYPE_CD,
RUD_SEQUENCE_NUMBER = NEW_REFERENCES.RUD_SEQUENCE_NUMBER,
SELECT_GROUP = NEW_REFERENCES.SELECT_GROUP,
TRUE_MESSAGE = NEW_REFERENCES.TRUE_MESSAGE,
FALSE_MESSAGE = NEW_REFERENCES.FALSE_MESSAGE,
DEFAULT_RULE = NEW_REFERENCES.DEFAULT_RULE,
RUG_SEQUENCE_NUMBER = NEW_REFERENCES.RUG_SEQUENCE_NUMBER,
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;
X_SELECT_GROUP in NUMBER,
X_TRUE_MESSAGE in VARCHAR2,
X_FALSE_MESSAGE in VARCHAR2,
X_DEFAULT_RULE in NUMBER,
X_RUG_SEQUENCE_NUMBER in NUMBER,
X_MODE in VARCHAR2
) AS
cursor c1 is select rowid from IGS_RU_CALL
where S_RULE_CALL_CD = X_S_RULE_CALL_CD
;
INSERT_ROW (
X_ROWID,
X_S_RULE_CALL_CD,
X_S_RULE_TYPE_CD,
X_RUD_SEQUENCE_NUMBER,
X_SELECT_GROUP,
X_TRUE_MESSAGE,
X_FALSE_MESSAGE,
X_DEFAULT_RULE,
X_RUG_SEQUENCE_NUMBER,
X_MODE);
UPDATE_ROW (
X_ROWID,
X_S_RULE_CALL_CD,
X_S_RULE_TYPE_CD,
X_RUD_SEQUENCE_NUMBER,
X_SELECT_GROUP,
X_TRUE_MESSAGE,
X_FALSE_MESSAGE,
X_DEFAULT_RULE,
X_RUG_SEQUENCE_NUMBER,
X_MODE);
procedure DELETE_ROW (
X_ROWID in VARCHAR2
) AS
begin
Before_DML (
p_action => 'DELETE',
x_rowid => X_ROWID
);
delete from IGS_RU_CALL
where ROWID = X_ROWID;
p_action => 'DELETE',
x_rowid => X_ROWID
);
end DELETE_ROW;
ELSIF upper(Column_name) = 'SELECT_GROUP' THEN
new_references.SELECT_GROUP:= igs_ge_number.to_num(COLUMN_VALUE) ;
IF upper(Column_name) = 'SELECT_GROUP' OR COLUMN_NAME IS NULL THEN
IF new_references.SELECT_GROUP < 1 or new_references.SELECT_GROUP > 999999 then
Fnd_Message.Set_Name('IGS','IGS_GE_INVALID_VALUE');