Summary
The JobTypeDescription provides access to job type properties that can be customized before creating a job.
Discussion
The properties of the job type that can be customized and assigned to a new job being created.
Properties
Property | Explanation | Data Type |
AOI (Read and Write) | The polygon object to be used as the AOI of the job. A list of polygon objects can be provided to create multiple jobs. One job is created for each polygon object provided and the polygon is used to create the AOI of the job. Legacy:This property has been deprecated. Use LOI instead. | Polygon |
assignedTo (Read and Write) | The user name or group name the job will be assigned to. | String |
assignedType (Read and Write) | The type of assignment for the job. Below is a list of valid strings to use when setting the job assignment.
| String |
autoCommitWorkflow (Read and Write) | Indicates whether the workflows are automatically ready for execution when the job is created.
| Boolean |
autoExecuteOnCreate (Read and Write) | Indicates whether the job will be automatically executed after it is created.
| Boolean |
createdBy (Read and Write) | The user name that will be set as the creator of the job. | String |
dataWorkspaceID (Read and Write) | The ID of the data workspace to be set as the data workspace of the job. | String |
description (Read and Write) | A description about the job type. | String |
dueDate (Read and Write) | The due date that will be assigned to the job. | DateTime |
extendedProperties (Read and Write) | A dictionary containing the extended property tables of the job type. Each individual table can be obtained as its own dictionary using the table's name, and new values will be added to the table and saved back to the job type in advance of job creation. A sample is shown below. | Dictionary |
jobName (Read and Write) | The template for the name of the job. | String |
jobTypeName (Read and Write) | The name of the job type that will be used to create a job. | String |
LOI (Read and Write) | The geometry object to be used as the LOI of the job. A list of polygon or point objects can be provided to create multiple jobs. One job is created for each point or polygon object provided and the geometry is used to create the LOI of the job. | Geometry |
ownedBy (Read and Write) | The user who is the owner of the job. | String |
parentJobID (Read and Write) | The ID of the job that would be the parent of the job created. | Integer |
parentJobName (Read and Write) | The name of the job that would be the parent of the job created. | String |
parentVersionName (Read and Write) | The name of the version that would be the parent version created for the job. | String |
prefix (Read and Write) | The prefix to be added to the name of the job. | String |
priority (Read and Write) | The priority to be assigned to the job after its creation. | Integer |
startDate (Read and Write) | The date when the job will be started. | DateTime |
suffix (Read and Write) | The suffix to be added to the name of the job. | String |
unionAOI (Read and Write) | Indicates whether the list of polygon objects passed as the AOI will be merged to create one job or multiple jobs.
Legacy:This property has been deprecated. Use unionLOI instead. | Boolean |
unionLOI (Read and Write) | Indicates whether the list of polygon or point objects passed as the LOI will be merged to create one job or multiple jobs.
| Boolean |
versionName (Read and Write) | The name of the version that would be the version associated with the job. | String |
Code sample
The following script gets the job type description and updates two extended property table values prior to job creation.
import arcpy
#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')
#Get the Job Type description
desc = conn.config.getJobTypeDescription(job_type_name="Extended Example")
#Get the Extended Properties dictionary for the Job Type
ext_prop = desc.extendedProperties
#Define new values to use for Extended Property's Name and Address
ext_prop_dict = {'NAME' : 'John Smith', 'ADDRESS' : '106 Everdale Drive' }
#Set the new values in the appropriate Extended Property table
ext_prop['TestDB.ExtendedTable'] = ext_prop_dict
#Apply the ext_prop dictionary back to the Job Type's desc object
desc.extendedProperties = ext_prop
#Create a Job using the new Job Type description
job = conn.createJob(job_type_description = desc)
#Get the Job's properties
job_props = job.getExtendedPropertyTable('TestDB.ExtendedTable')
#Print the new extended property Name value for the Job
print(str(job_props['NAME']))