The following lines contain the word 'select', 'insert', 'update' or 'delete':
procedure INSERT_ROW (
X_ROWID in out NOCOPY VARCHAR2,
X_TASK_REFERENCE_ID in NUMBER,
X_TASK_ID in NUMBER,
X_OBJECT_TYPE_CODE in VARCHAR2,
X_OBJECT_NAME in VARCHAR2,
X_OBJECT_ID in NUMBER,
X_OBJECT_DETAILS in VARCHAR2,
X_REFERENCE_CODE in VARCHAR2,
X_ATTRIBUTE1 in VARCHAR2,
X_ATTRIBUTE2 in VARCHAR2,
X_ATTRIBUTE3 in VARCHAR2,
X_ATTRIBUTE4 in VARCHAR2,
X_ATTRIBUTE5 in VARCHAR2,
X_ATTRIBUTE6 in VARCHAR2,
X_ATTRIBUTE7 in VARCHAR2,
X_ATTRIBUTE8 in VARCHAR2,
X_ATTRIBUTE9 in VARCHAR2,
X_ATTRIBUTE10 in VARCHAR2,
X_ATTRIBUTE11 in VARCHAR2,
X_ATTRIBUTE12 in VARCHAR2,
X_ATTRIBUTE13 in VARCHAR2,
X_ATTRIBUTE14 in VARCHAR2,
X_ATTRIBUTE15 in VARCHAR2,
X_ATTRIBUTE_CATEGORY in VARCHAR2,
X_USAGE in VARCHAR2,
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
cursor C is select ROWID from JTF_TASK_REFERENCES_B
where TASK_REFERENCE_ID = X_TASK_REFERENCE_ID
;
insert into JTF_TASK_REFERENCES_B (
TASK_REFERENCE_ID,
TASK_ID,
OBJECT_TYPE_CODE,
OBJECT_NAME,
OBJECT_ID,
OBJECT_DETAILS,
REFERENCE_CODE,
ATTRIBUTE1,
ATTRIBUTE2,
ATTRIBUTE3,
ATTRIBUTE4,
ATTRIBUTE5,
ATTRIBUTE6,
ATTRIBUTE7,
ATTRIBUTE8,
ATTRIBUTE9,
ATTRIBUTE10,
ATTRIBUTE11,
ATTRIBUTE12,
ATTRIBUTE13,
ATTRIBUTE14,
ATTRIBUTE15,
ATTRIBUTE_CATEGORY,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN,
OBJECT_VERSION_NUMBER
) values (
X_TASK_REFERENCE_ID,
X_TASK_ID,
X_OBJECT_TYPE_CODE,
X_OBJECT_NAME,
X_OBJECT_ID,
X_OBJECT_DETAILS,
X_REFERENCE_CODE,
X_ATTRIBUTE1,
X_ATTRIBUTE2,
X_ATTRIBUTE3,
X_ATTRIBUTE4,
X_ATTRIBUTE5,
X_ATTRIBUTE6,
X_ATTRIBUTE7,
X_ATTRIBUTE8,
X_ATTRIBUTE9,
X_ATTRIBUTE10,
X_ATTRIBUTE11,
X_ATTRIBUTE12,
X_ATTRIBUTE13,
X_ATTRIBUTE14,
X_ATTRIBUTE15,
X_ATTRIBUTE_CATEGORY,
X_CREATION_DATE,
X_CREATED_BY,
X_LAST_UPDATE_DATE,
X_LAST_UPDATED_BY,
X_LAST_UPDATE_LOGIN,
1
);
insert into JTF_TASK_REFERENCES_TL (
TASK_REFERENCE_ID,
USAGE,
CREATED_BY,
CREATION_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATE_LOGIN,
LANGUAGE,
SOURCE_LANG
) select
X_TASK_REFERENCE_ID,
X_USAGE,
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 JTF_TASK_REFERENCES_TL T
where T.TASK_REFERENCE_ID = X_TASK_REFERENCE_ID
and T.LANGUAGE = L.LANGUAGE_CODE);
end INSERT_ROW;
cursor c is select
OBJECT_VERSION_NUMBER
from JTF_TASK_REFERENCES_VL
where TASK_REFERENCE_ID = X_TASK_REFERENCE_ID
and OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER
for update of TASK_REFERENCE_ID nowait;
fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
procedure UPDATE_ROW (
X_TASK_REFERENCE_ID in NUMBER,
X_OBJECT_VERSION_NUMBER in NUMBER,
X_TASK_ID in NUMBER,
X_OBJECT_TYPE_CODE in VARCHAR2,
X_OBJECT_NAME in VARCHAR2,
X_OBJECT_ID in NUMBER,
X_OBJECT_DETAILS in VARCHAR2,
X_REFERENCE_CODE in VARCHAR2,
X_ATTRIBUTE1 in VARCHAR2,
X_ATTRIBUTE2 in VARCHAR2,
X_ATTRIBUTE3 in VARCHAR2,
X_ATTRIBUTE4 in VARCHAR2,
X_ATTRIBUTE5 in VARCHAR2,
X_ATTRIBUTE6 in VARCHAR2,
X_ATTRIBUTE7 in VARCHAR2,
X_ATTRIBUTE8 in VARCHAR2,
X_ATTRIBUTE9 in VARCHAR2,
X_ATTRIBUTE10 in VARCHAR2,
X_ATTRIBUTE11 in VARCHAR2,
X_ATTRIBUTE12 in VARCHAR2,
X_ATTRIBUTE13 in VARCHAR2,
X_ATTRIBUTE14 in VARCHAR2,
X_ATTRIBUTE15 in VARCHAR2,
X_ATTRIBUTE_CATEGORY in VARCHAR2,
X_USAGE in VARCHAR2,
X_LAST_UPDATE_DATE in DATE,
X_LAST_UPDATED_BY in NUMBER,
X_LAST_UPDATE_LOGIN in NUMBER
) is
begin
update JTF_TASK_REFERENCES_B set
TASK_ID = X_TASK_ID,
OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
OBJECT_TYPE_CODE = X_OBJECT_TYPE_CODE,
OBJECT_NAME = X_OBJECT_NAME,
OBJECT_ID = X_OBJECT_ID,
OBJECT_DETAILS = X_OBJECT_DETAILS,
REFERENCE_CODE = X_REFERENCE_CODE,
ATTRIBUTE1 = X_ATTRIBUTE1,
ATTRIBUTE2 = X_ATTRIBUTE2,
ATTRIBUTE3 = X_ATTRIBUTE3,
ATTRIBUTE4 = X_ATTRIBUTE4,
ATTRIBUTE5 = X_ATTRIBUTE5,
ATTRIBUTE6 = X_ATTRIBUTE6,
ATTRIBUTE7 = X_ATTRIBUTE7,
ATTRIBUTE8 = X_ATTRIBUTE8,
ATTRIBUTE9 = X_ATTRIBUTE9,
ATTRIBUTE10 = X_ATTRIBUTE10,
ATTRIBUTE11 = X_ATTRIBUTE11,
ATTRIBUTE12 = X_ATTRIBUTE12,
ATTRIBUTE13 = X_ATTRIBUTE13,
ATTRIBUTE14 = X_ATTRIBUTE14,
ATTRIBUTE15 = X_ATTRIBUTE15,
ATTRIBUTE_CATEGORY = X_ATTRIBUTE_CATEGORY,
LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
LAST_UPDATED_BY = X_LAST_UPDATED_BY,
LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
where TASK_REFERENCE_ID = X_TASK_REFERENCE_ID;
update JTF_TASK_REFERENCES_TL set
USAGE = X_USAGE,
LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
LAST_UPDATED_BY = X_LAST_UPDATED_BY,
LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
SOURCE_LANG = userenv('LANG')
where TASK_REFERENCE_ID = X_TASK_REFERENCE_ID
and userenv('LANG') in (LANGUAGE, SOURCE_LANG);
end UPDATE_ROW;
procedure DELETE_ROW (
X_TASK_REFERENCE_ID in NUMBER
) is
begin
delete from JTF_TASK_REFERENCES_TL
where TASK_REFERENCE_ID = X_TASK_REFERENCE_ID;
delete from JTF_TASK_REFERENCES_B
where TASK_REFERENCE_ID = X_TASK_REFERENCE_ID ;
end DELETE_ROW;
/* The following delete and update statements are commented out */
/* as a quick workaround to fix the time-consuming table handler issue */
/*
delete from JTF_TASK_REFERENCES_TL T
where not exists
(select NULL
from JTF_TASK_REFERENCES_B B
where B.TASK_REFERENCE_ID = T.TASK_REFERENCE_ID
);
update JTF_TASK_REFERENCES_TL T set (
USAGE
) = (select
B.USAGE
from JTF_TASK_REFERENCES_TL B
where B.TASK_REFERENCE_ID = T.TASK_REFERENCE_ID
and B.LANGUAGE = T.SOURCE_LANG)
where (
T.TASK_REFERENCE_ID,
T.LANGUAGE
) in (select
SUBT.TASK_REFERENCE_ID,
SUBT.LANGUAGE
from JTF_TASK_REFERENCES_TL SUBB, JTF_TASK_REFERENCES_TL SUBT
where SUBB.TASK_REFERENCE_ID = SUBT.TASK_REFERENCE_ID
and SUBB.LANGUAGE = SUBT.SOURCE_LANG
and (SUBB.USAGE <> SUBT.USAGE
or (SUBB.USAGE is null and SUBT.USAGE is not null)
or (SUBB.USAGE is not null and SUBT.USAGE is null)
));
insert into JTF_TASK_REFERENCES_TL (
TASK_REFERENCE_ID,
USAGE,
CREATED_BY,
CREATION_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATE_LOGIN,
LANGUAGE,
SOURCE_LANG
) select /*+ parallel(B) parallel(L) */
B.TASK_REFERENCE_ID,
B.USAGE,
B.CREATED_BY,
B.CREATION_DATE,
B.LAST_UPDATED_BY,
B.LAST_UPDATE_DATE,
B.LAST_UPDATE_LOGIN,
L.LANGUAGE_CODE,
B.SOURCE_LANG
from JTF_TASK_REFERENCES_TL B, FND_LANGUAGES L
where L.INSTALLED_FLAG in ('I', 'B')
and B.LANGUAGE = userenv('LANG')
and not exists
(select /*+ parallel(T) */ NULL
from JTF_TASK_REFERENCES_TL T
where T.TASK_REFERENCE_ID = B.TASK_REFERENCE_ID
and T.LANGUAGE = L.LANGUAGE_CODE);
update jtf_task_references_tl set
usage = nvl(X_usage,usage),
LAST_UPDATE_DATE = sysdate,
LAST_UPDATEd_by = decode(x_owner,'SEED',1,0),
LAST_UPDATE_LOGIN = 0,
SOURCE_LANG = userenv('LANG')
where task_reference_id = X_task_reference_id
and userenv('LANG') in (LANGUAGE, SOURCE_LANG);