1014: END IF;
1015: -- End : Basic validations for the input parameters --
1016:
1017: IF ( (p_inf_sch_flag = 'Y')
1018: AND NOT (p_inf_sch_mode IN (WIP_CONSTANTS.FORWARDS,
1019: WIP_CONSTANTS.MIDPOINT_FORWARDS,
1020: WIP_CONSTANTS.CURRENT_OP,
1021: WIP_CONSTANTS.BACKWARDS,
1022: WIP_CONSTANTS.MIDPOINT_BACKWARDS)
1015: -- End : Basic validations for the input parameters --
1016:
1017: IF ( (p_inf_sch_flag = 'Y')
1018: AND NOT (p_inf_sch_mode IN (WIP_CONSTANTS.FORWARDS,
1019: WIP_CONSTANTS.MIDPOINT_FORWARDS,
1020: WIP_CONSTANTS.CURRENT_OP,
1021: WIP_CONSTANTS.BACKWARDS,
1022: WIP_CONSTANTS.MIDPOINT_BACKWARDS)
1023: OR p_inf_sch_mode IS NULL
1016:
1017: IF ( (p_inf_sch_flag = 'Y')
1018: AND NOT (p_inf_sch_mode IN (WIP_CONSTANTS.FORWARDS,
1019: WIP_CONSTANTS.MIDPOINT_FORWARDS,
1020: WIP_CONSTANTS.CURRENT_OP,
1021: WIP_CONSTANTS.BACKWARDS,
1022: WIP_CONSTANTS.MIDPOINT_BACKWARDS)
1023: OR p_inf_sch_mode IS NULL
1024: )
1017: IF ( (p_inf_sch_flag = 'Y')
1018: AND NOT (p_inf_sch_mode IN (WIP_CONSTANTS.FORWARDS,
1019: WIP_CONSTANTS.MIDPOINT_FORWARDS,
1020: WIP_CONSTANTS.CURRENT_OP,
1021: WIP_CONSTANTS.BACKWARDS,
1022: WIP_CONSTANTS.MIDPOINT_BACKWARDS)
1023: OR p_inf_sch_mode IS NULL
1024: )
1025: )
1018: AND NOT (p_inf_sch_mode IN (WIP_CONSTANTS.FORWARDS,
1019: WIP_CONSTANTS.MIDPOINT_FORWARDS,
1020: WIP_CONSTANTS.CURRENT_OP,
1021: WIP_CONSTANTS.BACKWARDS,
1022: WIP_CONSTANTS.MIDPOINT_BACKWARDS)
1023: OR p_inf_sch_mode IS NULL
1024: )
1025: )
1026: THEN
3304: BOR.activity_id,
3305: BOR.standard_rate_flag,
3306: BOR.assigned_units,
3307: decode(BOR.basis_type,
3308: wip_constants.PER_LOT,
3309: BOR.usage_rate_or_amount,
3310: BOR.usage_rate_or_amount * nvl(WCRO.QUANTITY_PER_ASSEMBLY,1)
3311: ) usage_rate_or_amount,
3312: BOR.USAGE_RATE_OR_AMOUNT_INVERSE,
3715: l_stmt_num := 330;
3716:
3717: IF (l_inf_sch_flag = 'Y') THEN
3718:
3719: IF (p_inf_sch_mode IN (WIP_CONSTANTS.FORWARDS,
3720: WIP_CONSTANTS.MIDPOINT_FORWARDS,
3721: WIP_CONSTANTS.CURRENT_OP)
3722: )
3723: THEN
3716:
3717: IF (l_inf_sch_flag = 'Y') THEN
3718:
3719: IF (p_inf_sch_mode IN (WIP_CONSTANTS.FORWARDS,
3720: WIP_CONSTANTS.MIDPOINT_FORWARDS,
3721: WIP_CONSTANTS.CURRENT_OP)
3722: )
3723: THEN
3724: l_inf_sch_start_date := nvl(p_inf_sch_date, nvl(l_curr_op_start_date, sysdate));
3717: IF (l_inf_sch_flag = 'Y') THEN
3718:
3719: IF (p_inf_sch_mode IN (WIP_CONSTANTS.FORWARDS,
3720: WIP_CONSTANTS.MIDPOINT_FORWARDS,
3721: WIP_CONSTANTS.CURRENT_OP)
3722: )
3723: THEN
3724: l_inf_sch_start_date := nvl(p_inf_sch_date, nvl(l_curr_op_start_date, sysdate));
3725: l_inf_sch_comp_date := NULL;
3722: )
3723: THEN
3724: l_inf_sch_start_date := nvl(p_inf_sch_date, nvl(l_curr_op_start_date, sysdate));
3725: l_inf_sch_comp_date := NULL;
3726: ELSIF (p_inf_sch_mode IN (WIP_CONSTANTS.BACKWARDS,
3727: WIP_CONSTANTS.MIDPOINT_BACKWARDS)
3728: )
3729: THEN
3730: l_inf_sch_start_date := NULL;
3723: THEN
3724: l_inf_sch_start_date := nvl(p_inf_sch_date, nvl(l_curr_op_start_date, sysdate));
3725: l_inf_sch_comp_date := NULL;
3726: ELSIF (p_inf_sch_mode IN (WIP_CONSTANTS.BACKWARDS,
3727: WIP_CONSTANTS.MIDPOINT_BACKWARDS)
3728: )
3729: THEN
3730: l_inf_sch_start_date := NULL;
3731: l_inf_sch_comp_date := nvl(p_inf_sch_date, nvl(l_curr_op_compl_date, sysdate));
3732: ELSIF (p_inf_sch_mode IS NULL) THEN
3733:
3734: IF (l_is_curr_op_reco = 'Y') THEN
3735: -- ST : Fix for bug 5181364 : do forward scheduling instead of midpoints_forward scheduling.
3736: -- l_inf_sch_mode := WIP_CONSTANTS.MIDPOINT_FORWARDS;
3737: l_inf_sch_mode := WIP_CONSTANTS.FORWARDS;
3738: ELSE
3739: l_inf_sch_mode := WIP_CONSTANTS.CURRENT_OP;
3740: END IF;
3733:
3734: IF (l_is_curr_op_reco = 'Y') THEN
3735: -- ST : Fix for bug 5181364 : do forward scheduling instead of midpoints_forward scheduling.
3736: -- l_inf_sch_mode := WIP_CONSTANTS.MIDPOINT_FORWARDS;
3737: l_inf_sch_mode := WIP_CONSTANTS.FORWARDS;
3738: ELSE
3739: l_inf_sch_mode := WIP_CONSTANTS.CURRENT_OP;
3740: END IF;
3741:
3735: -- ST : Fix for bug 5181364 : do forward scheduling instead of midpoints_forward scheduling.
3736: -- l_inf_sch_mode := WIP_CONSTANTS.MIDPOINT_FORWARDS;
3737: l_inf_sch_mode := WIP_CONSTANTS.FORWARDS;
3738: ELSE
3739: l_inf_sch_mode := WIP_CONSTANTS.CURRENT_OP;
3740: END IF;
3741:
3742: l_inf_sch_start_date := nvl(p_inf_sch_date, nvl(l_curr_op_start_date, sysdate));
3743: l_inf_sch_comp_date := NULL;
3908:
3909: l_stmt_num := 10;
3910:
3911: IF ( (p_inf_sch_flag = 'Y')
3912: AND (p_inf_sch_mode NOT IN (WIP_CONSTANTS.MIDPOINT_FORWARDS,
3913: WIP_CONSTANTS.CURRENT_OP)
3914: OR p_inf_sch_mode IS NOT NULL
3915: )
3916: )
3909: l_stmt_num := 10;
3910:
3911: IF ( (p_inf_sch_flag = 'Y')
3912: AND (p_inf_sch_mode NOT IN (WIP_CONSTANTS.MIDPOINT_FORWARDS,
3913: WIP_CONSTANTS.CURRENT_OP)
3914: OR p_inf_sch_mode IS NOT NULL
3915: )
3916: )
3917: THEN
4700: IF (p_inf_sch_mode IS NULL) THEN
4701:
4702: IF (l_on_rec_path = 'Y') THEN
4703: -- ST : Fix for bug 5181364 : do forward scheduling instead of midpoints_forward scheduling.
4704: -- l_inf_sch_mode := WIP_CONSTANTS.MIDPOINT_FORWARDS;
4705: l_inf_sch_mode := WIP_CONSTANTS.FORWARDS;
4706: ELSE
4707: l_inf_sch_mode := WIP_CONSTANTS.CURRENT_OP;
4708: END IF;
4701:
4702: IF (l_on_rec_path = 'Y') THEN
4703: -- ST : Fix for bug 5181364 : do forward scheduling instead of midpoints_forward scheduling.
4704: -- l_inf_sch_mode := WIP_CONSTANTS.MIDPOINT_FORWARDS;
4705: l_inf_sch_mode := WIP_CONSTANTS.FORWARDS;
4706: ELSE
4707: l_inf_sch_mode := WIP_CONSTANTS.CURRENT_OP;
4708: END IF;
4709:
4703: -- ST : Fix for bug 5181364 : do forward scheduling instead of midpoints_forward scheduling.
4704: -- l_inf_sch_mode := WIP_CONSTANTS.MIDPOINT_FORWARDS;
4705: l_inf_sch_mode := WIP_CONSTANTS.FORWARDS;
4706: ELSE
4707: l_inf_sch_mode := WIP_CONSTANTS.CURRENT_OP;
4708: END IF;
4709:
4710: END IF;
4711:
5338: WCO.STANDARD_OPERATION_ID,
5339: WCO.DEPARTMENT_ID,
5340: WCO.OPERATION_DESCRIPTION,
5341: -- Bug 5603843. Modified inside nvl clause from 0 to wdj.start_quantity
5342: ROUND(nvl(WCO.RECO_SCHEDULED_QUANTITY, wdj.start_quantity), WIP_CONSTANTS.MAX_DISPLAYED_PRECISION),
5343: (decode(wdj.status_type,3, round(wdj.start_quantity,
5344: wip_constants.max_displayed_precision), 0)),
5345: 0, 0, 0, 0, 0,
5346: decode(recommended, 'Y', nvl(RECO_START_DATE, WCO.LAST_UPDATE_DATE), WCO.LAST_UPDATE_DATE),
5340: WCO.OPERATION_DESCRIPTION,
5341: -- Bug 5603843. Modified inside nvl clause from 0 to wdj.start_quantity
5342: ROUND(nvl(WCO.RECO_SCHEDULED_QUANTITY, wdj.start_quantity), WIP_CONSTANTS.MAX_DISPLAYED_PRECISION),
5343: (decode(wdj.status_type,3, round(wdj.start_quantity,
5344: wip_constants.max_displayed_precision), 0)),
5345: 0, 0, 0, 0, 0,
5346: decode(recommended, 'Y', nvl(RECO_START_DATE, WCO.LAST_UPDATE_DATE), WCO.LAST_UPDATE_DATE),
5347: decode(recommended, 'Y', nvl(RECO_COMPLETION_DATE, WCO.LAST_UPDATE_DATE), WCO.LAST_UPDATE_DATE),
5348: decode(recommended, 'Y', nvl(RECO_START_DATE, WCO.LAST_UPDATE_DATE), WCO.LAST_UPDATE_DATE),