52: and wor.wip_entity_id = we.wip_entity_id
53: and wor.organization_id = we.organization_id
54: and nvl(wor.repetitive_schedule_id, -1) = nvl(p_rep_sched_id, -1)
55: and wor.operation_seq_num = p_op_seq_num
56: and wor.autocharge_type = WIP_CONSTANTS.PO_MOVE
57: and br.resource_id = wor.resource_id
58: and br.organization_id = wor.organization_id
59: and msik2.inventory_item_id = br.purchase_item_id
60: and msik2.organization_id = br.organization_id;
78: , itemkey => p_itemkey
79: , aname => 'ORGANIZATION_ID'
80: , avalue => p_organization_id);
81:
82: IF l_wip_entity_type = WIP_CONSTANTS.DISCRETE or
83: l_wip_entity_type = WIP_CONSTANTS.CLOSED_DISC THEN
84:
85: wf_engine.SetItemAttrText( itemtype => p_itemtype
86: , itemkey => p_itemkey
79: , aname => 'ORGANIZATION_ID'
80: , avalue => p_organization_id);
81:
82: IF l_wip_entity_type = WIP_CONSTANTS.DISCRETE or
83: l_wip_entity_type = WIP_CONSTANTS.CLOSED_DISC THEN
84:
85: wf_engine.SetItemAttrText( itemtype => p_itemtype
86: , itemkey => p_itemkey
87: , aname => 'JOB_NAME'
85: wf_engine.SetItemAttrText( itemtype => p_itemtype
86: , itemkey => p_itemkey
87: , aname => 'JOB_NAME'
88: , avalue => l_wip_entity_name);
89: elsif l_wip_entity_type = WIP_CONSTANTS.REPETITIVE THEN
90: select wl.line_code
91: into l_line_name
92: from wip_lines wl
93: , wip_repetitive_schedules wrs
536: ph.approved_flag approved_flag,
537: 0 release_num,
538: decode(msi.outside_operation_uom_type,
539: 'RESOURCE', decode(wor.basis_type,
540: WIP_CONSTANTS.PER_ITEM,
541: round(pd.quantity_ordered /wor.usage_rate_or_amount,
542: WIP_CONSTANTS.INV_MAX_PRECISION),
543: round(wo.scheduled_quantity,
544: WIP_CONSTANTS.INV_MAX_PRECISION)),
538: decode(msi.outside_operation_uom_type,
539: 'RESOURCE', decode(wor.basis_type,
540: WIP_CONSTANTS.PER_ITEM,
541: round(pd.quantity_ordered /wor.usage_rate_or_amount,
542: WIP_CONSTANTS.INV_MAX_PRECISION),
543: round(wo.scheduled_quantity,
544: WIP_CONSTANTS.INV_MAX_PRECISION)),
545: 'ASSEMBLY', decode(wor.basis_type,
546: WIP_CONSTANTS.PER_ITEM,
540: WIP_CONSTANTS.PER_ITEM,
541: round(pd.quantity_ordered /wor.usage_rate_or_amount,
542: WIP_CONSTANTS.INV_MAX_PRECISION),
543: round(wo.scheduled_quantity,
544: WIP_CONSTANTS.INV_MAX_PRECISION)),
545: 'ASSEMBLY', decode(wor.basis_type,
546: WIP_CONSTANTS.PER_ITEM,
547: round(pd.quantity_ordered,
548: WIP_CONSTANTS.INV_MAX_PRECISION),
542: WIP_CONSTANTS.INV_MAX_PRECISION),
543: round(wo.scheduled_quantity,
544: WIP_CONSTANTS.INV_MAX_PRECISION)),
545: 'ASSEMBLY', decode(wor.basis_type,
546: WIP_CONSTANTS.PER_ITEM,
547: round(pd.quantity_ordered,
548: WIP_CONSTANTS.INV_MAX_PRECISION),
549: round(wo.scheduled_quantity,
550: WIP_CONSTANTS.INV_MAX_PRECISION))) required_assy_qty
544: WIP_CONSTANTS.INV_MAX_PRECISION)),
545: 'ASSEMBLY', decode(wor.basis_type,
546: WIP_CONSTANTS.PER_ITEM,
547: round(pd.quantity_ordered,
548: WIP_CONSTANTS.INV_MAX_PRECISION),
549: round(wo.scheduled_quantity,
550: WIP_CONSTANTS.INV_MAX_PRECISION))) required_assy_qty
551: from po_headers_all ph,
552: po_lines_all pl,
546: WIP_CONSTANTS.PER_ITEM,
547: round(pd.quantity_ordered,
548: WIP_CONSTANTS.INV_MAX_PRECISION),
549: round(wo.scheduled_quantity,
550: WIP_CONSTANTS.INV_MAX_PRECISION))) required_assy_qty
551: from po_headers_all ph,
552: po_lines_all pl,
553: po_distributions_all pd,
554: po_vendors pv,
583: and pd.wip_resource_seq_num = wor.resource_seq_num
584: and pd.destination_organization_id = wor.organization_id
585: and (pd.wip_repetitive_schedule_id is null or
586: pd.wip_repetitive_schedule_id =wor.repetitive_schedule_id)
587: and wor.autocharge_type = WIP_CONSTANTS.PO_MOVE
588: union all
589: select ph.segment1||'-'||pr.RELEASE_NUM po_num,
590: ph.po_header_id po_header_id,
591: pd.po_distribution_id po_distribution_id,
597: pr.approved_flag approved_flag,
598: pr.release_num,
599: decode(msi.outside_operation_uom_type,
600: 'RESOURCE', decode(wor.basis_type,
601: WIP_CONSTANTS.PER_ITEM,
602: round(pd.quantity_ordered /wor.usage_rate_or_amount,
603: WIP_CONSTANTS.INV_MAX_PRECISION),
604: round(wo.scheduled_quantity,
605: WIP_CONSTANTS.INV_MAX_PRECISION)),
599: decode(msi.outside_operation_uom_type,
600: 'RESOURCE', decode(wor.basis_type,
601: WIP_CONSTANTS.PER_ITEM,
602: round(pd.quantity_ordered /wor.usage_rate_or_amount,
603: WIP_CONSTANTS.INV_MAX_PRECISION),
604: round(wo.scheduled_quantity,
605: WIP_CONSTANTS.INV_MAX_PRECISION)),
606: 'ASSEMBLY', decode(wor.basis_type,
607: WIP_CONSTANTS.PER_ITEM,
601: WIP_CONSTANTS.PER_ITEM,
602: round(pd.quantity_ordered /wor.usage_rate_or_amount,
603: WIP_CONSTANTS.INV_MAX_PRECISION),
604: round(wo.scheduled_quantity,
605: WIP_CONSTANTS.INV_MAX_PRECISION)),
606: 'ASSEMBLY', decode(wor.basis_type,
607: WIP_CONSTANTS.PER_ITEM,
608: round(pd.quantity_ordered,
609: WIP_CONSTANTS.INV_MAX_PRECISION),
603: WIP_CONSTANTS.INV_MAX_PRECISION),
604: round(wo.scheduled_quantity,
605: WIP_CONSTANTS.INV_MAX_PRECISION)),
606: 'ASSEMBLY', decode(wor.basis_type,
607: WIP_CONSTANTS.PER_ITEM,
608: round(pd.quantity_ordered,
609: WIP_CONSTANTS.INV_MAX_PRECISION),
610: round(wo.scheduled_quantity,
611: WIP_CONSTANTS.INV_MAX_PRECISION))) required_assy_qty
605: WIP_CONSTANTS.INV_MAX_PRECISION)),
606: 'ASSEMBLY', decode(wor.basis_type,
607: WIP_CONSTANTS.PER_ITEM,
608: round(pd.quantity_ordered,
609: WIP_CONSTANTS.INV_MAX_PRECISION),
610: round(wo.scheduled_quantity,
611: WIP_CONSTANTS.INV_MAX_PRECISION))) required_assy_qty
612: from po_releases_all pr,
613: po_headers_all ph,
607: WIP_CONSTANTS.PER_ITEM,
608: round(pd.quantity_ordered,
609: WIP_CONSTANTS.INV_MAX_PRECISION),
610: round(wo.scheduled_quantity,
611: WIP_CONSTANTS.INV_MAX_PRECISION))) required_assy_qty
612: from po_releases_all pr,
613: po_headers_all ph,
614: po_lines_all pl,
615: po_line_locations_all ps,
648: and pd.wip_resource_seq_num = wor.resource_seq_num
649: and pd.destination_organization_id = wor.organization_id
650: and (pd.wip_repetitive_schedule_id is null or
651: pd.wip_repetitive_schedule_id =wor.repetitive_schedule_id)
652: and wor.autocharge_type = WIP_CONSTANTS.PO_MOVE;
653:
654: cursor cget_reqs (l_wip_entity_id number,
655: l_rep_sched_id number,
656: l_osp_operation_num number