DBA Data[Home] [Help]

APPS.MSC_WS_SNO_PUBLISH SQL Statements

The following lines contain the word 'select', 'insert', 'update' or 'delete':

Line: 23

    DELETE FROM MSC_EXCEPTION_DETAILS WHERE PLAN_ID=PlanIdVar;
Line: 30

        INSERT INTO MSC_EXCEPTION_DETAILS (PLAN_ID,
                     SR_INSTANCE_ID,
	             ORGANIZATION_ID,
	             INVENTORY_ITEM_ID,
	             DEPARTMENT_ID,
                     RESOURCE_ID,
                     EXCEPTION_DETAIL_ID,
                     EXCEPTION_TYPE,
                     QUANTITY,
		     NUMBER2,
	             DATE1,
                     DATE2,
	             NUMBER1,
                     ZONE_ID,
                     CUSTOMER_SITE_ID,
                     CUSTOMER_ID,
                     LAST_UPDATE_DATE,
                     LAST_UPDATED_BY,
                     CREATION_DATE,
                     CREATED_BY)
	SELECT
        MSC_INT_ASCP_EXCEPTION_DETAILS.Plan_Id,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Instance_Id,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_Id,
        MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID,
        DepartmentID,
        -1,
        MSC_EXCEPTION_DETAILS_S.NEXTVAL,
        MSC_INT_ASCP_EXCEPTION_DETAILS.ViolationCode, -- Used to be: 28,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Quantity,
	MSC_INT_ASCP_EXCEPTION_DETAILS.Percentage,
        TO_DATE(PeriodStart, 'YYYY-MM-DD'),
        TO_DATE(PeriodEnd, 'YYYY-MM-DD')-1/86400,
        case WHEN MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory = 'Demand'
              AND msc_demands.plan_id=MSC_INT_ASCP_EXCEPTION_DETAILS.PLAN_ID
              AND TO_DATE(MSC_INT_ASCP_EXCEPTION_DETAILS.PERIODEND, 'YYYY-MM-DD')-1/86400 =msc_demands.dmd_satisfied_date
              AND MSC_INT_ASCP_EXCEPTION_DETAILS.INSTANCE_ID=msc_demands.sr_instance_id
              AND MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID=msc_demands.inventory_item_id
              AND MSC_INT_ASCP_EXCEPTION_DETAILS.ORGANIZATION_ID=msc_demands.organization_id
              AND msc_demands.origination_type=81
              AND MSC_INT_ASCP_EXCEPTION_DETAILS.organization_id <> -1
        then
          msc_demands.demand_id
        else
        null
        end,
        CASE WHEN ( MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null ) AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':') = 0 )
          THEN TO_NUMBER(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID)
        ELSE
          NULL
        END,
        CASE WHEN ( MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null ) AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1) is not null )
          THEN SUBSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID, INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1)+1) -- CUSTOMER_SITE_ID
        ELSE
          NULL
        END,
        CASE WHEN ( MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null ) AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1) is not null )
                  THEN SUBSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID, 1, INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1)-1) -- CUSTOMER_ID
                ELSE
                  NULL
        END,
        SYSDATE,
        '-1',
        SYSDATE,
        '-1'
        FROM msc_demands, MSC_INT_ASCP_EXCEPTION_DETAILS
        where MSC_INT_ASCP_EXCEPTION_DETAILS.ALERTCATEGORY = 'Demand'
          AND msc_demands.plan_id=MSC_INT_ASCP_EXCEPTION_DETAILS.PLAN_ID
          AND TO_DATE( MSC_INT_ASCP_EXCEPTION_DETAILS.PERIODEND, 'YYYY-MM-DD')-1/86400 =msc_demands.dmd_satisfied_date
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.INSTANCE_ID=msc_demands.sr_instance_id
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID=msc_demands.inventory_item_id
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.ORGANIZATION_ID=msc_demands.organization_id
          AND msc_demands.origination_type=81
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.organization_id <> -1;
Line: 105

            g_ErrorCode := 'ERROR_UPDATE_ALERTS_001001';
Line: 110

        INSERT INTO MSC_EXCEPTION_DETAILS (PLAN_ID,
                     SR_INSTANCE_ID,
	             ORGANIZATION_ID,
	             INVENTORY_ITEM_ID,
	             DEPARTMENT_ID,
                     RESOURCE_ID,
                     EXCEPTION_DETAIL_ID,
                     EXCEPTION_TYPE,
                     QUANTITY,
		     NUMBER2,
	             DATE1,
                     DATE2,
	             NUMBER1,
                     ZONE_ID,
                     CUSTOMER_SITE_ID,
                     CUSTOMER_ID,
                     LAST_UPDATE_DATE,
                     LAST_UPDATED_BY,
                     CREATION_DATE,
                     CREATED_BY)
	SELECT
        MSC_INT_ASCP_EXCEPTION_DETAILS.Plan_Id,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Instance_Id,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_Id,
        MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID,
        DepartmentID,
        -1,
        MSC_EXCEPTION_DETAILS_S.NEXTVAL,
        MSC_INT_ASCP_EXCEPTION_DETAILS.ViolationCode, -- Used to be: 28,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Quantity,
	MSC_INT_ASCP_EXCEPTION_DETAILS.Percentage,
        TO_DATE(PeriodStart, 'YYYY-MM-DD'),
        TO_DATE(PeriodEnd, 'YYYY-MM-DD')-1/86400,
        case WHEN MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory = 'Demand'
              AND msc_demands.plan_id=MSC_INT_ASCP_EXCEPTION_DETAILS.PLAN_ID
              AND TO_DATE(MSC_INT_ASCP_EXCEPTION_DETAILS.PERIODEND, 'YYYY-MM-DD')-1/86400 =msc_demands.dmd_satisfied_date
              AND MSC_INT_ASCP_EXCEPTION_DETAILS.INSTANCE_ID= -1
              AND MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID=msc_demands.inventory_item_id
              AND MSC_INT_ASCP_EXCEPTION_DETAILS.ORGANIZATION_ID=msc_demands.organization_id
              AND msc_demands.origination_type=81
              AND MSC_INT_ASCP_EXCEPTION_DETAILS.organization_id = -1
               -- CUSTOMER_SITE_ID:
              AND (
                    ( MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null )
                    AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1) is not null )
                    AND (SUBSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID, INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1)+1) ) = msc_demands.CUSTOMER_SITE_ID )
               -- CUSTOMER_ID:
              AND (
                  MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null )
                  AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1) is not null )
                  AND ( SUBSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID, 1, INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1)-1) = msc_demands.CUSTOMER_ID
                    )
        then
          msc_demands.demand_id
        else
          null
        end,
        CASE WHEN ( MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null ) AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':') = 0 )
          THEN TO_NUMBER(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID)
        ELSE
          NULL
        END,
        CASE WHEN ( MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null ) AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1) is not null )
          THEN SUBSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID, INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1)+1) -- CUSTOMER_SITE_ID
        ELSE
          NULL
        END,
        CASE WHEN ( MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null ) AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1) is not null )
                  THEN SUBSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID, 1, INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':',1,1)-1) -- CUSTOMER_ID
                ELSE
                  NULL
        END,
        SYSDATE,
        '-1',
        SYSDATE,
        '-1'
        FROM msc_demands, MSC_INT_ASCP_EXCEPTION_DETAILS
        where MSC_INT_ASCP_EXCEPTION_DETAILS.ALERTCATEGORY = 'Demand'
          AND msc_demands.plan_id=MSC_INT_ASCP_EXCEPTION_DETAILS.PLAN_ID
          AND TO_DATE( MSC_INT_ASCP_EXCEPTION_DETAILS.PERIODEND, 'YYYY-MM-DD')-1/86400 =msc_demands.dmd_satisfied_date
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.INSTANCE_ID=-1
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID=msc_demands.inventory_item_id
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.ORGANIZATION_ID=msc_demands.organization_id
          AND msc_demands.origination_type=81
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.organization_id = -1;
Line: 196

            g_ErrorCode := 'ERROR_UPDATE_ALERTS_001001';
Line: 202

        INSERT INTO MSC_EXCEPTION_DETAILS (PLAN_ID,
                     SR_INSTANCE_ID,
	             ORGANIZATION_ID,
	             INVENTORY_ITEM_ID,
	             DEPARTMENT_ID,
                     RESOURCE_ID,
                     EXCEPTION_DETAIL_ID,
                     EXCEPTION_TYPE,
                     QUANTITY,
		     NUMBER2,
	             DATE1,
                     DATE2,
	             NUMBER1,
                     ZONE_ID,
                     SUPPLIER_SITE_ID,
                     SUPPLIER_ID,
                     LAST_UPDATE_DATE,
                     LAST_UPDATED_BY,
                     CREATION_DATE,
                     CREATED_BY)
	SELECT
        MSC_INT_ASCP_EXCEPTION_DETAILS.Plan_Id,
        MSC_PLANS.sr_instance_id,
        MSC_PLANS.organization_id,
        MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID,
        -1,
        -1,
        MSC_EXCEPTION_DETAILS_S.NEXTVAL,
        MSC_INT_ASCP_EXCEPTION_DETAILS.ViolationCode, -- Used to be: 28,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Quantity,
	MSC_INT_ASCP_EXCEPTION_DETAILS.Percentage,
        TO_DATE(PeriodStart, 'YYYY-MM-DD'),
        TO_DATE(PeriodEnd, 'YYYY-MM-DD')-1/86400,
        case when MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory = 'Supply'
              AND msc_supplies.Plan_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.PLAN_ID
              AND msc_supplies.ORGANIZATION_ID=MSC_PLANS.organization_id -- no org id in Supply category
          AND msc_supplies.SUPPLIER_SITE_ID =MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_Id
          AND msc_supplies.SUPPLIER_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.DepartmentId
              AND msc_supplies.SR_INSTANCE_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.Instance_Id
              AND msc_supplies.INVENTORY_ITEM_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID
              AND msc_supplies.NEW_SCHEDULE_DATE= TO_DATE( MSC_INT_ASCP_EXCEPTION_DETAILS.PERIODEND, 'YYYY-MM-DD')-1/86400
              AND msc_supplies.order_type=1
              AND MSC_INT_ASCP_EXCEPTION_DETAILS.organization_id <> -1
        then
          msc_supplies.transaction_id
        else
        null
        end,
        CASE WHEN ( MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null ) AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':') = 0 )
          THEN TO_NUMBER(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID)
        ELSE
          NULL
        END,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_Id, --SupplierSiteId
        MSC_INT_ASCP_EXCEPTION_DETAILS.DepartmentId, --SupplierId
        SYSDATE,
        '-1',
        SYSDATE,
        '-1'
    FROM msc_supplies, MSC_INT_ASCP_EXCEPTION_DETAILS, MSC_PLANS
    WHERE MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory='Supply'
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.PLAN_ID=PlanIdVar
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.plan_id=msc_supplies.Plan_ID
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.plan_id=MSC_PLANS.PLAN_ID
          AND msc_supplies.organization_id = MSC_PLANS.organization_id -- use owning org id to suppress extra records
          AND msc_supplies.SUPPLIER_SITE_ID =MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_Id
          AND msc_supplies.SUPPLIER_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.DepartmentId
          AND msc_supplies.SR_INSTANCE_ID = MSC_INT_ASCP_EXCEPTION_DETAILS.Instance_Id
          AND msc_supplies.INVENTORY_ITEM_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID
          AND msc_supplies.NEW_SCHEDULE_DATE=TO_DATE( MSC_INT_ASCP_EXCEPTION_DETAILS.PERIODEND, 'YYYY-MM-DD')-1/86400
          AND (msc_supplies.order_type=1) AND (msc_supplies.FIRM_PLANNED_TYPE=2)
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.organization_id <> -1;
Line: 276

            g_ErrorCode := 'ERROR_UPDATE_ALERTS_001002';
Line: 282

        INSERT INTO MSC_EXCEPTION_DETAILS (PLAN_ID,
                     SR_INSTANCE_ID,
	             ORGANIZATION_ID,
	             INVENTORY_ITEM_ID,
	             DEPARTMENT_ID,
                     RESOURCE_ID,
                     EXCEPTION_DETAIL_ID,
                     EXCEPTION_TYPE,
                     QUANTITY,
		     NUMBER2,
	             DATE1,
                     DATE2,
	             NUMBER1,
                     ZONE_ID,
                     CUSTOMER_SITE_ID,
                     CUSTOMER_ID,
                     LAST_UPDATE_DATE,
                     LAST_UPDATED_BY,
                     CREATION_DATE,
                     CREATED_BY)
	SELECT
        MSC_INT_ASCP_EXCEPTION_DETAILS.Plan_Id,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Instance_Id,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_Id,
        -- inventory_item_id
        case when ( MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory = 'Manufacturing') AND
                      ( ( SELECT COUNT(*) FROM MSC_DEPARTMENT_RESOURCES WHERE
                      MSC_DEPARTMENT_RESOURCES.PLAN_ID=-1 AND
                      MSC_DEPARTMENT_RESOURCES.Organization_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_ID AND
                      MSC_DEPARTMENT_RESOURCES.Sr_Instance_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.Instance_ID AND
                      MSC_DEPARTMENT_RESOURCES.Resource_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID AND
                      MSC_DEPARTMENT_RESOURCES.Department_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.DepartmentId
                      ) > 0 )
        then -1
        else case when ( MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory <> 'Manufacturing' )
             then MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID -- Inventory, Transportation and Others
             else MSC_INT_ASCP_EXCEPTION_DETAILS.DepartmentID end
        end,
        -- department_id
       case when ( MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory = 'Manufacturing') AND
                      ( ( SELECT COUNT(*) FROM MSC_DEPARTMENT_RESOURCES WHERE
                      MSC_DEPARTMENT_RESOURCES.PLAN_ID=-1 AND
                      MSC_DEPARTMENT_RESOURCES.Organization_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_ID AND
                      MSC_DEPARTMENT_RESOURCES.Sr_Instance_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.Instance_ID AND
                      MSC_DEPARTMENT_RESOURCES.Resource_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID AND
                      MSC_DEPARTMENT_RESOURCES.Department_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.DepartmentId
                      ) > 0 )
        then MSC_INT_ASCP_EXCEPTION_DETAILS.DepartmentId
        else -1
        end,
        -- resource_id
        case when ( MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory = 'Manufacturing') AND
                      ( ( SELECT COUNT(*) FROM MSC_DEPARTMENT_RESOURCES WHERE
                      MSC_DEPARTMENT_RESOURCES.PLAN_ID=-1 AND
                      MSC_DEPARTMENT_RESOURCES.Organization_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_ID AND
                      MSC_DEPARTMENT_RESOURCES.Sr_Instance_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.Instance_ID AND
                      MSC_DEPARTMENT_RESOURCES.Resource_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID AND
                      MSC_DEPARTMENT_RESOURCES.Department_ID=MSC_INT_ASCP_EXCEPTION_DETAILS.DepartmentId
                      ) > 0 )
        then MSC_INT_ASCP_EXCEPTION_DETAILS.ItemID
        else -1
        end,
        MSC_EXCEPTION_DETAILS_S.NEXTVAL,
        MSC_INT_ASCP_EXCEPTION_DETAILS.ViolationCode, -- Used to be: 28,
        MSC_INT_ASCP_EXCEPTION_DETAILS.Quantity,
	MSC_INT_ASCP_EXCEPTION_DETAILS.Percentage,
        TO_DATE(PeriodStart, 'YYYY-MM-DD'),
        TO_DATE(PeriodEnd, 'YYYY-MM-DD')-1/86400,
        NULL,
        CASE WHEN ( MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID is not null ) AND ( INSTR(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID,':') = 0 )
          THEN TO_NUMBER(MSC_INT_ASCP_EXCEPTION_DETAILS.Zone_ID)
        ELSE
          NULL
        END,
        null, --customerSiteId
        null, --customerId
        SYSDATE,
        '-1',
        SYSDATE,
        '-1'
        FROM MSC_INT_ASCP_EXCEPTION_DETAILS
        WHERE MSC_INT_ASCP_EXCEPTION_DETAILS.Plan_Id = PlanIdVar
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.Organization_Id <> -1
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory <> 'Demand'
          AND MSC_INT_ASCP_EXCEPTION_DETAILS.AlertCategory <> 'Supply';
Line: 369

            g_ErrorCode := 'ERROR_UPDATE_ALERTS_001003';
Line: 398

    DELETE FROM MSC_SYSTEM_ITEMS WHERE PLAN_ID=PlanIdVar;
Line: 406

        INSERT INTO MSC_SYSTEM_ITEMS (
                    PLAN_ID,
                    ORGANIZATION_ID,
                    INVENTORY_ITEM_ID,
                    SR_INSTANCE_ID,
                    SR_INVENTORY_ITEM_ID,
                    ITEM_NAME,
                    LOTS_EXPIRATION,
                    LOT_CONTROL_CODE,
                    SHRINKAGE_RATE,
                    FIXED_DAYS_SUPPLY,
                    FIXED_ORDER_QUANTITY,
                    FIXED_LOT_MULTIPLIER,
                    MINIMUM_ORDER_QUANTITY,
                    MAXIMUM_ORDER_QUANTITY,
                    ROUNDING_CONTROL_TYPE,
                    PLANNING_TIME_FENCE_DAYS,
                    PLANNING_TIME_FENCE_DATE,
                    DEMAND_TIME_FENCE_DAYS,
                    DEMAND_TIME_FENCE_DATE,
                    DESCRIPTION,
                    RELEASE_TIME_FENCE_CODE,
                    RELEASE_TIME_FENCE_DAYS,
                    IN_SOURCE_PLAN,
                    REVISION,
                    SR_CATEGORY_ID,
                    ABC_CLASS,
                    CATEGORY_NAME,
                    MRP_PLANNING_CODE,
                    FIXED_LEAD_TIME,
                    VARIABLE_LEAD_TIME,
                    PREPROCESSING_LEAD_TIME,
                    POSTPROCESSING_LEAD_TIME,
                    FULL_LEAD_TIME,
                    CUMULATIVE_TOTAL_LEAD_TIME,
                    CUM_MANUFACTURING_LEAD_TIME,
                    UOM_CODE,
                    UNIT_WEIGHT,
                    UNIT_VOLUME,
                    WEIGHT_UOM,
                    VOLUME_UOM,
                    PRODUCT_FAMILY_ID,
                    ATP_RULE_ID,
                    ATP_COMPONENTS_FLAG,
                    BUILD_IN_WIP_FLAG,
                    PURCHASING_ENABLED_FLAG,
                    PLANNING_MAKE_BUY_CODE,
                    REPETITIVE_TYPE,
                    REPETITIVE_VARIANCE,
                    STANDARD_COST,
                    CARRYING_COST,
                    ORDER_COST,
                    MATERIAL_COST,
                    DMD_LATENESS_COST,
                    RESOURCE_COST,
                    SS_PENALTY_COST,
                    SUPPLIER_CAP_OVERUTIL_COST,
                    LIST_PRICE,
                    AVERAGE_DISCOUNT,
                    ENGINEERING_ITEM_FLAG,
                    WIP_SUPPLY_TYPE,
                    SAFETY_STOCK_CODE,
                    SAFETY_STOCK_PERCENT,
                    SAFETY_STOCK_BUCKET_DAYS,
                    INVENTORY_USE_UP_DATE,
                    BUYER_NAME,
                    PLANNER_CODE,
                    PLANNING_EXCEPTION_SET,
                    EXCESS_QUANTITY,
                    EXCEPTION_SHORTAGE_DAYS,
                    EXCEPTION_EXCESS_DAYS,
                    EXCEPTION_OVERPROMISED_DAYS,
                    EXCEPTION_CODE,
                    BOM_ITEM_TYPE,
                    ATO_FORECAST_CONTROL,
                    EFFECTIVITY_CONTROL,
                    ORGANIZATION_CODE,
                    ACCEPTABLE_RATE_INCREASE,
                    ACCEPTABLE_RATE_DECREASE,
                    EXCEPTION_REP_VARIANCE_DAYS,
                    OVERRUN_PERCENTAGE,
                    INVENTORY_PLANNING_CODE,
                    ACCEPTABLE_EARLY_DELIVERY,
                    CALCULATE_ATP,
                    END_ASSEMBLY_PEGGING_FLAG,
                    END_ASSEMBLY_PEGGING,
                    FULL_PEGGING,
                    INVENTORY_ITEM_FLAG,
                    SOURCE_ORG_ID,
                    BASE_ITEM_ID,
                    ABC_CLASS_NAME,
                    FIXED_SAFETY_STOCK_QTY,
                    PRIMARY_SUPPLIER_ID,
                    ATP_FLAG,
                    LOW_LEVEL_CODE,
                    PLANNER_STATUS_CODE,
                    NETTABLE_INVENTORY_QUANTITY,
                    NONNETTABLE_INVENTORY_QUANTITY,
                    REFRESH_NUMBER,
                    REQUEST_ID,
                    PROGRAM_APPLICATION_ID,
                    PROGRAM_ID,
                    PROGRAM_UPDATE_DATE,
                    ATTRIBUTE_CATEGORY,
                    ATTRIBUTE1,
                    ATTRIBUTE2,
                    ATTRIBUTE3,
                    ATTRIBUTE4,
                    ATTRIBUTE5,
                    ATTRIBUTE6,
                    ATTRIBUTE7,
                    ATTRIBUTE8,
                    ATTRIBUTE9,
                    ATTRIBUTE10,
                    ATTRIBUTE11,
                    ATTRIBUTE12,
                    ATTRIBUTE13,
                    ATTRIBUTE14,
                    ATTRIBUTE15,
                    REVISION_QTY_CONTROL_CODE,
                    EXPENSE_ACCOUNT,
                    INVENTORY_ASSET_FLAG,
                    BUYER_ID,
                    REPETITIVE_PLANNING_FLAG,
                    PICK_COMPONENTS_FLAG,
                    SERVICE_LEVEL,
                    REPLENISH_TO_ORDER_FLAG,
                    PIP_FLAG,
                    YIELD_CONV_FACTOR,
                    MIN_MINMAX_QUANTITY,
                    MAX_MINMAX_QUANTITY,
                    NEW_ATP_FLAG,
                    SOURCE_TYPE,
                    SUBSTITUTION_WINDOW,
                    CREATE_SUPPLY_FLAG,
                    REORDER_POINT,
                    AVERAGE_ANNUAL_DEMAND,
                    ECONOMIC_ORDER_QUANTITY,
                    SERIAL_NUMBER_CONTROL_CODE,
                    CONVERGENCE,
                    DIVERGENCE,
                    CONTINOUS_TRANSFER,
                    CRITICAL_COMPONENT_FLAG,
                    REDUCE_MPS,
                    CONSIGNED_FLAG,
                    VMI_MINIMUM_UNITS,
                    VMI_MINIMUM_DAYS,
                    VMI_MAXIMUM_UNITS,
                    VMI_MAXIMUM_DAYS,
                    AVERAGE_DAILY_DEMAND,
                    VMI_FIXED_ORDER_QUANTITY,
                    SO_AUTHORIZATION_FLAG,
                    VMI_FORECAST_TYPE,
                    FORECAST_HORIZON,
                    ASN_AUTOEXPIRE_FLAG,
                    VMI_REFRESH_FLAG,
                    BUDGET_CONSTRAINED,
                    MAX_QUANTITY,
                    MAX_QUANTITY_DOS,
                    DAYS_TGT_INV_WINDOW,
                    DAYS_MAX_INV_WINDOW,
                    DAYS_TGT_INV_SUPPLY,
                    DAYS_MAX_INV_SUPPLY,
                    DRP_PLANNED,
                    AGGREGATE_TIME_FENCE_DATE,
                    INFERRED_CRITICAL_FLAG,
                    SS_WINDOW_SIZE,
                    ITEM_CREATION_DATE,
                    PLANNING_TIME_FENCE_CODE,
                    SHORTAGE_TYPE,
                    EXCESS_TYPE,
                    PEGGING_DEMAND_WINDOW_DAYS,
                    PEGGING_SUPPLY_WINDOW_DAYS,
                    UNSATISFIED_DEMAND_FACTOR,
                    SAFETY_LEAD_TIME,
                    LAST_UPDATE_DATE,
                    LAST_UPDATED_BY,
                    CREATION_DATE,
                    CREATED_BY,
                    LAST_UPDATE_LOGIN  )
	SELECT DISTINCT PlanIdVar,
                    ORGANIZATION_ID,
                    INVENTORY_ITEM_ID,
                    SR_INSTANCE_ID,
                    SR_INVENTORY_ITEM_ID,
                    ITEM_NAME,
                    LOTS_EXPIRATION,
                    LOT_CONTROL_CODE,
                    SHRINKAGE_RATE,
                    FIXED_DAYS_SUPPLY,
                    FIXED_ORDER_QUANTITY,
                    FIXED_LOT_MULTIPLIER,
                    MINIMUM_ORDER_QUANTITY,
                    MAXIMUM_ORDER_QUANTITY,
                    ROUNDING_CONTROL_TYPE,
                    PLANNING_TIME_FENCE_DAYS,
                    PLANNING_TIME_FENCE_DATE,
                    DEMAND_TIME_FENCE_DAYS,
                    DEMAND_TIME_FENCE_DATE,
                    DESCRIPTION,
                    RELEASE_TIME_FENCE_CODE,
                    RELEASE_TIME_FENCE_DAYS,
                    IN_SOURCE_PLAN,
                    REVISION,
                    SR_CATEGORY_ID,
                    ABC_CLASS,
                    CATEGORY_NAME,
                    MRP_PLANNING_CODE,
                    FIXED_LEAD_TIME,
                    VARIABLE_LEAD_TIME,
                    PREPROCESSING_LEAD_TIME,
                    POSTPROCESSING_LEAD_TIME,
                    FULL_LEAD_TIME,
                    CUMULATIVE_TOTAL_LEAD_TIME,
                    CUM_MANUFACTURING_LEAD_TIME,
                    UOM_CODE,
                    UNIT_WEIGHT,
                    UNIT_VOLUME,
                    WEIGHT_UOM,
                    VOLUME_UOM,
                    PRODUCT_FAMILY_ID,
                    ATP_RULE_ID,
                    ATP_COMPONENTS_FLAG,
                    BUILD_IN_WIP_FLAG,
                    PURCHASING_ENABLED_FLAG,
                    PLANNING_MAKE_BUY_CODE,
                    REPETITIVE_TYPE,
                    REPETITIVE_VARIANCE,
                    STANDARD_COST,
                    CARRYING_COST,
                    ORDER_COST,
                    MATERIAL_COST,
                    DMD_LATENESS_COST,
                    RESOURCE_COST,
                    SS_PENALTY_COST,
                    SUPPLIER_CAP_OVERUTIL_COST,
                    LIST_PRICE,
                    AVERAGE_DISCOUNT,
                    ENGINEERING_ITEM_FLAG,
                    WIP_SUPPLY_TYPE,
                    SAFETY_STOCK_CODE,
                    SAFETY_STOCK_PERCENT,
                    SAFETY_STOCK_BUCKET_DAYS,
                    INVENTORY_USE_UP_DATE,
                    BUYER_NAME,
                    PLANNER_CODE,
                    PLANNING_EXCEPTION_SET,
                    EXCESS_QUANTITY,
                    EXCEPTION_SHORTAGE_DAYS,
                    EXCEPTION_EXCESS_DAYS,
                    EXCEPTION_OVERPROMISED_DAYS,
                    EXCEPTION_CODE,
                    BOM_ITEM_TYPE,
                    ATO_FORECAST_CONTROL,
                    EFFECTIVITY_CONTROL,
                    ORGANIZATION_CODE,
                    ACCEPTABLE_RATE_INCREASE,
                    ACCEPTABLE_RATE_DECREASE,
                    EXCEPTION_REP_VARIANCE_DAYS,
                    OVERRUN_PERCENTAGE,
                    INVENTORY_PLANNING_CODE,
                    ACCEPTABLE_EARLY_DELIVERY,
                    CALCULATE_ATP,
                    END_ASSEMBLY_PEGGING_FLAG,
                    END_ASSEMBLY_PEGGING,
                    FULL_PEGGING,
                    INVENTORY_ITEM_FLAG,
                    SOURCE_ORG_ID,
                    BASE_ITEM_ID,
                    ABC_CLASS_NAME,
                    FIXED_SAFETY_STOCK_QTY,
                    PRIMARY_SUPPLIER_ID,
                    ATP_FLAG,
                    LOW_LEVEL_CODE,
                    PLANNER_STATUS_CODE,
                    NETTABLE_INVENTORY_QUANTITY,
                    NONNETTABLE_INVENTORY_QUANTITY,
                    REFRESH_NUMBER,
                    REQUEST_ID,
                    PROGRAM_APPLICATION_ID,
                    PROGRAM_ID,
                    PROGRAM_UPDATE_DATE,
                    ATTRIBUTE_CATEGORY,
                    ATTRIBUTE1,
                    ATTRIBUTE2,
                    ATTRIBUTE3,
                    ATTRIBUTE4,
                    ATTRIBUTE5,
                    ATTRIBUTE6,
                    ATTRIBUTE7,
                    ATTRIBUTE8,
                    ATTRIBUTE9,
                    ATTRIBUTE10,
                    ATTRIBUTE11,
                    ATTRIBUTE12,
                    ATTRIBUTE13,
                    ATTRIBUTE14,
                    ATTRIBUTE15,
                    REVISION_QTY_CONTROL_CODE,
                    EXPENSE_ACCOUNT,
                    INVENTORY_ASSET_FLAG,
                    BUYER_ID,
                    REPETITIVE_PLANNING_FLAG,
                    PICK_COMPONENTS_FLAG,
                    SERVICE_LEVEL,
                    REPLENISH_TO_ORDER_FLAG,
                    PIP_FLAG,
                    YIELD_CONV_FACTOR,
                    MIN_MINMAX_QUANTITY,
                    MAX_MINMAX_QUANTITY,
                    NEW_ATP_FLAG,
                    SOURCE_TYPE,
                    SUBSTITUTION_WINDOW,
                    CREATE_SUPPLY_FLAG,
                    REORDER_POINT,
                    AVERAGE_ANNUAL_DEMAND,
                    ECONOMIC_ORDER_QUANTITY,
                    SERIAL_NUMBER_CONTROL_CODE,
                    CONVERGENCE,
                    DIVERGENCE,
                    CONTINOUS_TRANSFER,
                    CRITICAL_COMPONENT_FLAG,
                    REDUCE_MPS,
                    CONSIGNED_FLAG,
                    VMI_MINIMUM_UNITS,
                    VMI_MINIMUM_DAYS,
                    VMI_MAXIMUM_UNITS,
                    VMI_MAXIMUM_DAYS,
                    AVERAGE_DAILY_DEMAND,
                    VMI_FIXED_ORDER_QUANTITY,
                    SO_AUTHORIZATION_FLAG,
                    VMI_FORECAST_TYPE,
                    FORECAST_HORIZON,
                    ASN_AUTOEXPIRE_FLAG,
                    VMI_REFRESH_FLAG,
                    BUDGET_CONSTRAINED,
                    MAX_QUANTITY,
                    MAX_QUANTITY_DOS,
                    DAYS_TGT_INV_WINDOW,
                    DAYS_MAX_INV_WINDOW,
                    DAYS_TGT_INV_SUPPLY,
                    DAYS_MAX_INV_SUPPLY,
                    DRP_PLANNED,
                    AGGREGATE_TIME_FENCE_DATE,
                    INFERRED_CRITICAL_FLAG,
                    SS_WINDOW_SIZE,
                    ITEM_CREATION_DATE,
                    PLANNING_TIME_FENCE_CODE,
                    SHORTAGE_TYPE,
                    EXCESS_TYPE,
                    PEGGING_DEMAND_WINDOW_DAYS,
                    PEGGING_SUPPLY_WINDOW_DAYS,
                    UNSATISFIED_DEMAND_FACTOR,
                    SAFETY_LEAD_TIME,
              SYSDATE,
              '-1',
              SYSDATE,
              '-1',
	      -- last update login :
              -- we do not have the userId here ( no validation should be done at this point as required earlier) :
              '-1'
 	FROM MSC_SYSTEM_ITEMS LEFT JOIN MSC_INT_ASCP_INVENTORY ON
              MSC_INT_ASCP_INVENTORY.OrganizationID = MSC_SYSTEM_ITEMS.ORGANIZATION_ID AND
              MSC_INT_ASCP_INVENTORY.InstanceID = MSC_SYSTEM_ITEMS.SR_INSTANCE_ID AND
              MSC_INT_ASCP_INVENTORY.ItemId = MSC_SYSTEM_ITEMS.INVENTORY_ITEM_ID
        WHERE  MSC_SYSTEM_ITEMS.PLAN_ID=-1 AND MSC_INT_ASCP_INVENTORY.PLAN_ID=PlanIdVar;
Line: 773

            g_ErrorCode := 'ERROR_UPDATE_MSC_SYSTEM_ITEMS_001001';
Line: 805

    DELETE FROM MSC_PLAN_BUCKETS WHERE PLAN_ID=PlanIdVar;
Line: 812

        INSERT INTO MSC_PLAN_BUCKETS (PLAN_ID,
			      ORGANIZATION_ID,
			      SR_INSTANCE_ID,
			      BUCKET_INDEX,
			      CURR_FLAG,
			      BKT_START_DATE,
			      BKT_END_DATE,
			      DAYS_IN_BKT,
			      BUCKET_TYPE,
                              LAST_UPDATE_DATE,
                              LAST_UPDATED_BY,
                              CREATION_DATE,
                              CREATED_BY)
	SELECT PlanIdVar, MSC_PLANS.ORGANIZATION_ID, MSC_PLANS.SR_INSTANCE_ID,
               TO_NUMBER(BucketIndex), 1,
               TO_DATE(BktStartDate,'YYYY-MM-DD'), TO_DATE(BktEndDate,'YYYY-MM-DD')-1/86400,
               TO_NUMBER(DaysInBucket), TO_NUMBER(BucketType),
               SYSDATE, '-1',
               SYSDATE, '-1'
 	FROM MSC_INT_ASCP_EXPORT_BUCKETS, MSC_PLANS
        WHERE PLANID=PlanIdVar AND
              MSC_PLANS.PLAN_ID=PlanIdVar;
Line: 835

            g_ErrorCode := 'ERROR_UPDATE_PLAN_BUCKETS_001001';
Line: 864

    DELETE FROM MSC_DEMANDS WHERE PLAN_ID=PlanIdVar;
Line: 876

        INSERT INTO MSC_DEMANDS (
                  ORGANIZATION_ID,
                  INVENTORY_ITEM_ID,
                  PLAN_ID,
                  SR_INSTANCE_ID,
		  DEMAND_ID,
                  ORIGINATION_TYPE,
                  USING_REQUIREMENT_QUANTITY,
                  QUANTITY_BY_DUE_DATE,
                  DMD_SATISFIED_DATE,
                  ZONE_ID,
                  CUSTOMER_SITE_ID,
                  CUSTOMER_ID,
                  SERVICE_LEVEL,
                  USING_ASSEMBLY_DEMAND_DATE,
                  USING_ASSEMBLY_ITEM_ID,
                  DEMAND_TYPE,
                  UNMET_QUANTITY,
                  LAST_UPDATE_DATE,
                  LAST_UPDATED_BY,
                  CREATION_DATE,
                  CREATED_BY)
	SELECT
                CASE WHEN ( ZoneID is not null )
                  THEN  -1
                ELSE
                  OrganizationID
                END,
		ItemID,
		PlanIdVar,
		CASE WHEN ( ZoneID is not null )
		  THEN  -1
		ELSE
		  InstanceID
		END,
		MSC_DEMANDS_S.NEXTVAL,
		81,
		Demand,
		Satisfied,
                TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400,
                CASE WHEN ( ZoneID is not null ) AND ( INSTR(ZoneID,':') = 0 )
                  THEN TO_NUMBER(ZoneID)
                ELSE
                  NULL
                END,
                CASE WHEN ( ZoneID is not null ) AND ( INSTR(ZoneID,':',1,1) is not null )
                  THEN SUBSTR(ZoneID, INSTR(ZoneID,':',1,1)+1) -- CUSTOMER_SITE_ID
                ELSE
                  NULL
                END,
                CASE WHEN ( ZoneID is not null ) AND ( INSTR(ZoneID,':',1,1) is not null )
                  THEN SUBSTR(ZoneID, 1, INSTR(ZoneID,':',1,1)-1) -- CUSTOMER_ID
                ELSE
                  NULL
                END,
                0,
                TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400,
                ItemID,
                1,
                Demand-Satisfied,
                SYSDATE, '-1', SYSDATE, '-1'
	FROM MSC_INT_ASCP_DEMANDS
        WHERE PLAN_ID=PlanIdVar;
Line: 940

            g_ErrorCode := 'ERROR_UPDATE_DEMAND_FROM_ASCP_DEMAND_001001';
Line: 946

        INSERT INTO MSC_DEMANDS (
                  ORGANIZATION_ID,
                  INVENTORY_ITEM_ID,
                  PLAN_ID,
                  SR_INSTANCE_ID,
				  DEMAND_ID,
                  ORIGINATION_TYPE,
                  USING_REQUIREMENT_QUANTITY,
                  DMD_SATISFIED_DATE,
                  USING_ASSEMBLY_DEMAND_DATE,
                  USING_ASSEMBLY_ITEM_ID,
                  DEMAND_TYPE,
                  LAST_UPDATE_DATE,
                  LAST_UPDATED_BY,
                  CREATION_DATE,
                  CREATED_BY)
	SELECT
                FromOrgID,
				ItemID,
				PlanIdVar,
				InstanceID,
				MSC_DEMANDS_S.NEXTVAL, --DEMAND_ID,
				1, --ORIGINATION_TYPE,
				Quantity,	--BUGBUG: how to show Infinity ? --USING_REQUIREMENT_QUANTITY
                TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400, --DMD_SATISFIED_DATE
                TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400, --USING_ASSEMBLY_DEMAND_DATE
                ItemID, --USING_ASSEMBLY_ITEM_ID
                1, --DEMAND_TYPE
                SYSDATE, '-1', SYSDATE, '-1'
	FROM MSC_INT_ASCP_DEPENDENT_DEMAND
        WHERE PLAN_ID=PlanIdVar;
Line: 978

            g_ErrorCode := 'ERROR_UPDATE_DEMAND_FROM_ASCP_DEPENDENT_DEMAND_001002';
Line: 987

    INSERT INTO MSC_DEMANDS (ORGANIZATION_ID,
			      INVENTORY_ITEM_ID,
                  PLAN_ID,
			      SR_INSTANCE_ID,
			      DEMAND_ID,
                  ORIGINATION_TYPE,
                  USING_REQUIREMENT_QUANTITY,
                  QUANTITY_BY_DUE_DATE,
                  DMD_SATISFIED_DATE,
                  ZONE_ID,
                  CUSTOMER_SITE_ID,
                  CUSTOMER_ID,
                  SERVICE_LEVEL,
                  USING_ASSEMBLY_DEMAND_DATE,
                  USING_ASSEMBLY_ITEM_ID,
                  DEMAND_TYPE,
                  LAST_UPDATE_DATE,
                  LAST_UPDATED_BY,
                  CREATION_DATE,
                  CREATED_BY)
	SELECT
		FromOrgID,
		ItemID,
		PlanIdVar,
		FromInstanceID,
		MSC_DEMANDS_S.NEXTVAL,
		82, 		Quantity,
		Quantity,
                TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400,
                NULL,
		CASE WHEN ( Category = 'Customer' )
                   THEN ToInstanceID -- CUSTOMER_SITE_ID
                ELSE
                   NULL
                END,
                CASE WHEN ( Category = 'Customer' )
		  THEN ToOrgID -- CUSTOMER_ID
		ELSE
		  NULL
		END,
                0,
		TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400,
		ItemID,
                1,
                SYSDATE, '-1', SYSDATE, '-1'
	FROM MSC_INT_ASCP_TRANSPORTATION
        WHERE PLAN_ID=PlanIdVar;
Line: 1035

            g_ErrorCode := 'ERROR_UPDATE_DEMAND_FROM_ASCP_TRANSPORTATION_001003';
Line: 1063

     DELETE FROM MSC_SUPPLIES WHERE PLAN_ID=PlanIdVar;
Line: 1075

          INSERT INTO MSC_SUPPLIES (PLAN_ID,
                           TRANSACTION_ID,
                           ORGANIZATION_ID,
			   SR_INSTANCE_ID,
			   INVENTORY_ITEM_ID,
			   ORDER_TYPE,
			   NEW_SCHEDULE_DATE,
			   NEW_ORDER_QUANTITY,
			   FIRM_PLANNED_TYPE,
                           SUPPLIER_ID,
                           SUPPLIER_SITE_ID,
                           LAST_UPDATE_DATE,
                           LAST_UPDATED_BY,
                           CREATION_DATE,
                                   CREATED_BY)
          SELECT PlanIdVar, msc_supplies_s.nextval, organizationID,
                 instanceID, itemID, 1, TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400,
                 supply, 2, SupplierID,
                 supplierSiteID,
                 SYSDATE, '-1', SYSDATE, '-1'
          FROM MSC_INT_ASCP_SUPPLY
          WHERE PLAN_ID=PlanIdVar AND MSC_INT_ASCP_SUPPLY.CATEGORY='Supply';
Line: 1101

                    g_ErrorCode := 'ERROR_UPDATE_SUPPLIES_FROM_MSC_INT_ASCP_SUPPLY_001001';
Line: 1110

          INSERT INTO MSC_SUPPLIES (
                          PLAN_ID,
                           TRANSACTION_ID,
                           ORGANIZATION_ID,
			   SR_INSTANCE_ID,
			   INVENTORY_ITEM_ID,
			   ORDER_TYPE,
			   NEW_SCHEDULE_DATE,
			   NEW_ORDER_QUANTITY,
			   FIRM_PLANNED_TYPE,
                           SOURCE_ORGANIZATION_ID,
                           SOURCE_SR_INSTANCE_ID,
                           SHIP_METHOD,
                           LAST_UPDATE_DATE,
                           LAST_UPDATED_BY,
                           CREATION_DATE,
                           CREATED_BY)
          SELECT
            PlanIdVar,
            msc_supplies_s.nextval,
            toOrgID,
            toInstanceID,
                 itemID,
                 80,
                 TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400,
                 quantity,
                 2,
                 fromOrgID,
                 fromInstanceID,
                 transportMode,
                 SYSDATE, '-1', SYSDATE, '-1'
          FROM MSC_INT_ASCP_TRANSPORTATION
          WHERE PLAN_ID=PlanIdVar;
Line: 1144

                    g_ErrorCode := 'ERROR_UPDATE_SUPPLIES_FROM_ASCP_TRANSPORTATION_001002';
Line: 1154

        INSERT INTO MSC_SUPPLIES (PLAN_ID,
                           TRANSACTION_ID,
                           ORGANIZATION_ID,
			   SR_INSTANCE_ID,
			   INVENTORY_ITEM_ID,
			   ORDER_TYPE,
			   NEW_SCHEDULE_DATE,
			   NEW_ORDER_QUANTITY,
			   FIRM_PLANNED_TYPE,
                           LAST_UPDATE_DATE,
                           LAST_UPDATED_BY,
                           CREATION_DATE,
                           CREATED_BY)
          SELECT PlanIdVar, msc_supplies_s.nextval, organizationId, instanceId,
                 itemID, 18, TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400, onHand, 2,
                 SYSDATE, '-1', SYSDATE, '-1'
          FROM MSC_INT_ASCP_INVENTORY
          WHERE PLAN_ID=PlanIdVar AND MSC_INT_ASCP_INVENTORY.CATEGORY='Inventory';
Line: 1173

                    g_ErrorCode := 'ERROR_UPDATE_SUPPLIES_FROM_MSC_INT_ASCP_INVENTORY_001003';
Line: 1186

        INSERT INTO MSC_SUPPLIES (PLAN_ID,
		                         TRANSACTION_ID,
		                         ORGANIZATION_ID,
		                         SR_INSTANCE_ID,
		                         INVENTORY_ITEM_ID,
		                         ORDER_TYPE,
		                         NEW_SCHEDULE_DATE,
		                         NEW_ORDER_QUANTITY,
		                         FIRM_PLANNED_TYPE,
		                         LAST_UPDATE_DATE,
		                         LAST_UPDATED_BY,
		                         CREATION_DATE,
		                         CREATED_BY)
		select PlanIdVar, msc_supplies_s.nextval,
		       organizationID, instanceID, itemID, 88,
		       TO_DATE(PeriodEnd,'YYYY-MM-DD')-1/86400, flow,
		       2,
		       SYSDATE, '-1', SYSDATE, '-1'
		from
		    (select distinct organizationID, instanceID, itemID, PeriodEnd, flow
				    from MSC_INT_ASCP_MFG_PLAN_MACHINE
				    where PLAN_ID=PlanIdVar AND CATEGORY='Manufacturing');
Line: 1209

                    g_ErrorCode := 'ERROR_UPDATE_SUPPLIES_FROM_MSC_INT_ASCP_MFG_PLAN_MACHINE_001004';
Line: 1239

    DELETE FROM MSC_SAFETY_STOCKS WHERE PLAN_ID=PlanIdVar;
Line: 1246

        INSERT INTO MSC_SAFETY_STOCKS (PLAN_ID,
                           ORGANIZATION_ID,
			   SR_INSTANCE_ID,
			   INVENTORY_ITEM_ID,
			   PERIOD_START_DATE,
			   SAFETY_STOCK_QUANTITY,
                           TASK_ID,
                           LAST_UPDATE_DATE,
                           LAST_UPDATED_BY,
                           CREATION_DATE,
                           CREATED_BY)
          SELECT PlanIdVar, OrganizationID, InstanceID,
                 ItemID, TO_DATE(Period,'YYYY-MM-DD'), Safety,
                 ROWNUM, --BUGBUG this value is in, just to make index unique
                 SYSDATE, '-1', SYSDATE, '-1'
          FROM MSC_INT_ASCP_INVENTORY
          WHERE PLAN_ID=PlanIdVar;
Line: 1266

                    g_ErrorCode := 'ERROR_UPDATE_MSC_SAFETY_STOCKS_001001';
Line: 1296

    DELETE FROM MSC_DEPARTMENT_RESOURCES WHERE PLAN_ID=PlanIdVar;
Line: 1304

        INSERT INTO MSC_DEPARTMENT_RESOURCES (PLAN_ID,
               ORGANIZATION_ID,
               SR_INSTANCE_ID,
               RESOURCE_ID,
               DEPARTMENT_ID,
               OWNING_DEPARTMENT_ID,
               CAPACITY_UNITS,
               RESOURCE_TYPE,
               RESOURCE_CODE,
               RESOURCE_DESCRIPTION,
               DEPARTMENT_CODE,
               DEPARTMENT_DESCRIPTION,
               DEPARTMENT_CLASS,
               RESOURCE_GROUP_NAME,
               BOTTLENECK_FLAG,
               LINE_FLAG,
               AGGREGATE_RESOURCE_FLAG,
               AVAILABLE_24_HOURS_FLAG,
               LAST_UPDATE_DATE,
               LAST_UPDATED_BY,
               CREATION_DATE,
               CREATED_BY)
        SELECT DISTINCT MSC_INT_ASCP_MACHINE_UTIL.PLAN_ID,
               MSC_INT_ASCP_MACHINE_UTIL.OrganizationID,
               MSC_INT_ASCP_MACHINE_UTIL.InstanceID,
               MSC_INT_ASCP_MACHINE_UTIL.ResourceID,
               MSC_INT_ASCP_MACHINE_UTIL.DepartmentID,
               CASE WHEN MSC_INT_ASCP_MACHINE_UTIL.ResourceID = -1
                    THEN NULL
                    ELSE MSC_INT_ASCP_MACHINE_UTIL.DepartmentID
               END,--OWNING_DEPARTMENT_ID
               NULL, --CAPACITY_UNITS: nullable column, resource units
               1, -- RESOURCE_TYPE it is a machine
               MSC_DEPARTMENT_RESOURCES.RESOURCE_CODE, --RESOURCE_CODE *
               MSC_DEPARTMENT_RESOURCES.RESOURCE_DESCRIPTION, --RESOURCE_DESCRIPTION,*
               MSC_DEPARTMENT_RESOURCES.DEPARTMENT_CODE, --DEPARTMENT_CODE,*
               MSC_DEPARTMENT_RESOURCES.DEPARTMENT_DESCRIPTION, --DEPARTMENT_DESCRIPTION,*
               NULL, --DEPARTMENT_CLASS,
               MSC_DEPARTMENT_RESOURCES.RESOURCE_GROUP_NAME, -- resource_group_name*
               MSC_DEPARTMENT_RESOURCES.BOTTLENECK_FLAG, -- bottleneck_flag*
               MSC_DEPARTMENT_RESOURCES.LINE_FLAG, --LINE_FLAG: 1 means line resource, 2 regular resource
               1, --AGGREGATE_RESOURCE_FLAG: fill in with "1"
               MSC_DEPARTMENT_RESOURCES.AVAILABLE_24_HOURS_FLAG,  --Look up the table for the field using PLAN_ID=-1, ORG_ID, INST_ID and DEPT_ID
               SYSDATE, '-1', SYSDATE, '-1'
        FROM MSC_INT_ASCP_MACHINE_UTIL LEFT JOIN MSC_DEPARTMENT_RESOURCES ON
              MSC_INT_ASCP_MACHINE_UTIL.OrganizationID = MSC_DEPARTMENT_RESOURCES.ORGANIZATION_ID AND
              MSC_INT_ASCP_MACHINE_UTIL.InstanceID = MSC_DEPARTMENT_RESOURCES.SR_INSTANCE_ID AND
              MSC_INT_ASCP_MACHINE_UTIL.DepartmentID = MSC_DEPARTMENT_RESOURCES.DEPARTMENT_ID AND
              MSC_INT_ASCP_MACHINE_UTIL.ResourceID = MSC_DEPARTMENT_RESOURCES.RESOURCE_ID
        WHERE  MSC_DEPARTMENT_RESOURCES.PLAN_ID=-1 AND MSC_INT_ASCP_MACHINE_UTIL.PLAN_ID=PlanIdVar;
Line: 1355

                    g_ErrorCode := 'ERROR_UPDATE_DEPARTMENT_RESOURCES_FROM_MSC_INT_ASCP_MACHINE_UTIL_001001';
Line: 1362

        INSERT INTO MSC_DEPARTMENT_RESOURCES (PLAN_ID,
                           ORGANIZATION_ID,
			   SR_INSTANCE_ID,
                           RESOURCE_ID,
			   DEPARTMENT_ID,
			   OWNING_DEPARTMENT_ID,
			   CAPACITY_UNITS,
                           RESOURCE_TYPE,
			   RESOURCE_CODE,
                           RESOURCE_DESCRIPTION,
                           DEPARTMENT_CODE,
                           DEPARTMENT_DESCRIPTION,
                           DEPARTMENT_CLASS,
                           RESOURCE_GROUP_NAME,
                           BOTTLENECK_FLAG,
                           LINE_FLAG,
			   AGGREGATE_RESOURCE_FLAG,
			   AVAILABLE_24_HOURS_FLAG,
                           LAST_UPDATE_DATE,
                           LAST_UPDATED_BY,
                           CREATION_DATE,
                           CREATED_BY)
  SELECT DISTINCT MSC_INT_ASCP_LABOUR_UTIL.PLAN_ID,
         MSC_INT_ASCP_LABOUR_UTIL.OrganizationID,
         MSC_INT_ASCP_LABOUR_UTIL.InstanceID,
         MSC_INT_ASCP_LABOUR_UTIL.ResourceID,
         MSC_INT_ASCP_LABOUR_UTIL.DepartmentID,
         CASE WHEN MSC_INT_ASCP_LABOUR_UTIL.ResourceID = -1
              THEN NULL
              ELSE MSC_INT_ASCP_LABOUR_UTIL.DepartmentID
         END,--OWNING_DEPARTMENT_ID
         NULL, --CAPACITY_UNITS: nullable column, resource units
         2, -- RESOURCE_TYPE - it is a labour
         MSC_DEPARTMENT_RESOURCES.RESOURCE_CODE, --RESOURCE_CODE *
         MSC_DEPARTMENT_RESOURCES.RESOURCE_DESCRIPTION, --RESOURCE_DESCRIPTION,*
         MSC_DEPARTMENT_RESOURCES.DEPARTMENT_CODE, --DEPARTMENT_CODE,*
         MSC_DEPARTMENT_RESOURCES.DEPARTMENT_DESCRIPTION, --DEPARTMENT_DESCRIPTION,*
         NULL, --DEPARTMENT_CLASS,
         MSC_DEPARTMENT_RESOURCES.RESOURCE_GROUP_NAME, -- resource_group_name*
         MSC_DEPARTMENT_RESOURCES.BOTTLENECK_FLAG, -- bottleneck_flag*
         MSC_DEPARTMENT_RESOURCES.LINE_FLAG, --LINE_FLAG: 1 means line resource, 2 regular resource
         1, --AGGREGATE_RESOURCE_FLAG: fill in with "1"
         MSC_DEPARTMENT_RESOURCES.AVAILABLE_24_HOURS_FLAG,  --Look up the table for the field using PLAN_ID=-1, ORG_ID, INST_ID and DEPT_ID
         SYSDATE, '-1', SYSDATE, '-1'
  FROM MSC_INT_ASCP_LABOUR_UTIL LEFT JOIN MSC_DEPARTMENT_RESOURCES ON
              MSC_INT_ASCP_LABOUR_UTIL.OrganizationID = MSC_DEPARTMENT_RESOURCES.ORGANIZATION_ID AND
              MSC_INT_ASCP_LABOUR_UTIL.InstanceID = MSC_DEPARTMENT_RESOURCES.SR_INSTANCE_ID AND
              MSC_INT_ASCP_LABOUR_UTIL.DepartmentID = MSC_DEPARTMENT_RESOURCES.DEPARTMENT_ID AND
              MSC_INT_ASCP_LABOUR_UTIL.ResourceID = MSC_DEPARTMENT_RESOURCES.RESOURCE_ID
        WHERE  MSC_DEPARTMENT_RESOURCES.PLAN_ID=-1 AND MSC_INT_ASCP_LABOUR_UTIL.PLAN_ID=PlanIdVar;
Line: 1413

                    g_ErrorCode := 'ERROR_UPDATE_DEPARTMENT_RESOURCES_FROM_MSC_INT_ASCP_LABOUR_UTIL_001002';
Line: 1443

    DELETE FROM MSC_BIS_RES_SUMMARY WHERE PLAN_ID=PlanIdVar;
Line: 1449

    select DISTINCT ScenarioName into ScenarioNameVar from MSC_INT_ASCP_KPI where  PLAN_ID=PlanIdVar;
Line: 1457

        INSERT INTO MSC_BIS_RES_SUMMARY (PLAN_ID,
                           ORGANIZATION_ID,
			   SR_INSTANCE_ID,
			   DEPARTMENT_ID,
			   RESOURCE_ID,
			   DETAIL_LEVEL,
			   PERIOD_TYPE,
			   RESOURCE_DATE,
			   REQUIRED_HOURS,
			   AVAILABLE_HOURS,
			   UTILIZATION,
			   RESOURCE_GROUP,
			   OVERUTILIZATION_COST,
                           RESOURCE_COST)
        SELECT MSC_INT_ASCP_MACHINE_UTIL.PLAN_ID, MSC_INT_ASCP_MACHINE_UTIL.OrganizationID,
               MSC_INT_ASCP_MACHINE_UTIL.InstanceID, MSC_INT_ASCP_MACHINE_UTIL.DepartmentID, MSC_INT_ASCP_MACHINE_UTIL.ResourceID,
               CASE WHEN MSC_INT_ASCP_MACHINE_UTIL.DETAIL_LEVEL='Week' THEN '1' ELSE NULL END, 1,
               TO_DATE(MSC_INT_ASCP_MACHINE_UTIL.PERIODEND,'YYYY-MM-DD')-1/86400, MSC_INT_ASCP_MACHINE_UTIL.USED,
               MSC_INT_ASCP_MACHINE_UTIL.CAPACITY, MSC_INT_ASCP_MACHINE_UTIL.UTILIZATION,
               MSC_DEPARTMENT_RESOURCES.RESOURCE_GROUP_NAME, MSC_INT_ASCP_MACHINE_UTIL.OVERCOST,
               MSC_INT_ASCP_KPI.PRODUCTIONCOST
        FROM MSC_INT_ASCP_MACHINE_UTIL, MSC_DEPARTMENT_RESOURCES, MSC_INT_ASCP_KPI
        WHERE MSC_INT_ASCP_MACHINE_UTIL.PLAN_ID=PlanIdVar AND
              MSC_DEPARTMENT_RESOURCES.PLAN_ID=-1 AND
              MSC_INT_ASCP_MACHINE_UTIL.OrganizationID = MSC_DEPARTMENT_RESOURCES.ORGANIZATION_ID AND
              MSC_INT_ASCP_MACHINE_UTIL.InstanceID = MSC_DEPARTMENT_RESOURCES.SR_INSTANCE_ID AND
              MSC_INT_ASCP_MACHINE_UTIL.DepartmentID = MSC_DEPARTMENT_RESOURCES.DEPARTMENT_ID AND
              MSC_INT_ASCP_MACHINE_UTIL.ResourceID = MSC_DEPARTMENT_RESOURCES.RESOURCE_ID AND
              MSC_INT_ASCP_KPI.PLAN_ID = PlanIdVar AND
              MSC_INT_ASCP_KPI.INSTANCEID = MSC_DEPARTMENT_RESOURCES.SR_INSTANCE_ID AND
              MSC_INT_ASCP_KPI.ORGANIZATIONID = MSC_DEPARTMENT_RESOURCES.ORGANIZATION_ID AND
              MSC_INT_ASCP_KPI.DEPARTMENTID = MSC_DEPARTMENT_RESOURCES.RESOURCE_ID AND -- toggled dept and resource id because in KPI export
              MSC_INT_ASCP_KPI.ITEMID = MSC_DEPARTMENT_RESOURCES.DEPARTMENT_ID AND -- the dept and item are toggled due to lack of category
              MSC_INT_ASCP_KPI.PERIODEND = MSC_INT_ASCP_MACHINE_UTIL.PERIODEND;
Line: 1492

                    g_ErrorCode := 'ERROR_UPDATE_RES_SUMMARY_FROM_MSC_INT_ASCP_MACHINE_UTIL_001001';
Line: 1499

        INSERT INTO MSC_BIS_RES_SUMMARY (PLAN_ID,
                           ORGANIZATION_ID,
			   SR_INSTANCE_ID,
			   DEPARTMENT_ID,
			   RESOURCE_ID,
			   DETAIL_LEVEL,
			   PERIOD_TYPE,
			   RESOURCE_DATE,
			   REQUIRED_HOURS,
			   AVAILABLE_HOURS,
			   UTILIZATION,
			   RESOURCE_GROUP,
			   OVERUTILIZATION_COST,
                           RESOURCE_COST)
        SELECT MSC_INT_ASCP_LABOUR_UTIL.PLAN_ID, MSC_INT_ASCP_LABOUR_UTIL.OrganizationID,
               MSC_INT_ASCP_LABOUR_UTIL.InstanceID, MSC_INT_ASCP_LABOUR_UTIL.DepartmentID,
               MSC_INT_ASCP_LABOUR_UTIL.ResourceID,
               CASE WHEN MSC_INT_ASCP_LABOUR_UTIL.DETAIL_LEVEL='Week' THEN '1' ELSE NULL END, 1,
               TO_DATE(MSC_INT_ASCP_LABOUR_UTIL.PERIODEND,'YYYY-MM-DD')-1/86400, MSC_INT_ASCP_LABOUR_UTIL.USED,
               MSC_INT_ASCP_LABOUR_UTIL.CAPACITY, MSC_INT_ASCP_LABOUR_UTIL.UTILIZATION,
               MSC_DEPARTMENT_RESOURCES.RESOURCE_GROUP_NAME, MSC_INT_ASCP_LABOUR_UTIL.OVERCOST,
               MSC_INT_ASCP_KPI.PRODUCTIONCOST
        FROM MSC_INT_ASCP_LABOUR_UTIL, MSC_DEPARTMENT_RESOURCES, MSC_INT_ASCP_KPI
        WHERE MSC_INT_ASCP_LABOUR_UTIL.PLAN_ID=PlanIdVar AND
              MSC_DEPARTMENT_RESOURCES.PLAN_ID=-1 AND
              MSC_INT_ASCP_LABOUR_UTIL.OrganizationID = MSC_DEPARTMENT_RESOURCES.ORGANIZATION_ID AND
              MSC_INT_ASCP_LABOUR_UTIL.InstanceID = MSC_DEPARTMENT_RESOURCES.SR_INSTANCE_ID AND
              MSC_INT_ASCP_LABOUR_UTIL.DepartmentID = MSC_DEPARTMENT_RESOURCES.DEPARTMENT_ID AND
              MSC_INT_ASCP_LABOUR_UTIL.ResourceID = MSC_DEPARTMENT_RESOURCES.RESOURCE_ID AND
              MSC_INT_ASCP_KPI.PLAN_ID = PlanIdVar AND
              MSC_INT_ASCP_KPI.INSTANCEID = MSC_DEPARTMENT_RESOURCES.SR_INSTANCE_ID AND
              MSC_INT_ASCP_KPI.ORGANIZATIONID = MSC_DEPARTMENT_RESOURCES.ORGANIZATION_ID AND
              MSC_INT_ASCP_KPI.ITEMID = MSC_DEPARTMENT_RESOURCES.DEPARTMENT_ID AND
              MSC_INT_ASCP_KPI.DEPARTMENTID = MSC_DEPARTMENT_RESOURCES.RESOURCE_ID AND
              MSC_INT_ASCP_KPI.PERIODEND = MSC_INT_ASCP_LABOUR_UTIL.PERIODEND;
Line: 1535

                    g_ErrorCode := 'ERROR_UPDATE_RES_SUMMARY_FROM_MSC_INT_ASCP_LABOUR_UTIL_001002';
Line: 1564

    DELETE FROM msc_int_ascp_prodcost_kpi; -- where msc_int_ascp_prodcost_kpi.plan_id=PlanIdVar;
Line: 1566

      g_ErrorCode := 'ERROR_UPDATE_BIS_INV_DETAIL_001001';
Line: 1571

    DELETE FROM msc_int_ascp_totalprodcost; -- where msc_int_ascp_totalprodcost.plan_id=PlanIdVar;
Line: 1573

      g_ErrorCode := 'ERROR_UPDATE_BIS_INV_DETAIL_001002';
Line: 1578

    DELETE FROM msc_int_ascp_transpcost_kpi; -- where msc_int_ascp_transpcost_kpi.plan_id=PlanIdVar;
Line: 1580

      g_ErrorCode := 'ERROR_UPDATE_BIS_INV_DETAIL_001003';
Line: 1586

    DELETE FROM MSC_BIS_INV_DETAIL WHERE PLAN_ID=PlanIdVar;
Line: 1594

        INSERT INTO msc_int_ascp_prodcost_kpi ( plan_id,
            organizationID,
            instanceID,
            itemID,
            periodEnd,
            prodCost )
        SELECT plan_id, organizationID, instanceID, itemID, periodEnd, SUM(resourcecost*resourceusage)
          FROM msc_int_ascp_mfg_plan_machine
          WHERE plan_id=PlanIdVar
          GROUP BY plan_id, organizationID, instanceID, itemID, periodEnd;
Line: 1605

            g_ErrorCode := 'ERROR_UPDATE_BIS_INV_DETAIL_001004';
Line: 1612

        INSERT INTO msc_int_ascp_prodcost_kpi ( plan_id,
                    organizationID,
                    instanceID,
                    itemID,
                    periodEnd,
                    prodCost )
        SELECT plan_id, organizationID, instanceID, itemID, periodEnd, SUM
(resourcecost*resourceusage)
              FROM msc_int_ascp_mfg_plan_labour
              WHERE plan_id=PlanIdVar
              GROUP BY plan_id, organizationID, instanceID, itemID, periodEnd;
Line: 1624

            g_ErrorCode := 'ERROR_UPDATE_BIS_INV_DETAIL_001005';
Line: 1631

        INSERT INTO msc_int_ascp_totalprodcost ( plan_id,
                  organizationID,
                  instanceID,
                  itemID,
                  periodEnd,
                  totalProdCost )
              SELECT msc_int_ascp_prodcost_kpi.plan_id,
msc_int_ascp_prodcost_kpi.organizationID, msc_int_ascp_prodcost_kpi.instanceID,
                  msc_int_ascp_prodcost_kpi.itemID, msc_int_ascp_prodcost_kpi.periodEnd,
SUM(msc_int_ascp_prodcost_kpi.prodCost)
              FROM msc_int_ascp_prodcost_kpi, MSC_INT_ASCP_KPI
              WHERE MSC_INT_ASCP_KPI.PLAN_ID=PlanIdVar AND
MSC_INT_ASCP_KPI.TRANSPORTATIONMODE is null AND
                    msc_int_ascp_prodcost_kpi.plan_id=PlanIdVar AND

msc_int_ascp_prodcost_kpi.organizationID=MSC_INT_ASCP_KPI.OrganizationID AND
                    msc_int_ascp_prodcost_kpi.itemID=MSC_INT_ASCP_KPI.ItemID AND
                    msc_int_ascp_prodcost_kpi.periodEnd=MSC_INT_ASCP_KPI.PERIODEND AND
                    msc_int_ascp_prodcost_kpi.instanceID=MSC_INT_ASCP_KPI.InstanceID
              GROUP BY msc_int_ascp_prodcost_kpi.plan_id,
msc_int_ascp_prodcost_kpi.organizationID, msc_int_ascp_prodcost_kpi.instanceID,
                    msc_int_ascp_prodcost_kpi.itemID, msc_int_ascp_prodcost_kpi.PeriodEnd;
Line: 1654

            g_ErrorCode := 'ERROR_UPDATE_BIS_INV_DETAIL_001006';
Line: 1660

        INSERT INTO msc_int_ascp_transpcost_kpi ( plan_id,
              organizationID,
              instanceID,
              itemID,
              periodEnd,
              transpCost )
          SELECT DISTINCT plan_id, organizationID, instanceID, itemID, periodEnd, sum
(transportationcost)
          FROM msc_int_ascp_kpi
          WHERE plan_id=PlanIdVar and transportationmode is not null
          GROUP BY plan_id, organizationID, instanceID, itemID, periodEnd;
Line: 1672

            g_ErrorCode := 'ERROR_UPDATE_BIS_INV_DETAIL_001007';
Line: 1678

        INSERT INTO MSC_BIS_INV_DETAIL (PLAN_ID,
                                        ORGANIZATION_ID,
                                        SR_INSTANCE_ID,
                                        INVENTORY_ITEM_ID,
                                        DETAIL_LEVEL,
                                        PERIOD_TYPE,
                                        DETAIL_DATE,
                                        MDS_PRICE,
                                        ZONE_ID,
                                        PRODUCTION_COST,
                                        PURCHASING_COST,
                                        CARRYING_COST,
                                        TRANSPORTATION_COST,
                                        OTHER_COST,
                                        PAB,
                                        TOTAL_COST,
                                        SERVICE_LEVEL_1,
                                        SERVICE_LEVEL_2,
                                        SHIP_METHOD,
                                        SUPPLIER_ID,
                                        SUPPLIER_SITE_ID,
                                        SUPPLIER_USAGE,
                                        SUPPLIER_CAPACITY,
                                        MDS_QUANTITY,
                                        INVENTORY_QUANTITY,
                                        LAST_UPDATE_DATE,
                                        LAST_UPDATED_BY,
                                        CREATION_DATE,
                                        CREATED_BY)
                --------------------------------
                -- Supplier-denpendent records
                --------------------------------
                SELECT MSC_INT_ASCP_KPI.PLAN_ID,
                     MSC_INT_ASCP_KPI.OrganizationID,
                     MSC_INT_ASCP_KPI.InstanceID,
                     MSC_INT_ASCP_KPI.ItemID,
                     MSC_INT_ASCP_KPI.PeriodType,
                     1,
                     TO_DATE( MSC_INT_ASCP_KPI.PeriodEnd,'YYYY-MM-DD' )-1/86400,
                     0, --TO_NUMBER(NULL) MDS_PRICE,
                     TO_NUMBER(NULL), -- ZONEID,
                     0, --TO_NUMBER(NULL) PRODUCTION_COST,
                     -- supplier related column: purchase cost
                     case when MSC_INT_ASCP_SUPPLY.COST * MSC_INT_ASCP_SUPPLY.SUPPLY is
null then 0
                     else MSC_INT_ASCP_SUPPLY.COST * MSC_INT_ASCP_SUPPLY.SUPPLY end,
                     0,--TO_NUMBER(NULL) CARRYING_COST,
                     0,--TO_NUMBER(NULL) TRANSPORTATION_COST,
                     0,--TO_NUMBER(NULL) OTHER_COST,
                     0,--TO_NUMBER(NULL) PAB,
                     0,--TO_NUMBER(NULL) TOTAL_COST,
                     0,--TO_NUMBER(NULL) SERVICE_LEVEL_1,
                     0,--TO_NUMBER(NULL) SERVICE_LEVEL_2,
                     null,--TO_CHAR(NULL) SHIP_METHOD,
                     -- supplier related columns
                     MSC_INT_ASCP_SUPPLY.SupplierID,
                     MSC_INT_ASCP_SUPPLY.SupplierSiteID,
                     MSC_INT_ASCP_SUPPLY.SUPPLY,
                     MSC_INT_ASCP_SUPPLY.CAPACITY,
                     0,--TO_NUMBER(NULL) MDS_QUANTITY,
                     0,--TO_NUMBER(NULL) INVENTORY_QUANTITY,
                     SYSDATE, '-1', SYSDATE, '-1'
                FROM MSC_INT_ASCP_KPI, MSC_INT_ASCP_SUPPLY
                WHERE MSC_INT_ASCP_SUPPLY.PLAN_ID=MSC_INT_ASCP_KPI.PLAN_ID AND
                      MSC_INT_ASCP_SUPPLY.OrganizationID=MSC_INT_ASCP_KPI.OrganizationID AND
                      MSC_INT_ASCP_SUPPLY.ItemID=MSC_INT_ASCP_KPI.ItemID AND
                      MSC_INT_ASCP_SUPPLY.PERIODEND=MSC_INT_ASCP_KPI.PERIODEND AND
                      MSC_INT_ASCP_SUPPLY.InstanceID=MSC_INT_ASCP_KPI.InstanceID AND
                      MSC_INT_ASCP_KPI.PLAN_ID=PlanIdVar;
Line: 1748

            g_ErrorCode := 'ERROR_UPDATE_BIS_INV_DETAIL_001008';
Line: 1755

                INSERT INTO MSC_BIS_INV_DETAIL (PLAN_ID,
                                        ORGANIZATION_ID,
                                        SR_INSTANCE_ID,
                                        INVENTORY_ITEM_ID,
                                        DETAIL_LEVEL,
                                        PERIOD_TYPE,
                                        DETAIL_DATE,
                                        MDS_PRICE,
                                        ZONE_ID,
                                        PRODUCTION_COST,
                                        PURCHASING_COST,
                                        CARRYING_COST,
                                        TRANSPORTATION_COST,
                                        OTHER_COST,
                                        PAB,
                                        TOTAL_COST,
                                        SERVICE_LEVEL_1,
                                        SERVICE_LEVEL_2,
                                        SHIP_METHOD,
                                        SUPPLIER_ID,
                                        SUPPLIER_SITE_ID,
                                        SUPPLIER_USAGE,
                                        SUPPLIER_CAPACITY,
                                        MDS_QUANTITY,
                                        INVENTORY_QUANTITY,
                                        LAST_UPDATE_DATE,
                                        LAST_UPDATED_BY,
                                        CREATION_DATE,
                                        CREATED_BY)
                SELECT MSC_INT_ASCP_KPI.PLAN_ID,
                       MSC_INT_ASCP_KPI.OrganizationID,
                       MSC_INT_ASCP_KPI.InstanceID,
                       MSC_INT_ASCP_KPI.ItemID,
                       MSC_INT_ASCP_KPI.PeriodType,
                       1,
                       TO_DATE( MSC_INT_ASCP_KPI.PeriodEnd,'YYYY-MM-DD' )-1/86400,
                       -- demand cost
                       case when MSC_INT_ASCP_KPI.TRANSPORTATIONMODE is null then
MSC_INT_ASCP_KPI.DemandCost else 0 end,
                       MSC_INT_ASCP_KPI.ZoneID,
                       -- production_cost
                       case when MSC_INT_ASCP_KPI.TRANSPORTATIONMODE is null
                       then (
                         case when (SELECT COUNT(*) FROM msc_int_ascp_totalprodcost
                                    WHERE PLAN_ID=PlanIdVar AND
                                          OrganizationID=MSC_INT_ASCP_KPI.OrganizationID
AND
                                          ItemID=MSC_INT_ASCP_KPI.ItemID AND
                                          PERIODEND=MSC_INT_ASCP_KPI.PERIODEND AND
                                          InstanceID=MSC_INT_ASCP_KPI.InstanceID
                                    )=0 then 0
                         else (SELECT DISTINCT totalProdCost FROM
msc_int_ascp_totalprodcost
                               WHERE PLAN_ID=PlanIdVar AND
                                     OrganizationID=MSC_INT_ASCP_KPI.OrganizationID AND
                                     ItemID=MSC_INT_ASCP_KPI.ItemID AND
                                     PERIODEND=MSC_INT_ASCP_KPI.PERIODEND AND
                                     InstanceID=MSC_INT_ASCP_KPI.InstanceID)
                         end)
                       else 0 end,
                       -- supplier related column: purchase cost
                       0, --TO_NUMBER(NULL) PURCHASING_COST,
                       -- carrying cost
                       case when MSC_INT_ASCP_KPI.TRANSPORTATIONMODE is null then
MSC_INT_ASCP_KPI.InventoryCost else 0 end,
                       -- transportastion cost
                       case when MSC_INT_ASCP_KPI.TRANSPORTATIONMODE is null then 0
                       else MSC_INT_ASCP_KPI.TRANSPORTATIONCOST end,
                       -- other cost
                       case when MSC_INT_ASCP_KPI.TRANSPORTATIONMODE is null then
MSC_INT_ASCP_KPI.OtherCost else 0 end,
                       -- PAB
                       case when MSC_INT_ASCP_KPI.TRANSPORTATIONMODE is null
                       then (
                         case when (SELECT COUNT(*) FROM MSC_INT_ASCP_INVENTORY
                                    WHERE PLAN_ID=PlanIdVar AND
                                          OrganizationID=MSC_INT_ASCP_KPI.OrganizationID
AND
                                          ItemID=MSC_INT_ASCP_KPI.ItemID AND
                                          PERIODEND=MSC_INT_ASCP_KPI.PERIODEND AND
                                          InstanceID=MSC_INT_ASCP_KPI.InstanceID
                                   )=0 then 0
                         else (SELECT DISTINCT StorageAmount FROM MSC_INT_ASCP_INVENTORY
WHERE
                                 PLAN_ID=PlanIdVar AND
                                 OrganizationID=MSC_INT_ASCP_KPI.OrganizationID AND
                                 ItemID=MSC_INT_ASCP_KPI.ItemID AND
                                 PERIODEND=MSC_INT_ASCP_KPI.PERIODEND AND
                                 InstanceID=MSC_INT_ASCP_KPI.InstanceID )
                         end)
                       else
                          0
                       end,
                       -- total cost
                       case when MSC_INT_ASCP_KPI.TRANSPORTATIONMODE is null then
                            -- add demand cost
                            case when MSC_INT_ASCP_KPI.DEMANDCOST > 0 then
MSC_INT_ASCP_KPI.DEMANDCOST
                            else 0 end +
                            -- purchasing cost is by supplier, not added here
                            -- production cost
                            case when (SELECT COUNT(*) FROM msc_int_ascp_totalprodcost
                                       WHERE PLAN_ID=PlanIdVar AND
                                             OrganizationID=MSC_INT_ASCP_KPI.OrganizationID
AND
                                             ItemID=MSC_INT_ASCP_KPI.ItemID AND
                                             PERIODEND=MSC_INT_ASCP_KPI.PERIODEND AND
                                             InstanceID=MSC_INT_ASCP_KPI.InstanceID
                                       )=0 then 0
                            else (SELECT DISTINCT totalProdCost FROM
msc_int_ascp_totalprodcost
                                  WHERE PLAN_ID=PlanIdVar AND
                                        OrganizationID=MSC_INT_ASCP_KPI.OrganizationID AND
                                        ItemID=MSC_INT_ASCP_KPI.ItemID AND
                                        PERIODEND=MSC_INT_ASCP_KPI.PERIODEND AND
                                        InstanceID=MSC_INT_ASCP_KPI.InstanceID)
                            end +
                            -- transportation cost
                            case when (SELECT COUNT(*) FROM msc_int_ascp_transpcost_kpi
                                       WHERE PLAN_ID=PlanIdVar AND
                                             OrganizationID=MSC_INT_ASCP_KPI.OrganizationID
AND
                                             ItemID=MSC_INT_ASCP_KPI.ItemID AND
                                             PERIODEND=MSC_INT_ASCP_KPI.PERIODEND AND
                                             InstanceID=MSC_INT_ASCP_KPI.InstanceID
                                       )=0 then 0
                            else (SELECT DISTINCT TRANSPCOST FROM
msc_int_ascp_transpcost_kpi
                                  WHERE PLAN_ID=PlanIdVar AND
                                        OrganizationID=MSC_INT_ASCP_KPI.OrganizationID AND
                                        ItemID=MSC_INT_ASCP_KPI.ItemID AND
                                        PERIODEND=MSC_INT_ASCP_KPI.PERIODEND AND
                                        InstanceID=MSC_INT_ASCP_KPI.InstanceID)
                            end +
                            MSC_INT_ASCP_KPI.INVENTORYCOST +
                            MSC_INT_ASCP_KPI.OTHERCOST
                       else 0 end,
                       case when MSC_INT_ASCP_KPI.TRANSPORTATIONMODE is null then
MSC_INT_ASCP_KPI.DemandFillRate
                       else 0 end,
                       1,
                       MSC_INT_ASCP_KPI.TRANSPORTATIONMODE,
                       -- supplier related columns
                       TO_NUMBER(NULL), --SUPPLIER_ID,
                       TO_NUMBER(NULL), --SUPPLIER_SITE_ID,
                       0,-- TO_NUMBER(NULL) SUPPLIER_USAGE,
                       0,-- TO_NUMBER(NULL) SUPPLIER_CAPACITY,
                       0,
                       0,
                       SYSDATE, '-1', SYSDATE, '-1'
                FROM MSC_INT_ASCP_KPI
                WHERE MSC_INT_ASCP_KPI.PLAN_ID=PlanIdVar;
Line: 1908

            g_ErrorCode := 'ERROR_UPDATE_BIS_INV_DETAIL_001009';
Line: 1932

    DELETE FROM msc_int_source1; -- where msc_int_ascp_prodcost_kpi.plan_id=PlanIdVar;
Line: 1934

      g_ErrorCode := 'ERROR_DELETE_msc_int_source1_001011';
Line: 1939

    DELETE FROM msc_int_source2; -- where msc_int_ascp_prodcost_kpi.plan_id=PlanIdVar;
Line: 1941

      g_ErrorCode := 'ERROR_DELETE_msc_int_source2_001012';
Line: 1947

      INSERT into msc_int_source1 ( item_code, branch_code )
        SELECT msc_int_src_recommend_detail.item_code,
               msc_int_src_recommend_detail.destination_code
        FROM msc_int_src_recommend_detail
        WHERE msc_int_src_recommend_detail.available = 'Yes';
Line: 1953

      g_ErrorCode := 'ERROR_INSERT_msc_int_source1_001021';
Line: 1960

      INSERT into msc_int_source2 ( item_code, branch_code, enable_date, disable_date )
        SELECT msc_int_src_recommend_detail.item_code,
                msc_int_src_recommend_detail.destination_code,
                TO_DATE(msc_int_src_recommend_detail.start_date, 'YYYY-MM-DD'),
                TO_DATE(msc_int_src_recommend_detail.end_date, 'YYYY-MM-DD')
        FROM msc_int_src_recommend_detail
        WHERE msc_int_src_recommend_detail.available = 'Yes';
Line: 1968

      g_ErrorCode := 'ERROR_INSERT_msc_int_source2_001022';
Line: 1974

    DELETE from MSC_SR_SOURCE_ORG
	WHERE
        MSC_SR_SOURCE_ORG.SR_RECEIPT_ID in
          ( select MSC_SR_RECEIPT_ORG.SR_RECEIPT_ID from MSC_SR_ASSIGNMENTS, MSC_SR_RECEIPT_ORG
          where MSC_SR_ASSIGNMENTS.ASSIGNMENT_SET_ID = assignmentSetOutIdVar and
          MSC_SR_ASSIGNMENTS.SOURCING_RULE_ID = MSC_SR_RECEIPT_ORG.SOURCING_RULE_ID );
Line: 1981

          g_ErrorCode := 'ERROR_UPDATE_MSC_INT_SRC_RECOMMEND_DETAIL_001001';
Line: 1986

    DELETE from MSC_SR_RECEIPT_ORG
	WHERE
        MSC_SR_RECEIPT_ORG.SOURCING_RULE_ID in
        ( select MSC_SR_ASSIGNMENTS.SOURCING_RULE_ID from MSC_SR_ASSIGNMENTS
        where MSC_SR_ASSIGNMENTS.ASSIGNMENT_SET_ID = assignmentSetOutIdVar );
Line: 1992

          g_ErrorCode := 'ERROR_UPDATE_MSC_INT_SRC_RECOMMEND_DETAIL_001002';
Line: 1997

    DELETE from MSC_SOURCING_RULES
	WHERE
      MSC_SOURCING_RULES.SOURCING_RULE_ID in
      ( select MSC_SR_ASSIGNMENTS.SOURCING_RULE_ID from MSC_SR_ASSIGNMENTS
      where MSC_SR_ASSIGNMENTS.ASSIGNMENT_SET_ID = assignmentSetOutIdVar );
Line: 2003

          g_ErrorCode := 'ERROR_UPDATE_MSC_INT_SRC_RECOMMEND_DETAIL_001003';
Line: 2008

    DELETE from MSC_SR_ASSIGNMENTS
	WHERE
    MSC_SR_ASSIGNMENTS.ASSIGNMENT_SET_ID = assignmentSetOutIdVar;
Line: 2012

        g_ErrorCode := 'ERROR_UPDATE_MSC_INT_SRC_RECOMMEND_DETAIL_001004';
Line: 2017

    INSERT into MSC_SR_ASSIGNMENTS (
                          ASSIGNMENT_ID,
                          SR_ASSIGNMENT_ID,
                          SR_ASSIGNMENT_INSTANCE_ID,
                          ASSIGNMENT_SET_ID,
                          ASSIGNMENT_TYPE,
                          SOURCING_RULE_ID,
                          SOURCING_RULE_TYPE,
                          ORGANIZATION_ID,
                          SR_INSTANCE_ID,
                          INVENTORY_ITEM_ID,
                          LAST_UPDATE_DATE,
                          LAST_UPDATED_BY,
                          CREATION_DATE,
                          CREATED_BY)
             SELECT
                        MSC_SR_ASSIGNMENTS_S.NEXTVAL,
			-1 * MSC_SR_ASSIGNMENTS_S.NEXTVAL, -- Part of unique key. Maybe should use current value.
			-1, -- // -1 until we figure out what goes here.
                        assignmentSetOutIdVar,
			6, -- // 6 is item-org assignment type
                        MSC_SOURCING_RULES_S.NEXTVAL, -- //Cache these because we cannot look them up by name
			1,
                        substr(msc_int_source1.branch_code,instr(msc_int_source1.branch_code,':',1,1)+1),
                        substr(msc_int_source1.item_code,1,instr(msc_int_source1.item_code,':',1,1)-1),
                        substr(msc_int_source1.item_code,instr(msc_int_source1.item_code,':',1,1)+1), -- CHANGE
                        sysdate,
                        '-1',
                        sysdate,
                        '-1'
                FROM msc_int_source1;
Line: 2049

          g_ErrorCode := 'ERROR_UPDATE_MSC_INT_SRC_RECOMMEND_DETAIL_001005';
Line: 2055

    INSERT into MSC_SOURCING_RULES (
                SOURCING_RULE_ID,
                SR_SOURCING_RULE_ID,
                SR_INSTANCE_ID,
                ORGANIZATION_ID,
                SOURCING_RULE_NAME,
                STATUS,
                SOURCING_RULE_TYPE,
                PLANNING_ACTIVE,
                LAST_UPDATE_DATE,
                LAST_UPDATED_BY,
                CREATION_DATE,
                CREATED_BY,
                DELETED_FLAG )
      SELECT DISTINCT
                MSC_SR_ASSIGNMENTS.SOURCING_RULE_ID,
                -1 * MSC_SR_ASSIGNMENTS.SOURCING_RULE_ID,
                MSC_SR_ASSIGNMENTS.SR_INSTANCE_ID, -- // I suppose these are the same.
                MSC_SR_ASSIGNMENTS.ORGANIZATION_ID,
                (MSC_ASSIGNMENT_SETS.ASSIGNMENT_SET_NAME || ':' || MSC_SYSTEM_ITEMS.ITEM_NAME || ':' || MSC_PLAN_ORGANIZATIONS.ORGANIZATION_CODE),
                1, -- // STATUS
                1, -- // 1 means sourcing rule type
                1,
                sysdate,
                '-1',
                sysdate,
                '-1',
                '2'
      FROM MSC_SR_ASSIGNMENTS , MSC_ASSIGNMENT_SETS , MSC_SYSTEM_ITEMS , MSC_PLAN_ORGANIZATIONS -- ( alias org )
      WHERE
	MSC_SR_ASSIGNMENTS.ASSIGNMENT_SET_ID = assignmentSetOutIdVar and
        MSC_ASSIGNMENT_SETS.ASSIGNMENT_SET_ID = MSC_SR_ASSIGNMENTS.ASSIGNMENT_SET_ID and
        MSC_SYSTEM_ITEMS.SR_INSTANCE_ID = MSC_SR_ASSIGNMENTS.SR_INSTANCE_ID and
        MSC_SYSTEM_ITEMS.ORGANIZATION_ID = MSC_SR_ASSIGNMENTS.ORGANIZATION_ID and
        MSC_SYSTEM_ITEMS.INVENTORY_ITEM_ID = MSC_SR_ASSIGNMENTS.INVENTORY_ITEM_ID and
        MSC_SYSTEM_ITEMS.PLAN_ID = -1 and
        MSC_PLAN_ORGANIZATIONS.PLAN_ID = planIdVar and
        MSC_PLAN_ORGANIZATIONS.SR_INSTANCE_ID = MSC_SR_ASSIGNMENTS.SR_INSTANCE_ID and
        MSC_PLAN_ORGANIZATIONS.ORGANIZATION_ID = MSC_SR_ASSIGNMENTS.ORGANIZATION_ID;
Line: 2095

          g_ErrorCode := 'ERROR_UPDATE_MSC_INT_SRC_RECOMMEND_DETAIL_001006';
Line: 2100

    INSERT into MSC_SR_RECEIPT_ORG (
                SR_RECEIPT_ID,
                SR_SR_RECEIPT_ID,
                SR_INSTANCE_ID,
                SR_RECEIPT_ORG,
                RECEIPT_ORG_INSTANCE_ID,
                SOURCING_RULE_ID,
                RECEIPT_PARTNER_ID,
                RECEIPT_PARTNER_SITE_ID,
                EFFECTIVE_DATE,
                DISABLE_DATE,
                LAST_UPDATE_DATE,
                LAST_UPDATED_BY,
                CREATION_DATE,
                CREATED_BY
		) -- // msc_int_source2 == source
    SELECT
                MSC_SR_RECEIPT_ORG_S.NEXTVAL,
		-1 * MSC_SR_RECEIPT_ORG_S.NEXTVAL,
		substr(msc_int_source2.branch_code,1,instr(msc_int_source2.branch_code,':',1,1)-1), -- // I suspect I am supposed to put something here but I don't know what.
		substr(msc_int_source2.branch_code,instr(msc_int_source2.branch_code,':',1,1)+1),
		substr(msc_int_source2.branch_code,1,instr(msc_int_source2.branch_code,':',1,1)-1), -- // Eventually this should be obtained from the branch code.
		MSC_SR_ASSIGNMENTS.SOURCING_RULE_ID,
		NULL, -- This is empty until we get customer sourcing
		NULL, -- This is empty until we get customer sourcing
		msc_int_source2.enable_date,
		msc_int_source2.disable_date,
                sysdate,
                '-1',
                sysdate,
                '-1'
    FROM MSC_SR_ASSIGNMENTS, msc_int_source2
    WHERE
	MSC_SR_ASSIGNMENTS.ASSIGNMENT_SET_ID = assignmentSetOutIdVar and
        MSC_SR_ASSIGNMENTS.SR_INSTANCE_ID || ':' || MSC_SR_ASSIGNMENTS.INVENTORY_ITEM_ID = msc_int_source2.item_code and
        MSC_SR_ASSIGNMENTS.SR_INSTANCE_ID || ':' || MSC_SR_ASSIGNMENTS.ORGANIZATION_ID = msc_int_source2.branch_code;
Line: 2137

          g_ErrorCode := 'ERROR_UPDATE_MSC_INT_SRC_RECOMMEND_DETAIL_001007';
Line: 2142

    INSERT into MSC_SR_SOURCE_ORG (
		SR_SOURCE_ID,
		SR_SR_SOURCE_ID,
		SR_RECEIPT_ID,
		SOURCE_PARTNER_ID,
		SOURCE_PARTNER_SITE_ID,
                SR_INSTANCE_ID,
                SOURCE_ORGANIZATION_ID,
                SOURCE_ORG_INSTANCE_ID,
                SHIP_METHOD,
                ALLOCATION_PERCENT,
                RANK,
                SOURCE_TYPE,
                LAST_UPDATE_DATE,
                LAST_UPDATED_BY,
                CREATION_DATE,
                CREATED_BY
		)
    SELECT
                MSC_SR_SOURCE_ORG_S.NEXTVAL,
		-1 * MSC_SR_SOURCE_ORG_S.NEXTVAL,
		MSC_SR_RECEIPT_ORG.SR_RECEIPT_ID,
		case when MSC_INT_SRC_RECOMMEND_DETAIL.sourcing_type = 'Supplier'
                     then substr(MSC_INT_SRC_RECOMMEND_DETAIL.origin_code,1,instr(MSC_INT_SRC_RECOMMEND_DETAIL.origin_code,':',1,1)-1)
                     else NULL
                end,
                case when MSC_INT_SRC_RECOMMEND_DETAIL.sourcing_type = 'Supplier'
                     then substr( MSC_INT_SRC_RECOMMEND_DETAIL.origin_code, instr(MSC_INT_SRC_RECOMMEND_DETAIL.origin_code, ':', 1,1) + 1 )
                     else NULL
                end,
                MSC_SR_RECEIPT_ORG.SR_INSTANCE_ID,
                case when not MSC_INT_SRC_RECOMMEND_DETAIL.sourcing_type = 'Supplier'
                     then substr( MSC_INT_SRC_RECOMMEND_DETAIL.origin_code, instr(MSC_INT_SRC_RECOMMEND_DETAIL.origin_code, ':', 1,1) + 1 )
                     else NULL
                end,
                case when not MSC_INT_SRC_RECOMMEND_DETAIL.sourcing_type = 'Supplier'
                     then substr(MSC_INT_SRC_RECOMMEND_DETAIL.origin_code,1,instr(MSC_INT_SRC_RECOMMEND_DETAIL.origin_code,':',1,1)-1)
                     else NULL
                end,
                case when MSC_INT_SRC_RECOMMEND_DETAIL.sourcing_type = 'Internal'
                     then MSC_INT_SRC_RECOMMEND_DETAIL.transport_mode_code
                end,
                NVL(MSC_INT_SRC_RECOMMEND_DETAIL.sourcing_percent,100),
                MSC_INT_SRC_RECOMMEND_DETAIL.preference,
                case when MSC_INT_SRC_RECOMMEND_DETAIL.sourcing_type = 'Internal' then 1
                     when MSC_INT_SRC_RECOMMEND_DETAIL.sourcing_type = 'Manufactured' then 2
                     when MSC_INT_SRC_RECOMMEND_DETAIL.sourcing_type = 'Supplier' then 3
                     else 1
                end,
                sysdate,
                '-1',
                sysdate,
                '-1'
    FROM MSC_SR_ASSIGNMENTS, MSC_SR_RECEIPT_ORG, MSC_INT_SRC_RECOMMEND_DETAIL
    WHERE MSC_SR_ASSIGNMENTS.ASSIGNMENT_SET_ID = assignmentSetOutIdVar
      AND MSC_SR_ASSIGNMENTS.SOURCING_RULE_ID = MSC_SR_RECEIPT_ORG.SOURCING_RULE_ID
      AND MSC_SR_RECEIPT_ORG.SR_RECEIPT_ORG = MSC_SR_ASSIGNMENTS.ORGANIZATION_ID
      AND MSC_SR_RECEIPT_ORG.RECEIPT_ORG_INSTANCE_ID || ':' || MSC_SR_RECEIPT_ORG.SR_RECEIPT_ORG = MSC_INT_SRC_RECOMMEND_DETAIL.destination_code
      AND MSC_SR_RECEIPT_ORG.EFFECTIVE_DATE = TO_DATE( MSC_INT_SRC_RECOMMEND_DETAIL.start_date, 'YYYY-MM-DD' )
      AND MSC_SR_ASSIGNMENTS.INVENTORY_ITEM_ID = substr(MSC_INT_SRC_RECOMMEND_DETAIL.item_code,instr(MSC_INT_SRC_RECOMMEND_DETAIL.item_code,':',1)+1)
      AND MSC_INT_SRC_RECOMMEND_DETAIL.available = 'Yes';
Line: 2204

          g_ErrorCode := 'ERROR_UPDATE_MSC_INT_SRC_RECOMMEND_DETAIL_001007';
Line: 2236

         SELECT COMPILE_DESIGNATOR INTO l_PlanName
         FROM MSC_PLANS
         WHERE PLAN_ID = PlanId;
Line: 2260

       SELECT USER_ID INTO V_USER_ID
       FROM FND_USER
       WHERE USER_ID = USERID;
Line: 2271

           SELECT RESPONSIBILITY_ID  INTO V_RESPID
           FROM FND_USER_RESP_GROUPS
           WHERE USER_ID = V_USER_ID AND RESPONSIBILITY_ID = RESPID AND
          (sysdate BETWEEN nvl(start_date,sysdate) AND nvl(end_date,sysdate));
Line: 2283

           SELECT APPLICATION_ID  INTO  V_APPID
           FROM FND_RESPONSIBILITY
           WHERE  RESPONSIBILITY_ID = V_RESPID;