Salesforce.com - Отчетность по процессу одобрения обходные пути

StackOverflow https://stackoverflow.com/questions/4473207

Вопрос

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

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

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

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

Любые идеи?

Это было полезно?

Решение

Поскольку мне действительно нужно было, чтобы кто -то мог проверить все ожидающие одобрения или ожидающие разрешения для конкретных пользователей в любой момент времени, я создал страницу 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.

Другие советы

В первую очередь - пойти в Отчеты -> Административные отчеты -> Все ожидающие запросы на одобрение.

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

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top