-
Notifications
You must be signed in to change notification settings - Fork 116
ProSnippets WorkflowManager
uma2526 edited this page Nov 10, 2021
·
5 revisions
Language: C#
Subject: WorkflowManager
Contributor: ArcGIS Pro SDK Team <arcgisprosdk@esri.com>
Organization: esri, http://www.esri.com
Date: 10/29/2021
ArcGIS Pro: 2.9
Visual Studio: 2017, 2019
.NET Target Framework: 4.8
// WorkflowModule.GetManager returns a manager of the type specified
// keyword is currently just an empty string
var wfCon = await WorkflowModule.ConnectAsync();
var jobManager = wfCon.GetManager<JobsManager>();
var configManager = wfCon.GetManager<ConfigurationManager>();
// GetAllGroups returns a list of Workflow Manager groups
var wfCon = await WorkflowModule.ConnectAsync();
var configManager = wfCon.GetManager<ConfigurationManager>();
var allGroups = configManager.GetAllGroups();
// GetAllUsers returns a list of Workflow Manager users
var wfCon = await WorkflowModule.ConnectAsync();
var configManager = wfCon.GetManager<ConfigurationManager>();
var allUsers = configManager.GetAllUsers();
// GetVisibleJobTypes returns a list of job types
var wfCon = await WorkflowModule.ConnectAsync();
var configManager = wfCon.GetManager<ConfigurationManager>();
var jobTypes = configManager.GetVisibleJobTypes();
// CreateJob returns an ID of a new job
// it is a passed a valid job type ID as an integer
var wfCon = await WorkflowModule.ConnectAsync();
var jobManager = wfCon.GetManager<JobsManager>();
var jobID = jobManager.CreateNewJob(jobTypeID);
// GetJob returns an existing job
// it is passed a valid job ID as an integer
var wfCon = await WorkflowModule.ConnectAsync();
var jobManager = wfCon.GetManager<JobsManager>();
var job = jobManager.GetJob(jobID);
// Get a job associated with the map
var wfCon = await WorkflowModule.ConnectAsync();
var jobManager = wfCon.GetManager<JobsManager>();
var job = jobManager.GetJob(map);
if (job != null)
{
// Job found, do something with the job
var jobId = job.ID;
}
// CloseJobs returns a list of closed job IDs
// it is passed a list of job IDs to close
var wfCon = await WorkflowModule.ConnectAsync();
var jobManager = wfCon.GetManager<JobsManager>();
var jobIDs = jobManager.CloseJobs(jobIdsToClose);
// You can change many of the exposed properties of a job and then save them
var wfCon = await WorkflowModule.ConnectAsync();
var jobManager = wfCon.GetManager<JobsManager>();
var job = jobManager.GetJob(jobID);
job.Description = "This is a test";
job.Save();
// Gets the current step
// checks to see if it can execute it
// proceeds to do so if it can
var wfCon = await WorkflowModule.ConnectAsync();
var jobManager = wfCon.GetManager<JobsManager>();
var job = jobManager.GetJob(jobID);
string stepID = job.GetCurrentSteps().First();
if (job.CanExecuteStep(stepID).Item1)
job.ExecuteStep(stepID);
// ExecuteQuery returns a query result
// Its passed either an ID or a name
var wfCon = await WorkflowModule.ConnectAsync();
var jobManager = wfCon.GetManager<JobsManager>();
var queryResultReturn = jobManager.ExecuteQuery("All Jobs");
Home | API Reference | Requirements | Download | Samples
-
Determine if there is an active Workflow Manager connection
-
Get the Workflow Manager item Id
-
Get the Workflow Manager server url
-
Get the job Id associated with the active map view
-
Get the job Id associated with a map
-
Get a job
-
Search for jobs using a detailed query
-
Search for jobs using a detailed query with an arcade expression
-
Search for jobs using a simple string
-
Get statistics for jobs
-
Run steps on a job
-
Run specific steps on a job
-
Stop running steps on a job
-
Stop specific running steps on a job
-
Finish steps on a job
-
Finish specific steps on a job
-
Subscribe to a workflow connection changed event.
-
Unsubscribe from a workflow connection changed event.