The following lines contain the word 'select', 'insert', 'update' or 'delete':
PROCEDURE Update_std_article(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_saev_rec IN saev_rec_type,
p_savv_tbl IN savv_tbl_type,
p_saiv_tbl IN saiv_tbl_type,
p_samv_tbl IN samv_tbl_type,
x_saev_rec OUT NOCOPY saev_rec_type,
x_savv_tbl OUT NOCOPY savv_tbl_type,
x_saiv_tbl OUT NOCOPY saiv_tbl_type,
x_samv_tbl OUT NOCOPY samv_tbl_type) IS
l_return_status VARCHAR2(1) := OKC_API.G_RET_STS_SUCCESS;
Update_std_article(
p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saev_rec,
x_saev_rec);
Update_std_art_version(
p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_savv_tbl,
x_savv_tbl);
Update_std_art_incmpt(
p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saiv_tbl,
x_saiv_tbl);
Update_std_art_set_mem(
p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_samv_tbl,
x_samv_tbl);
END Update_std_article;
OKC_SAE_PVT.insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saev_tbl,
x_saev_tbl);
OKC_SAE_PVT.insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saev_rec,
x_saev_rec);
PROCEDURE update_std_article(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_saev_tbl IN saev_tbl_type,
x_saev_tbl OUT NOCOPY saev_tbl_type) IS
BEGIN
OKC_SAE_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saev_tbl,
x_saev_tbl);
END update_std_article;
PROCEDURE update_std_article(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_saev_rec IN saev_rec_type,
x_saev_rec OUT NOCOPY saev_rec_type) IS
BEGIN
OKC_SAE_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saev_rec,
x_saev_rec);
END update_std_article;
PROCEDURE delete_std_article(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_saev_rec IN saev_rec_type) IS
Cursor l_ver(id number) is
select '1' from OKC_STD_ART_VERSIONS_B where sae_id=id;
select '1' from OKC_STD_ART_SET_MEMS where sae_id=id;
select '1' from OKC_STD_ART_INCMPTS where sae_id=id;
OKC_SAE_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saev_rec);
p_msg_name => G_CHILD_DELETE);
END delete_std_article;
PROCEDURE delete_std_article(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_saev_tbl IN saev_tbl_type) IS
i number :=0;
delete_std_article(
p_api_version,
p_init_msg_list,
l_return_status,
x_msg_count,
x_msg_data,
p_saev_tbl(i));
END delete_std_article;
OKC_SAV_PVT.insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_savv_tbl,
x_savv_tbl);
OKC_SAV_PVT.insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_savv_rec,
x_savv_rec);
PROCEDURE update_std_art_version(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_savv_tbl IN savv_tbl_type,
x_savv_tbl OUT NOCOPY savv_tbl_type) IS
BEGIN
OKC_SAV_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_savv_tbl,
x_savv_tbl);
END update_std_art_version;
PROCEDURE update_std_art_version(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_savv_rec IN savv_rec_type,
x_savv_rec OUT NOCOPY savv_rec_type) IS
BEGIN
OKC_SAV_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_savv_rec,
x_savv_rec);
END update_std_art_version;
PROCEDURE delete_std_art_version(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_savv_tbl IN savv_tbl_type) IS
BEGIN
OKC_SAV_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_savv_tbl);
END delete_std_art_version;
PROCEDURE delete_std_art_version(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_savv_rec IN savv_rec_type) IS
BEGIN
OKC_SAV_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_savv_rec);
END delete_std_art_version;
OKC_SAI_PVT.insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saiv_tbl,
x_saiv_tbl);
OKC_SAI_PVT.insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saiv_rec,
x_saiv_rec);
SELECT '1'
FROM okc_std_art_incmpts sai
WHERE sai.sae_id = p_saiv_rec.sae_id_for and sai.sae_id_for = p_saiv_rec.sae_id;
PROCEDURE update_std_art_incmpt(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_saiv_tbl IN saiv_tbl_type,
x_saiv_tbl OUT NOCOPY saiv_tbl_type) IS
BEGIN
OKC_SAI_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saiv_tbl,
x_saiv_tbl);
END update_std_art_incmpt;
PROCEDURE update_std_art_incmpt(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_saiv_rec IN saiv_rec_type,
x_saiv_rec OUT NOCOPY saiv_rec_type) IS
l_api_version CONSTANT NUMBER := 1;
SELECT '1'
FROM okc_std_art_incmpts sai
WHERE sai.sae_id = p_saiv_rec.sae_id_for and sai.sae_id_for = p_saiv_rec.sae_id;
--update the record if the combination exists like this
OKC_SAI_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saiv_rec,
x_saiv_rec);
-- update the opposite combination as the record might exist the opposite combination way
OKC_SAI_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
l_saiv_rec,
x_saiv_rec);
END update_std_art_incmpt;
PROCEDURE delete_std_art_incmpt(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_saiv_tbl IN saiv_tbl_type) IS
BEGIN
OKC_SAI_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saiv_tbl);
END delete_std_art_incmpt;
PROCEDURE delete_std_art_incmpt(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_saiv_rec IN saiv_rec_type) IS
l_saiv_rec saiv_rec_type;
SELECT '1'
FROM okc_std_art_incmpts sai
WHERE sai.sae_id = p_saiv_rec.sae_id_for and sai.sae_id_for = p_saiv_rec.sae_id;
--delete the record if the combination exists like this
OKC_SAI_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_saiv_rec);
-- try to delete the opposite combination as the record might exist the opposite combination way
OKC_SAI_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
l_saiv_rec);
END delete_std_art_incmpt;
SELECT '1'
FROM okc_std_art_incmpts sai
WHERE sai.sae_id = p_saiv_rec.sae_id_for and sai.sae_id_for = p_saiv_rec.sae_id;
OKC_SAC_PVT.insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_sacv_tbl,
x_sacv_tbl);
OKC_SAC_PVT.insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_sacv_rec,
x_sacv_rec);
PROCEDURE update_std_art_classing(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_sacv_tbl IN sacv_tbl_type,
x_sacv_tbl OUT NOCOPY sacv_tbl_type) IS
BEGIN
OKC_SAC_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_sacv_tbl,
x_sacv_tbl);
END update_std_art_classing;
PROCEDURE update_std_art_classing(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_sacv_rec IN sacv_rec_type,
x_sacv_rec OUT NOCOPY sacv_rec_type) IS
BEGIN
OKC_SAC_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_sacv_rec,
x_sacv_rec);
END update_std_art_classing;
PROCEDURE delete_std_art_classing(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_sacv_tbl IN sacv_tbl_type) IS
BEGIN
OKC_SAC_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_sacv_tbl);
END delete_std_art_classing;
PROCEDURE delete_std_art_classing(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_sacv_rec IN sacv_rec_type) IS
BEGIN
OKC_SAC_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_sacv_rec);
END delete_std_art_classing;
OKC_SAM_PVT.Insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_samv_tbl,
x_samv_tbl);
OKC_SAM_PVT.Insert_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_samv_rec,
x_samv_rec);
PROCEDURE update_std_art_set_mem(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_samv_tbl IN samv_tbl_type,
x_samv_tbl OUT NOCOPY samv_tbl_type) IS
BEGIN
OKC_SAM_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_samv_tbl,
x_samv_tbl);
END update_std_art_set_mem;
PROCEDURE update_std_art_set_mem(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_samv_rec IN samv_rec_type,
x_samv_rec OUT NOCOPY samv_rec_type) IS
BEGIN
OKC_SAM_PVT.update_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_samv_rec,
x_samv_rec);
END update_std_art_set_mem;
PROCEDURE delete_std_art_set_mem(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_samv_tbl IN samv_tbl_type) IS
BEGIN
OKC_SAM_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_samv_tbl);
END delete_std_art_set_mem;
PROCEDURE delete_std_art_set_mem(
p_api_version IN NUMBER,
p_init_msg_list IN VARCHAR2 ,
x_return_status OUT NOCOPY VARCHAR2,
x_msg_count OUT NOCOPY NUMBER,
x_msg_data OUT NOCOPY VARCHAR2,
p_samv_rec IN samv_rec_type) IS
BEGIN
OKC_SAM_PVT.delete_row(p_api_version,
p_init_msg_list,
x_return_status,
x_msg_count,
x_msg_data,
p_samv_rec);
END delete_std_art_set_mem;
If this is 'Y' we disable delete for the release
*/
l_count NUMBER;
SELECT COUNT(*)
FROM okc_k_articles_v
WHERE sav_sae_id = p_sav_sae_id
AND sav_sav_release = p_sav_sav_release ;
SELECT sav_release
FROM okc_std_art_versions_b
WHERE sae_id = p_sav_sae_id
AND date_active <= sysdate
ORDER BY date_active DESC, creation_date DESC ;
This is used in view okc_kol_std_art_lib_v to decide if an article can be updated
Article can be update if :
1. It is NOT used in any contracts
2. It is the latest release OR future dated release.
*/
l_latest_release okc_std_art_versions_b.sav_release%TYPE := '';
If this is 'Y' we disable delete for the release
*/
l_count NUMBER;
SELECT COUNT(*)
FROM okc_article_versions a, okc_k_articles_b b
WHERE b.sav_sae_id = p_sav_sae_id
AND b.sav_sae_id = a.article_id
AND ( a.article_version_number = p_article_version_number OR
a.sav_release = to_char(p_article_version_number) );
SELECT NVL(sav_release, to_char(article_version_number))
FROM okc_article_versions
WHERE article_id = p_sav_sae_id
AND start_date <= sysdate
ORDER BY start_date DESC, creation_date DESC ;
This is used in view okc_kol_std_art_lib_v to decide if an article can be updated
Article can be update if :
1. It is NOT used in any contracts
2. It is the latest release OR future dated release.
*/
l_latest_release okc_article_versions.sav_release%TYPE := ' ';