The following lines contain the word 'select', 'insert', 'update' or 'delete':
procedure UPDATE_ITEM_MAP (
P_TEMPLATE_ID in NUMBER,
P_AREA_CODE in VARCHAR2,
P_NEW_PARENT_AREA_CODE in VARCHAR2,
P_SECONDARY_APP_ID in NUMBER default null,
P_DISPLAY_LEVEL in VARCHAR2 default null,
P_ITEM_ID in NUMBER default null,
P_DISPLAY_SEQUENCE in NUMBER default null,
P_DML_OPERATION IN VARCHAR2,
X_STATUS out nocopy varchar2
) is
l_user_id number := -1;
IF (p_dml_operation = 'UPDATE') THEN
update AR_BPA_AREA_ITEMS
set DISPLAY_SEQUENCE = P_DISPLAY_SEQUENCE,
PARENT_AREA_CODE = P_NEW_PARENT_AREA_CODE,
LAST_UPDATE_DATE = sysdate,
LAST_UPDATED_BY = l_user_id,
LAST_UPDATE_LOGIN = l_user_id
where TEMPLATE_ID = P_TEMPLATE_ID
and PARENT_AREA_CODE = P_AREA_CODE
AND ITEM_ID = P_ITEM_ID;
insert into AR_BPA_AREA_ITEMS (
AREA_ITEM_ID,
TEMPLATE_ID,
PARENT_AREA_CODE,
SECONDARY_APP_ID,
DISPLAY_LEVEL ,
item_id,
display_sequence,
data_source_id,
flexfield_item_flag,
CREATED_BY,
CREATION_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATE_LOGIN
) SELECT
ar_bpa_area_items_s.nextval,
P_TEMPLATE_ID,
P_AREA_CODE,
P_SECONDARY_APP_ID,
P_DISPLAY_LEVEL ,
P_ITEM_ID,
P_DISPLAY_SEQUENCE,
item.data_source_id,
item.flexfield_item_flag,
l_user_id,
sysdate,
l_user_id,
sysdate,
l_user_id
from ar_bpa_items_b item
where item.item_id = p_item_id;
ELSIF (p_dml_operation = 'DELETE') THEN
DELETE FROM AR_BPA_AREA_ITEMS
where TEMPLATE_ID = P_TEMPLATE_ID
and PARENT_AREA_CODE = P_AREA_CODE
AND ITEM_ID = decode(P_ITEM_ID,0,item_id,P_ITEM_ID);
end UPDATE_ITEM_MAP;
procedure UPDATE_ITEM_MAP_ARRAY (
P_TEMPLATE_ID in NUMBER,
P_AREA_CODE in VARCHAR2,
P_NEW_PARENT_AREA_CODE in VARCHAR2,
P_SECONDARY_APP_ID in NUMBER default null,
P_DISPLAY_LEVEL in VARCHAR2 default null,
P_ITEM_ID_LIST in item_varray,
P_DISPLAY_SEQUENCE in NUMBER default null,
P_DML_OPERATION IN VARCHAR2,
X_STATUS out nocopy varchar2
) is
l_user_id number := -1;
SELECT
ITEM_ID
FROM ar_bpa_area_items
where template_id = P_TEMPLATE_ID
AND parent_area_code = P_AREA_CODE;
ar_bpa_utils_pkg.debug ('ar_bpa_shuttle_pkg.update_item_map_array(+)' );
IF (p_dml_operation = 'UPDATE') THEN
/* Delete items that have been removed in template mgmt */
FOR crec IN c_existing_items
LOOP
found := false;
DELETE FROM AR_BPA_AREA_ITEMS
where TEMPLATE_ID = P_TEMPLATE_ID
and PARENT_AREA_CODE = P_AREA_CODE
AND ITEM_ID = crec.item_id;
update AR_BPA_AREA_ITEMS
set DISPLAY_SEQUENCE = i,
PARENT_AREA_CODE = P_NEW_PARENT_AREA_CODE,
LAST_UPDATE_DATE = sysdate,
LAST_UPDATED_BY = l_user_id,
LAST_UPDATE_LOGIN = l_user_id
where TEMPLATE_ID = P_TEMPLATE_ID
and PARENT_AREA_CODE = P_AREA_CODE
AND ITEM_ID = to_number(p_item_id_list(i));
insert into AR_BPA_AREA_ITEMS (
AREA_ITEM_ID,
TEMPLATE_ID,
PARENT_AREA_CODE,
SECONDARY_APP_ID,
DISPLAY_LEVEL ,
item_id,
display_sequence,
data_source_id,
flexfield_item_flag,
CREATED_BY,
CREATION_DATE,
LAST_UPDATED_BY,
LAST_UPDATE_DATE,
LAST_UPDATE_LOGIN
) SELECT
ar_bpa_area_items_s.nextval,
P_TEMPLATE_ID,
P_AREA_CODE,
P_SECONDARY_APP_ID,
P_DISPLAY_LEVEL ,
to_number(p_item_id_list(i)),
i,
item.data_source_id,
item.flexfield_item_flag,
l_user_id,
sysdate,
l_user_id,
sysdate,
l_user_id
from ar_bpa_items_b item
where item.item_id = to_number(p_item_id_list(i));
ar_bpa_utils_pkg.debug ('i= '||to_char(i)||', item id = '||p_item_id_list(i)||' Inserted.');
ar_bpa_utils_pkg.debug ('i= '||to_char(i)||', item id = '||p_item_id_list(i)||' Updated.');
IF (p_dml_operation = 'DELETE') THEN
FOR i IN 1..p_item_id_list.count
LOOP
DELETE FROM AR_BPA_AREA_ITEMS
where TEMPLATE_ID = P_TEMPLATE_ID
and PARENT_AREA_CODE = P_AREA_CODE
AND ITEM_ID = to_number(p_item_id_list(i));
ar_bpa_utils_pkg.debug ('i= '||to_char(i)||', item id = '||p_item_id_list(i)||' Deleted.');
END IF; -- delete
ar_bpa_utils_pkg.debug ('update_item_map_array EXCEPTION: sqlerrm=['||sqlerrm||']');
end UPDATE_ITEM_MAP_ARRAY;