Вы находитесь здесь:
InsScheduledAutomatedTransitionService:scheduleAutomatedTransition
Используйте эту службу для автоматизации перехода в состояние, запланировав переход в состояние объекта из исходного состояния в целевое состояние (штаты Vlocity), используя почасовые, ежедневные или еженедельные схемы.
Класс: InsScheduledAutomatedTransitionService
Метод: scheduleAutomatedTransition
Принцип работы
Этот переход для бизнес-процессов модели состояния Vlocity. Сложные схемы планирования (каждые два дня, каждый первый понедельник месяца и т. д.) не поддерживаются.
-
С помощью вводных данных objectName и fieldName (и дополнительных typeName и typeValue) определяется определенная версия модели состояния Vlocity, представляющая бизнес-правило.
-
С помощью вводных данных fromState и toState определяется конкретный переход состояния Vlocity в этом бизнес-правиле, то есть в версии модели состояния Vlocity с предыдущего этапа. Вводные данные расписания предоставляют сведения о частоте и времени выполнения запланированного задания Salesforce, которое будет выполнять автоматический переход из 'fromState' в 'State'. При каждом выполнении запланированного задания выполняется следующее:
-
Извлеките не более 5 экземпляров типа, представленного 'objectName', где значение поля, представленного 'fieldName' = значение, представленное 'fromState'. Таким образом, для выполнения перехода выбираются только экземпляры объекта, которые в данный момент находятся в состоянии, представленном 'fromState'.
-
Выполняются все настроенные правила перехода в состояние Vlocity для указанного перехода в состояние Vlocity (как определено в шаге 2 выше).
-
Если общий результат выполнения правила (управляемый критериями завершения перехода, заданными в переходе состояния Vlocity) является истинным, например, выполнение правила передано, состояние экземпляра объекта обновляется до состояния и представлено 'toState'.
-
Если общий результат выполнения правила является ложным, то есть выполнение правила не удалось, состояние экземпляра объекта обновляется до состояния «Альтернатива», настроенного в переходе состояния Vlocity, при его наличии.
-
Если состояние экземпляра объекта обновляется до нового состояния (либо 'toState', либо «Альтернативное состояние» для указанного перехода), выполняются соответствующие действия Vlocity, настроенные для этого состояния (то есть поле 'To State' в действии Vlocity).
-
Количество экземпляров объекта, состояние которого было обновлено на 'toState', возвращается в 'noOfUpdatedRecords'. Количество экземпляров объекта, состояние которого было обновлено до состояния «Альтернатива», возвращается в 'noOfUpdatedRecordsToAlternateStates'.
-
Если переход не был выполнен, экземпляр объекта остается в 'fromState'.
-
Вводные данные
Ввод |
Описание |
|---|---|
|
Обязательно. API-имя объекта |
|
Обязательно. API-имя поля, содержащее значение области. |
|
Обязательно. Значение поля «От состояния (источник)» перехода к состоянию. |
|
Обязательно. Значение поля «Состояние (цель)» перехода состояния. |
|
Дополнительно.
|
|
Дополнительно.
Примечание
Например, при typeName = 'Type__c' и typeValue = 'Idvidual Provider' будет использована определенная модель состояния Vlocity, настроенная для объекта Application__c. |
|
Соотнесите объект, содержащий ключи |
|
Обязательно. Значение строки
|
|
Формат: ЧЧ:ММ, военное время. Не обязательно, если |
|
Значение строки. Допустимые значения: Дни также могут быть представлены в числовом выражении, от 1 до 7, где воскресенье = Обязательно, если |
JSON ввода
Ниже указан пример ввода JSON, схема расписания которого еженедельно в 13:30 каждый понедельник:
{
"objectName":"prefix__Application__c",
"fieldName":"prefix__Status__c",
"fromState":"New",
"toState":"Submitted",
"schedule":{
"pattern":"WEEKLY",
"startTime":"13:30",
"dayOfTheWeek":"MON"
}
}Вывод JSON
Вывод JSON отображает количество обновленных записей (максимум пять) и содержит все исключения.
{
"noOfRecordsForProcessing": <Number of records for processing from a search, max=5>,
"noOfUpdatedRecords": <Number of records that have successful 'from state' to 'to state' transition>,
"noOfUpdatedRecordsToAlternateStates": <Number of records that have successful 'from state' to 'alternate state' transition>,
"errors":<Consolidated error mapping between record ID and error detail. This is null when there's no error.>
}