Salesforce
Объекты процесса утверждения
Поиск…
замечания
Процесс утверждения - очень замечательная функция в Salesforce для автоматизации бизнес-процесса. Процесс утверждения - это набор шагов, необходимых для утверждения или отклонения конкретной записи утвердителем или набором утверждающих.
Шаг может применяться ко всем записям, включенным в процесс, или просто к записям, которые соответствуют определенным критериям, определенным администратором. В процессе утверждения также указываются действия, которые необходимо предпринять, когда отчет одобряется, отклоняется, отозван или сначала отправляется на утверждение.
Объекты ProcessDefinition и ProcessNode действуют как шаблон и сохраняют основные конфигурации для процесса утверждения.
ProcessDefinition
Представляет определение единого процесса утверждения. Используйте этот объект, чтобы прочитать описание процесса утверждения. Определение доступно только для чтения. Мы не можем изменить запись, созданную в объекте ProcessDefinition. Но мы можем описать, запросить, найти и получить информацию о процессах утверждения.
~ Запрос ~
SELECT CreatedById,CreatedDate,Description,DeveloperName,LastModifiedById,
LastModifiedDate,LockType,Name,State,SystemModstamp,TableEnumOrId,Type,Id
FROM ProcessDefinition
Записи создаются при создании нового процесса утверждения с использованием пользовательского интерфейса Salesforce процесса утверждения.
ProcessNode
Представляет этапы процесса, созданные для конкретного процесса утверждения (ProcessDefinition). Этот объект используется для чтения описания этапа процесса. Простыми словами записи ProcessNode описывают шаг в определении процесса. Мы можем описывать, запрашивать, искать и извлекать процедуры утверждения. Шаги.
~ Запрос ~
SELECT Description,DeveloperName,Name,ProcessDefinitionId,SystemModstamp
,Id,FROM ProcessNode
Как видим, поле ProcessDefinitionId действует как внешний ключ, который ссылается на объект или таблицу ProcessDefinition, для которых создаются этапы или узлы процесса. Этот объект также читается только как объект ProcessDefinition.
ProcessInstance
Представляет экземпляр одного полного процесса утверждения. Запись ProcessInstance создается каждый раз для конкретной записи объекта, которая отправляется на утверждение. Его также доступен для чтения. Мы можем описать, запросить и получить процесс утверждения экземпляра.
~ Запрос ~
SELECT CompletedDate,CreatedById,CreatedDate,ElapsedTimeInDays,
ElapsedTimeInHours,ElapsedTimeInMinutes,Id,IsDeleted,LastActorId,
LastModifiedById,LastModifiedDate,ProcessDefinitionId,Status,
SubmittedById,SystemModstamp,TargetObjectId FROM ProcessInstance
Все поля ProcessInstance автоматически заполняются после подачи отчета для утверждения с двумя полями исключений: CompletedDate и LastActorId, которые заполняются только после завершения экземпляра процесса утверждения. Поле ProcessDefinitionId является идентификатором ссылочного или внешнего ключа объекта ProcessDefinition.
ProcessInstanceStep & ProcessInstanceWorkitem
Оба объекта ProcessInstanceStep & ProcessInstanceWorkItem являются экземплярами шагов процесса, которые создаются для определенного ProcessInstance. ProcessInstanceStep представляет собой экземпляр шага в процессе утверждения (ProcessInstance), на котором пользователи уже действовали, и ProcessInstanceWorkItem представляет собой экземпляр шага в процессе утверждения (ProcessInstance), на котором находится в ожидании, и пользователи должны выполнить некоторые действия, следующие на нем. Мы можем описывать, запрашивать и извлекать шаги процесса утверждения и рабочие элементы.
~ Запрос ~
SELECT CreatedById,CreatedDate,ElapsedTimeInDays,ElapsedTimeInHours,
ElapsedTimeInMinutes,Id,IsDeleted,OriginalActorId,ProcessInstanceId,
ActorId,SystemModstamp FROM ProcessInstanceWorkitem
SELECT ActorId,Comments,CreatedById,CreatedDate,ElapsedTimeInDays,Id,
ElapsedTimeInHours,ElapsedTimeInMinutes,OriginalActorId,ProcessInstanceId
,StepNodeId,StepStatus,SystemModstamp FROM ProcessInstanceStep
ProcessInstanceHistory *
ProcessInstanceHistory - это объект, который не доступен ни для поиска, ни для запроса. Это объект только для чтения, который показывает все этапы и ожидает запросов утверждения, связанных с процессом утверждения (ProcessInstance). Но мы можем использовать этот объект для репликации связанных функций списка пользовательского интерфейса Salesforce для процессов утверждения, которые скоро будут показаны в моем следующем блоге. Мы можем использовать ProcessInstanceHistory для единственного представления только для чтения объектов ProcessInstanceStep и ProcessInstanceWorkitem. Мы можем запросить ProcessInstanceHistory, запросив его во вложенном запросе soql на родительском объекте ProcessInstance. Вложенные запросы запроса soql StepsAndWorkitems , который является именем дочерних отношений для ProcessInstanceHistory в объекте ProcessInstance. Это очень полезный объект для решения различных бизнес-задач.
~ Запрос ~
SELECT CompletedDate, CreatedById, CreatedDate,Id,IsDeleted,LastActorId,
LastModifiedById,LastModifiedDate,ProcessDefinitionId,Status,SubmittedById
,SystemModstamp,TargetObjectId, (SELECT ID, ProcessNodeId, StepStatus,
Comments,TargetObjectId,ActorId,CreatedById,IsDeleted,IsPending,
OriginalActorId,ProcessInstanceId,RemindersSent,CreatedDate
FROM StepsAndWorkitems ) FROM ProcessInstance