diff --git a/release-notes.xml b/release-notes.xml index 0ef3b86..6284537 100644 --- a/release-notes.xml +++ b/release-notes.xml @@ -85,6 +85,8 @@ Fixes a bug when no organization is present in the current session. + + Gave user information if document is already processed. Extens the DocumentWorkflowTracker by path. diff --git a/src/Simplic.FileStructure.Workflow.UI/WorkflowApplicationHelper.cs b/src/Simplic.FileStructure.Workflow.UI/WorkflowApplicationHelper.cs index 711dbca..e1eb817 100644 --- a/src/Simplic.FileStructure.Workflow.UI/WorkflowApplicationHelper.cs +++ b/src/Simplic.FileStructure.Workflow.UI/WorkflowApplicationHelper.cs @@ -88,36 +88,46 @@ public static GridInvokeMethodResult EditWorkflowOrganizaitonUnit(GridFunctionPa #region [ContextMenuStuff] /// - /// Forwards the document to all user who installed the Workflow + /// Forwards the document to all user who installed the Workflow. /// /// Grid parameter /// Grid invoke result, to control grid refresh public static GridInvokeMethodResult ForwardTo(GridFunctionParameter parameter) { IList workflowOperationList; - if (forwardConfig == 1) - workflowOperationList = WorkflowOperationsItemBoxGet(parameter); - - else - workflowOperationList = WorkflowOperationsGet(parameter); + try + { + if (forwardConfig == 1) + workflowOperationList = WorkflowOperationsItemBoxGet(parameter); - if (workflowOperationList == null) - return GridInvokeMethodResult.NoGridRefresh(); + else + workflowOperationList = WorkflowOperationsGet(parameter); - foreach (var workflowOperation in workflowOperationList) - { - try - { - workflowOperationService.ForwardTo(workflowOperation); - } - catch (DocumentWorkflowException ex) + if (workflowOperationList == null) + return GridInvokeMethodResult.NoGridRefresh(); + + foreach (var workflowOperation in workflowOperationList) { - Log.LogManagerInstance.Instance.Error("Could not forward document in workflow", ex); + try + { + workflowOperationService.ForwardTo(workflowOperation); + } + catch (DocumentWorkflowException ex) + { + Log.LogManagerInstance.Instance.Error("Could not forward document in workflow", ex); - MessageBox.Show("filestructure_forward_error", "filestructure_forward_error_head", MessageBoxButton.OK, MessageBoxImage.Information); - return GridInvokeMethodResult.NoGridRefresh(); + MessageBox.Show("filestructure_forward_error", "filestructure_forward_error_head", MessageBoxButton.OK, MessageBoxImage.Information); + return GridInvokeMethodResult.NoGridRefresh(); + } } + } + catch(CoreException ex) + { + Log.LogManagerInstance.Instance.Error("Could not forward document in workflow", ex); + MessageBox.Show("Das Dokument wurde bereits bearbeitet."); + return GridInvokeMethodResult.NoGridRefresh(); } + return new GridInvokeMethodResult { RefreshGrid = true }; }