Background Processes
As an administrator of Billing Central, you can choose whether some processes use Batch Apex or Queueable Apex to process records in the background. The Use Queueable options in the Background Settings custom setting determine which method a process uses. See Background Process Settings.
Process | Batch Apex | Queueable Apex |
---|---|---|
Activate Contracts | ||
Amend Prices | — | Always runs using Queueable Apex. |
Apply Change Requests | — | Always runs using Queueable Apex. |
Assign Proration | ||
Billing | ||
Complete Billing Document | Batch Apex is always used when completing from the list view. | |
Convert Invoice | Batch Apex is always used when converting from the list view. | |
Discard Billing Document | ||
Expire Contract | ||
Generate Schedules | — | |
Renew Contracts | ||
Tax Breakdown Creation | — | |
Update Total Billed |
|
Batch Apex is always used for updating total billed when completing billing documents from the list view. |
Batch Apex
If using Batch Apex, a single Batch Apex job is created. If validation errors occur while that job is running, the job is retried once, however records that exceed Salesforce limits are not retried. For Billing Central processes that can use Batch Apex, you can set the Scope Size. See Background Process Settings. For more information, see the Salesforce Help.
Queueable Apex
You can choose Queueable Apex if you want records to be processed in parallel chains. If you have a large number of contracts to be billed, using Queueable Apex may increase the number of contracts you can process per hour. This depends on Salesforce resource allocation and the way in which objects have been customized on your Salesforce org. For Billing Central processes that can use Queueable Apex, you can set the Queue Size and the Scope Size. See Background Process Settings. For more information, see the Salesforce Help.
Depending on your Salesforce org, this might be the optimal method for processing large numbers of records in Billing Central. If you encounter performance problems, use Batch Apex.