/// <summary> /// Delete Cascade Stack /// </summary> /// <param name="transport"></param> /// <param name="veh"></param> /// <param name="stack"></param> /// <returns></returns> public int DeleteCascadeStackTransport( RecTransport transport, RecTransportVehicleStd veh, RecTransportStack stack ) { ProjectManager mgr = new ProjectManager(); RecElementIdStatusStd std = new RecElementIdStatusStd { Factory = transport.Factory, Project = transport.Project }; List<RecElementIdStatusStd> settings = mgr.LoadStandardSettings( std ); // Update Status, Note this can be optimized! RecTransport recTransportStatus = new RecTransport( transport ); recTransportStatus.TransportStatus = (int)TransportStatus.NoStatus; recTransportStatus.ElementIdStatus = RecElementIdStatusStd.GetLocalSettingFromGlobalId( settings, recTransportStatus.TransportStatus).StatusId; UpdateStatus( transport, recTransportStatus, settings ); // No reset ModelPlanner svc = new ModelPlanner(); svc.ResetTransport( transport.Factory, transport.Project, 0, transport.TransportId, veh.VehicleId, stack.StackId ); ProjectManager StackSvc = new ProjectManager(); return StackSvc.DeleteTransportStack( stack ); }