Configuration

Краткая информация

Объект Configuration обеспечивает доступ к элементам настройки в базе данных Workflow Manager (Classic).

Обсуждение

Объект Configuration обеспечивает доступ к элементам настройки в базе данных Workflow Manager (Classic).

Обзор метода

МетодОписание
getActivityTypes ()

Возвращает все типы активности в База данных Workflow Manager (Classic) в виде списка объектов ActivityType.

getHoldTypes ()

Возвращает все типы удержаний в базе данных Workflow Manager (Classic) в виде списка объектов HoldType.

getJobTypeDescription ({job_type_id}, {job_type_name})

Возвращает свойства типа задания, которые можно настроить перед созданием задания при помощи типа задания или имени типа задания.

getJobTypes ()

Возвращает список всех типов задания в базе геоданных Workflow Manager (Classic), отобранный при помощи фильтров задания.

getMaps ()

Возвращает список названий карт в базе данных Workflow Manager (Classic).

getNotificationTypes ()

Возвращает список всех типов уведомлений в базе данных Workflow Manager (Classic).

getPriorities ()

Возвращает список приоритетов в базе данных Workflow Manager (Classic).

getPrivileges ({username})

Возвращает список прав, назначенных пользователю. Если нет заданных аргументов, возвращаются права для текущего пользователя.

getStatusTypes ()

Возвращает список всех типов статуса в базе данных Workflow Manager (Classic) в виде списка объектов StatusType.

getUserGroups ({username})

Возвращает список имен групп пользователей, к которым принадлежит пользователь, в базе данных Workflow Manager (Classic). Если не заданных аргументов, возвращаются группы пользователей, к которым принадлежит текущий пользователь.

getUsers ()

Возвращает список имен для всех пользователей в базе данных Workflow Manager (Classic).

retrieveMap (map_name, destination_location)

Извлекает карту из Workflow Manager (Classic) базы данных в указанную папку.

storeMap (map_name, source_location, {storage_type}, {overwrite})

Сохраняет карту в базе данных Workflow Manager (Classic). Только .mxd может храниться в базе данных Workflow Manager (Classic).

Методы

getActivityTypes ()
Возвращаемое значение
Тип данныхОписание
ActivityType

Список типов активности возвращен как список объектов ActivityType.

Типы активности – это шаблоны для активности, записанной в историю в течении жизненного цикла задания.

В следующем примере возвращаются типы активности в базе данных.

import arcpy
import arcpy.wmx

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#Get the activity types in Workflow database
activityTypes = conn.config.getActivityTypes()
getHoldTypes ()
Возвращаемое значение
Тип данныхОписание
HoldType

Список типов удержаний возвращен как список объектов HoldType.

Типы удержаний – это шаблон для удержаний, используемых для приостановки активности задания на неопределенное время.

В следующем примере возвращается список типов удержаний в базе данных Workflow Manager (Classic).

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#Get list of Hold types in Workflow database
holdTypes = conn.config.getHoldTypes()
getJobTypeDescription ({job_type_id}, {job_type_name})
ПараметрОписаниеТип данных
job_type_id

ID типа задания, свойства которого будут возвращены.

Integer
job_type_name

Имя типа задания, свойства которого будут возвращены.

String
Возвращаемое значение
Тип данныхОписание
JobTypeDescription

Свойства типа задания, которые можно настроить и назначить новому создаваемому заданию, возвращаемые как объект JobTypeDescription.

Описание типа задания, которое можно настроить для определения свойств задания перед его созданием.

Следующий скрипт получает описание типа задания при помощи id типа задания, имени типа задания.

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#Get the Job Type description of type Data Edits
desc = conn.config.getJobTypeDescription(job_type_name="Data Edits")

#Get the Job Type description of type 5
desc2 = conn.config.getJobTypeDescription(job_type_id=5)

Следующий скрипт получает описание типа задания и обновляет таблицу расширенного свойства до создания задания.

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']))

Следующий скрипт получает описание типа задания и обновляет два значения связанной таблицы до создания задания.

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="Linked Example")

#Get the Extended Properties dictionary for the Job Type
ext_prop = desc.extendedProperties

#Define new values to use for Linked Properties
Table_1 = {'PLAN_NUMBER': '2', 'PARCEL_NUMBER': 568}
Table_2 = {'PLAN_NUMBER': '3', 'PARCEL_NUMBER': 569}

#Set the new tables for Linked Propertes as a list
linked_prop_list = [Table_1, Table_2]

#Set the new values in the appropriate Extended Property table
ext_prop['TestDB.LinkedTable'] = linked_prop_list

#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.LinkedTable')

#Print the first Parcel Number from the Linked table, value of 568
print(str(job_props[0]['PARCEL_NUMBER']))
getJobTypes ()
Возвращаемое значение
Тип данныхОписание
JobType

Возвращает типы задания в виде списка объектов JobType. Возвращаемые типы заданий отобранные при помощи фильтров задания в базе данных Workflow Manager (Classic).

Тип задания в базе данных Workflow Manager (Classic) – это шаблон для создаваемых заданий.

Следующий скрипт получает и перечисляет все типы заданий в базе данных Workflow Manager (Classic), отобранные при помощи фильтров заданий.

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#List all job type names in the Workflow database filtered by applied job filters.
conn.config.getJobTypes()
getMaps ()
Возвращаемое значение
Тип данныхОписание
String

Список названий карт в базе данных Workflow Manager (Classic).

Карты в базе данных Workflow Manager (Classic), используемые как шаблоны для карт заданий и карт AOI заданий.

Следующий скрипт перечисляет имена карт в базе данных Workflow Manager (Classic).

import arcpy
import arcpy.wmx

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#List name of all maps in the Workflow database
conn.getMaps()
getNotificationTypes ()
Возвращаемое значение
Тип данныхОписание
String

Список всех имен типов уведомлений в базе данных Workflow Manager (Classic).

Типы уведомлений – это шаблоны для уведомлений задания, отсылаемых в течении жизненного цикла задания.

В следующем примере возвращаются типы уведомлений в базе данных Workflow Manager (Classic).

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#Get the activity types in Workflow database 
activityTypes = conn.config.getNotificationTypes()
getPriorities ()
Возвращаемое значение
Тип данныхОписание
Priority

Список приоритетов в базе данных Workflow Manager (Classic). Запись состоит из id, имени и описания каждого приоритета в базе данных Workflow Manager (Classic).

Приоритет назначает уровень значимости работы, выполняемой как часть задания.

Следующий скрипт перечисляет id, имя и описания каждого приоритета в базе данных Workflow Manager (Classic).

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#List all priorities in the Workflow database
conn.config.getPriorities()
getPrivileges ({username})
ПараметрОписаниеТип данных
username

Имя пользователя, для которого возвращаются права.

(Значение по умолчанию — currentuser)

String
Возвращаемое значение
Тип данныхОписание
String

Список прав, назначенных пользователю. Если нет заданных аргументов, возвращаются права для текущего пользователя.

Права ограничивают или расширяют функциональность приложения для пользователей.

Следующий скрипт возвращает список прав, назначенных текущему пользователю Windows. Если у пользователя есть право CreateJob, создается задание. Вторая часть скрипта возвращает список прав, назначенных определенному заданному пользователю.

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#List all privileges for the current Windows user in the Workflow database
user_privileges = conn.config.getPrivileges()

#If the user has the CreateJob privilege, create a job and print the name
createJob_privilege = 'CreateJob'
if createJob_privilege in user_privileges:
    job = conn.createJob(job_type_name="Data Edits")
    print("Job "+ job.name +" created")

#Print a list of privileges sorted alphabetically
print(sorted(privileges))

#List all privileges for a specific user has in the Workflow database
user_privileges = conn.config.getPrivileges('jdoe')
getStatusTypes ()
Возвращаемое значение
Тип данныхОписание
StatusType

Список типов статуса возвращается в виде списка объектов StatusType.

Типы статуса являются шаблонами, которые описывают возможные состояния или стадии задания, через которые оно проходит в процессе выполнения.

В следующем примере возвращается список типов статусов в базе данных Workflow Manager (Classic).

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#Get the status types in the Workflow database
statusTypes = conn.config.getStatusTypes()
getUserGroups ({username})
ПараметрОписаниеТип данных
username

Имя пользователя, для которого возвращаются группы пользователей.

(Значение по умолчанию — currentuser)

String
Возвращаемое значение
Тип данныхОписание
String

Возвращает список имен групп пользователей в базе данных Workflow Manager (Classic).

Группы пользователей применяются для организации пользователей и назначения прав пользователям.

Следующий скрипт возвращает список имен групп пользователей в базе данных Workflow Manager (Classic) для текущего пользователя Windows и указанного пользователя.

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#List all user group names to which the current Windows user belongs in the Workflow database
conn.getUserGroups()

#List all user group names to which the the specified user belongs in the Workflow database
conn.getUserGroups(username='jdoe')
getUsers ()
Возвращаемое значение
Тип данныхОписание
String

Список имен для всех пользователей в базе данных Workflow Manager (Classic).

Пользователи применяются для назначения работ, истории журнала в задании и создания допуска в приложение.

Следующий скрипт перечисляет всех пользователей в базе данных.

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#List username for all the users in the Workflow database
conn.getUsers()
retrieveMap (map_name, destination_location)
ПараметрОписаниеТип данных
map_name

Имя карты, которая будет извлечена из базы данных Workflow Manager (Classic).

String
destination_location

Местоположение папки, в которой будет сохранена карта и имя которой будет использоваться.

String

Карты применяются для редактирования базовой карты и указания пользователю, где будет выполняться большая часть работы.

Следующий скрипт извлекает имеющую карту из базы данных Workflow Manager (Classic) в заданное местоположение и сохраняет ее под заданным именем.

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

maplist = conn.config.getMaps()

#Retrieve a map named Parcel Data from the Workflow database
for maps in mapList:
    if (maps=='Parcel Data'):
        conn.retrieveMap(map_name='Parcel Data',destination_location=r'C:\test\Parcel Data.mxd')

Следующий скрипт извлекает имеющую карту из базы данных Workflow Manager (Classic) в заданное местоположение и сохраняет ее под заданным именем.

import arcpy
import arcpywmx

# Establish a connection to a Workflow database
conn = arcpywmx.Connect(r'c:\test\Workflow.jtc')

# Retrieve a map named Parcel Data from the Workflow Manager database
for maps in mapList:
    if maps == 'Parcel Data':
        conn.config.retrieveMap(map_name='Parcel Data', destination_location=r'C:\test\Parcel Data.mxd')
storeMap (map_name, source_location, {storage_type}, {overwrite})
ПараметрОписаниеТип данных
map_name

Имя используется для хранения карты в базе данных Workflow Manager (Classic).

String
source_location

Местоположение папки, в котором лежит карта - с именем карты.

String
storage_type

Тип хранения карты. Если не задано значение, карта сохраняется в базе данных Workflow Manager (Classic) по умолчанию.

  • EMBEDDEDКарта сохраняется в базе данных Workflow Manager (Classic).
  • LINKEDСсылка на местоположение карты сохраняется в базе данных Workflow Manager (Classic).

(Значение по умолчанию — embedded)

String
overwrite

Перезапишите карту, если она уже имеется в базе данных Workflow Manager (Classic). Если значение не указано, имеющаяся карта не перезапишется.

  • TrueКарта сохраняется в базе данных Workflow Manager (Classic).
  • FalseСсылка на карту сохраняется в базе данных Workflow Manager (Classic).

(Значение по умолчанию — false)

String

Карты применяются для редактирования базовой карты и указания пользователю, где будет выполняться большая часть работы.

Следующий скрипт сохраняет карту в базе данных Workflow Manager (Classic), а также сохраняет местоположение другой, связанной карты.

import arcpy

#Establish a connection to a Workflow database
conn = arcpy.wmx.Connect(r'c:\test\Workflow.jtc')

#Store an embedded map with name South California Roads and overwrite existing map
conn.config.storeMap(map_name="South California Roads",source_location="C:\Test\South California Roads.mxd",storage_type="embedded", overwrite="true")

#Store a linked map
conn.config.storeMap(map_name="Parcels",source_location="C:\Test\Parcel_data.mxd",storage_type="linked")