The following lines contain the word 'select', 'insert', 'update' or 'delete':
X_LAST_UPDATED_BY out nocopy NUMBER,
X_LAST_UPDATE_LOGIN out nocopy NUMBER
) is
begin
X_CREATED_BY := AME_SEED_UTILITY.OWNER_AS_INTEGER(X_OWNER);
X_LAST_UPDATED_BY := AME_SEED_UTILITY.OWNER_AS_INTEGER(X_OWNER);
X_LAST_UPDATE_LOGIN := 0;
select ITEM_CLASS_ID
from AME_ITEM_CLASSES
where NAME = X_ITEM_CLASS_NAME
and sysdate between START_DATE
and nvl(END_DATE - (1/86400), sysdate);
select RULE_ID, CREATED_BY
from AME_RULES
where RULE_KEY = X_RULE_KEY;
function DO_UPDATE_INSERT(X_OWNER in NUMBER,
X_CURRENT_OWNER in NUMBER,
X_LAST_UPDATE_DATE in VARCHAR2,
X_CURRENT_LAST_UPDATE_DATE in VARCHAR2,
X_CUSTOM_MODE in VARCHAR2)
return boolean as
begin
return AME_SEED_UTILITY.MERGE_ROW_TEST
(X_OWNER => X_OWNER
,X_CURRENT_OWNER => X_CURRENT_OWNER
,X_LAST_UPDATE_DATE => X_LAST_UPDATE_DATE
,X_CURRENT_LAST_UPDATE_DATE => X_CURRENT_LAST_UPDATE_DATE
,X_CUSTOM_MODE => X_CUSTOM_MODE
);
end DO_UPDATE_INSERT;
function DO_TL_UPDATE_INSERT(X_OWNER in NUMBER,
X_CURRENT_OWNER in NUMBER,
X_LAST_UPDATE_DATE in VARCHAR2,
X_CURRENT_LAST_UPDATE_DATE in VARCHAR2,
X_CREATED_BY in VARCHAR2,
X_CUSTOM_MODE in VARCHAR2)
return boolean as
begin
return AME_SEED_UTILITY.TL_MERGE_ROW_TEST
(X_OWNER => X_OWNER
,X_CURRENT_OWNER => X_CURRENT_OWNER
,X_LAST_UPDATE_DATE => X_LAST_UPDATE_DATE
,X_CURRENT_LAST_UPDATE_DATE => X_CURRENT_LAST_UPDATE_DATE
,X_CUSTOM_MODE => X_CUSTOM_MODE
);
end DO_TL_UPDATE_INSERT;
select RULE_ID
from AME_RULES
where RULE_KEY = X_RULE_KEY;
select RULE_KEY
from AME_RULES
where RULE_ID = X_RULE_ID;
select ITEM_CLASS_ID
from AME_ITEM_CLASSES
where NAME = X_ITEM_CLASS_NAME
and sysdate between START_DATE
and nvl(END_DATE - (1/86400), sysdate);
select COUNT(*)
from AME_RULES
where RULE_ID = X_RULE_ID;
select action_id
from ame_actions aa,
ame_action_types aat
where aa.parameter = X_PARAMETER
and aat.name = X_ACTION_TYPE_NAME
and aat.action_type_id = aa.action_type_id
and sysdate between aa.start_date and
nvl(aa.end_date - (1/86400),sysdate)
and sysdate between aat.start_date and
nvl(aat.end_date - (1/86400),sysdate);
procedure INSERT_ROW (
X_RULE_KEY in VARCHAR2,
X_RULE_TYPE in NUMBER,
X_ACTION_ID in NUMBER,
X_CREATED_BY in NUMBER,
X_CREATION_DATE in DATE,
X_LAST_UPDATED_BY in NUMBER,
X_LAST_UPDATE_DATE in DATE,
X_LAST_UPDATE_LOGIN in NUMBER,
X_START_DATE in DATE,
X_DESCRIPTION in VARCHAR2,
X_ITEM_CLASS_ID in NUMBER,
X_OBJECT_VERSION_NUMBER in NUMBER)
is
lockHandle varchar2(500);
select ame_rules_s.nextval into X_RULE_ID from dual;
insert into AME_RULES
(
RULE_ID,
RULE_KEY,
RULE_TYPE,
ACTION_ID,
CREATED_BY,
CREATION_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATE_LOGIN,
START_DATE,
END_DATE,
DESCRIPTION,
ITEM_CLASS_ID,
OBJECT_VERSION_NUMBER
) select
X_RULE_ID,
x_RULE_KEY,
X_RULE_TYPE,
X_ACTION_ID,
X_CREATED_BY,
X_CREATION_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATE_LOGIN,
X_START_DATE,
AME_SEED_UTILITY.GET_DEFAULT_END_DATE,
X_DESCRIPTION,
X_ITEM_CLASS_ID,
X_OBJECT_VERSION_NUMBER
from sys.dual
where not exists (select NULL
from AME_RULES
where RULE_KEY = X_RULE_KEY
and sysdate between START_DATE
and nvl(END_DATE - (1/86400), sysdate));
insert into AME_RULES_TL
(RULE_ID
,DESCRIPTION
,CREATED_BY
,CREATION_DATE
,LAST_UPDATED_BY
,LAST_UPDATE_DATE
,LAST_UPDATE_LOGIN
,LANGUAGE
,SOURCE_LANG
) select X_RULE_ID,
X_DESCRIPTION,
X_CREATED_BY,
X_CREATION_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATE_LOGIN,
L.LANGUAGE_CODE,
userenv('LANG')
from FND_LANGUAGES L
where L.INSTALLED_FLAG in ('I', 'B')
and not exists (select null
from AME_RULES_TL T
where T.RULE_ID = X_RULE_ID
and T.LANGUAGE = L.LANGUAGE_CODE);
end INSERT_ROW;
procedure INSERT_ROW_2 (
X_RULE_ID in NUMBER,
X_RULE_KEY in VARCHAR2,
X_RULE_TYPE in NUMBER,
X_ACTION_ID in NUMBER,
X_CREATED_BY in NUMBER,
X_CREATION_DATE in DATE,
X_LAST_UPDATED_BY in NUMBER,
X_LAST_UPDATE_DATE in DATE,
X_LAST_UPDATE_LOGIN in NUMBER,
X_START_DATE in DATE,
X_DESCRIPTION in VARCHAR2,
X_ITEM_CLASS_ID in NUMBER,
X_OBJECT_VERSION_NUMBER in NUMBER)
is
lockHandle varchar2(500);
insert into AME_RULES
(
RULE_ID,
RULE_KEY,
RULE_TYPE,
ACTION_ID,
CREATED_BY,
CREATION_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATE_LOGIN,
START_DATE,
END_DATE,
DESCRIPTION,
ITEM_CLASS_ID,
OBJECT_VERSION_NUMBER
) select
X_RULE_ID,
X_RULE_KEY,
X_RULE_TYPE,
X_ACTION_ID,
X_CREATED_BY,
X_CREATION_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATE_LOGIN,
X_START_DATE,
AME_SEED_UTILITY.GET_DEFAULT_END_DATE,
X_DESCRIPTION,
X_ITEM_CLASS_ID,
X_OBJECT_VERSION_NUMBER
from sys.dual
where not exists (select NULL
from AME_RULES
where RULE_ID = X_RULE_ID
and ((START_DATE - (1/86400)) <= sysdate)
and (((END_DATE - (1/86400)) >= sysdate)
or (END_DATE is null)));
insert into AME_RULES_TL
(RULE_ID
,DESCRIPTION
,CREATED_BY
,CREATION_DATE
,LAST_UPDATED_BY
,LAST_UPDATE_DATE
,LAST_UPDATE_LOGIN
,LANGUAGE
,SOURCE_LANG
) select X_RULE_ID,
X_DESCRIPTION,
X_CREATED_BY,
X_CREATION_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATE_LOGIN,
L.LANGUAGE_CODE,
userenv('LANG')
from FND_LANGUAGES L
where L.INSTALLED_FLAG in ('I', 'B')
and not exists (select null
from AME_RULES_TL T
where T.RULE_ID = X_RULE_ID
and T.LANGUAGE = L.LANGUAGE_CODE);
end INSERT_ROW_2;
procedure DELETE_ROW (
X_RULE_KEY in VARCHAR2
) is
begin
if AME_SEED_UTILITY.MLS_ENABLED then
delete from AME_RULES_TL
where RULE_ID in (select RULE_ID
from AME_RULES
where RULE_KEY = X_RULE_KEY);
delete from AME_RULES
where RULE_KEY = X_RULE_KEY;
end DELETE_ROW;
X_LAST_UPDATE_DATE in VARCHAR2,
X_CUSTOM_MODE in VARCHAR2
)
is
X_ACTION_ID NUMBER :=null;
X_LAST_UPDATED_BY NUMBER;
X_LAST_UPDATE_LOGIN NUMBER;
X_LAST_UPDATED_BY,
X_LAST_UPDATE_LOGIN
);
update AME_RULES
set RULE_KEY = '@' || X_RULE_KEY
where RULE_KEY = X_RULE_KEY;
INSERT_ROW (
X_RULE_KEY,
X_RULE_TYPE,
X_ACTION_ID,
X_CREATED_BY,
to_date(X_LAST_UPDATE_DATE,'YYYY/MM/DD HH24:MI:SS'),
X_LAST_UPDATED_BY,
to_date(X_LAST_UPDATE_DATE,'YYYY/MM/DD HH24:MI:SS'),
X_LAST_UPDATE_LOGIN,
to_date(X_LAST_UPDATE_DATE,'YYYY/MM/DD HH24:MI:SS'),
X_DESCRIPTION,
X_ITEM_CLASS_ID,
1);
INSERT_ROW (
X_RULE_KEY,
X_RULE_TYPE,
X_ACTION_ID,
X_CREATED_BY,
to_date(X_LAST_UPDATE_DATE,'YYYY/MM/DD HH24:MI:SS'),
X_LAST_UPDATED_BY,
to_date(X_LAST_UPDATE_DATE,'YYYY/MM/DD HH24:MI:SS'),
X_LAST_UPDATE_LOGIN,
to_date(X_LAST_UPDATE_DATE,'YYYY/MM/DD HH24:MI:SS'),
X_DESCRIPTION,
X_ITEM_CLASS_ID,
1);
INSERT_ROW_2 (
X_RULE_ID,
X_RULE_KEY2,
X_RULE_TYPE,
X_ACTION_ID,
X_CREATED_BY,
to_date(X_LAST_UPDATE_DATE,'YYYY/MM/DD HH24:MI:SS'),
X_LAST_UPDATED_BY,
to_date(X_LAST_UPDATE_DATE,'YYYY/MM/DD HH24:MI:SS'),
X_LAST_UPDATE_LOGIN,
to_date(X_LAST_UPDATE_DATE,'YYYY/MM/DD HH24:MI:SS'),
X_DESCRIPTION,
X_ITEM_CLASS_ID,
1);
update AME_RULES
set RULE_KEY = X_RULE_KEY
where RULE_KEY = X_EXISTING_RULE_KEY
and RULE_ID = X_RULE_ID;
,X_LAST_UPDATE_DATE in varchar2
,X_CUSTOM_MODE in varchar2
) as
X_CURRENT_OWNER number;
X_CURRENT_LAST_UPDATE_DATE varchar2(19);
select ARUTL.LAST_UPDATED_BY,
AME_SEED_UTILITY.DATE_AS_STRING(ARUTL.LAST_UPDATE_DATE),
AME_SEED_UTILITY.OWNER_AS_STRING(ARUTL.CREATED_BY),
ARU.RULE_ID
into X_CURRENT_OWNER,
X_CURRENT_LAST_UPDATE_DATE,
X_CREATED_BY,
X_RULE_ID
from AME_RULES ARU,
AME_RULES_TL ARUTL
where ARU.RULE_KEY = X_RULE_KEY
and sysdate between ARU.START_DATE and nvl(ARU.END_DATE - (1/86400),sysdate)
and ARUTL.RULE_ID = ARU.RULE_ID
and ARUTL.LANGUAGE = userenv('LANG');
if DO_TL_UPDATE_INSERT
(X_OWNER => AME_SEED_UTILITY.OWNER_AS_INTEGER(X_OWNER),
X_CURRENT_OWNER => X_CURRENT_OWNER,
X_LAST_UPDATE_DATE => X_LAST_UPDATE_DATE,
X_CURRENT_LAST_UPDATE_DATE => X_CURRENT_LAST_UPDATE_DATE,
X_CREATED_BY => X_CREATED_BY,
X_CUSTOM_MODE => X_CUSTOM_MODE) then
update AME_RULES_TL ARUTL
set DESCRIPTION = nvl(X_DESCRIPTION,DESCRIPTION),
SOURCE_LANG = userenv('LANG'),
LAST_UPDATE_DATE = AME_SEED_UTILITY.DATE_AS_DATE(X_LAST_UPDATE_DATE),
LAST_UPDATED_BY = AME_SEED_UTILITY.OWNER_AS_INTEGER(X_OWNER),
LAST_UPDATE_LOGIN = 0
where ARUTL.RULE_ID = X_RULE_ID
and userenv('LANG') in (ARUTL.LANGUAGE,ARUTL.SOURCE_LANG);