Versioning allows multiple users to complete work with their own version of spatial data so that they can reconcile and post their edits to the default branch version using the Run GP Service step. This helps to ensure that users are accessing the right data at the right time and helps avoid editing conflicts.
When the step is run, it checks each of the feature service data sources defined in the workflow for an existing job-specific version of the data. If the data source doesn't contain a job-specific version, the Create Version step automatically creates one and associates it with the job. The Create Version step only supports creating a single job version per feature service for the data sources defined in the job's workflow diagram.
If a private version of the data source already exists for the job, a new version is created for the data source if the step is being run by a user who is not the owner of the existing private version.
If a public version with the same job name already exists, the Create Version step fails. The existing version isn't associated with the job, and a new version is not created.
When the step finishes running, a message appears on the job tile with the result of the step.
If a data source has not been defined for the step, or if the step fails to create versions, a CreateVersionFailed message appears and the job doesn't proceed to the next step. Hover over the error message to display additional information about the error.
If the step fails and the return codes don't match any of the configured paths, and the step isn't optional, the step remains in a failed state and can’t be skipped.
Configure the step
To configure the step, do the following:
- Create or edit a workflow diagram to access the Step Library panel.
- Drag Create Version from the Step Library panel to a connection arrow of a step on the workflow canvas.
The Step Details panel appears.
- Provide a name for the step in the Step Name text box.
- Optionally, provide a name for the version in the Version Name text box.
To add a unique ID to the version name, type [index] where you want the unique ID to appear in the version name.
- Configure permission levels for versions in the Access Permission section as necessary.
The access permission setting allows you to restrict versions from being viewed or edited by users other than the version owner. The default is Private.
- In the Data Sources section, choose one of the following options:
- All—Choose this option to create a version for all data sources configured in the workflow diagram.
- Select Sources—Choose this option and click Add Source to choose the data sources for which you want to create versions.
To delete a data source, click the Delete button .
- Arcade Expression—Choose this option and provide an ArcGIS Arcade expression to dynamically determine the data source for which versions will be created when the step is run.
The Arcade expression must return the spatial data source ID and not the spatial data source name. If you need to choose more than one data source, you'll need to format your expression as follows:
'["' + JobExtendedProperty($Job, 'versions', 'datasource1') + '"' + ',' + '"' + JobExtendedProperty($Job, 'versions', 'datasource2') + '"]'
Click the This input supports Arcade Expressions button and choose an ArcGIS Arcade expression to add it to its associated text box.
- Click the Options tab.
- Configure Step Options as necessary.
- Manual—Run the step manually.
- Optional—Allow the step to be finished without being run.
- Automatic—Run the step as soon as it becomes active.
If your workflow diagram is configured to automatically run a sequence of steps that includes the Evaluate Data Quality or the Run GP Service step, steps that attempt to run after the user token that started the sequence of steps expires will not run automatically. You must have a license for the ArcGIS Workflow Manager Server Advanced role to continue running the additional automated steps without manual intervention.
- Run on a Schedule—Run the step according to a schedule you set.
- Manual—Run the step manually.
- Optionally, provide help text for the step in the Step Help text box.
You can also use ArcGIS Arcade expressions to provide a dynamic value for the step help. If the step help contains plain text and Arcade expressions, you'll need to format the text as follows:
'For further assistance, please contact ' + JobCreator($Job) + '.'
- Optionally, click the Style tab to change the shape and color of the step.
- Optionally, click the About tab and provide a description for the step in the Step Description text box.
The About tab also contains the step's ID that can be used with dynamic job properties to obtain a step's output.
When the step is completed, its return value is stored to indicate the result of the step. The return value can be immediately evaluated using paths to determine the next steps in the workflow. You can also retrieve the return value for completed steps throughout the workflow using ArcGIS Arcade expressions. The following table lists the step's return values:
The step completed successfully.
The step failed to complete successfully.
When the step is completed, its output value is stored and can be used to determine the path the workflow follows or be used as inputs for other steps throughout the workflow. The following table lists the step's output values:
Returns an array of all created versions.
Returns an array of all data source URLs for which versions were successfully created.