Creating New Attribute Group
You can use this API to create attribute group for a set of attributes.
API |
Signature |
---|---|
createAttributeGroup |
webService static Apttus_Config2.CPQAdminStruct.ProductAttributeResponseDO createAttributeGroup(Apttus_Config2.CPQAdminStruct.ProductAttributeRequestDO prodAttrRequestDO) |
Request Parameter |
||
---|---|---|
Name |
Type |
Description |
prodAttrRequestDO | Apttus_Config2.CPQAdminStruct.ProductAttributeRequestDO |
The product attribute request data object. |
Request Data Object - Apttus_Config2.CPQAdminStruct.ProductAttributeRequestDO |
||
---|---|---|
Name |
Type |
Description |
ProductAttributeDOs | List<Apttus_Config2.CPQAdminStruct.ProductAttributeDO> |
The list of product attribute data objects. |
ProductAttributeGroupMemberSOs | List<Apttus_Config2__
ProductAttributeGroupMember__c> |
The list of attributes for the product attribute group. |
Data Object - Apttus_Config2.CPQAdminStruct.ProductAttributeDO |
||
---|---|---|
Name |
Type |
Description |
AttributeGroupName | String |
The name of the attribute group you need to associate attributes to. |
ProductAttributesToAdd | List <String> |
The API name of the attributes you want to add to the attribute group. |
ProductAttributesToRemove | List <String> |
The API name of the attributes you want to remove from the attribute group. |
ProductId | Id |
The ID of the product. |
Response Parameter - Apttus_Config2.CPQAdminStruct.ProductAttributeResponseDO |
||
---|---|---|
Field |
Type |
Description |
ProductAttributeGroupResponseMap | List<Apttus_Config2.CPQAdminStruct.MapDO> |
The list of key-value pairs. The key refers to the attribute group name that you provided and the value contains the record ID. |
Success | Boolean |
Indicates whether the attribute group was created successfully or not. |
Response Data Object - Apttus_Config2.CPQAdminStruct.MapDO |
||
---|---|---|
Field |
Type |
Description |
String | Key |
The name of the attribute group. |
String | Value |
The value refers record of the newly created attribute group. |
Code Sample
The sample code below enables you to create an attribute group for the attribute group name and a list of API names of the attributes.
public Map<Apttus_Config2__ProductAttributeGroup__c> createAttributeGroups(String attributeGroupName, List<String> attributeList)
{
Apttus_Config2.CPQAdminStruct.ProductAttributeDO requestAttributeDO = new Apttus_Config2.CPQAdminStruct.ProductAttributeDO();
requestAttributeDO.AttributeGroupName = attributeGroupName;
requestAttributeDO.ProductAttributesToAdd = attributeList;
Apttus_Config2.CPQAdminStruct.ProductAttributeRequestDO requestDO = new Apttus_Config2.CPQAdminStruct.ProductAttributeRequestDO();
requestDO.ProductAttributeDOs = new List<Apttus_Config2.CPQAdminStruct.ProductAttributeDO> {requestAttributeDO };
Apttus_Config2.CPQAdminStruct.ProductAttributeResponseDO response = Apttus_Config2.CPQAdminWebService.createAttributeGroup(requestDO);
List<Apttus_Config2.CPQAdminStruct.MapDO> attributeGroupDetails = response.ProductAttributeGroupResponseMap;
List<Id> attributGroupIds = new List<Id> ();
for (Apttus_Config2.CPQAdminStruct.MapDO attributeGroup : attributeGroupDetails)
{
attributGroupIds.add(attributeGroup.Value);
}
return [Select Id from Apttus_Config2__ProductAttributeGroup__c Where Id IN :attributGroupIds];
}