コード例 #1
0
        /// <summary>
        /// Gets a list of all the workflows
        /// </summary>
        /// <returns></returns>
        public List <Workflow> GetProcesses()
        {
            List <Workflow> list = new List <Workflow>();

            SourceCode.Workflow.Management.WorkflowManagementServer workflowServer = new SourceCode.Workflow.Management.WorkflowManagementServer(servername, 5555);
            workflowServer.Open();
            try
            {
                SourceCode.Workflow.Management.Criteria.ProcessCriteriaFilter filter = new SourceCode.Workflow.Management.Criteria.ProcessCriteriaFilter();
                SourceCode.Workflow.Management.Processes processes = workflowServer.GetProcesses(filter);
                foreach (SourceCode.Workflow.Management.Process process in processes)
                {
                    if (process.DefaultVersion == true)
                    {
                        list.Add(
                            new Workflow
                        {
                            ID   = process.ProcID,
                            Name = process.FullName
                        }

                            );
                    }
                }
            }
            catch (Exception ex)
            {
                list.Add(
                    new Workflow
                {
                    ID   = 0,
                    Name = ex.Message
                }

                    );
            }
            finally
            {
                workflowServer.Connection.Close();
            }
            return(list);
        }
コード例 #2
0
ファイル: Workflow.cs プロジェクト: SimonAllport/FormSpider
        /// <summary>
        /// Returns a list of all the workflows on the environment
        /// </summary>
        /// <returns></returns>
        public static List <Process> WorkflowExplorer()
        {
            List <Process> list = new List <Process>();

            SourceCode.Workflow.Management.WorkflowManagementServer wrkmgt = new SourceCode.Workflow.Management.WorkflowManagementServer();
            wrkmgt.Connection.Open(ConnectToK2());
            try
            {
                wrkmgt.Open();
                SourceCode.Workflow.Management.Criteria.ProcessCriteriaFilter cf = new SourceCode.Workflow.Management.Criteria.ProcessCriteriaFilter();

                SourceCode.Workflow.Management.Processes processes = wrkmgt.GetProcesses(cf);


                foreach (SourceCode.Workflow.Management.Process process in processes)
                {
                    if (process.DefaultVersion == true)
                    {
                        list.Add(BuildWorkflow(process));
                    }
                }
            }
            catch (Exception ex)
            {
                list.Add(new Process
                {
                    Description = ex.Message,
                    Name        = ex.Source,
                    MetaData    = "Workflow Error"
                });
            }
            finally
            {
                wrkmgt.Connection.Close();
            }
            return(list);
        }
コード例 #3
0
        public static List<WorkFlow> WorkflowExplorer()
        {
            List<WorkFlow> list = new List<WorkFlow>();
            SourceCode.Workflow.Management.WorkflowManagementServer wrkmgt = new SourceCode.Workflow.Management.WorkflowManagementServer("dlx", 5555);
            try
            {
                wrkmgt.Open();
                SourceCode.Workflow.Management.Criteria.ProcessCriteriaFilter cf = new SourceCode.Workflow.Management.Criteria.ProcessCriteriaFilter();

                SourceCode.Workflow.Management.Processes processes = wrkmgt.GetProcesses(cf);

                foreach (SourceCode.Workflow.Management.Process process in processes)
                {
                    if (process.DefaultVersion == true)
                    {
                        list.Add(new WorkFlow
                        {
                            Description = process.VersionDesc,
                            Name = process.FullName,
                            guid = process.ProcGuid,
                            displayname = process.FullName,
                            Instances = process.Instances.Count,
                            Version = process.VersionNumber.ToString(),
                            ProcessId = process.ProcID,
                            MetaData = process.MetaData,
                            Priority = process.Priority,
                            ProcSetID = process.ProcSetID

                        });
                    }

                }

            }
            catch (Exception ex)
            {
                list.Add(new WorkFlow
                {

                    Description = ex.Message,
                    Name = ex.Source,
                    MetaData = "Workflow Error"

                });
            }
            finally
            {

                wrkmgt.Connection.Close();
            }
            return list;
        }