About Extending the Lead Time Functionality
A renewals administrator at a major healthcare company can be contractually mandated to create the renewal suite 90 days before the asset expiry for a large company and 30 days before asset expiry for a small company.
The CPQ Salesforce Installed products Settings such as Lead Time and Renewal Execution Setting is OnDemand a renewal quote is generated for all accounts globally. However, if you want to generate renewals for a list of accounts for a particular lead time, you can use the following construct in the developer console.
// specify a lead time to override setting value
Integer leadTime = 1000;
// gather account ids
List<ID> accountIds = new List<ID>();
accountIds.add(‘0014C00000FQSuz’);
accountIds.add('0014C00000FQSuu');
// instantiate the OOTB controller and pass in the account ids
Apttus_Config2.AssetRenewalSubmitController baseController = new Apttus_Config2.AssetRenewalSubmitController(leadTime, accountIds);
// submit the job
ID jobId = baseController.doSubmitJob();You can use the following construct to renew assets that belong to separate list of accounts for different lead times:
// create map to be used as the constructor argument
Map<Integer, List<ID>> accountIdsByLeadtime = new Map<Integer, List<ID>>();
// gather account ids to be renewed with a leadTime of 400
Integer leadTime = 1000;
List<ID> accountIds = new List<ID>();
accountIds.add('0014C00000FQSv9');
// add leadTime as key and accounts as value to map
accountIdsByLeadtime.put(leadTime, accountIds);
// gather account ids to be renewed with a leadTime of 1000
leadTime = 60;
accountIds = new List<ID>();
accountIds.add('0014C00000FQSv4');
// add leadTime as key and accounts as value to map
accountIdsByLeadtime.put(leadTime, accountIds);
// instantiate the OOTB controller and pass in the account ids
Apttus_Config2.AssetRenewalSubmitController baseController = new Apttus_Config2.AssetRenewalSubmitController(accountIdsByLeadtime);
// submit the job
ID jobId = baseController.doSubmitJob();After executing the construct, view changes on the Temp Renew page. New records are created in the Temp Renew page.

