Loading
Преобразование автоматизации в асинхронную для пакетных запусков счетов

Преобразование автоматизации в асинхронную для пакетных запусков счетов

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

Требуемые версии

Доступно в версиях: Lightning Experience
Доступно в версиях: Enterprise Edition, Unlimited Edition и Developer Edition с лицензией Revenue Cloud Advanced или лицензией Revenue Cloud Billing
Необходимые полномочия пользователя
Для просмотра и преобразования потоков, запущенных записью: Управление потоком
Для просмотра триггеров Apex: Просмотр настройки и конфигурации
Для преобразования триггеров Apex: Автор Apex
Для восстановления застрявших счетов:

Набор полномочий администратора выставления счета

ИЛИ

Набор полномочий пользователя операций выставления счета

Поток, запущенный записью, или триггер Apex привязан к объекту, например, счету или строке счета. Вы определяете и активируете поток для этого объекта в Flow Builder. Лицо с полномочием Author Apex определяет триггер Apex для этого объекта и устанавливает его на активный. Данные автоматизации являются настраиваемыми. Выставление счета их не создает. См. Активация или деактивация потока и определение триггеров Apex.

Когда выполнение пакета счета создает счета, выполнение создает или обновляет записи в объектах выставления счета. Эти объекты включают счета, строки счета, строки налога, дебетовые и кредитные уведомления, расписания выставления счета и элементы периода выставления счета. Любой активный поток или триггер в объекте «Выставление счета» потом выполняется для каждой записи, сохраненной пакетным выполнением счета.

Синхронная автоматизация выполняется как часть сохранения записи. Пакетное выполнение счета не завершает сохранение счета до завершения потока или триггера. Если автоматизация запрашивает связанные записи для каждого счета, выполнение может нарушить ограничения обработки или время ожидания. Счета могут оставаться в черновике «Выполняется», «Выполняется публикация» или «Ошибка».

Асинхронная автоматизация дожидается сохранения записей счета, потом выполняется. Пакетное выполнение может завершить создание счетов. Поток или триггер продолжает выполняться, но не во время сохранения счета.

  1. Введите строку «Потоки» в поле «Быстрый поиск» меню «Настройка» и выберите пункт «Потоки».
  2. Просмотрите активные потоки, запущенные записью, в этих объектах выставления счета.
    • Счет
    • Строка счета
    • Налог строки счета
    • Дебетовое уведомление
    • Строка дебетового уведомления
    • Налог строки дебетового уведомления
    • Кредитное уведомление
    • Строка кредитного уведомления
    • Налог строки кредитного уведомления
    • Расписание выставления счета
    • Элемент периода выставления счета
  3. Введите строку «Триггеры Apex» в поле «Быстрый поиск» меню «Настройка» и выберите пункт «Триггеры Apex».
  4. Просмотрите активные триггеры для тех же объектов.
  5. Чтобы добавить автоматизацию в список посредством SOQL, откройте редактор запросов Developer Console.

    Примеры сценариев:

    В запросе потока выберите «Использовать Tooling API». В запросе триггера Apex оставьте «Использовать Tooling API» очищенным.

    Потоки:

    SELECT Id, IsActive, Label, ProcessType, ManageableState, TriggerObjectOrEventId, TriggerObjectOrEventLabel, TriggerType FROM FlowDefinitionView WHERE TriggerObjectOrEventId IN ('Invoice','InvoiceLine','DebitMemo','DebitMemoLine','CreditMemo','CreditMemoLine','InvoiceLineTax','DebitMemoLineTax','CreditMemoLineTax','BillingSchedule','BillingPeriodItem') AND IsActive = TRUE

    Триггеры Apex:

    SELECT Id, TableEnumOrId, Name, Status FROM ApexTrigger WHERE TableEnumOrId IN ('Invoice','InvoiceLine','DebitMemo','DebitMemoLine','CreditMemo','CreditMemoLine','InvoiceLineTax','DebitMemoLineTax','CreditMemoLineTax','BillingSchedule','BillingPeriodItem') AND Status = 'Active'
  6. Для каждого потока, запущенного записью после сохранения, переместите логику в путь «Выполнить асинхронно», чтобы она выполнялась после подтверждения сохранения счета. См. Запущенные потоки.
  7. Для каждого триггера Apex работайте с человеком, имеющим полномочие Apex автора на перемещение логики из сохранения записи. Рекомендуем использовать Apex или триггер Apex для события изменения, выполняемого после завершения сохранения. См. Apex в очереди и «Подписаться с триггерами Apex».

После преобразования автоматизации запланируйте следующий пакетный запуск счета. См. Создание счетов автоматически на основе расписаний выставления счетов.

Если счета из более раннего выполнения находятся в черновике в процессе выполнения, публикации в процессе выполнения или ошибки, нажмите «Восстановить» в пакетном выполнении счета. Потом создайте счета повторно.

 
Загрузка
Salesforce Help | Article