SalesForce.com — отчеты об обходных путях процесса утверждения

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

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

Я не смог найти объект, к которому я мог бы прикрепить триггер, который срабатывал бы после одобрения каждого человека.

В конце дня мне нужно иметь возможность составить отчет о том, кто что должен утвердить (я знаю, что каждый человек увидит то, что ему нужно утвердить, на своей домашней странице, мне нужно, чтобы другие могли получить отчет о все ожидающие согласования).

Любые идеи?


person Christoph    schedule 17.12.2010    source источник


Ответы (2)


Поскольку мне действительно нужно было, чтобы кто-нибудь мог проверить все ожидающие утверждения или ожидающие утверждения для конкретных пользователей в любой момент времени, я создал страницу VisualForce и использовал приведенные ниже запросы в зависимости от поиска каждого ожидающего утверждения или запросов для пользователя.

Для всех ожидающих согласований:

[SELECT Status, TargetObject.Name, TargetObjectId, TargetObject.Type, (SELECT Actor.Id, Actor.Name, Actor.Email, CreatedDate FROM WorkItems)
                                    FROM ProcessInstance
                                    WHERE TargetObject.Type = 'ObjectICareAbout__c' and Status='Pending']

Для ожидающих утверждения для данного пользователя:

[SELECT ActorId, Actor.Name, Actor.Email, CreatedDate, ProcessInstance.Status, ProcessInstance.TargetObjectId, ProcessInstance.TargetObject.Name
                                            FROM ProcessInstanceWorkitem
                                            WHERE ActorId = :user AND ProcessInstance.Status = 'Pending' AND ProcessInstance.TargetObject.Type = 'ObjectICareAbout__c']

Затем они сопоставляются с общей моделью представления для отображения на странице VF.

person Christoph    schedule 23.12.2010

Прежде всего, перейдите в раздел Отчеты -> Административные отчеты -> Все ожидающие утверждения запросы.

Проверьте его и посмотрите, можно ли его настроить в соответствии с вашими потребностями. Если вам нужна возможность поделиться им с пользователями, не являющимися администраторами, подумайте о том, чтобы сделать из него панель управления (может быть таблицей) и запланировать ежедневное выполнение и отправку электронной почты...

Если вы чувствуете, что вам все еще нужен обходной путь, мы, безусловно, можем поэкспериментировать с

однако это не работает, когда шаг предназначен для параллельных утверждений

Вы пробовали использовать формулы в обновлении? Такие вещи, как someHiddenNumberField +1, могут работать (в данный момент я не могу проверить это в своей версии для разработчиков); если не прямо так, то с каким-то синтаксическим сахаром вроде PRIORVALUE(). Или, может быть, даже лучше - иметь текстовое поле и добавлять в него дату/время + кто одобрил. Затем на последнем шаге вы очищаете «счетчик» и все готово.

Если трюк с обновлениями на основе формул не сработает (не обещаю, это просто идея), то, возможно, сохраните старый способ установки специального поля, но также определите триггер «до обновления» для этого объекта (или рабочий процесс? но это снова формула), которая проверит значение, обновит «счетчик» и вернет скрытому полю исходное значение.

person eyescream    schedule 17.12.2010
comment
Об отчетах -> Административные отчеты -> Все ожидающие утверждения запросы только что узнали об этом, и по какой-то причине это недоступно в нашей организации. Ребята из SFDC не знают, почему — поди разберись. - person Christoph; 18.12.2010
comment
К вашему сведению - я понял, что могу получить доступ к этой информации, используя приведенный ниже SOQL; [ВЫБЕРИТЕ Статус, TargetObject.Name, TargetObjectId, TargetObject.Type, (ВЫБЕРИТЕ Актер.Id, Актер.Имя, Актер.Email, CreatedDate FROM WorkItems) FROM ProcessInstance WHERE TargetObject.Type = 'ObjectICareAbout__c' и Status='Pending'] это за страницей VF - мой ядерный вариант. - person Christoph; 18.12.2010