Пользовательские шаги Workflow Manager
Эта тема относится только к ArcGIS for Desktop Standard и ArcGIS for Desktop Advanced.
Дополнительный модуль ArcGIS Workflow Manager for Desktop extension предоставляет несколько пользовательских шагов. Исходный код для каждого из них предоставляется как часть набора разработчика. В таблице ниже описаны шаги процессов и их функции.
Библиотека шагов
Библиотека шагов содержит шаги, которые могут быть выполнены как в настольных, так и в серверных рабочих средах. Шаги, их аргументы и коды возврата описаны ниже.
- Проверить Область интереса (AOI):JTXSteps.CheckAOIКоды возврата:
Проверка наличия области интереса (AOI) для текущего задания.
- 1 = Если задание имеет Область интереса
- 2 = Если задание не имеет Области интереса
- CleanUp: JTXSteps.CleanUpКоды возврата:
Очистка задания, в зависимости от аргументов.
Включите Администрирование – Системные настройки (Administration – System Settings), чтобы разрешить пользователям удалять версии, принадлежащие другим пользователям. Появится запрос имени пользователя и пароля.
Примечание:При удалении версии, принадлежащей другому пользователя, необходимо указать учетные данные пользователя SDE.
Version Cleanup: /version|v (optional) MXD Cleanup: /mxd|m (optional) Attachment Cleanup: /attachments|a (optional)
- 0 = Успешное завершение
- CloseJob:JTXSteps.CloseJobКоды возврата:
Закрытие задания как шага, в противоположность процессу, выполняемому вручную при завершении рабочего процесса.
No Argument
- 0 = Успешное завершение
- CreateJob:JTXSteps.CreateJobКоды возврата:
Создание дочернего задания, в зависимости от аргументов.
Job Type ID: Job Type Name: /jobtypename:<job type name> (required) Assign to Group: /assigngroup:<group to assign to> (optional) Assign to User: /assignuser:<user to assign to> (optional) Job Type ID: /jobtypeid:<job type ID> (deprecated)
- 0 = Успешное завершение
- CreatePDFJTXSteps.CreateJobКоды возврата:
Создание PDF-документа базовой карты задания и добавление его к заданию в виде вложения.
Initial Directory: /initdir:<initial directory> (optional) Do not Attach File To Job: /noattach (optional) Resolution (dpi): /resolution:<dpi> (optional) Attach File To Job: /attach (deprecated)
- 0 = Успешное завершение
- CreateVersionJTXSteps.CreateVersionКоды возврата:
Создание версии для задания. Уровень защиты версии определяется одним из следующих аргументов: Версия (Version), Доступ (Access), Область применения (Scope):
/scope
- 0 = Успешное завершение
- ExecuteGPToolJTXSteps.ExecuteGPToolКоды возврата:
Выполнение инструмента геообработки без отображения диалогового окна инструмента.
Toolbox Path (explicit full path to the tbx file combined with toolbox name): /toolboxpath:<toolboxpath> (required) Display Name of the Tool in the toolbox: /tool:<tool> (required) Parameter to override on the tool (can be specified multiple times): /param:<ParamName>:<ParamValue> (optional) Flag to attach the log to the job once the tool has completed: /attach:(optional)
- 0 = Успешное завершение
- 1 = Неудачное завершение
- ExecuteSQLJTXSteps.ExecuteSQLКоды возврата:
Выполнение выражения SQL.
Database to Send SQL: /database:<jtxsystem|data> (required)SQL Command: /sql:<sql command>
- 0 = Успешное завершение
- ExecuteURLJTXSteps.ExecuteURL
Выполнение URL без показа браузера для отражения результата.
Например, вы можете запустить сервис геообработки или любой другой веб-сервис, как шаг рабочего процесса.
URL to execute: /url:<url> (required) Request Timeout: /timeout:<timeout in seconds> (optional) Proxy Server: /proxy:<proxy> (optional) Flag to add a comment to the job with the response: /addjobcomment(optional) Post Data: /postdata:<data to post> (optional)
- ExecuteWorkflowJTXSteps.ExecuteWorkflowКоды возврата:
Выполнение другого рабочего процесса, связанного с типом задания.
Job Type Name: /jobtype:<job type name> (required)Flag to not use AOI: /donotuseaoi (optional)Flag to not use version: /donotuseversion (optional)Flag to not copy activities to the parent job's history: /donotcopyactivities (optional)
- 0 = Успешное завершение
- ReturnValueJTXSteps.ReturnValue
Извлечение значения расширенного свойства или переданного токена, которое является кодом возврата для следующего пути в рабочем процессе.
Return value: /value:<Extended properties field> (required):
- ReassignJobJTXSeteps.ReassignJobКоды возврата:
Переназначение задания.
Assign Type: /assignType:<user|group> (required) Assign To: /assignTo:<user or group name> (required)
- 0 = Успешное завершение
- SendNotificationJTXSteps.SendNotificationКоды возврата:
Отправка уведомления типа, определенного первыми аргументами; тип уведомления.
/notifType:<type> (required)
- 0 = Успешное завершение
- SetVersionJTXSteps.SetVersionКоды возврата:
Установка версии задания на назначенную версию, например версии QC для проверки опубликованных изменений на QC версию. Если аргумент шага не задан, версия задания будет возвращена к изначальной.
Version to use as job version: /version:<versionName> (optional)
- 0 = Успешное завершение
- UpdateExtentFeatureClassJTXSteps.UpdateExtentFeatureClassКоды возврата:
Обновление класса пространственных объектов информацией о задании, для отображения статуса видимости.
Feature Class to Update (must be in data geodatabase): /fclass:<fully qualified feature class name> (required) Job ID Field (field to put job ID in): /jobfield:<field name> (optional) Date Field (field to put date/time): /datefield:<field name> (optional)
- 0 = Успешное завершение
- VersionExistsJTXSteps.VersionExistsКоды возврата:
Проверка, присвоена ли заданию версия базы геоданных.
No Argument
- 1 = Версия существует
- 2 = Версия не существует
- 3 = Рабочая область данных не выбрана
Библиотека DesktopSteps
Библиотека DesktopSteps содержит шаги, которые могут быть выполнены только из настольного приложения, в связи с наличием всплывающих пользовательских интерфейсов. Шаги, их аргументы и коды возврата описаны ниже.
- CopyFileJTXDesktopSteps.CopyFileКоды возврата:
Копирование файла из одного местоположения в другое.
Source File: /src:<source file path> (optional) Destination File: /dest:<destination file path> (optional) File Title: /title:<file title> (optional)
- 0 = Успешное завершение
- CreatJobAdvancedJTXDesktopSteps.CreateJobAdvancedКоды возврата:
Создание задания и предоставление возможности определить родительские/ дочерние отношения с взаимосвязями задания.
Job Type Name: /jobtypename:<job type name>(required) Assign To Group: /assigngroup:<group to assign to>(optional) Assign To User: /assignuser:<username to assign to> (optional) Dependency will be created and current job held at this step: /dependThisStep (optional) Dependency will be created and current job held at the next step in the workflow: /dependNextStep (optional) Dependency status (current job held until new job reaches this status): /dependStatus:<Status Type Name> (optional) Use the current job's AOI as the new job's AOI: /useparentaoi (optional) Create new jobs based on the overlap between the current job's AOI and this feature class: /aoiOverlapFeatureClassName:<fully qualified feature class name >(optional) Default number of jobs to create: /numberJobs:<number of jobs to create> (optional) A version will be created for the new job(s) based on this selection: /createVersionSetting:<the version to use as the parent version> (optional) A version will be assigned to the new job(s) based on this selection: /assignVersionSetting:<the existing version the job will be assigned to>(optional) New job(s) extended properties value will be set to: one of the current job's extended properties values (specified by JTX Token) or to the given string value: /setExtendedProps: <ChildJobFullyQualifiedExtendedPropertiesTableName.FieldName= [JOBEX:ParentJobFullyQualifiedExtendedPropertiesTableName.FieldName]> (optional) Due date of the new job: /dueDate:<due date of the new job>(optional) Job duration: /jobDuration:<duration of the new job >(optional) New Job will be created as a child of the existing job: /child:(optional)
- 0 = Успешное завершение
- 1 = Неудачное завершение
- DefineAOIJTXDesktopSteps.DefineAOIКоды возврата:
Отображение инструмента, с помощью которого пользователь может определить область интереса.
No Argument
- 1 = Успешное завершение
- 0 = Неудачное завершение
- EditExtendedPropertiesJTXDesktopSteps.EditExtendedProperties
Отображение дополнительных свойств задания во всплывающем окне, в котором пользователь может задать необходимые параметры.
No Argument
- LaunchArcMapJTXDesktopSteps.LaunchArcMapКоды возврата:
При выполнении будет запущен ArcMap. Слои будут использовать в качестве источника версию задания, карта будет приближена к Области интереса (AOI) задания, с помощью кнопки Добавить данные пользователь может добавить дополнительные данные на карту. Подробную информацию об аргументах для этого шага можно найти в разделе ниже.
- 0 = Успешное завершение
- LaunchGPToolJTXDesktopSteps.LaunchGPToolКоды возврата:
Выполнение инструментов геообработки из ваших рабочих процессов.
Toolbox Path (explicit path to the tbx file): /toolboxpath:<toolboxpath> (optional) Toolbox Name (if in system toolboxes): /toolbox:<toolbox> (optional) Display Name of the Tool in the toolbox: /tool:<tool> Parameter to override on the tool (can be specified multiple times): /param:<ParamName>:<ParamValue> (optional) Flag to attach the log to the job once the tool has completed: /attach (optional) License enumeration code for any additional license that should be used in the execution of the tool: /license:<enum value> (optional)
- 1 = Успешное завершение
- SelectDataWorkspaceJTXDesktopSteps.SelectDataWorkspaceКоды возврата:
Отображение формы, которая позволяет выбрать рабочую область данных для вашего задания из списка предварительно настроенных рабочих областей данных.
No Argument
- 0 = Успешное завершение
Шаг Запуск ArcMap
Ожидаемое поведение шага Запуск ArcMap без аргументов подробно описано в таблице ниже.
Определен ли документ карты типа задания? |
Запуск ArcMap с рабочей областью данных и версией |
Запуск ArcMap с рабочей областью данных, но без версии |
Запуск ArcMap без рабочей области данных |
---|---|---|---|
Да |
ArcMap запускается, используя определенный документ карты. Слои будут использовать в качестве источника версию задания на основе краткого имени Класса объектов. Карта будет масштабирована до Области интереса (AOI). Примечание: Короткое имя – это не полностью определенное имя класса пространственных объектов: Streets вместо NIS.Streets, например. Также учтите, что неважно, как изначально была определена базовая карта, любые случаи совпадения кратких имен должны быть предусмотрены. |
Поведение аналогично сценарию, когда версия существует, за исключением того, что в качестве источников слоев используется версия по умолчанию для рабочей области данных. |
Никаких изменений в источниках слоев не производится. Карта отображает экстент Области интереса (AOI). |
No |
ArcMap открывается с пустым документом карты. В этом случае, поскольку карты не существует, слои не предоставляются. Как только слои добавлены на карту, пользователь может перейти с помощью кнопки Добавить данные (Add Data) на панели инструментов Workflow Manager прямо к версии, определенной для задания, или к версии по умолчанию для выбранной рабочей области данных. |
Поведение аналогично сценарию, когда версия существует. |
ArcMap открывается с пустым документом карты. Кнопка Добавить данные, расположенная на панели инструментов Workflow Manager, неактивна. Если для задания существует область интереса (AOI), можно использовать инструмент Приблизить к Области интереса. |
Описания аргументов
Шаг Запуск ArcMap имеет много необязательных параметров, позволяющих настроить его выполнение в соответствии с вашими потребностями без написания кода.
Описательное имя |
Пример аргумента |
Поведение |
---|---|---|
Приблизить к Области интереса |
или
|
Используя поведение по умолчанию, изображение карты будет перемещено к области интереса и масштабировано с коэффициентом 1 к геометрии формы. При желании можно не перемещать и не масштабировать карту при помощи опции /nozoomaoi. Или можно показать область интереса с большим коэффициентом масштабирования, используя аргумент /aoifactor: . |
Переопределить MXD |
|
При поведении по умолчанию, когда /norepoint не используется, все слои карты переопределяются в текущую рабочую область данных и, дополнительно, переопределяется версия задания. |
Изменить только версии MXD |
|
При использовании опции /changeversiononly, версия слоев в документе карты типа задания будет изменена. Пользователь данных и информация о подключении затронуты не будут. |
Сохранить версии слоев базовой карты |
|
При поведении по умолчанию, когда аргумент /nochangebasemaplayerversion не используется, информация о подключении для слоев сохраняется в слое базовой карты. Например вы можете добавить слои из базы данных, которые будут использоваться в вашей карте в качестве базовых слоев. По умолчанию, когда выполняется шаг Запуск ArcMap, эти слои переопределяются в текущую версию задания. Включение этого аргумента не переопределяет источник данных для слоев в этой группе. Так как слои базовой карты относительно статичны и не изменяются часто, их отображение может быть вычислено один раз и затем использоваться многократно. Более подробно см. Работа со слоями базовой карты. |
Сохранить MXD |
|
При поведении по умолчанию, когда аргумент /nosavemxd не используется, документ карты задания будет сохранен в базе данных Workflow Manager. Если ваши документы карты имеют большой размер, вам может понадобиться скорректировать настройку конфигурации MAXBLOBSIZE SDE. При использовании опции /nosavemxd, документ карты задания не будет сохраняться. Эта опция позволяет также переключаться между заданиями в ArcMap без очистки документа карты. |
Вырезать фрейм данных по AOI |
|
При поведении по умолчанию, когда аргумент /cliptoaoi не используется, в документе карты будут показаны все доступные для просмотра данные. При использовании опции /cliptoaoi фрейм данных в документе карты задания вырезается по форме области интереса (AOI). Примечание: При этом не создается определяющий запрос для слоев. Все пространственные объекты в слоях карты по-прежнему доступны через соответствующие таблицы. |
Ожидать закрытие ArcMap (приостановка Workflow Manager) |
|
При поведении приложения Workflow Manager по умолчанию, когда аргумент /nowait не используется, приложение скрыто, пока выполняется процесс ArcMap. Это значит, что пользователь не может взаимодействовать с приложением Workflow Manager, работая в ArcMap. При использовании опции /nowait приложение ArcMap будет запускаться, как отдельный процесс, что даст пользователю возможность взаимодействовать с приложением Workflow Manager во время работы ArcMap. Примечание: Эта опция была добавлена, поскольку опция Запустить процесс асинхронно для шагов рабочего процесса недоступна для объектов пользовательских шагов. |
Использовать существующий сеанс ArcMap |
|
При поведении по умолчанию, если аргумент /useexisting не настроен, во время выполнения шага будет открыт новый сеанс ArcMap. При использовании опции /useexisting, если во время выполнения шага открыт сеанс ArcMap, Workflow Manager откроет в этом сеансе документ карты задания. Если открытого сеанса ArcMap нет, Workflow Manager откроет новый. |
Хранить MXD в совместно используемой директории |
|
При поведении по умолчанию, альтернативная директория не настраивается, и документы карты задания будет храниться в базе данных Workflow Manager. Если ваши документы карты имеют большой размер, вам может понадобиться скорректировать настройку конфигурации MAXBLOBSIZE SDE. При использовании опции хранения документов карт в альтернативной директории, Workflow Manager не будет сохранять документы карты в базе данных, а сохранит их в этой директории для последующего использования. |
Использовать альтернативный MXD |
|
При поведении по умолчанию, шаг будет использовать документ карты по умолчанию для типа задания в качестве документа базовой карты для использования при запуске ArcMap. При использовании этой опции Workflow Manager будет загружать документ карты или шаблон, настроенные для данного аргумента. |
Команда запуска ArcMap |
|
После того как ArcMap закончит загрузку, кнопка, представленная введенным ProgID, будет нажата программным путем. |
Загрузить рабочий процесс Task Assistant |
|
Если данный аргумент настроен, то после открытия ArcMap Workflow Manager откроет настроенный рабочий процесс Task Assistant. Введенное имя рабочего процесса – это обозначение (псевдоним) рабочего процесса TAM, хранящегося в системе Workflow Manager. Множественные рабочие процессы можно проводить с помощью добавления дополнительного / рабочего процесса TA: записей или выбором желаемых рабочих процессов в редакторе аргументов. |
Хранить историю Task Assistant в Истории задания |
|
Если данный аргумент настроен, рабочий процесс Task Assistant будет добавлен в историю задания по умолчанию. Вы по-прежнему можете выбрать прикрепление его в виде текстового файла с помощью инструментов Workflow Manager. |