The following lines contain the word 'select', 'insert', 'update' or 'delete':
procedure INSERT_ROW (
X_ROWID in out nocopy VARCHAR2,
X_APPLICATION_ID in NUMBER,
X_PERIODIC_SET_ID in NUMBER,
X_CHILD_APPLICATION_ID in NUMBER,
X_CHILD_ALERT_ID in NUMBER,
X_CHILD_PERIODIC_SET_ID in NUMBER,
X_SEQUENCE in NUMBER,
X_ENABLED_FLAG in VARCHAR2,
X_END_DATE_ACTIVE in DATE,
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
) is
/* sequence, child_alert_id, and child_periodic_set_id can be null */
cursor C is select ROWID from ALR_PERIODIC_SET_MEMBERS
where APPLICATION_ID = X_APPLICATION_ID
and PERIODIC_SET_ID = X_PERIODIC_SET_ID
and CHILD_APPLICATION_ID = X_CHILD_APPLICATION_ID
and ((CHILD_ALERT_ID is null)
or ((CHILD_ALERT_ID is not null)
and (CHILD_ALERT_ID = X_CHILD_ALERT_ID)))
and ((CHILD_PERIODIC_SET_ID is null)
or ((CHILD_PERIODIC_SET_ID is not null)
and (CHILD_PERIODIC_SET_ID = X_CHILD_PERIODIC_SET_ID)))
and ((SEQUENCE is null)
or ((SEQUENCE is not null)
and (SEQUENCE = X_SEQUENCE)))
;
insert into ALR_PERIODIC_SET_MEMBERS (
APPLICATION_ID,
PERIODIC_SET_ID,
SEQUENCE,
CHILD_APPLICATION_ID,
CHILD_ALERT_ID,
CHILD_PERIODIC_SET_ID,
LAST_UPDATED_BY,
LAST_UPDATE_DATE,
CREATED_BY,
CREATION_DATE,
LAST_UPDATE_LOGIN,
ENABLED_FLAG,
END_DATE_ACTIVE
) values (
X_APPLICATION_ID,
X_PERIODIC_SET_ID,
X_SEQUENCE,
X_CHILD_APPLICATION_ID,
X_CHILD_ALERT_ID,
X_CHILD_PERIODIC_SET_ID,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_DATE,
X_CREATED_BY,
X_CREATION_DATE,
X_LAST_UPDATE_LOGIN,
X_ENABLED_FLAG,
X_END_DATE_ACTIVE);
end INSERT_ROW;
X_LAST_UPDATE_DATE in VARCHAR2,
X_CUSTOM_MODE in VARCHAR2
) is
l_user_id number := 0;
f_ludate date; -- entity update date in file
db_ludate date; -- entity update date in db
f_ludate := nvl(to_date(x_last_update_date, 'YYYY/MM/DD'), sysdate);
select application_id into l_app_id
from fnd_application
where application_short_name = X_APPLICATION_SHORT_NAME;
select periodic_set_id into l_per_id
from alr_periodic_sets
where application_id = l_app_id
and name = X_NAME;
select application_id into l_child_app_id
from fnd_application
where application_short_name = X_CHILD_APPLICATION_SHORT_NAME;
select alert_id into l_child_alert_id
from alr_alerts
where application_id = l_child_app_id
and alert_name = X_CHILD_ALERT_NAME;
select periodic_set_id into l_child_per_id
from alr_periodic_sets
where application_id = l_child_app_id
and name = X_CHILD_PERIODIC_SET_NAME;
select last_updated_by, last_update_date
into db_luby, db_ludate
from ALR_PERIODIC_SET_MEMBERS
where application_id = l_app_id
and ((child_alert_id is not null
and child_alert_id = l_child_alert_id)
or (child_alert_id is NULL and
l_child_alert_id is null))
and child_application_id = l_child_app_id
and ((child_periodic_set_id is not null
and child_periodic_set_id = l_child_per_id)
or (child_periodic_set_id is null
and l_child_per_id is null))
and periodic_set_id = l_per_id
and sequence = X_SEQUENCE;
ALR_PERIODIC_SET_MEMBERS_PKG.UPDATE_ROW(
X_APPLICATION_ID => l_app_id,
X_PERIODIC_SET_ID => l_per_id,
X_CHILD_APPLICATION_ID => l_child_app_id,
X_CHILD_ALERT_ID => l_child_alert_id,
X_CHILD_PERIODIC_SET_ID => l_child_per_id,
X_SEQUENCE => to_number(X_SEQUENCE),
X_ENABLED_FLAG => X_ENABLED_FLAG,
X_END_DATE_ACTIVE => to_date(X_END_DATE_ACTIVE,
'YYYY/MM/DD HH24:MI:SS'),
X_LAST_UPDATE_DATE => f_ludate,
X_LAST_UPDATED_BY => f_luby,
X_LAST_UPDATE_LOGIN => 0 );
ALR_PERIODIC_SET_MEMBERS_PKG.INSERT_ROW(
X_ROWID => l_row_id,
X_APPLICATION_ID => l_app_id,
X_PERIODIC_SET_ID => l_per_id,
X_CHILD_APPLICATION_ID => l_child_app_id,
X_CHILD_ALERT_ID => l_child_alert_id,
X_CHILD_PERIODIC_SET_ID => l_child_per_id,
X_SEQUENCE => to_number(X_SEQUENCE),
X_ENABLED_FLAG => X_ENABLED_FLAG,
X_END_DATE_ACTIVE => to_date(X_END_DATE_ACTIVE,
'YYYY/MM/DD HH24:MI:SS'),
X_CREATION_DATE => f_ludate,
X_CREATED_BY => f_luby,
X_LAST_UPDATE_DATE => f_ludate,
X_LAST_UPDATED_BY => f_luby,
X_LAST_UPDATE_LOGIN => 0 );
cursor c1 is select
ENABLED_FLAG,
END_DATE_ACTIVE,
APPLICATION_ID,
PERIODIC_SET_ID,
CHILD_APPLICATION_ID,
CHILD_ALERT_ID,
CHILD_PERIODIC_SET_ID,
SEQUENCE
from ALR_PERIODIC_SET_MEMBERS
where APPLICATION_ID = X_APPLICATION_ID
and PERIODIC_SET_ID = X_PERIODIC_SET_ID
and CHILD_APPLICATION_ID = X_CHILD_APPLICATION_ID
and CHILD_ALERT_ID = X_CHILD_ALERT_ID
and CHILD_PERIODIC_SET_ID = X_CHILD_PERIODIC_SET_ID
and SEQUENCE = X_SEQUENCE
for update of APPLICATION_ID nowait;
procedure UPDATE_ROW (
X_APPLICATION_ID in NUMBER,
X_PERIODIC_SET_ID in NUMBER,
X_CHILD_APPLICATION_ID in NUMBER,
X_CHILD_ALERT_ID in NUMBER,
X_CHILD_PERIODIC_SET_ID in NUMBER,
X_SEQUENCE in NUMBER,
X_ENABLED_FLAG in VARCHAR2,
X_END_DATE_ACTIVE in DATE,
X_LAST_UPDATE_DATE in DATE,
X_LAST_UPDATED_BY in NUMBER,
X_LAST_UPDATE_LOGIN in NUMBER
) is
begin
update ALR_PERIODIC_SET_MEMBERS set
ENABLED_FLAG = X_ENABLED_FLAG,
END_DATE_ACTIVE = X_END_DATE_ACTIVE,
APPLICATION_ID = X_APPLICATION_ID,
PERIODIC_SET_ID = X_PERIODIC_SET_ID,
CHILD_APPLICATION_ID = X_CHILD_APPLICATION_ID,
CHILD_ALERT_ID = X_CHILD_ALERT_ID,
CHILD_PERIODIC_SET_ID = X_CHILD_PERIODIC_SET_ID,
SEQUENCE = X_SEQUENCE,
LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
LAST_UPDATED_BY = X_LAST_UPDATED_BY,
LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
where APPLICATION_ID = X_APPLICATION_ID
and PERIODIC_SET_ID = X_PERIODIC_SET_ID
and CHILD_APPLICATION_ID = X_CHILD_APPLICATION_ID
and ((CHILD_ALERT_ID is not null
and CHILD_ALERT_ID = X_CHILD_ALERT_ID)
or (CHILD_ALERT_ID is null and
X_CHILD_ALERT_ID is null))
and ((CHILD_PERIODIC_SET_ID is not null
and CHILD_PERIODIC_SET_ID = X_CHILD_PERIODIC_SET_ID)
or (CHILD_PERIODIC_SET_ID is null and
X_CHILD_PERIODIC_SET_ID is null))
and SEQUENCE = X_SEQUENCE;
end UPDATE_ROW;
procedure DELETE_ROW (
X_APPLICATION_ID in NUMBER,
X_PERIODIC_SET_ID in NUMBER,
X_CHILD_APPLICATION_ID in NUMBER,
X_CHILD_ALERT_ID in NUMBER,
X_CHILD_PERIODIC_SET_ID in NUMBER,
X_SEQUENCE in NUMBER
) is
begin
delete from ALR_PERIODIC_SET_MEMBERS
where APPLICATION_ID = X_APPLICATION_ID
and PERIODIC_SET_ID = X_PERIODIC_SET_ID
and CHILD_APPLICATION_ID = X_CHILD_APPLICATION_ID
and CHILD_ALERT_ID = X_CHILD_ALERT_ID
and CHILD_PERIODIC_SET_ID = X_CHILD_PERIODIC_SET_ID
and SEQUENCE = X_SEQUENCE;
end DELETE_ROW;