The following lines contain the word 'select', 'insert', 'update' or 'delete':
select 1
from AK_FLOWS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code;
select 1
from AK_FLOW_PAGES
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code;
select 1
from AK_FLOW_PAGE_REGIONS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and region_application_id = p_region_application_id
and region_code = p_region_code;
select 1
from AK_FLOW_PAGE_REGION_ITEMS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and region_application_id = p_region_application_id
and region_code = p_region_code
and attribute_application_id = p_attribute_application_id
and attribute_code = p_attribute_code;
select 1
from AK_FLOW_REGION_RELATIONS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and foreign_key_name = p_foreign_key_name
and from_page_appl_id = p_from_page_appl_id
and from_page_code = p_from_page_code
and from_region_appl_id = p_from_region_appl_id
and from_region_code = p_from_region_code
and to_page_appl_id = p_to_page_appl_id
and to_page_code = p_to_page_code
and to_region_appl_id = p_to_region_appl_id
and to_region_code = p_to_region_code;
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
l_api_version_number CONSTANT number := 1.0;
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => null,
p_last_update_date => l_last_update_date,
p_db_last_update_date => null,
p_last_update_login => l_last_update_login,
p_create_or_update => 'CREATE') then
null;
select userenv('LANG') into l_lang
from dual;
insert into AK_FLOWS (
FLOW_APPLICATION_ID,
FLOW_CODE,
PRIMARY_PAGE_APPL_ID,
PRIMARY_PAGE_CODE,
ATTRIBUTE_CATEGORY,
ATTRIBUTE1,
ATTRIBUTE2,
ATTRIBUTE3,
ATTRIBUTE4,
ATTRIBUTE5,
ATTRIBUTE6,
ATTRIBUTE7,
ATTRIBUTE8,
ATTRIBUTE9,
ATTRIBUTE10,
ATTRIBUTE11,
ATTRIBUTE12,
ATTRIBUTE13,
ATTRIBUTE14,
ATTRIBUTE15,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN
) values (
p_flow_application_id,
p_flow_code,
l_primary_page_appl_id,
l_primary_page_code,
l_attribute_category,
l_attribute1,
l_attribute2,
l_attribute3,
l_attribute4,
l_attribute5,
l_attribute6,
l_attribute7,
l_attribute8,
l_attribute9,
l_attribute10,
l_attribute11,
l_attribute12,
l_attribute13,
l_attribute14,
l_attribute15,
l_creation_date,
l_created_by,
l_last_update_date,
l_last_updated_by,
l_last_update_login
);
FND_MESSAGE.SET_NAME('AK','AK_INSERT_FLOW_FAILED');
insert into AK_FLOWS_TL (
FLOW_APPLICATION_ID,
FLOW_CODE,
LANGUAGE,
NAME,
DESCRIPTION,
SOURCE_LANG,
CREATED_BY,
CREATION_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATE_LOGIN
) select
p_flow_application_id,
p_flow_code,
L.LANGUAGE_CODE,
p_name,
l_description,
decode(L.LANGUAGE_CODE, l_lang, L.LANGUAGE_CODE, l_lang),
l_created_by,
l_creation_date,
l_last_updated_by,
l_last_update_date,
l_last_update_login
from FND_LANGUAGES L
where L.INSTALLED_FLAG in ('I', 'B')
and not exists
(select NULL
from AK_FLOWS_TL T
where T.FLOW_APPLICATION_ID = p_flow_application_id
and T.FLOW_CODE = p_flow_code
and T.LANGUAGE = L.LANGUAGE_CODE);
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
l_api_version_number CONSTANT number := 1.0;
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => null,
p_last_update_date => l_last_update_date,
p_db_last_update_date => null,
p_last_update_login => l_last_update_login,
p_create_or_update => 'CREATE') then
null;
select userenv('LANG') into l_lang
from dual;
insert into AK_FLOW_PAGES (
FLOW_APPLICATION_ID,
FLOW_CODE,
PAGE_APPLICATION_ID,
PAGE_CODE,
PRIMARY_REGION_APPL_ID,
PRIMARY_REGION_CODE,
ATTRIBUTE_CATEGORY,
ATTRIBUTE1,
ATTRIBUTE2,
ATTRIBUTE3,
ATTRIBUTE4,
ATTRIBUTE5,
ATTRIBUTE6,
ATTRIBUTE7,
ATTRIBUTE8,
ATTRIBUTE9,
ATTRIBUTE10,
ATTRIBUTE11,
ATTRIBUTE12,
ATTRIBUTE13,
ATTRIBUTE14,
ATTRIBUTE15,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN
) values (
p_flow_application_id,
p_flow_code,
p_page_application_id,
p_page_code,
l_primary_region_appl_id,
l_primary_region_code,
l_attribute_category,
l_attribute1,
l_attribute2,
l_attribute3,
l_attribute4,
l_attribute5,
l_attribute6,
l_attribute7,
l_attribute8,
l_attribute9,
l_attribute10,
l_attribute11,
l_attribute12,
l_attribute13,
l_attribute14,
l_attribute15,
l_creation_date,
l_created_by,
l_last_update_date,
l_last_updated_by,
l_last_update_login
);
FND_MESSAGE.SET_NAME('AK','AK_INSERT_FLOW_PAGE_FAILED');
insert into AK_FLOW_PAGES_TL (
FLOW_APPLICATION_ID,
FLOW_CODE,
PAGE_APPLICATION_ID,
PAGE_CODE,
LANGUAGE,
NAME,
DESCRIPTION,
SOURCE_LANG,
CREATED_BY,
CREATION_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATE_LOGIN
) select
p_flow_application_id,
p_flow_code,
p_page_application_id,
p_page_code,
L.LANGUAGE_CODE,
p_name,
l_description,
decode(L.NLS_LANGUAGE, l_lang, L.NLS_LANGUAGE, l_lang),
l_created_by,
l_creation_date,
l_last_updated_by,
l_last_update_date,
l_last_update_login
from FND_LANGUAGES L
where L.INSTALLED_FLAG in ('I', 'B')
and not exists
(select NULL
from AK_FLOW_PAGES_TL T
where T.FLOW_APPLICATION_ID = p_flow_application_id
and T.FLOW_CODE = p_flow_code
and T.PAGE_APPLICATION_ID = p_page_application_id
and T.PAGE_CODE = p_page_code
and T.LANGUAGE = L.LANGUAGE_CODE);
AK_FLOW_PVT.UPDATE_FLOW (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_primary_page_appl_id => p_page_application_id,
p_primary_page_code => p_page_code,
p_attribute_category => l_attribute_category,
p_attribute1 => l_attribute1,
p_attribute2 => l_attribute2,
p_attribute3 => l_attribute3,
p_attribute4 => l_attribute4,
p_attribute5 => l_attribute5,
p_attribute6 => l_attribute6,
p_attribute7 => l_attribute7,
p_attribute8 => l_attribute8,
p_attribute9 => l_attribute9,
p_attribute10 => l_attribute10,
p_attribute11 => l_attribute11,
p_attribute12 => l_attribute12,
p_attribute13 => l_attribute13,
p_attribute14 => l_attribute14,
p_attribute15 => l_attribute15,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_last_update_date => l_last_update_date,
p_last_update_login => l_last_update_login,
p_pass => p_pass,
p_copy_redo_flag => p_copy_redo_flag
);
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
l_api_version_number CONSTANT number := 1.0;
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => null,
p_last_update_date => l_last_update_date,
p_db_last_update_date => null,
p_last_update_login => l_last_update_login,
p_create_or_update => 'CREATE') then
null;
select userenv('LANG') into l_lang
from dual;
insert into AK_FLOW_PAGE_REGIONS (
FLOW_APPLICATION_ID,
FLOW_CODE,
PAGE_APPLICATION_ID,
PAGE_CODE,
REGION_APPLICATION_ID,
REGION_CODE,
DISPLAY_SEQUENCE,
REGION_STYLE,
NUM_COLUMNS,
ICX_CUSTOM_CALL,
PARENT_REGION_APPLICATION_ID,
PARENT_REGION_CODE,
ATTRIBUTE_CATEGORY,
ATTRIBUTE1,
ATTRIBUTE2,
ATTRIBUTE3,
ATTRIBUTE4,
ATTRIBUTE5,
ATTRIBUTE6,
ATTRIBUTE7,
ATTRIBUTE8,
ATTRIBUTE9,
ATTRIBUTE10,
ATTRIBUTE11,
ATTRIBUTE12,
ATTRIBUTE13,
ATTRIBUTE14,
ATTRIBUTE15,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN
) values (
p_flow_application_id,
p_flow_code,
p_page_application_id,
p_page_code,
p_region_application_id,
p_region_code,
l_display_sequence,
p_region_style,
l_num_columns,
l_icx_custom_call,
l_parent_region_appl_id,
l_parent_region_code,
l_attribute_category,
l_attribute1,
l_attribute2,
l_attribute3,
l_attribute4,
l_attribute5,
l_attribute6,
l_attribute7,
l_attribute8,
l_attribute9,
l_attribute10,
l_attribute11,
l_attribute12,
l_attribute13,
l_attribute14,
l_attribute15,
l_creation_date,
l_created_by,
l_last_update_date,
l_last_updated_by,
l_last_update_login
);
AK_FLOW_PVT.UPDATE_PAGE (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_page_application_id => p_page_application_id,
p_page_code => p_page_code,
p_primary_region_appl_id => p_region_application_id,
p_primary_region_code => p_region_code,
p_attribute1 => l_attribute1,
p_attribute2 => l_attribute2,
p_attribute3 => l_attribute3,
p_attribute4 => l_attribute4,
p_attribute5 => l_attribute5,
p_attribute6 => l_attribute6,
p_attribute7 => l_attribute7,
p_attribute8 => l_attribute8,
p_attribute9 => l_attribute9,
p_attribute10 => l_attribute10,
p_attribute11 => l_attribute11,
p_attribute12 => l_attribute12,
p_attribute13 => l_attribute13,
p_attribute14 => l_attribute14,
p_attribute15 => l_attribute15,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_last_update_date => l_last_update_date,
p_last_update_login => l_last_update_login,
p_pass => p_pass,
p_copy_redo_flag => p_copy_redo_flag
);
p_last_updated_by => l_last_updated_by,
p_last_update_date => l_last_update_date,
p_last_update_login => l_last_update_login,
p_pass => p_pass,
p_copy_redo_flag => p_copy_redo_flag
);
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
l_api_version_number CONSTANT number := 1.0;
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => null,
p_last_update_date => l_last_update_date,
p_db_last_update_date => null,
p_last_update_login => l_last_update_login,
p_create_or_update => 'CREATE') then
null;
select userenv('LANG') into l_lang
from dual;
insert into AK_FLOW_PAGE_REGION_ITEMS (
FLOW_APPLICATION_ID,
FLOW_CODE,
PAGE_APPLICATION_ID,
PAGE_CODE,
REGION_APPLICATION_ID,
REGION_CODE,
ATTRIBUTE_APPLICATION_ID,
ATTRIBUTE_CODE,
TO_PAGE_APPL_ID,
TO_PAGE_CODE,
TO_URL_ATTRIBUTE_APPL_ID,
TO_URL_ATTRIBUTE_CODE,
ATTRIBUTE_CATEGORY,
ATTRIBUTE1,
ATTRIBUTE2,
ATTRIBUTE3,
ATTRIBUTE4,
ATTRIBUTE5,
ATTRIBUTE6,
ATTRIBUTE7,
ATTRIBUTE8,
ATTRIBUTE9,
ATTRIBUTE10,
ATTRIBUTE11,
ATTRIBUTE12,
ATTRIBUTE13,
ATTRIBUTE14,
ATTRIBUTE15,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN
) values (
p_flow_application_id,
p_flow_code,
p_page_application_id,
p_page_code,
p_region_application_id,
p_region_code,
p_attribute_application_id,
p_attribute_code,
l_to_page_appl_id,
l_to_page_code,
l_to_url_attribute_appl_id,
l_to_url_attribute_code,
l_attribute_category,
l_attribute1,
l_attribute2,
l_attribute3,
l_attribute4,
l_attribute5,
l_attribute6,
l_attribute7,
l_attribute8,
l_attribute9,
l_attribute10,
l_attribute11,
l_attribute12,
l_attribute13,
l_attribute14,
l_attribute15,
l_creation_date,
l_created_by,
l_last_update_date,
l_last_updated_by,
l_last_update_login
);
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
l_api_version_number CONSTANT number := 1.0;
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => null,
p_last_update_date => l_last_update_date,
p_db_last_update_date => null,
p_last_update_login => l_last_update_login,
p_create_or_update => 'CREATE') then
null;
select userenv('LANG') into l_lang
from dual;
insert into AK_FLOW_REGION_RELATIONS (
FLOW_APPLICATION_ID,
FLOW_CODE,
FOREIGN_KEY_NAME,
FROM_PAGE_APPL_ID,
FROM_PAGE_CODE,
FROM_REGION_APPL_ID,
FROM_REGION_CODE,
TO_PAGE_APPL_ID,
TO_PAGE_CODE,
TO_REGION_APPL_ID,
TO_REGION_CODE,
APPLICATION_ID,
ATTRIBUTE_CATEGORY,
ATTRIBUTE1,
ATTRIBUTE2,
ATTRIBUTE3,
ATTRIBUTE4,
ATTRIBUTE5,
ATTRIBUTE6,
ATTRIBUTE7,
ATTRIBUTE8,
ATTRIBUTE9,
ATTRIBUTE10,
ATTRIBUTE11,
ATTRIBUTE12,
ATTRIBUTE13,
ATTRIBUTE14,
ATTRIBUTE15,
CREATION_DATE,
CREATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_LOGIN
) values (
p_flow_application_id,
p_flow_code,
p_foreign_key_name,
p_from_page_appl_id,
p_from_page_code,
p_from_region_appl_id,
p_from_region_code,
p_to_page_appl_id,
p_to_page_code,
p_to_region_appl_id,
p_to_region_code,
p_application_id,
l_attribute_category,
l_attribute1,
l_attribute2,
l_attribute3,
l_attribute4,
l_attribute5,
l_attribute6,
l_attribute7,
l_attribute8,
l_attribute9,
l_attribute10,
l_attribute11,
l_attribute12,
l_attribute13,
l_attribute14,
l_attribute15,
l_creation_date,
l_created_by,
l_last_update_date,
l_last_updated_by,
l_last_update_login
);
procedure DELETE_FLOW (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_delete_cascade IN VARCHAR2
) is
cursor l_get_pages_csr is
select PAGE_APPLICATION_ID, PAGE_CODE
from AK_FLOW_PAGES
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code;
l_api_name CONSTANT varchar2(30):= 'Delete_Flow';
savepoint start_delete_flow;
if (p_delete_cascade = 'N') then
--
-- If we are not deleting any referencing records, we cannot
-- delete the flow if it is being referenced in any of
-- following tables.
--
-- AK_FLOW_PAGES
--
open l_get_pages_csr;
AK_FLOW_PVT.DELETE_PAGE (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_page_application_id => l_page_application_id,
p_page_code => l_page_code,
p_delete_cascade => p_delete_cascade
);
delete from ak_flows
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code;
delete from ak_flows_tl
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code;
FND_MESSAGE.SET_NAME('AK','AK_FLOW_DELETED');
FND_MESSAGE.SET_NAME('AK','AK_FLOW_NOT_DELETED');
rollback to start_delete_flow;
rollback to start_delete_flow;
end DELETE_FLOW;
procedure DELETE_PAGE (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_page_application_id IN NUMBER,
p_page_code IN VARCHAR2,
p_delete_cascade IN VARCHAR2
) is
cursor l_get_page_regions_csr is
select REGION_APPLICATION_ID, REGION_CODE
from AK_FLOW_PAGE_REGIONS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code;
select 1
from AK_FLOWS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and primary_page_appl_id = p_page_application_id
and primary_page_code = p_page_code;
l_api_name CONSTANT varchar2(30):= 'Delete_Page';
savepoint start_delete_page;
if (p_delete_cascade = 'N') then
--
-- If we are not deleting any referencing records, we cannot
-- delete the flow page if it is being referenced in any of
-- following tables.
--
-- AK_FLOW_PAGE_REGIONS
--
open l_get_page_regions_csr;
AK_FLOW_PVT.DELETE_PAGE_REGION (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_page_application_id => p_page_application_id,
p_page_code => p_page_code,
p_region_application_id => l_region_application_id,
p_region_code => l_region_code,
p_delete_cascade => p_delete_cascade
);
AK_FLOW_PVT.UPDATE_FLOW (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_primary_page_code => G_NO_PRIMARY_PAGE_CODE,
p_pass => l_pass,
p_copy_redo_flag => l_copy_redo_flag
);
delete from ak_flow_pages
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code;
delete from ak_flow_pages_tl
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code;
FND_MESSAGE.SET_NAME('AK','AK_FLOW_PAGE_DELETED');
FND_MESSAGE.SET_NAME('AK','AK_FLOW_PAGE_NOT_DELETED');
rollback to start_delete_page;
rollback to start_delete_page;
end DELETE_PAGE;
procedure DELETE_PAGE_REGION (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_page_application_id IN NUMBER,
p_page_code IN VARCHAR2,
p_region_application_id IN NUMBER,
p_region_code IN VARCHAR2,
p_delete_cascade IN VARCHAR2
) is
cursor l_get_items_csr is
select ATTRIBUTE_APPLICATION_ID, ATTRIBUTE_CODE
from AK_FLOW_PAGE_REGION_ITEMS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and region_application_id = p_region_application_id
and region_code = p_region_code;
select FOREIGN_KEY_NAME, TO_PAGE_APPL_ID, TO_PAGE_CODE,
TO_REGION_APPL_ID, TO_REGION_CODE
from AK_FLOW_REGION_RELATIONS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and from_page_appl_id = p_page_application_id
and from_page_code = p_page_code
and from_region_appl_id = p_region_application_id
and from_region_code = p_region_code;
select FOREIGN_KEY_NAME, FROM_PAGE_APPL_ID, FROM_PAGE_CODE,
FROM_REGION_APPL_ID, FROM_REGION_CODE
from AK_FLOW_REGION_RELATIONS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and to_page_appl_id = p_page_application_id
and to_page_code = p_page_code
and to_region_appl_id = p_region_application_id
and to_region_code = p_region_code;
select 1
from AK_FLOW_PAGES
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and primary_region_appl_id = p_region_application_id
and primary_region_code = p_region_code;
select region_application_id, region_code
from AK_FLOW_PAGE_REGIONS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and parent_region_application_id = p_region_application_id
and parent_region_code = p_region_code;
l_api_name CONSTANT varchar2(30):= 'Delete_Page_Region';
savepoint start_delete_page_region;
if (p_delete_cascade = 'N') then
--
-- If we are not deleting any referencing records, we cannot
-- delete the flow page region if it is being referenced in any of
-- following tables.
--
-- AK_FLOW_PAGE_REGION_ITEMS
--
open l_get_items_csr;
AK_FLOW_PVT.DELETE_PAGE_REGION_ITEM (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_page_application_id => p_page_application_id,
p_page_code => p_page_code,
p_region_application_id => p_region_application_id,
p_region_code => p_region_code,
p_attribute_application_id => l_attribute_appl_id,
p_attribute_code => l_attribute_code,
p_delete_cascade => p_delete_cascade
);
AK_FLOW_PVT.DELETE_REGION_RELATION (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_foreign_key_name => l_foreign_key_name,
p_from_page_appl_id => p_page_application_id,
p_from_page_code => p_page_code,
p_from_region_appl_id => p_region_application_id,
p_from_region_code => p_region_code,
p_to_page_appl_id => l_page_appl_id,
p_to_page_code => l_page_code,
p_to_region_appl_id => l_region_appl_id,
p_to_region_code => l_region_code,
p_delete_cascade => p_delete_cascade
);
AK_FLOW_PVT.DELETE_REGION_RELATION (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_foreign_key_name => l_foreign_key_name,
p_from_page_appl_id => l_page_appl_id,
p_from_page_code => l_page_code,
p_from_region_appl_id => l_region_appl_id,
p_from_region_code => l_region_code,
p_to_page_appl_id => p_page_application_id,
p_to_page_code => p_page_code,
p_to_region_appl_id => p_region_application_id,
p_to_region_code => p_region_code,
p_delete_cascade => p_delete_cascade
);
AK_FLOW_PVT.UPDATE_PAGE_REGION (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_page_application_id => p_page_application_id,
p_page_code => p_page_code,
p_region_application_id => l_region_appl_id,
p_region_code => l_region_code,
p_parent_region_application_id => null,
p_parent_region_code => null,
p_pass => l_pass,
p_copy_redo_flag => l_copy_redo_flag
);
AK_FLOW_PVT.UPDATE_PAGE (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_page_application_id => p_page_application_id,
p_page_code => p_page_code,
p_primary_region_code => G_NO_PRIMARY_REGION_CODE,
p_pass => l_pass,
p_copy_redo_flag => l_copy_redo_flag
);
delete from ak_flow_page_regions
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and region_application_id = p_region_application_id
and region_code = p_region_code;
FND_MESSAGE.SET_NAME('AK','AK_PAGE_REGION_DELETED');
FND_MESSAGE.SET_NAME('AK','AK_PG_REGION_NOT_DELETED');
rollback to start_delete_page_region;
rollback to start_delete_page_region;
end DELETE_PAGE_REGION;
procedure DELETE_PAGE_REGION_ITEM (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_page_application_id IN NUMBER,
p_page_code IN VARCHAR2,
p_region_application_id IN NUMBER,
p_region_code IN VARCHAR2,
p_attribute_application_id IN NUMBER,
p_attribute_code IN VARCHAR2,
p_delete_cascade IN VARCHAR2
) is
l_api_version_number CONSTANT number := 1.0;
l_api_name CONSTANT varchar2(30):= 'Delete_Page_Region_Item';
savepoint start_delete_region_item;
if (p_delete_cascade = 'N') then
--
-- If we are not deleting any referencing records, we cannot
-- delete the page region item if it is being referenced in any of
-- following tables.
--
-- none
--
null;
delete from ak_flow_page_region_items
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and region_application_id = p_region_application_id
and region_code = p_region_code
and attribute_application_id = p_attribute_application_id
and attribute_code = p_attribute_code;
FND_MESSAGE.SET_NAME('AK','AK_PG_REG_ITEM_DELETED');
FND_MESSAGE.SET_NAME('AK','AK_PG_REG_ITEM_NOT_DELETED');
rollback to start_delete_region_item;
rollback to start_delete_region_item;
end DELETE_PAGE_REGION_ITEM;
procedure DELETE_REGION_RELATION (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_foreign_key_name IN VARCHAR2,
p_from_page_appl_id IN NUMBER,
p_from_page_code IN VARCHAR2,
p_from_region_appl_id IN NUMBER,
p_from_region_code IN VARCHAR2,
p_to_page_appl_id IN NUMBER,
p_to_page_code IN VARCHAR2,
p_to_region_appl_id IN NUMBER,
p_to_region_code IN VARCHAR2,
p_delete_cascade IN VARCHAR2
) is
cursor l_get_items_csr is
select ATTRIBUTE_APPLICATION_ID, ATTRIBUTE_CODE
from AK_FLOW_PAGE_REGION_ITEMS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and page_application_id = p_from_page_appl_id
and page_code = p_from_page_code
and region_application_id = p_from_region_appl_id
and region_code = p_from_region_code
and to_page_appl_id = p_to_page_appl_id
and to_page_code = p_to_page_code;
l_api_name CONSTANT varchar2(30):= 'Delete_Region_Relation';
savepoint start_delete_relation;
if (p_delete_cascade = 'N') then
--
-- If we are not deleting any referencing records, we cannot
-- delete the region relation if it is being referenced in any of
-- following tables.
--
-- AK_FLOW_PAGE_REGION_ITEMS
--
open l_get_items_csr;
AK_FLOW_PVT.DELETE_PAGE_REGION_ITEM (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_page_application_id => p_from_page_appl_id,
p_page_code => p_from_page_code,
p_region_application_id => p_from_region_appl_id,
p_region_code => p_from_region_code,
p_attribute_application_id => l_attribute_application_id,
p_attribute_code => l_attribute_code,
p_delete_cascade => p_delete_cascade
);
delete from ak_flow_region_relations
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and foreign_key_name = p_foreign_key_name
and from_page_appl_id = p_from_page_appl_id
and from_page_code = p_from_page_code
and from_region_appl_id = p_from_region_appl_id
and from_region_code = p_from_region_code
and to_page_appl_id = p_to_page_appl_id
and to_page_code = p_to_page_code
and to_region_appl_id = p_to_region_appl_id
and to_region_code = p_to_region_code;
FND_MESSAGE.SET_NAME('AK','AK_RELATION_DELETED');
FND_MESSAGE.SET_NAME('AK','AK_RELATION_NOT_DELETED');
rollback to start_delete_relation;
rollback to start_delete_relation;
end DELETE_REGION_RELATION;
procedure UPDATE_FLOW (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_primary_page_appl_id IN NUMBER := FND_API.G_MISS_NUM,
p_primary_page_code IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute_category IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute1 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute2 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute3 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute4 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute5 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute6 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute7 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute8 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute9 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute10 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute11 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute12 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute13 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute14 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute15 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_description IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_created_by IN NUMBER := FND_API.G_MISS_NUM,
p_creation_date IN DATE := FND_API.G_MISS_DATE,
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
cursor l_get_row_csr is
select *
from AK_FLOWS
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
for update of primary_page_appl_id;
select *
from AK_FLOWS_TL
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and LANGUAGE = lang_parm
for update of name;
l_api_name CONSTANT varchar2(30) := 'Update_Flow';
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
savepoint start_update_flow;
select userenv('LANG') into l_lang
from dual;
p_caller => AK_ON_OBJECTS_PVT.G_UPDATE,
p_pass => p_pass
) then
-- Do not raise an error if it's the first pass
if (p_pass = 1) then
p_copy_redo_flag := TRUE;
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => l_flows_rec.last_updated_by,
p_last_update_date => l_last_update_date,
p_db_last_update_date => l_flows_rec.last_update_date,
p_last_update_login => l_last_update_login,
p_create_or_update => 'UPDATE') then
update AK_FLOWS set
PRIMARY_PAGE_APPL_ID = l_flows_rec.primary_page_appl_id,
PRIMARY_PAGE_CODE = l_flows_rec.primary_page_code,
ATTRIBUTE_CATEGORY = l_flows_rec.attribute_category,
ATTRIBUTE1 = l_flows_rec.attribute1,
ATTRIBUTE2 = l_flows_rec.attribute2,
ATTRIBUTE3 = l_flows_rec.attribute3,
ATTRIBUTE4 = l_flows_rec.attribute4,
ATTRIBUTE5 = l_flows_rec.attribute5,
ATTRIBUTE6 = l_flows_rec.attribute6,
ATTRIBUTE7 = l_flows_rec.attribute7,
ATTRIBUTE8 = l_flows_rec.attribute8,
ATTRIBUTE9 = l_flows_rec.attribute9,
ATTRIBUTE10 = l_flows_rec.attribute10,
ATTRIBUTE11 = l_flows_rec.attribute11,
ATTRIBUTE12 = l_flows_rec.attribute12,
ATTRIBUTE13 = l_flows_rec.attribute13,
ATTRIBUTE14 = l_flows_rec.attribute14,
ATTRIBUTE15 = l_flows_rec.attribute15,
LAST_UPDATE_DATE = l_last_update_date,
LAST_UPDATED_BY = l_last_updated_by,
LAST_UPDATE_LOGIN = l_last_update_login
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code;
FND_MESSAGE.SET_NAME('AK','AK_FLOW_UPDATE_FAILED');
update AK_FLOWS_TL set
NAME = l_flows_tl_rec.name,
DESCRIPTION = l_flows_tl_rec.description,
LAST_UPDATED_BY = l_last_updated_by,
LAST_UPDATE_DATE = l_last_update_date,
LAST_UPDATE_LOGIN = l_last_update_login,
SOURCE_LANG = l_lang
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and l_lang in (LANGUAGE, SOURCE_LANG);
FND_MESSAGE.SET_NAME('AK','AK_FLOW_UPDATE_FAILED');
FND_MESSAGE.SET_NAME('AK','AK_FLOW_UPDATED');
rollback to start_update_flow;
FND_MESSAGE.SET_NAME('AK','AK_FLOW_NOT_UPDATED');
rollback to start_update_flow;
rollback to start_update_flow;
end UPDATE_FLOW;
procedure UPDATE_PAGE (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_page_application_id IN NUMBER,
p_page_code IN VARCHAR2,
p_primary_region_appl_id IN NUMBER := FND_API.G_MISS_NUM,
p_primary_region_code IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute_category IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute1 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute2 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute3 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute4 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute5 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute6 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute7 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute8 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute9 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute10 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute11 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute12 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute13 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute14 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute15 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_description IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_set_primary_page IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_created_by IN NUMBER := FND_API.G_MISS_NUM,
p_creation_date IN DATE := FND_API.G_MISS_DATE,
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
cursor l_get_row_csr is
select *
from AK_FLOW_PAGES
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
for update of primary_region_appl_id;
select *
from AK_FLOW_PAGES_TL
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and LANGUAGE = lang_parm
for update of name;
l_api_name CONSTANT varchar2(30) := 'Update_Page';
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
savepoint start_update_page;
select userenv('LANG') into l_lang
from dual;
p_caller => AK_ON_OBJECTS_PVT.G_UPDATE,
p_pass => p_pass
) then
-- Do not raise an error if it's the first pass
if (p_pass = 1) then
p_copy_redo_flag := TRUE;
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => l_pages_rec.last_updated_by,
p_last_update_date => l_last_update_date,
p_db_last_update_date => l_pages_rec.last_update_date,
p_last_update_login => l_last_update_login,
p_create_or_update => 'UPDATE') then
update AK_FLOW_PAGES set
PRIMARY_REGION_APPL_ID = l_pages_rec.primary_region_appl_id,
PRIMARY_REGION_CODE = l_pages_rec.primary_region_code,
ATTRIBUTE_CATEGORY = l_pages_rec.attribute_category,
ATTRIBUTE1 = l_pages_rec.attribute1,
ATTRIBUTE2 = l_pages_rec.attribute2,
ATTRIBUTE3 = l_pages_rec.attribute3,
ATTRIBUTE4 = l_pages_rec.attribute4,
ATTRIBUTE5 = l_pages_rec.attribute5,
ATTRIBUTE6 = l_pages_rec.attribute6,
ATTRIBUTE7 = l_pages_rec.attribute7,
ATTRIBUTE8 = l_pages_rec.attribute8,
ATTRIBUTE9 = l_pages_rec.attribute9,
ATTRIBUTE10 = l_pages_rec.attribute10,
ATTRIBUTE11 = l_pages_rec.attribute11,
ATTRIBUTE12 = l_pages_rec.attribute12,
ATTRIBUTE13 = l_pages_rec.attribute13,
ATTRIBUTE14 = l_pages_rec.attribute14,
ATTRIBUTE15 = l_pages_rec.attribute15,
LAST_UPDATE_DATE = l_last_update_date,
LAST_UPDATED_BY = l_last_updated_by,
LAST_UPDATE_LOGIN = l_last_update_login
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and PAGE_APPLICATION_ID = p_page_application_id
and PAGE_CODE = p_page_code;
FND_MESSAGE.SET_NAME('AK','AK_FLOW_PAGE_UPDATE_FAILED');
update AK_FLOW_PAGES_TL set
NAME = l_pages_tl_rec.name,
DESCRIPTION = l_pages_tl_rec.description,
LAST_UPDATED_BY = l_last_updated_by,
LAST_UPDATE_DATE = l_last_update_date,
LAST_UPDATE_LOGIN = l_last_update_login,
SOURCE_LANG = l_lang
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and PAGE_APPLICATION_ID = p_page_application_id
and PAGE_CODE = p_page_code
and l_lang in (LANGUAGE, SOURCE_LANG);
FND_MESSAGE.SET_NAME('AK','AK_FLOW_PAGE_UPDATE_FAILED');
AK_FLOW_PVT.UPDATE_FLOW (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_primary_page_appl_id => p_page_application_id,
p_primary_page_code => p_page_code,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_last_update_date => l_last_update_date,
p_last_update_login => l_last_update_login,
p_pass => p_pass,
p_copy_redo_flag => p_copy_redo_flag);
FND_MESSAGE.SET_NAME('AK','AK_FLOW_PAGE_UPDATED');
rollback to start_update_page;
FND_MESSAGE.SET_NAME('AK','AK_FLOW_PAGE_NOT_UPDATED');
rollback to start_update_page;
rollback to start_update_page;
end UPDATE_PAGE;
procedure UPDATE_PAGE_REGION (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_page_application_id IN NUMBER,
p_page_code IN VARCHAR2,
p_region_application_id IN NUMBER,
p_region_code IN VARCHAR2,
p_display_sequence IN NUMBER := FND_API.G_MISS_NUM,
p_region_style IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_num_columns IN NUMBER := FND_API.G_MISS_NUM,
p_icx_custom_call IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_parent_region_application_id IN NUMBER := FND_API.G_MISS_NUM,
p_parent_region_code IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_foreign_key_name IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_set_primary_region IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute_category IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute1 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute2 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute3 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute4 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute5 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute6 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute7 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute8 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute9 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute10 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute11 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute12 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute13 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute14 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute15 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_created_by IN NUMBER := FND_API.G_MISS_NUM,
p_creation_date IN DATE := FND_API.G_MISS_DATE,
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
cursor l_get_row_csr is
select *
from AK_FLOW_PAGE_REGIONS
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and region_application_id = p_region_application_id
and region_code = p_region_code
for update of display_sequence;
select foreign_key_name
from AK_FLOW_REGION_RELATIONS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and from_page_appl_id = p_page_application_id
and from_page_code = p_page_code
and from_region_appl_id = parent_region_appl_id_param
and from_region_code = parent_region_code_param
and to_page_appl_id = p_page_application_id
and to_page_code = p_page_code
and to_region_appl_id = p_region_application_id
and to_region_code = p_region_code;
l_api_name CONSTANT varchar2(30) := 'Update_Page_Region';
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
savepoint start_update_page_region;
select userenv('LANG') into l_lang
from dual;
p_caller => AK_ON_OBJECTS_PVT.G_UPDATE,
p_pass => p_pass
) then
-- Do not raise an error if it's the first pass
if (p_pass = 1) then
p_copy_redo_flag := TRUE;
AK_FLOW_PVT.DELETE_REGION_RELATION (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => p_msg_count,
p_msg_data => p_msg_data,
p_return_status => l_return_status,
p_flow_application_id => l_regions_rec.flow_application_id,
p_flow_code => l_regions_rec.flow_code,
p_foreign_key_name => l_foreign_key_name_old,
p_from_page_appl_id => l_regions_rec.page_application_id,
p_from_page_code => l_regions_rec.page_code,
p_from_region_appl_id => l_regions_rec.parent_region_application_id,
p_from_region_code => l_regions_rec.parent_region_code,
p_to_page_appl_id => l_regions_rec.page_application_id,
p_to_page_code => l_regions_rec.page_code,
p_to_region_appl_id => l_regions_rec.region_application_id,
p_to_region_code => l_regions_rec.region_code,
p_delete_cascade => 'Y'
);
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => l_regions_rec.last_updated_by,
p_last_update_date => l_last_update_date,
p_db_last_update_date => l_regions_rec.last_update_date,
p_last_update_login => l_last_update_login,
p_create_or_update => 'UPDATE') then
--
-- Create a new intrapage relation if the foreign key name is changed,
-- or a different (non-null) parent region is specified.
--
if ( (p_foreign_key_name <> FND_API.G_MISS_CHAR) and
(p_foreign_key_name is not null) and
(p_foreign_key_name <> NVL(l_foreign_key_name_old, l_dummy) ) ) or
(l_parent_region_changed = 'Y') then
--
-- Create region relation only if it doesn't already exists,
-- and a parent region is given.
--
if NOT AK_FLOW_PVT.REGION_RELATION_EXISTS (
p_api_version_number => 1.0,
p_return_status => l_return_status,
p_flow_application_id => l_regions_rec.flow_application_id,
p_flow_code => l_regions_rec.flow_code,
p_foreign_key_name => p_foreign_key_name,
p_from_page_appl_id => l_regions_rec.page_application_id,
p_from_page_code => l_regions_rec.page_code,
p_from_region_appl_id => l_regions_rec.parent_region_application_id,
p_from_region_code => l_regions_rec.parent_region_code,
p_to_page_appl_id => l_regions_rec.page_application_id,
p_to_page_code => l_regions_rec.page_code,
p_to_region_appl_id => l_regions_rec.region_application_id,
p_to_region_code => l_regions_rec.region_code
) and
(l_regions_rec.parent_region_application_id is not null) and
(l_regions_rec.parent_region_code is not null) then
AK_FLOW_PVT.CREATE_REGION_RELATION (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => p_msg_count,
p_msg_data => p_msg_data,
p_return_status => l_return_status,
p_flow_application_id => l_regions_rec.flow_application_id,
p_flow_code => l_regions_rec.flow_code,
p_foreign_key_name => p_foreign_key_name,
p_from_page_appl_id => l_regions_rec.page_application_id,
p_from_page_code => l_regions_rec.page_code,
p_from_region_appl_id => l_regions_rec.parent_region_application_id,
p_from_region_code => l_regions_rec.parent_region_code,
p_to_page_appl_id => l_regions_rec.page_application_id,
p_to_page_code => l_regions_rec.page_code,
p_to_region_appl_id => l_regions_rec.region_application_id,
p_to_region_code => l_regions_rec.region_code,
p_application_id => l_regions_rec.flow_application_id,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_last_update_date => l_last_update_date,
p_last_update_login => l_last_update_login,
p_pass => p_pass,
p_copy_redo_flag => p_copy_redo_flag
);
update AK_FLOW_PAGE_REGIONS set
DISPLAY_SEQUENCE = l_regions_rec.display_sequence,
REGION_STYLE = l_regions_rec.region_style,
NUM_COLUMNS = l_regions_rec.num_columns,
PARENT_REGION_APPLICATION_ID =l_regions_rec.parent_region_application_id,
PARENT_REGION_CODE = l_regions_rec.parent_region_code,
ICX_CUSTOM_CALL = l_regions_rec.icx_custom_call,
ATTRIBUTE_CATEGORY = l_regions_rec.attribute_category,
ATTRIBUTE1 = l_regions_rec.attribute1,
ATTRIBUTE2 = l_regions_rec.attribute2,
ATTRIBUTE3 = l_regions_rec.attribute3,
ATTRIBUTE4 = l_regions_rec.attribute4,
ATTRIBUTE5 = l_regions_rec.attribute5,
ATTRIBUTE6 = l_regions_rec.attribute6,
ATTRIBUTE7 = l_regions_rec.attribute7,
ATTRIBUTE8 = l_regions_rec.attribute8,
ATTRIBUTE9 = l_regions_rec.attribute9,
ATTRIBUTE10 = l_regions_rec.attribute10,
ATTRIBUTE11 = l_regions_rec.attribute11,
ATTRIBUTE12 = l_regions_rec.attribute12,
ATTRIBUTE13 = l_regions_rec.attribute13,
ATTRIBUTE14 = l_regions_rec.attribute14,
ATTRIBUTE15 = l_regions_rec.attribute15,
LAST_UPDATE_DATE = l_last_update_date,
LAST_UPDATED_BY = l_last_updated_by,
LAST_UPDATE_LOGIN = l_last_update_login
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and PAGE_APPLICATION_ID = p_page_application_id
and PAGE_CODE = p_page_code
and REGION_APPLICATION_ID = p_region_application_id
and REGION_CODE = p_region_code;
FND_MESSAGE.SET_NAME('AK','AK_PG_REGION_UPDATE_FAILED');
AK_FLOW_PVT.UPDATE_PAGE (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => l_msg_count,
p_msg_data => l_msg_data,
p_return_status => l_return_status,
p_flow_application_id => p_flow_application_id,
p_flow_code => p_flow_code,
p_page_application_id => p_page_application_id,
p_page_code => p_page_code,
p_primary_region_appl_id => p_region_application_id,
p_primary_region_code => p_region_code,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_last_update_date => l_last_update_date,
p_last_update_login => l_last_update_login,
p_pass => p_pass,
p_copy_redo_flag => p_copy_redo_flag
);
FND_MESSAGE.SET_NAME('AK','AK_PAGE_REGION_UPDATED');
rollback to start_update_page_region;
FND_MESSAGE.SET_NAME('AK','AK_PG_REGION_NOT_UPDATED');
rollback to start_update_page_region;
rollback to start_update_page_region;
end UPDATE_PAGE_REGION;
procedure UPDATE_PAGE_REGION_ITEM (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_page_application_id IN NUMBER,
p_page_code IN VARCHAR2,
p_region_application_id IN NUMBER,
p_region_code IN VARCHAR2,
p_attribute_application_id IN NUMBER,
p_attribute_code IN VARCHAR2,
p_to_page_appl_id IN NUMBER := FND_API.G_MISS_NUM,
p_to_page_code IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_to_url_attribute_appl_id IN NUMBER := FND_API.G_MISS_NUM,
p_to_url_attribute_code IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute_category IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute1 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute2 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute3 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute4 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute5 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute6 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute7 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute8 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute9 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute10 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute11 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute12 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute13 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute14 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute15 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_created_by IN NUMBER := FND_API.G_MISS_NUM,
p_creation_date IN DATE := FND_API.G_MISS_DATE,
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
cursor l_get_row_csr is
select *
from AK_FLOW_PAGE_REGION_ITEMS
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and page_application_id = p_page_application_id
and page_code = p_page_code
and region_application_id = p_region_application_id
and region_code = p_region_code
and attribute_application_id = p_attribute_application_id
and attribute_code = p_attribute_code
for update of to_page_appl_id;
l_api_name CONSTANT varchar2(30) := 'Update_Page_Region_Item';
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
savepoint start_update_item;
select userenv('LANG') into l_lang
from dual;
p_caller => AK_ON_OBJECTS_PVT.G_UPDATE,
p_pass => p_pass
) then
-- Do not raise an error if it's the first pass
if (p_pass = 1) then
p_copy_redo_flag := TRUE;
FND_MESSAGE.SET_NAME('AK','AK_NO_LINK_SELECTED');
FND_MESSAGE.SET_NAME('AK','AK_TWO_LINK_SELECTED');
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => l_items_rec.last_updated_by,
p_last_update_date => l_last_update_date,
p_db_last_update_date => l_items_rec.last_update_date,
p_last_update_login => l_last_update_login,
p_create_or_update => 'UPDATE') then
update AK_FLOW_PAGE_REGION_ITEMS set
TO_PAGE_APPL_ID = l_items_rec.to_page_appl_id,
TO_PAGE_CODE = l_items_rec.to_page_code,
TO_URL_ATTRIBUTE_APPL_ID = l_items_rec.to_url_attribute_appl_id,
TO_URL_ATTRIBUTE_CODE = l_items_rec.to_url_attribute_code,
ATTRIBUTE_CATEGORY = l_items_rec.attribute_category,
ATTRIBUTE1 = l_items_rec.attribute1,
ATTRIBUTE2 = l_items_rec.attribute2,
ATTRIBUTE3 = l_items_rec.attribute3,
ATTRIBUTE4 = l_items_rec.attribute4,
ATTRIBUTE5 = l_items_rec.attribute5,
ATTRIBUTE6 = l_items_rec.attribute6,
ATTRIBUTE7 = l_items_rec.attribute7,
ATTRIBUTE8 = l_items_rec.attribute8,
ATTRIBUTE9 = l_items_rec.attribute9,
ATTRIBUTE10 = l_items_rec.attribute10,
ATTRIBUTE11 = l_items_rec.attribute11,
ATTRIBUTE12 = l_items_rec.attribute12,
ATTRIBUTE13 = l_items_rec.attribute13,
ATTRIBUTE14 = l_items_rec.attribute14,
ATTRIBUTE15 = l_items_rec.attribute15,
LAST_UPDATE_DATE = l_last_update_date,
LAST_UPDATED_BY = l_last_updated_by,
LAST_UPDATE_LOGIN = l_last_update_login
where FLOW_APPLICATION_ID = p_flow_application_id
and FLOW_CODE = p_flow_code
and PAGE_APPLICATION_ID = p_page_application_id
and PAGE_CODE = p_page_code
and REGION_APPLICATION_ID = p_region_application_id
and REGION_CODE = p_region_code
and ATTRIBUTE_APPLICATION_ID = p_attribute_application_id
and ATTRIBUTE_CODE = p_attribute_code;
FND_MESSAGE.SET_NAME('AK','AK_PG_REG_ITEM_UPDATE_FAILED');
FND_MESSAGE.SET_NAME('AK','AK_PG_REG_ITEM_UPDATED');
rollback to start_update_item;
FND_MESSAGE.SET_NAME('AK','AK_PG_REG_ITEM_NOT_UPDATED');
rollback to start_update_item;
rollback to start_update_item;
end UPDATE_PAGE_REGION_ITEM;
procedure UPDATE_REGION_RELATION (
p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
p_api_version_number IN NUMBER,
p_init_msg_tbl IN BOOLEAN := FALSE,
p_msg_count OUT NOCOPY NUMBER,
p_msg_data OUT NOCOPY VARCHAR2,
p_return_status OUT NOCOPY VARCHAR2,
p_flow_application_id IN NUMBER,
p_flow_code IN VARCHAR2,
p_foreign_key_name IN VARCHAR2,
p_from_page_appl_id IN NUMBER,
p_from_page_code IN VARCHAR2,
p_from_region_appl_id IN NUMBER,
p_from_region_code IN VARCHAR2,
p_to_page_appl_id IN NUMBER,
p_to_page_code IN VARCHAR2,
p_to_region_appl_id IN NUMBER,
p_to_region_code IN VARCHAR2,
p_application_id IN NUMBER := FND_API.G_MISS_NUM,
p_attribute_category IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute1 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute2 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute3 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute4 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute5 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute6 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute7 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute8 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute9 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute10 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute11 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute12 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute13 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute14 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_attribute15 IN VARCHAR2 := FND_API.G_MISS_CHAR,
p_created_by IN NUMBER := FND_API.G_MISS_NUM,
p_creation_date IN DATE := FND_API.G_MISS_DATE,
p_last_updated_by IN NUMBER := FND_API.G_MISS_NUM,
p_last_update_date IN DATE := FND_API.G_MISS_DATE,
p_last_update_login IN NUMBER := FND_API.G_MISS_NUM,
p_loader_timestamp IN DATE := FND_API.G_MISS_DATE,
p_pass IN NUMBER,
p_copy_redo_flag IN OUT NOCOPY BOOLEAN
) is
cursor l_get_row_csr is
select *
from AK_FLOW_REGION_RELATIONS
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and foreign_key_name = p_foreign_key_name
and from_page_appl_id = p_from_page_appl_id
and from_page_code = p_from_page_code
and from_region_appl_id = p_from_region_appl_id
and from_region_code = p_from_region_code
and to_page_appl_id = p_to_page_appl_id
and to_page_code = p_to_page_code
and to_region_appl_id = p_to_region_appl_id
and to_region_code = p_to_region_code
for update of application_id;
l_api_name CONSTANT varchar2(30) := 'Update_Region_Relation';
l_last_update_date date;
l_last_update_login number;
l_last_updated_by number;
savepoint start_update_relation;
select userenv('LANG') into l_lang
from dual;
p_caller => AK_ON_OBJECTS_PVT.G_UPDATE,
p_pass => p_pass
) then
-- Do not raise an error if it's the first pass
if (p_pass = 1) then
p_copy_redo_flag := TRUE;
if (p_last_updated_by <> FND_API.G_MISS_NUM) then
l_last_updated_by := p_last_updated_by;
if (p_last_update_date <> FND_API.G_MISS_DATE) then
l_last_update_date := p_last_update_date;
if (p_last_update_login <> FND_API.G_MISS_NUM) then
l_last_update_login := p_last_update_login;
if AK_ON_OBJECTS_PVT.IS_UPDATEABLE(
p_loader_timestamp => p_loader_timestamp,
p_created_by => l_created_by,
p_creation_date => l_creation_date,
p_last_updated_by => l_last_updated_by,
p_db_last_updated_by => l_relations_rec.last_updated_by,
p_last_update_date => l_last_update_date,
p_db_last_update_date => l_relations_rec.last_update_date,
p_last_update_login => l_last_update_login,
p_create_or_update => 'UPDATE') then
update AK_FLOW_REGION_RELATIONS set
APPLICATION_ID = l_relations_rec.application_id,
ATTRIBUTE_CATEGORY = l_relations_rec.attribute_category,
ATTRIBUTE1 = l_relations_rec.attribute1,
ATTRIBUTE2 = l_relations_rec.attribute2,
ATTRIBUTE3 = l_relations_rec.attribute3,
ATTRIBUTE4 = l_relations_rec.attribute4,
ATTRIBUTE5 = l_relations_rec.attribute5,
ATTRIBUTE6 = l_relations_rec.attribute6,
ATTRIBUTE7 = l_relations_rec.attribute7,
ATTRIBUTE8 = l_relations_rec.attribute8,
ATTRIBUTE9 = l_relations_rec.attribute9,
ATTRIBUTE10 = l_relations_rec.attribute10,
ATTRIBUTE11 = l_relations_rec.attribute11,
ATTRIBUTE12 = l_relations_rec.attribute12,
ATTRIBUTE13 = l_relations_rec.attribute13,
ATTRIBUTE14 = l_relations_rec.attribute14,
ATTRIBUTE15 = l_relations_rec.attribute15,
LAST_UPDATE_DATE = l_last_update_date,
LAST_UPDATED_BY = l_last_updated_by,
LAST_UPDATE_LOGIN = l_last_update_login
where flow_application_id = p_flow_application_id
and flow_code = p_flow_code
and foreign_key_name = p_foreign_key_name
and from_page_appl_id = p_from_page_appl_id
and from_page_code = p_from_page_code
and from_region_appl_id = p_from_region_appl_id
and from_region_code = p_from_region_code
and to_page_appl_id = p_to_page_appl_id
and to_page_code = p_to_page_code
and to_region_appl_id = p_to_region_appl_id
and to_region_code = p_to_region_code;
FND_MESSAGE.SET_NAME('AK','AK_RELATION_UPDATED');
rollback to start_update_relation;
FND_MESSAGE.SET_NAME('AK','AK_RELATION_NOT_UPDATED');
rollback to start_update_relation;
rollback to start_update_relation;
end UPDATE_REGION_RELATION;
select *
from ak_flow_page_regions
where flow_code = flow_code_param
and flow_application_id = flow_application_id_param
and page_code = page_code_param
and page_application_id = page_application_id_param
and display_sequence = display_sequence_param;
AK_FLOW_PVT.UPDATE_PAGE_REGION (
p_validation_level => p_validation_level,
p_api_version_number => 1.0,
p_msg_count => p_msg_count,
p_msg_data => p_msg_data,
p_return_status => l_return_status,
p_flow_application_id => l_orig_fpr_rec.flow_application_id,
p_flow_code => l_orig_fpr_rec.flow_code,
p_page_application_id => l_orig_fpr_rec.page_application_id,
p_page_code => l_orig_fpr_rec.page_code,
p_region_application_id => l_orig_fpr_rec.region_application_id,
p_region_code => l_orig_fpr_rec.region_code,
p_display_sequence => l_new_display_sequence,
p_region_style => l_orig_fpr_rec.region_style,
p_num_columns => l_orig_fpr_rec.num_columns,
p_parent_region_application_id => l_orig_fpr_rec.parent_region_application_id,
p_parent_region_code => l_orig_fpr_rec.parent_region_code,
p_icx_custom_call => l_orig_fpr_rec.icx_custom_call,
p_pass => p_pass,
p_copy_redo_flag => p_copy_redo_flag);