554: debug_output('exception calculation disabled');
555: RETURN;
556: END IF;
557:
558: --get tp uoms from mst_plans
559: SELECT weight_uom, volume_uom
560: INTO tp_weight_uom, tp_volume_uom
561: FROM mst_plans
562: WHERE plan_id = plan_idIn;
557:
558: --get tp uoms from mst_plans
559: SELECT weight_uom, volume_uom
560: INTO tp_weight_uom, tp_volume_uom
561: FROM mst_plans
562: WHERE plan_id = plan_idIn;
563:
564:
565: --find vehicle with the biggest volume
699: RETURN;
700: END IF;
701:
702:
703: --get tp uoms from mst_plans
704: SELECT weight_uom, volume_uom
705: INTO tp_weight_uom, tp_volume_uom
706: FROM mst_plans
707: WHERE plan_id = plan_idIn;
702:
703: --get tp uoms from mst_plans
704: SELECT weight_uom, volume_uom
705: INTO tp_weight_uom, tp_volume_uom
706: FROM mst_plans
707: WHERE plan_id = plan_idIn;
708:
709:
710: /* Debug query
862: RETURN;
863: END IF;
864:
865:
866: --get tp uoms from mst_plans
867: SELECT weight_uom, volume_uom
868: INTO tp_weight_uom, tp_volume_uom
869: FROM mst_plans
870: WHERE plan_id = plan_idIn;
865:
866: --get tp uoms from mst_plans
867: SELECT weight_uom, volume_uom
868: INTO tp_weight_uom, tp_volume_uom
869: FROM mst_plans
870: WHERE plan_id = plan_idIn;
871:
872: --find vehicle with the biggest volume
873: SELECT MAX(NVL(CONV_TO_UOM(si.internal_volume, si.volume_uom_code, tp_volume_uom, si.inventory_item_id),0)) as volume
1024:
1025: --current date is plan_start_date (not sysdate)
1026: --SELECT plan_start_date into planStartDate
1027: SELECT start_date into planStartDate
1028: FROM mst_plans
1029: WHERE plan_id = plan_idIn;
1030:
1031: --Create fresh entry for exception and keep exception_id for updates in details table
1032: INSERT INTO mst_exceptions (exception_id, plan_id, exception_group, exception_type, exception_count,
1138: det.ship_from_location_id, det.ship_to_location_id,
1139: ((det.latest_acceptable_date - plan.start_date)*24) AS availTime
1140: FROM MST_DELIVERY_DETAILS det,
1141: MST_DELIVERY_ASSIGNMENTS da,
1142: MST_PLANS plan
1143: WHERE det.plan_id = plan_idIn
1144: AND det.SPLIT_FROM_DELIVERY_DETAIL_ID is null --added so we consider only input data from TE
1145: AND det.delivery_detail_id = da.delivery_detail_id (+)
1146: AND da.parent_delivery_detail_id is null
1470: ( SELECT caldates.CALENDAR_DATE
1471: FROM BOM_CALENDAR_DATES caldates,
1472: BOM_SHIFT_DATES sdates,
1473: BOM_SHIFT_TIMES bshift,
1474: MST_PLANS plan
1475: WHERE plan.plan_id = plan_idIn
1476: AND caldates.CALENDAR_CODE = sdates.CALENDAR_CODE (+)
1477: AND caldates.CALENDAR_DATE = sdates.SHIFT_DATE (+)
1478: AND sdates.CALENDAR_CODE = bshift.CALENDAR_CODE (+)
1669: ( SELECT caldates.CALENDAR_DATE
1670: FROM BOM_CALENDAR_DATES caldates,
1671: BOM_SHIFT_DATES sdates,
1672: BOM_SHIFT_TIMES bshift,
1673: MST_PLANS plan
1674: WHERE plan.plan_id = plan_idIn
1675: AND caldates.CALENDAR_CODE = sdates.CALENDAR_CODE (+)
1676: AND caldates.CALENDAR_DATE = sdates.SHIFT_DATE (+)
1677: AND sdates.CALENDAR_CODE = bshift.CALENDAR_CODE (+)
1908:
1909: --get TP UOMs
1910: SELECT p.TIME_UOM, p.DISTANCE_UOM, p.dimension_uom, p.volume_uom
1911: INTO tp_time_uom, tp_distance_uom, tp_dimension_uom, tp_volume_uom
1912: FROM MST_PLANS p
1913: WHERE plan_id = plan_idIn;
1914: debug_output('tp_distance_uom=' || tp_distance_uom || ', tp_time_uom=' || tp_time_uom);
1915: debug_output('tp_dimension_uom=' || tp_dimension_uom || ', tp_volume_uom=' || tp_volume_uom);
1916:
1986: BEGIN
1987: msg_seq_num := 0;
1988:
1989: SELECT count(*) into planRows
1990: FROM mst_plans
1991: WHERE plan_id = plan_idIn;
1992:
1993: IF planRows <> 1 THEN
1994: SELECT 'no entry or too many entries in mst plans for plan ' || TO_CHAR(plan_idIn)
1990: FROM mst_plans
1991: WHERE plan_id = plan_idIn;
1992:
1993: IF planRows <> 1 THEN
1994: SELECT 'no entry or too many entries in mst plans for plan ' || TO_CHAR(plan_idIn)
1995: INTO errbuf
1996: FROM dual;
1997: retcode := 2;
1998: RETURN;
1998: RETURN;
1999: END IF;
2000:
2001:
2002: --Obtain data from mst_plans
2003: SELECT created_by, state, program, request_id
2004: INTO user_id, mst_state, mst_program, mst_request_id
2005: FROM mst_plans
2006: WHERE plan_id = plan_idIn;
2001:
2002: --Obtain data from mst_plans
2003: SELECT created_by, state, program, request_id
2004: INTO user_id, mst_state, mst_program, mst_request_id
2005: FROM mst_plans
2006: WHERE plan_id = plan_idIn;
2007:
2008: debug_output('MST_PLANS.state=' || mst_state);
2009: debug_output('MST_PLANS.program=' || mst_program);
2004: INTO user_id, mst_state, mst_program, mst_request_id
2005: FROM mst_plans
2006: WHERE plan_id = plan_idIn;
2007:
2008: debug_output('MST_PLANS.state=' || mst_state);
2009: debug_output('MST_PLANS.program=' || mst_program);
2010: debug_output('MST_PLANS.request_id=' || mst_request_id);
2011: debug_output('snapshotIsCaller=' || snapshotIsCaller);
2012:
2005: FROM mst_plans
2006: WHERE plan_id = plan_idIn;
2007:
2008: debug_output('MST_PLANS.state=' || mst_state);
2009: debug_output('MST_PLANS.program=' || mst_program);
2010: debug_output('MST_PLANS.request_id=' || mst_request_id);
2011: debug_output('snapshotIsCaller=' || snapshotIsCaller);
2012:
2013: --Determine if audit report can be run. Need to check if another instance of engine/snapshot/audit is running
2006: WHERE plan_id = plan_idIn;
2007:
2008: debug_output('MST_PLANS.state=' || mst_state);
2009: debug_output('MST_PLANS.program=' || mst_program);
2010: debug_output('MST_PLANS.request_id=' || mst_request_id);
2011: debug_output('snapshotIsCaller=' || snapshotIsCaller);
2012:
2013: --Determine if audit report can be run. Need to check if another instance of engine/snapshot/audit is running
2014: --Obtain own request id
2048: debug_output('mst_request_id == owd_request_id');
2049: END IF;
2050: */
2051:
2052: --update MST_PLANS signaling successful start of audit report
2053: UPDATE MST_PLANS
2054: SET state=4, program=8, request_id = own_request_id
2055: WHERE plan_id = plan_idIn;
2056: COMMIT;
2049: END IF;
2050: */
2051:
2052: --update MST_PLANS signaling successful start of audit report
2053: UPDATE MST_PLANS
2054: SET state=4, program=8, request_id = own_request_id
2055: WHERE plan_id = plan_idIn;
2056: COMMIT;
2057:
2131: IF snapshotIsCaller = 1 THEN
2132: mst_state := 1;
2133: END IF;
2134:
2135: --update MST_PLANS signaling successful end of audit report
2136: UPDATE MST_PLANS
2137: SET state=mst_state, program=NULL
2138: WHERE plan_id = plan_idIn;
2139: debug_output('Update MST_PLANS.program = NULL');
2132: mst_state := 1;
2133: END IF;
2134:
2135: --update MST_PLANS signaling successful end of audit report
2136: UPDATE MST_PLANS
2137: SET state=mst_state, program=NULL
2138: WHERE plan_id = plan_idIn;
2139: debug_output('Update MST_PLANS.program = NULL');
2140: debug_output('Update MST_PLANS.state = ' || mst_state);
2135: --update MST_PLANS signaling successful end of audit report
2136: UPDATE MST_PLANS
2137: SET state=mst_state, program=NULL
2138: WHERE plan_id = plan_idIn;
2139: debug_output('Update MST_PLANS.program = NULL');
2140: debug_output('Update MST_PLANS.state = ' || mst_state);
2141: debug_output('Audit report finished successfully, exiting now...');
2142: commit;
2143:
2136: UPDATE MST_PLANS
2137: SET state=mst_state, program=NULL
2138: WHERE plan_id = plan_idIn;
2139: debug_output('Update MST_PLANS.program = NULL');
2140: debug_output('Update MST_PLANS.state = ' || mst_state);
2141: debug_output('Audit report finished successfully, exiting now...');
2142: commit;
2143:
2144: errbuf := NULL;