Renewing Assets
You can invoke this global method to renew Assets.
API | Signature |
---|---|
renewAssets | static Apttus_Config2.CPQStruct.RenewAssetsResponseDO renewAssets(Apttus_Config2.CPQStruct.RenewAssetsRequestDO request) |
Parameters | ||
---|---|---|
Name | Type | Description |
request | Apttus_Config2.CPQStruct.RenewAssetsRequestDO() | Request object invoked by the method |
Request Data Object - Apttus_Config2.CPQStruct.RenewAssetsRequestDO | ||
---|---|---|
Name | Type | Description |
FarthestAssetEndDate | Boolean | Setting this value to true renews assets using the farthest end date. |
RenewEndDate | Date | The Asset End Date for Renewal |
RenewTerm | Integer | The Renewal Term for an asset |
AssetIds | List<ID> | List of asset ids |
CartId | ID | The id of Cart for which an asset is being renewed |
Response Data Object- Apttus_Config2.CPQStruct.RenewAssetsResponseDO | ||
---|---|---|
Field | Type | Description |
LineItemMap | Map<ID, Apttus_Config2__LineItem__c> | Returns all line items with all their field values. |
Code Sample
The code sample below helps you renew Assets based on the specified Renewal Date or Renewal Term.
// create list of asset ids List<ID> listAssetId = new List<ID>(); for (AssetLineItemWrapperClass record : wrapperAssetLineItemList) { if (record.selected) { listAssetId.add(record.assetId); } } // renew assets using an asset line item record with valid Renewal Date and Term if (objAssetLineItem.Apttus_Config2__RenewalDate__c != null || objAssetLineItem.Apttus_Config2__RenewalTerm__c != null) { // create and populate request object Apttus_Config2.CPQStruct.RenewAssetsRequestDO request = new Apttus_Config2.CPQStruct.RenewAssetsRequestDO(); request.CartId = cartId; request.AssetIds = listAssetId; request.RenewEndDate = objAssetLineItem.Apttus_Config2__RenewalDate__c; request.RenewTerm = objAssetLineItem.Apttus_Config2__RenewalTerm__c; request.FarthestAssetEndDate = false; // call renewAssets API Apttus_Config2.CPQStruct.RenewAssetsResponseDO response = Apttus_Config2.AssetService.renewAssets(request); ApexPages.addMessage(new ApexPages.Message(ApexPages.severity.info,'renewAssets: ' + response)); }