Для изменения размера нажмите или перетащите

IKrScript - интерфейс

Интерфейс собирает в себе все доступные свойства и методы в скриптах подсистемы маршрутов. Для каждого свойства/метода приведено описание, а также контексты, в которых доступен данный член. Если в описании не указан контекст, в котором допустимо использовать, значит свойство/метод допустимо использовать в любом контексте.

Виды скриптов:

* Скрипт выполнения этапа - скрипты, находящиеся в строке этапа в шаблоне этапов. Запускаются в процессе выполнения;

* Скрипт построения шаблона этапов - скрипты на основной вкладке шаблона этапов. Запускаются при построении маршрута;

* Скрипт построения группы этапов - скрипты на основной вкладке группы этапов. Запускаются при построении маршрута;

* Скрипт выполнения группы этапов - скрипты на основной вкладке группы этапов. Запускаются при выполнении маршрута;

* Скрипт видимости кнопки процесса - скрипты на основной вкладке кнопки процесса. Запускаются при загрузке карточки, включенной в типовой процесс;

* Скрипт выполнения процесса - скрипты на основной вкладке процесса. Запускаются при запуске вторичного процесса;

Режимы:

* Синхронный режим - процесс запускается полностью в памяти. Создание процессного сателлита не происходит;

* Асинхронный режим - процесс запускается с заполнением процессного сателлита. Для основного процесса контекстуальный и процессный сателлит совпадают, для вторичных создаются отдельные KrSecondarySatellite;

Контексты запуска:

* Глобальный - процесс запускается без карточки. Такой процесс может быть только синхронным. Например, нажатие на кнопку процесса в правой панели.

* Локальный - процесс запускается по карточке. Это основной процесс и кнопки процесса в левой панели.

Пространство имён:  Tessa.Extensions.Default.Server.Workflow.KrCompilers.UserAPI
Сборка:  Tessa.Extensions.Default.Server (в Tessa.Extensions.Default.Server.dll) Версия: 3.4.0
Синтаксис
public interface IKrScript : ISealable, 
	IKrProcessItemScript, IKrProcessExecutionScript, IKrProcessVisibilityScript, IContextChangeableScript

Тип IKrScript предоставляет следующие члены.

Свойства
  ИмяОписание
Открытое свойствоAction
Информация о конфигурации текущего действия.
Открытое свойствоButton
Кнопка, по нажатию на которую был запущен текущий процесс.
Открытое свойствоCanChangeOrder
Можно ли менять порядок этапов шаблона.
Открытое свойствоCard
Карточка документа. Dynamic-обертка над строковыми секциями. Может использоваться для простого и лаконичного обращения к строковым секциями.

Например:

Card.DocumentCommonInfo.Amount

Card.MyCustomSection.CustomField

Открытое свойствоCardCache
Потокобезопасный кэш с карточками и дополнительными настройками.
Открытое свойствоCardContext
Контекст расширения, в рамках которого выполняется этап.
Открытое свойствоCardID
Идентификатор текущей картчоки документа.
Открытое свойствоCardMetadata
Содержит метаинформацию, необходимую для использования типов карточек совместно с пакетом карточек.
Открытое свойствоCardObject
Полный объект текущей карточки документа.
Открытое свойствоCardTables
Карточка документа. Dynamic-обертка над коллекционными секциями. Может использоваться для простого и лаконичного обращения к коллекционным секциями.

Например:

Card.Performers[0].UserID

Открытое свойствоCardTypeCaption
Отображаемое название типа текущей карточки документа.
Открытое свойствоCardTypeID
Идентификатор типа текущей карточки документа.
Открытое свойствоCardTypeName
Название типа текущей карточки документа.
Открытое свойствоConfirmed
Признак того, что выполняемый элемент подтвержден условием построения.
Открытое свойствоContextualSatellite
Контекстуальный сателлит KrSatelliteTypeID текущей карточки. Данный сателлит является основным сателлитом для карточки в подсистеме маршрутов, содержит состояние карточки и инициатора, а также маршрут для вкладки "Маршруты" (т.е. контекстуальный сателлит по совместительству процессный для основного процесса).
Открытое свойствоCurrentStages
Подмножество этапов, относящееся только к текущему скрипту. Для скрипта выполнения этапа этапа - это коллекция из одного текущего этапа. Для скрипта построения шаблона этапов - это коллекция из всех этапов текущего шаблона. Для скрипта построения и выполнения группы этапов - это коллекция из все этапов текущей группы. Коллекция является неизменяемой. Если необходимо добавить этап, то следует воспользоваться методов AddStage(String, StageTypeDescriptor, Int32). В случае, когда нужно удалить этап, достаточно выполнить Stages.RemoveAll(Predicate); Этапы в данной коллекции являются изменяемыми.
Открытое свойствоCurrentTaskHistoryGroup
Идентификатор текущей группы истории заданий.
Открытое свойствоCycle
Номер текущего цикла. Является прокси-свойством для поля в ProcessInfo.Cycle основного процесса. В вторичных процессах каждое обращение вызывает десериализацию/сериализацию состояния основного процесса, поэтому следует минимизировать обращения к данному полю.
Открытое свойствоDb
Объект, используемый для выполнения SQL-запросов к текущей БД. По умолчанию уже открыто соединение к основной БД системы, но посредством вызова using (DbScope.CreateNew("connectionAlias")) { ... } можно изменить базу данных, доступную по свойству Db, может быть изменена. Пример выполнения запроса: int result = Db.SetCommand("select @Result", Db.Parameter("Result", 42)).LogCommand().ExecuteScalar<int>(). Следует учесть, что Db.Parameter("Result", 0) ведет себя нелогично и определит параметр типа nvarchar со значением DbNull, т.к. будет использована некорректная перегрузка метода Db.Parameter(). В связи с этим добавьте преобразование типа значения к object: Db.Parameter("Result", (object)0).
Открытое свойствоDbScope
Объект, обеспечивающий доступ к базам данных. Позволяет открывать соединение к другим БД: using (DbScope.CreateNew("connectionAlias")) { ... }. Также определяет тип СУБД, которая используется системой: DbScope.Dbms. Вместо вызова DbScope.Db для простоты рекомендуется использоваться свойство Db.
Открытое свойствоDifferentContextCardID
Идентификатор контекста, в котором необходимо выполнить этап вместо текущего.
(Унаследован от IContextChangeableScript.)
Открытое свойствоDifferentContextProcessInfo
Дополнительная информация о процессе, выполняемом в другом контексте.
(Унаследован от IContextChangeableScript.)
Открытое свойствоDifferentContextSetupScriptType
Место, где был установлен признак выполнения в другом контексте.
(Унаследован от IContextChangeableScript.)
Открытое свойствоDifferentContextWholeCurrentGroup
Признак того, что необходимо выполнить в контексте карточки DifferentContextCardID всю группу.
(Унаследован от IContextChangeableScript.)
Открытое свойствоDocTypeID
Идентификатор типа документа для текущей карточки, если тип карточки поддерживает типы документов
Открытое свойствоFiles
Список файлов карточки.
Открытое свойствоInfo
Произвольное хранилище для пользовательских данных. Не является персистентным хранилищем, срок жизни не регламентируется.
Открытое свойствоInitialStages
Набор этапов на момент начала текущей обработки запроса подсистемой маршрутов. Используется для поиска изменений в маршруте за время обработки запроса. Использовать в скриптах напрямую не рекомендуется.
Открытое свойствоInitiationCause
Причина запуска обработчика процесса.
Открытое свойствоInitiator
Инициатор (автора) процесса.
Открытое свойствоInitiatorComment
Комментарий инициатора.
Открытое свойствоIsSealed
Признак того, что объект был защищён от изменений.
(Унаследован от ISealable.)
Открытое свойствоIsStagesReadonly
Можно ли менять настройки этапов в шаблоне.
Открытое свойствоKrComponents
Включенные настройки типового решения для текущий карточки
Открытое свойствоKrScope
Объект для работы с текущим контекстом расширений типового расширения и использования разделяемых объектов карточек.
Открытое свойствоKrScriptType
Текущее выполняемое действие.
Открытое свойствоKrTypesCache
Кэш по типам карточек и документов, содержащих информацию по типовому решению.
Открытое свойствоMainCardAccessStrategy
Стратегия загрузки основной карточки.
Открытое свойствоMainProcessInfo
Получение хранилища Info для основного процесса текущей карточки.
Открытое свойствоMainProcessInfoStorage
Получение хранилища Info для основного процесса текущей карточки.
Открытое свойствоNewCard
Получить строковые секции в dynamic обертке из карточки из Info этапа по ключу NewCard.
Открытое свойствоNewCardTables
Получить коллекционные секции в dynamic обертке из карточки из Info этапа по ключу NewCard.
Открытое свойствоOrder
Порядок сортировки шаблона этапов. -1 если выполнение происходит без конкретного шаблона.
Открытое свойствоPosition
Положение отностельно этапов, расположенных вручную.
Открытое свойствоProcessHolderSatellite
Процессный сателлит для текущего процесса. Процессный сателлит содержит в себе список этапов с секции KrStages с состояниями и настройками. Для основного процесса процессный сателлит совпадает с контекстуальным
Открытое свойствоProcessID
Идентификатор текущего процесса.
Открытое свойствоProcessInfo
Состояние(Info) процесса. Представляет из себя персистентное хранилище произвольных данных о процессе. Может использоваться различными этапами для взаимодействия между собой. Пример использования: ProcessInfo.CustomField = 5
Открытое свойствоProcessInfoStorage
Состояние(Info) процесса. Представляет из себя персистентное хранилище произвольных данных о процессе. Может использоваться различными этапами для взаимодействия между собой. Пример использования: ProcessInfoStorage["CustomField"] = 5
Открытое свойствоProcessTypeName
Тип текущего процесса.
Открытое свойствоPureProcess
Информация о конфигурации текущего вторичного процесса.
Открытое свойствоSecondaryProcess
Информация о конфигурации текущего вторичного процесса.
Открытое свойствоSession
Сессия текущего пользователя. Используйте Session.User.ID, чтобы получить идентификатор текущего пользователя.
Открытое свойствоStage
Текущий этап.
Открытое свойствоStageGroupID
ID группы этапов для текущего скрипта.
Открытое свойствоStageGroupName
Название текущей группы этапов.
Открытое свойствоStageGroupOrder
Порядок сортировки текущей группы этапов.
Открытое свойствоStageInfo
Состояние(Info) текущего этапа. Представляет из себя персистентное хранилище произвольных данных об этапе. Может использоваться скриптами и обработчиком этапа для хранения данных между вызовами. Пример использования: StageInfo.CustomField = 5
Открытое свойствоStageInfoStorage
Состояние(Info) текущего этапа. Представляет из себя персистентное хранилище произвольных данных об этапе. Может использоваться скриптами и обработчиком этапа для хранения данных между вызовами. Пример использования: StageInfoStorage["CustomField"] = 5
Открытое свойствоStages
Список этапов в маршруте.
Открытое свойствоStagesContainer
Контейнер этапов, выполняющий составление маршрута и сортировку маршрутов при пересчете. Использовать в скриптах напрямую не рекомендуется.
Открытое свойствоStageSerializer
Сериализатор этапов.
Открытое свойствоTaskHistoryManager
Текущий используемый менеджер истории заданий.
Открытое свойствоTaskHistoryResolver
Объект для работы с группами истории заданий.
Открытое свойствоTemplateID
Идентификатор текущего шаблона этапов.
Открытое свойствоTemplateName
Название текущего шаблона этапов.
Открытое свойствоTypeID
Эффективный идентификатор типа. Это тип документа, если типы документов включены для типа карточки, иначе тип карточки.
Открытое свойствоUnityContainer
IoC-контейнер для получения любых необходимых зависимостей в рамках системы. Для более удобного использования есть метод Resolve<T>, о котором написано ниже. Пример использования: var cardRepository = UnityContainer.Resolve<ICardRepository>().
Открытое свойствоValidationResult
Результат валидации текущей обработки запроса.
Открытое свойствоVersion
Версия карточки.
Открытое свойствоWorkflowProcess
Объектная модель текущего процесса. Содержит полное представление процесса, основанное на контекстальном и процессном сателлитах.
Открытое свойствоWorkflowProcessInfo
Информация о процессе из WorkflowAPI.
Открытое свойствоWorkflowSignalInfo
Информация о сигнале из WorkflowAPI.
Открытое свойствоWorkflowTaskInfo
Информация о задании из WorkflowAPI.
В начало страницы
Методы
  ИмяОписание
Открытый методAddError
Добавить сообщение в ValidationResult с уровнем Error.
Открытый методAddInfo
Добавить сообщение в ValidationResult с уровнем Info.
Открытый методAddPerformer(Guid, String, Stage, Int32, Boolean)
Добавить исполнителя для этапа с режимом множественных исполнителей Multiple Исполнитель будет добавлен только если на указанном месте для вставки стоит другой исполнитель.
Открытый методAddPerformer(String, String, Stage, Int32, Boolean)
Добавить исполнителя для этапа с режимом множественных исполнителей Multiple Исполнитель будет добавлен только если на указанном месте для вставки стоит другой исполнитель.
Открытый методAddStage
Добавить новый этап в маршрут. Если этап с таким именем уже добавлен, то вернуть null.
Открытый методAddTaskHistoryRecord(Guid, String, String, Guid, String, NullableGuid, String, NullableInt32, NullableInt32, NullableTimeSpan, ActionCardTaskHistoryItem)
Добавление записи в историю действий в текущую группу истории заданий.
Открытый методAddTaskHistoryRecord(NullableGuid, Guid, String, String, Guid, String, NullableGuid, String, NullableInt32, NullableInt32, NullableTimeSpan, ActionCardTaskHistoryItem)
Добавление записи в историю действий в указанную группу истории заданий.
Открытый методAddWarning
Добавить сообщение в ValidationResult с уровнем Warning.
Открытый методAfter
Скрипт постобработки.
(Унаследован от IKrProcessItemScript.)
Открытый методBefore
Скрипт инициализации.
(Унаследован от IKrProcessItemScript.)
Открытый методCardRows
Получить строго типизированную коллекцию строк из секции основной карточки.
Открытый методCondition
Вычисление условия.
(Унаследован от IKrProcessItemScript.)
Открытый методContextChangePending
Открытый методDoNotChangeContext
Отменить смену контекста.
Открытый методExecution
Определения условия выполнимости процесса.
(Унаследован от IKrProcessExecutionScript.)
Открытый методForEachStage
Выполнить действие над строкой (из коллекционной секции KrStages) этапа текущего процесса в обход объектной модели. Секция KrStages получается из ProcessHolder-сателлита.
Открытый методForEachStageInMainProcess
Выполнить действие над строкой (из коллекционной секции KrStages) этапа основного процесса карточки в обход объектной модели. Секция KrStages получается из контекстуального сателлита.
Открытый методGetNewCard
Получить карточку из Info этапа по ключу NewCard.
Открытый методGetOrAddStage
Добавить новый этап в маршрут. Если этап уже добавлен, то найти и получить его из маршрута.
Открытый методGetPrimaryProcessInfo
Получение хранилища Info для основного процесса карточки.
Открытый методGetProcessInfoForBranch(Guid)
Получить Info для ветки вторичного процесса перед стартом. Актуально только для этапа ветвления.
Открытый методGetProcessInfoForBranch(String)
Получить Info для ветки вторичного процесса перед стартом. Актуально только для этапа ветвления.
Открытый методGetSecondaryProcessInfo
Получение хранилища Info для вторичного процесса карточки.
Открытый методHasKrComponents(KrComponents)
Проверка настроек типового решения для текущей карточки
Открытый методHasKrComponents(KrComponents)
Проверка настроек типового решения для текущей карточки
Открытый методInvokeExtra(String, Object, Boolean)
Вызвать дополнительный метод, приложенный к текущему типу скрипта.
Открытый методInvokeExtraT(String, Object, Boolean)
Вызвать дополнительный метод, приложенный к текущему типу скрипта и получить его результат.
Открытый методIsMainProcess
Текущий выполняемый процесс является основным (KrProcess)
Открытый методIsMainProcessInactive
Все этапы основного процесса (KrProcess) для текущей карточки находятся в состоянии Inactive .
Открытый методIsMainProcessStarted
Основной процесс (KrProcess) для текущей карточки запущен.
Открытый методRemovePerformer(Guid, Stage, Boolean)
Удалить исполнителя по роли для этапа с режимом множественных исполнителей Multiple
Открытый методRemovePerformer(Int32, Stage, Boolean)
Удалить исполнителя по роли для этапа с режимом множественных исполнителей Multiple
Открытый методRemovePerformer(String, Stage, Boolean)
Удалить исполнителя по роли для этапа с режимом множественных исполнителей Multiple
Открытый методRemoveStage
Удалить этап из маршрута, добавленный ранее в скриптах.
Открытый методResetSinglePerformer
Установить исполнителя для этапа с режимом одиночного исполнителя Single.
Открытый методResolveT
Получить из UnityContainer зависимость.
Открытый методResolveTaskHistoryGroup
Получение группы истории заданий
Открытый методRunAfter
Запуск скрипта постобработки.
(Унаследован от IKrProcessItemScript.)
Открытый методRunBefore
Запуск скрипта инициализации.
(Унаследован от IKrProcessItemScript.)
Открытый методRunCondition
Запуск вычисления условия.
(Унаследован от IKrProcessItemScript.)
Открытый методRunExecution
Запуск определения условия выполнимости процесса.
(Унаследован от IKrProcessExecutionScript.)
Открытый методRunNextStageInContext
Выполнить этап в другом контексте, т.е. в рамках другой карточки. Процесс будет собран и выполнен как синхронный вторичный процесс. Если метод вызывается в Before (Инициализация), то контекст будет переключен для текущего этапа. Если метод вызывается в After (Постобработка), то контекст будет переключен для следующего этапа.
Открытый методRunVisibility
Запуск определения условия видимости.
(Унаследован от IKrProcessVisibilityScript.)
Открытый методSeal
Защищает объект от изменений.
(Унаследован от ISealable.)
Открытый методSetSinglePerformer(Guid, String, Stage, Boolean)
Установить исполнителя для этапа с режимом одиночного исполнителя Single.
Открытый методSetSinglePerformer(String, String, Stage, Boolean)
Установить исполнителя для этапа с режимом одиночного исполнителя Single.
Открытый методSetStageState
Установить состояние этапа в строке из коллекционной секции KrStages.
Открытый методShow(IDictionaryString, Object)
Вывести содержимое словаря в ValidationResult с уровнем Info.
Открытый методShow(Object)
Вывести объект в ValidationResult с уровнем Info.
Открытый методShow(IStorageDictionaryProvider)
Вывести содержимое хранилища в ValidationResult с уровнем Info.
Открытый методShow(IEnumerablePerformer)
Вывести информацию о нескольких исполнителях в ValidationResult с уровнем Info.
Открытый методShow(Performer)
Вывести информацию об исполнителе в ValidationResult с уровнем Info.
Открытый методShow(IEnumerableStage)
Вывести информацию о нескольких этапах в ValidationResult с уровнем Info.
Открытый методShow(Stage)
Вывод информации об этапе в ValidationResult с уровнем Info.
Открытый методShow(String, String)
Вывести сообщение(message) с уточнением(details) в ValidationResult с уровнем Info.
Открытый методVisibility
Определения условия видимости.
(Унаследован от IKrProcessVisibilityScript.)
В начало страницы
См. также