The following lines contain the word 'select', 'insert', 'update' or 'delete':
select cia.inventory_item_id product_id,
jtb.template_id,
cdl.inventory_item_id,
inv_convert.inv_um_convert(
cdl.inventory_item_id,
null,
cdl.quantity,
cdl.uom_code,
msib.primary_uom_code,
null,
null) quantity,
msib.primary_uom_code,
cdl.item_revision,
cdh.statistics_updated,
cdh.debrief_header_id,
cdl.debrief_line_id
from csf_debrief_lines cdl,
csf_debrief_headers cdh,
jtf_task_assignments jta,
jtf_tasks_b jtb,
mtl_system_items_b msib,
cs_incidents_all cia
where cdl.statistics_updated is null
and cdl.spare_update_status = 'SUCCEEDED'
and cdl.issuing_sub_inventory_code is not null
and cdl.inventory_item_id = msib.inventory_item_id
and cdl.issuing_inventory_org_id = msib.organization_id
and cdh.debrief_header_id = cdl.debrief_header_id
and jta.task_assignment_id = cdh.task_assignment_id
and jtb.task_id = jta.task_id
and jtb.template_id is not null
and jtb.source_object_type_code = 'SR'
and cia.incident_id = jtb.source_object_id
and cia.inventory_item_id is not null
order by cdh.debrief_header_id;
select product_task_id,
actual_times_used
from csp_product_tasks cpt
where cpt.task_template_id = p_template_id
and cpt.product_id = p_product_id;
select cdl.inventory_item_id
from csf_debrief_lines cdl
where cdl.debrief_header_id = p_debrief_header_id
and cdl.inventory_item_id = p_inventory_item_id
and nvl(cdl.item_revision,0) = nvl(p_revision,0)
and cdl.statistics_updated = 'Y';
select ctp.task_part_id,
ctp.quantity_used,
ctp.actual_times_used,
ctp.rollup_quantity_used,
ctp.rollup_times_used
from csp_task_parts ctp
where ctp.product_task_id = p_product_task_id
and ctp.inventory_item_id = p_inventory_item_id
and nvl(ctp.revision,'-') = nvl(p_revision,'-') ;
cdl.statistics_updated is null then
l_debrief_header_id := cdl.debrief_header_id;
update_product_task(
p_product_task_id => l_product_task_id,
p_actual_times_used => l_actual_times_used);
update csf_debrief_headers
set statistics_updated = 'Y',
last_updated_by = fnd_global.user_id,
last_update_date = sysdate
where debrief_header_id = cdl.debrief_header_id;
l_sql_string := 'select cdl.inventory_item_id
from csf_debrief_lines cdl
where cdl.debrief_header_id = cdl.debrief_header_id
and cdl.inventory_item_id IN ' || l_replaced_items_list ||
'or cdl.inventory_item_id = cdl.inventory_item_id
and cdl.statistics_updated = ' || '''' || 'Y' || '''';
update_task_part(
p_task_part_id => l_task_part_id,
p_quantity_used => l_quantity_used + cdl.quantity,
p_actual_times_used => l_actual_times_used,
p_rollup_quantity_used => l_rollup_quantity_used + cdl.quantity,
p_rollup_times_used => l_rollup_times_used + l_rollup_increment,
p_substitute_item => fnd_api.g_miss_num);
update csf_debrief_lines
set statistics_updated = 'Y',
last_updated_by = fnd_global.user_id,
last_update_date = sysdate
where debrief_line_id = cdl.debrief_line_id;
update_task_percentage;
select ctp.task_part_id,
ctp.inventory_item_id,
ctp.actual_times_used,
ctp.rollup_quantity_used,
ctp.rollup_times_used
from csp_task_parts ctp,
mtl_related_items_view mriv
where mriv.related_item_id = ctp.inventory_item_id
and mriv.organization_id = l_organization_id
and mriv.inventory_item_id = p_inventory_item_id
and mriv.relationship_type_id = 2
and ctp.product_task_id = p_product_task_id
and ctp.inventory_item_id <> p_inventory_item_id
and ctp.rollup_quantity_used is not null
and sysdate between nvl(ctp.start_date,sysdate-1)
and nvl(ctp.end_date,sysdate+1)
order by ctp.actual_times_used desc;
select DEBRIEF_LINE_ID
from csf_debrief_lines cdl
where INVENTORY_ITEM_ID = l_inventory_item_id
and debrief_header_id = p_debrief_header_id
and STATISTICS_UPDATED = 'Y' ;
if l_actual_times_used >= p_actual_times_used then --Update rollup of substitute
open debrief_line;
update_task_part(
p_task_part_id => l_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => nvl(l_rollup_quantity_used,0) + p_rollup_quantity_used,
p_rollup_times_used => nvl(l_rollup_times_used,0) + p_rollup_times_used, --new
p_substitute_item => fnd_api.g_miss_num);
update_task_part(
p_task_part_id => l_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => nvl(l_rollup_quantity_used,0) + p_rollup_quantity_used,
p_rollup_times_used => fnd_api.g_miss_num,
p_substitute_item => fnd_api.g_miss_num);
update_task_part(
p_task_part_id => p_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => null,
p_rollup_times_used => null,
p_substitute_item => l_inventory_item_id);
update_task_part(
p_task_part_id => l_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => nvl(l_rollup_quantity_used,0) + p_rollup_quantity_used,
p_rollup_times_used => nvl(l_rollup_times_used,0) + p_rollup_times_used, --new
p_substitute_item => fnd_api.g_miss_num);
update_task_part(
p_task_part_id => l_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => nvl(l_rollup_quantity_used,0) + p_rollup_quantity_used,
p_rollup_times_used => fnd_api.g_miss_num,
p_substitute_item => fnd_api.g_miss_num);
update_task_part(
p_task_part_id => p_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => null,
p_rollup_times_used => null,
p_substitute_item => l_inventory_item_id);
select ctp.task_part_id,
ctp.rollup_quantity_used,
ctp.rollup_times_used
from csp_task_parts ctp
where ctp.product_task_id = p_product_task_id
and ctp.inventory_item_id = l_supersede_item
and ctp.rollup_quantity_used is not null
and sysdate between nvl(ctp.start_date,sysdate-1)
and nvl(ctp.end_date,sysdate+1)
order by ctp.actual_times_used desc;
select primary_uom_code
from mtl_system_items_b
where inventory_item_id = l_supersede_item;
l_sql_string := 'select DEBRIEF_LINE_ID
from csf_debrief_lines cdl
where INVENTORY_ITEM_ID IN ' || l_replaced_items_list ||
'and debrief_header_id = ' || p_debrief_header_id ||
'and STATISTICS_UPDATED =' || '''' || 'Y' || '''' ;
update_task_part(
p_task_part_id => l_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => nvl(l_rollup_quantity_used,0) + p_rollup_quantity_used,
p_rollup_times_used => fnd_api.g_miss_num,
p_substitute_item => fnd_api.g_miss_num);
update_task_part(
p_task_part_id => l_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => nvl(l_rollup_quantity_used,0) + p_rollup_quantity_used,
p_rollup_times_used => nvl(l_rollup_times_used,0) + p_rollup_times_used, --new
p_substitute_item => fnd_api.g_miss_num);
update_task_part(
p_task_part_id => p_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => null,
p_rollup_times_used => null,
p_substitute_item => l_supersede_item);
update_task_part(
p_task_part_id => l_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => p_rollup_quantity_used,
p_rollup_times_used => p_rollup_times_used,
p_substitute_item => fnd_api.g_miss_num);
update_task_part(
p_task_part_id => p_task_part_id,
p_quantity_used => fnd_api.g_miss_num,
p_actual_times_used => fnd_api.g_miss_num,
p_rollup_quantity_used => null,
p_rollup_times_used => null,
p_substitute_item => l_supersede_item);
procedure update_task_percentage is
cursor times_used is
select product_id,
sum(cpt.actual_times_used) sum_times_used
from csp_product_tasks cpt
group by cpt.product_id;
update csp_product_tasks
set task_percentage = actual_times_used / tu.sum_times_used * 100
where product_id = tu.product_id;
csp_product_tasks_pkg.insert_row(
px_product_task_id => x_product_task_id,
p_product_id => p_product_id,
p_task_template_id => p_template_id,
p_auto_manual => 'A',
p_actual_times_used => 1,
p_task_percentage => null,
p_attribute_category => null,
p_attribute1 => null,
p_attribute2 => null,
p_attribute3 => null,
p_attribute4 => null,
p_attribute5 => null,
p_attribute6 => null,
p_attribute7 => null,
p_attribute8 => null,
p_attribute9 => null,
p_attribute10 => null,
p_attribute11 => null,
p_attribute12 => null,
p_attribute13 => null,
p_attribute14 => null,
p_attribute15 => null,
p_created_by => fnd_global.user_id,
p_creation_date => sysdate,
p_last_updated_by => fnd_global.user_id,
p_last_update_date => sysdate,
p_last_update_login => null);
PROCEDURE Update_product_task(
p_product_task_id in number,
p_actual_times_used in number) is
BEGIN
CSP_PRODUCT_TASKS_PKG.Update_Row(
p_PRODUCT_TASK_ID => p_product_task_id,
p_PRODUCT_ID => fnd_api.g_miss_num,
p_TASK_TEMPLATE_ID => fnd_api.g_miss_num,
p_AUTO_MANUAL => 'A',
p_ACTUAL_TIMES_USED => p_actual_times_used,
p_TASK_PERCENTAGE => fnd_api.g_miss_num,
p_ATTRIBUTE_CATEGORY => fnd_api.g_miss_char,
p_ATTRIBUTE1 => fnd_api.g_miss_char,
p_ATTRIBUTE2 => fnd_api.g_miss_char,
p_ATTRIBUTE3 => fnd_api.g_miss_char,
p_ATTRIBUTE4 => fnd_api.g_miss_char,
p_ATTRIBUTE5 => fnd_api.g_miss_char,
p_ATTRIBUTE6 => fnd_api.g_miss_char,
p_ATTRIBUTE7 => fnd_api.g_miss_char,
p_ATTRIBUTE8 => fnd_api.g_miss_char,
p_ATTRIBUTE9 => fnd_api.g_miss_char,
p_ATTRIBUTE10 => fnd_api.g_miss_char,
p_ATTRIBUTE11 => fnd_api.g_miss_char,
p_ATTRIBUTE12 => fnd_api.g_miss_char,
p_ATTRIBUTE13 => fnd_api.g_miss_char,
p_ATTRIBUTE14 => fnd_api.g_miss_char,
p_ATTRIBUTE15 => fnd_api.g_miss_char,
p_CREATED_BY => FND_API.G_MISS_NUM,
p_CREATION_DATE => FND_API.G_MISS_DATE,
p_LAST_UPDATED_BY => FND_GLOBAL.USER_ID,
p_LAST_UPDATE_DATE => SYSDATE,
p_LAST_UPDATE_LOGIN => fnd_api.g_miss_num);
End Update_product_task;
csp_task_parts_pkg.insert_row(
px_task_part_id => l_task_part_id,
p_product_task_id => p_product_task_id,
p_inventory_item_id => p_inventory_item_id,
p_manual_quantity => null,
p_manual_percentage => null,
p_quantity_used => p_quantity,
p_actual_times_used => p_actual_times_used,
p_created_by => fnd_global.user_id,
p_creation_date => sysdate,
p_last_updated_by => fnd_global.user_id,
p_last_update_date => sysdate,
p_last_update_login => null,
p_attribute_category => null,
p_attribute1 => null,
p_attribute2 => null,
p_attribute3 => null,
p_attribute4 => null,
p_attribute5 => null,
p_attribute6 => null,
p_attribute7 => null,
p_attribute8 => null,
p_attribute9 => null,
p_attribute10 => null,
p_attribute11 => null,
p_attribute12 => null,
p_attribute13 => null,
p_attribute14 => null,
p_attribute15 => null,
p_primary_uom_code => p_uom_code,
p_revision => p_revision,
p_start_date => null,
p_end_date => null,
p_rollup_quantity_used => p_quantity,
p_rollup_times_used => 1,
p_substitute_item => null);
PROCEDURE update_task_part(
p_task_part_id number,
p_quantity_used number,
p_actual_times_used number,
p_rollup_quantity_used number,
p_rollup_times_used number,
p_substitute_item number) is
BEGIN
csp_task_parts_pkg.Update_Row(
p_TASK_PART_ID => p_task_part_id,
p_PRODUCT_TASK_ID => fnd_api.g_miss_num,
p_INVENTORY_ITEM_ID => fnd_api.g_miss_num,
p_MANUAL_QUANTITY => fnd_api.g_miss_num,
p_MANUAL_PERCENTAGE => fnd_api.g_miss_num,
p_QUANTITY_USED => p_quantity_used,
p_ACTUAL_TIMES_USED => p_actual_times_used,
p_CREATED_BY => fnd_api.g_miss_num,
p_CREATION_DATE => fnd_api.g_miss_date,
p_LAST_UPDATED_BY => fnd_global.user_id,
p_LAST_UPDATE_DATE => sysdate,
p_LAST_UPDATE_LOGIN => fnd_api.g_miss_num,
p_ATTRIBUTE_CATEGORY => fnd_api.g_miss_char,
p_ATTRIBUTE1 => fnd_api.g_miss_char,
p_ATTRIBUTE2 => fnd_api.g_miss_char,
p_ATTRIBUTE3 => fnd_api.g_miss_char,
p_ATTRIBUTE4 => fnd_api.g_miss_char,
p_ATTRIBUTE5 => fnd_api.g_miss_char,
p_ATTRIBUTE6 => fnd_api.g_miss_char,
p_ATTRIBUTE7 => fnd_api.g_miss_char,
p_ATTRIBUTE8 => fnd_api.g_miss_char,
p_ATTRIBUTE9 => fnd_api.g_miss_char,
p_ATTRIBUTE10 => fnd_api.g_miss_char,
p_ATTRIBUTE11 => fnd_api.g_miss_char,
p_ATTRIBUTE12 => fnd_api.g_miss_char,
p_ATTRIBUTE13 => fnd_api.g_miss_char,
p_ATTRIBUTE14 => fnd_api.g_miss_char,
p_ATTRIBUTE15 => fnd_api.g_miss_char,
p_PRIMARY_UOM_CODE => fnd_api.g_miss_char,
p_REVISION => fnd_api.g_miss_char,
p_START_DATE => fnd_api.g_miss_date,
p_END_DATE => fnd_api.g_miss_date,
P_ROLLUP_QUANTITY_USED => p_rollup_quantity_used,
P_ROLLUP_TIMES_USED => p_rollup_times_used,
P_SUBSTITUTE_ITEM => p_substitute_item);
End Update_task_part;