/// <summary> /// Method checks params of routing operation and show warning message with details if parameters are invalid /// </summary> /// <param name="schedule"></param> /// <param name="orders"></param> /// <param name="routes"></param> /// <returns></returns> private bool _CheckRoutingParams(Schedule schedule, ICollection <Order> orders, ICollection <Route> routes) { bool isValid = false; List <DataObject> invalidObjects = new List <DataObject>(); invalidObjects.AddRange(RoutingCmdHelpers.ValidateObjects <Order>(orders)); invalidObjects.AddRange(RoutingCmdHelpers.ValidateObjects <Route>(routes)); if (invalidObjects.Count > 0) { RoutingSolveValidator validator = new RoutingSolveValidator(); ICollection <MessageDetail> details = validator.GetValidateMessageDetail(invalidObjects.ToArray()); string invalidOperationTitle = ((string)App.Current.FindResource("SolveValidationOperationInvalid")); App.Current.Messenger.AddMessage(MessageType.Error, invalidOperationTitle, details); } else { isValid = true; } return(isValid); }
/// <summary> /// Shows solve validation dialog /// </summary> /// <param name="invalidObjects"></param> protected void _ShowSolveValidationResult(ESRI.ArcLogistics.Data.DataObject[] invalidObjects) { RoutingSolveValidator validator = new RoutingSolveValidator(); validator.Validate(invalidObjects); }