Class ChargingContractRevisionModel
- All Implemented Interfaces:
ITagNameProvider,IXMLMarshallable,XMLMapping,XMLMarshallable
Java class represents a version of a charging contract; You cannot manage such data with the Java APIs of SAP CC.
Implementation Note and Concepts
A charging contract is the pricing and charging view of a provider contract stored in SAP Convergent Charging.
- A charging contract is only visible in the technical interfaces. It represents a technical concept in SAP CC.
- A provider contract is a master data. It is owned by the service provider and includes customer data. This master data relates to a long-term business relationships between an end customer of a marketable service and the service provider. The provider is visible in the user interfaces (SAP CC Core Tool, SAP CRM). It represents a business and functional concept.
Related Information
In this Java API Reference, consider the following Java classes:
- IContractBatchRatingGroupAssignmentPolicy
- RerateBulkOp
- AllowanceSearchFilterModel
- ChargingContractSearchFilterModel
A contract is a long-term agreement between a service provider and a customer based on specific terms that have been negotiated beforehand which defines how and how much the customer shall be charged:
- To have access to goods or services
- To consume these goods or services
- Once during time: these are one-off prices
- Recurrently: these are recurring prices
- Once per consumption
- Recurrently, for all consumption made in a given time period
- Price redefinition
- Price discount or surcharge
- Charging redefinition
- Condition redefinition for price computation and charging
- The customer charging definition only:
- The price to access and/or consume more goods and/or services is reduced
- The price to access and/or consume more goods and/or services is increased
- For the same price, more goods and/or services can be consumed
- For the same price, less goods and/or services can be consumed
- The customer economic environment, such as:
- An extra charge, which is a remuneration, i.e. the payment of commission to another entity of the economic environment, such as another customer
- A split charge, which is a sponsorship, i.e. the splitting of the payment between the customer and another entity of the economic environment, such as another customer.
A Charging Contract is composed of:
- An
idwhich uniquely identifies the Charging Contract in the system - A
subscriberAccountIdwhich uniquely identifies theSubscriber Accountwhich has subscribed to the present Charging Contract - A
subscriberAccountServiceProviderNamewhich specifies the name of the service provider who has delivered the present Charging Contract. The name of the service provider matches thecatalogowner. - A
rootChargingContractIdwhich uniquely identifies the Root Charging Contract of the present Linked Charging Contract - A list of Additional Information that are extra data.
- A list of Charging Contract Items that refer to subscribed
Charge Plan Classeswhosecatalogowner must match the declared service provider...
A Charging Contract with a rootChargingContractId set is called a Linked Charging Contract.
This type of contract is linked to a Root Charging Contract.
A Root Charging Contract may define counter(s) that can be shared with the Charging Contract Item(s) of this Linked Charging Contract(s).
These counter are pooled counters.
XML API for HCI
The XML APIs specify the following XSD fragment:
XSD Fragment
<xs:element name="chargingContractRevision">
<xs:complexType>
<xs:sequence>
<xs:element name="additionalInfo" type="AdditionalInfoType" minOccurs="0" maxOccurs="unbounded" />
<xs:element ref="chargingContractItemRevision" minOccurs="0" maxOccurs="unbounded" />
</xs:sequence>
<xs:attribute name="id" use="required" type="xs:string"/>
<xs:attribute name="subscriberAccountId" type="xs:string"/>
<xs:attribute name="subscriberAccountServiceProviderName" type="xs:string"/>
<xs:attribute name="rootChargingContractId" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddCharacterData(String cData) Adds character data to the content element.voidaddChild(String tagName, XMLMarshallable child) Adds a child to the object, thechildrepresenting the marshallable object which must be added to the element.Gets the list ofAdditional Informationof the Charging Contract.Gets the list ofCharging Contract Items.Class<?>getClass(String nsUri, String tag, XMLAttributes atts) Returns theJava classfor a specifiedXML tagand its attributes in a namespace.getId()Gets the unique identifier of the Charging Contract in the system.Gets the unique identifier of the root charging contract if this contract is linked for counter pooling purpose, null if the contract is not linked.Gets the unique identifier of theSubscriber Accountwhich has subscribed to the present Charging Contract.Gets the name of the service provider who has delivered the present Charging Contract.Gets the XML tag name of the HCI model.voidmarshalAttributes(XMLOutputter output) Gives an XML representation of the attributes of an object.voidmarshalChildren(XMLOutputter output) Gives an XML representation of the child objects of an object.voidsetAttributes(XMLAttributes atts) Sets the attributes of the XML representation of the element being processed.voidSets the unique identifier of the Charging Contract in the system.voidsetRootChargingContractId(String rootChargingContractId) Sets the unique identifier of the root charging contract.voidsetSubscriberAccountId(String subscriberAccountId) Sets the unique identifier of theSubscriber Accountwhich has subscribed to the present Charging Contract.voidsetSubscriberAccountServiceProviderName(String subscriberAccountServiceProviderName) Sets the name of the service provider who has delivered the present Charging Contract.Methods inherited from class com.highdeal.hci.HCIModelAdapter
marshal
-
Field Details
-
TAG_NAME
The XML tag name of the Charging Contract XML representation- See Also:
-
-
Constructor Details
-
ChargingContractRevisionModel
public ChargingContractRevisionModel()
-
-
Method Details
-
getId
Gets the unique identifier of the Charging Contract in the system.This identifier is defined by the provisioning system.
- Returns:
- The unique identifier of the Charging Contract in the system
-
setId
Sets the unique identifier of the Charging Contract in the system.This identifier is defined by the provisioning system.
- Parameters:
id- The unique identifier in the system to set in the Charging Contract
-
getSubscriberAccountId
Gets the unique identifier of theSubscriber Accountwhich has subscribed to the present Charging Contract.- Returns:
- The unique identifier of the Subscriber Account in the system which has subscribed to the present Charging Contract
-
setSubscriberAccountId
Sets the unique identifier of theSubscriber Accountwhich has subscribed to the present Charging Contract.- Parameters:
subscriberAccountId- The unique identifier of the Subscriber Account in the system to set in the Charging Contract
-
getSubscriberAccountServiceProviderName
Gets the name of the service provider who has delivered the present Charging Contract.The name of the service provider matches the
catalogowner of the subscribed Charging Contract Items. So,Charge Plan Classesreferred by the subscribed Charging Contract Items must be owned by this service provider.- Returns:
- The name of the service provider who has delivered the present Charging Contract
-
setSubscriberAccountServiceProviderName
Sets the name of the service provider who has delivered the present Charging Contract.The name of the service provider matches the
catalogowner of the subscribed Charging Contract Items. So,Charge Plan Classesreferred by the subscribed Charging Contract Items must be owned by this service provider.- Parameters:
subscriberAccountServiceProviderName- The name of the service provider to set in the Charging Contract
-
getRootChargingContractId
Gets the unique identifier of the root charging contract if this contract is linked for counter pooling purpose, null if the contract is not linked.- Returns:
- The unique identifier of the root charging contract if this contract is linked, null otherwise
-
setRootChargingContractId
Sets the unique identifier of the root charging contract. If this identifier is set, then the contract is linked for counter pooling purpose. If this identifier is set to null, the contract is root.- Parameters:
rootChargingContractId- The unique identifier of the linked charging contract
-
getAdditionalInfoList
Gets the list ofAdditional Informationof the Charging Contract.- Returns:
- The list of Additional Information of the Charging Contract
-
getChargingContractItemList
Gets the list ofCharging Contract Items. The Charging Contract includes a description and customizable.- Returns:
- the list of
Charging Contract Items.
-
getTagName
Description copied from interface:ITagNameProviderGets the XML tag name of the HCI model.- Specified by:
getTagNamein interfaceITagNameProvider- Returns:
- The XML tag name
-
marshalAttributes
Description copied from interface:IXMLMarshallableGives an XML representation of the attributes of an object.- Specified by:
marshalAttributesin interfaceIXMLMarshallable- Parameters:
output- TheXML outputto marshal the object attributes into
-
marshalChildren
Description copied from interface:IXMLMarshallableGives an XML representation of the child objects of an object.- Specified by:
marshalChildrenin interfaceIXMLMarshallable- Parameters:
output- TheXML outputto marshal the child objects into
-
addCharacterData
Description copied from interface:XMLMarshallableAdds character data to the content element.- Specified by:
addCharacterDatain interfaceXMLMarshallable- Parameters:
cData- The character data to be added
-
addChild
Description copied from interface:XMLMarshallableAdds a child to the object, thechildrepresenting the marshallable object which must be added to the element.- Specified by:
addChildin interfaceXMLMarshallable- Parameters:
tagName- The name of tag for the childchild- The child to be added
-
setAttributes
Description copied from interface:XMLMarshallableSets the attributes of the XML representation of the element being processed.- Specified by:
setAttributesin interfaceXMLMarshallable- Parameters:
atts- TheXML attributesof the current element
-
getClass
Description copied from interface:XMLMappingReturns theJava classfor a specifiedXML tagand its attributes in a namespace.- Specified by:
getClassin interfaceXMLMapping- Parameters:
nsUri- The unique resource identifier of the namespace of the XML tagtag- The local part of the XML tagatts- The attributes of the XML tag- Returns:
- A
Java classwith a default constructor
-