将发票批量运行的自动化转换为异步
在计划发票批量运行之前,识别开单对象上的活动流和 Apex 触发器,并将其转换为异步流程。同步自动化可以停止运行或将发票留在草稿进行中、过帐进行中或错误中。
所需的 Edition
| 适用于:Lightning Experience |
| 适用于:具有 Revenue Cloud Advanced 许可证或 Revenue Cloud Billing 许可证的 Enterprise、Unlimited 和 Developer Edition |
| 所需用户权限 | |
|---|---|
| 查看和转换记录触发的流: | 管理流 |
| 要查看 Apex 触发器: | 查看设置和配置 |
| 转换 Apex 触发器: | 作者 Apex |
| 要恢复卡住的发票: | 开单管理员权限集 或者 开单操作用户权限集 |
记录触发的流或 Apex 触发器绑定到对象,例如发票或发票行。您可以在 Flow Builder 中定义并激活该对象上的流。拥有作者 Apex 权限的人员定义该对象上的 Apex 触发器,并将其设置为已启用。这些自动化是自定义的。开单不会创建它们。见激活或取消激活流和定义 Apex 触发器。
在发票批量运行生成发票时,运行会创建或更新开单对象的记录。这些对象包括发票、发票行、税行、借项和贷项通知单、开单时间表和开单期间项目。然后,开单对象上的任何活动流或触发器都会为发票批量运行保存的每个记录运行。
同步自动化作为保存记录的一部分运行。发票批处理运行不会完成保存发票,直到该流或触发器完成。如果自动化查询每个发票的相关记录,运行可能会达到处理限制或超时。发票可以保持草稿进行中、过帐进行中或错误。
异步自动化会等到保存发票记录,然后运行。批处理运行可以完成发票生成。流或触发器仍在运行,只是不会在保存发票时运行。
- 从“设置”中,在快速查找框中,输入流,然后单击流。
-
查看这些开单对象上的活动记录触发的流。
- 发票
- 发票行
- 发票行税
- 借记通知单
- 借记通知单行
- 借记通知单行税
- 信用票据
- 信用票据行
- 贷项通知单行税
- 开单时间表
- 开单期间项目
- 从“设置”中,在快速查找框中输入Apex 触发器,然后选择 Apex 触发器。
- 查看相同对象上的活动触发器。
-
要列出具有 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 = TRUEApex 触发器:
SELECT Id, TableEnumOrId, Name, Status FROM ApexTrigger WHERE TableEnumOrId IN ('Invoice','InvoiceLine','DebitMemo','DebitMemoLine','CreditMemo','CreditMemoLine','InvoiceLineTax','DebitMemoLineTax','CreditMemoLineTax','BillingSchedule','BillingPeriodItem') AND Status = 'Active' - 对于每个保存后记录触发的流,将逻辑移动到异步运行路径,以便在发票保存提交后运行。请参阅触发的流。
- 对于每个 Apex 触发器,与拥有作者 Apex 权限的人员合作,将逻辑移出记录保存。在保存完成后运行的更改事件上使用可排队的 Apex 或 Apex 触发器。见符合 Apex 和使用 Apex 触发器订阅。
转换自动化后,计划下一次发票批量运行。请参阅根据开单计划自动生成发票。
如果较早运行的发票停留在草稿进行中、过帐进行中或错误中,请单击发票批处理运行中的恢复。然后再次生成发票。
本文章是否解决您的问题?
请与我们共享您的想法,以便我们进行改进!
