com.highdeal.pnr.hci
Class RerateBulkOp

java.lang.Object
  extended by com.highdeal.hci.MessageOperationAdapter
      extended by com.highdeal.pnr.hci.RerateBulkOp
All Implemented Interfaces:
IXMLMarshallable, MessageOperation, XMLMapping, XMLMarshallable

public class RerateBulkOp
extends MessageOperationAdapter
implements XMLMapping

This operation allows to trigger the rerating process; by default you use this in the SAP CC Core Tool user interface and you do not need to implement this operation in your client application.

Implementation in Your Client Application

You implement this operation to manage the rerating operations directly in your client application. During the production operation phase, the SAP CC users do not need anymore to work with the Core Tool user interface.

Usage

The rerating process gives the possibility to cancel previous charging operations and to perform new ones on identified sets of subscriptions or charging contracts. This feature is mainly used to correct errors such as:

There are two possible configurations for the rerating process:

Rerating with SAP Convergent Charging BART Server

Prerequisites
Behavior

In this context, the rerating operation does the following:

When rerating a subscription or charging contract, the following operations are performed:

When a subscription or charging contract has been rerated, it is unlocked so that it can be used by other processes. In case it remains locked, the unlocking can be performed manually by using either the operation UnlockSubscriptionOp for subscriptions, or UnlockChargingContractOp for charging contracts.

Restrictions

In this context, the rerating process has the following restrictions:

Rerating with SAP Convergent Invoicing with function Consumption Item Management enabled

Prerequisites
Behavior

In this context, the rerating operation does the following:

Restrictions

In this context, the rerating process has the following restrictions:

Common Restrictions

In both configurations, rerating operations cannot be performed on charging contracts which use prepaid accounts.

Notes

See Also:
SubscriptionModel, SubscriptionSearchFilterModel, ChargingContractSearchFilterModel

Operation Result

RerateBulkResult

Operation Failure Exception

RerateException

XML API for HCI

The XML APIs specify the following XSD fragment:

XSD Fragment

<xs:element name="rerateBulk">
   <xs:complexType>
     <xs:sequence>
       <xs:choice>
         <xs:element ref="subscriptionSearchFilter" minOccurs="0" maxOccurs="1"/>
         <xs:element ref="chargingContractSearchFilter" minOccurs="0" maxOccurs="1"/>
       </xs:choice>
     </xs:sequence>
     <xs:attribute name="fromDate" type="xs:dateTime" use="required"/>
     <xs:attribute name="adaptFromDate" type="xs:boolean" use="optional" default="false"/>
     <xs:attribute name="offerCode" type="xs:string"/>
     <xs:attribute name="translationTableCode" type="xs:string"/>
     <xs:attribute name="tierTableCode" type="xs:string"/>
     <xs:attribute name="pricingMacroCode" type="xs:string"/>
     <xs:attribute name="chargePlanId" type="xs:string"/>
     <xs:attribute name="mappingTableId" type="xs:string" />
     <xs:attribute name="rangeTableId" type="xs:string" />
     <xs:attribute name="reason" type="xs:string" use="optional" />
   </xs:complexType>
 </xs:element>

Operation Availability

You can send this operation request in HCI messages to the following final target types of instances in the connected SAP CC system:

EditionFinal Target Instances
raterupdaterguiderbulkLoadertaxerdispatcher
chargeNoYesNoNoNoNo

Field Summary
static java.lang.String OPERATION_NAME
           
 
Constructor Summary
RerateBulkOp()
          Builds an empty RerateBulk Operation
 
Method Summary
 void addCharacterData(java.lang.String cData)
          Adds character data to the content element.
 void addChild(java.lang.String tagName, XMLMarshallable child)
          Adds a child to the object, the child representing the marshallable object which must be added to the element.
 java.lang.String getChargePlanId()
          Returns the identifier of the charge plan
 ChargingContractSearchFilterModel getChargingContractSearchFilter()
          Returns the search filter used to select the charging contracts to rerate.
 java.lang.Class<?> getClass(java.lang.String nsUri, java.lang.String tag, XMLAttributes atts)
          Returns the Java class for a specified XML tag and its attributes in a namespace.
 java.util.Date getFromDate()
          Returns the from date.
 java.lang.String getMappingTableId()
          Returns the identifier of the mapping table
 int getMaxThroughput()
          Deprecated. 
 java.lang.String getName()
          Returns the name of the operation, that is "rerateBulk"
 java.lang.String getOfferCode()
          Returns the identifier code of the offer to rerate
 java.lang.String getPricingMacroCode()
          Returns the identifier code of the pricing macro
 java.lang.String getRangeTableId()
          Returns the identifier of the range table
 java.lang.String getReason()
          Returns the reason for the rerating operation
 SearchFilterModel getSearchFilter()
          Deprecated.  
 SubscriptionSearchFilterModel getSubscriptionSearchFilter()
          Returns the search filter used to select the subscriptions to rerate.
 java.lang.String getTierTableCode()
          Returns the identifier code of the tier table
 java.lang.String getTranslationTableCode()
          Returns the identifier code of the translation table
 boolean isAdaptFromDate()
          Returns whether the from date must be adapted
 void marshalAttributes(XMLOutputter output)
          Gives an XML representation of the attributes of an object.
 void marshalChildren(XMLOutputter output)
          Gives an XML representation of the child objects of an object.
 void release()
          Release operation
 void setAdaptFromDate(boolean adaptFromDate)
          Specifies whether the from date must be adapted
 void setAttributes(XMLAttributes atts)
          Sets the attributes of the XML representation of the element being processed.
 void setChargePlanId(java.lang.String chargePlanId)
          Sets the identifier of the charge plan
 void setChargingContractSearchFilter(ChargingContractSearchFilterModel searchFilterModel)
          Sets the search filter used to select the charging contracts to rerate.
 void setFromDate(java.util.Date fromDate)
          Sets the from date.
 void setMappingTableId(java.lang.String mappingTableId)
          Sets the identifier of the mapping table
 void setMaxThroughput(int val)
          Deprecated. 
 void setOfferCode(java.lang.String offerCode)
          Sets the identifier code of the offer to rerate
 void setPricingMacroCode(java.lang.String pricingMacroCode)
          Sets the identifier code of the pricing macro
 void setRangeTableId(java.lang.String rangeTableId)
          Sets the identifier of the range table
 void setReason(java.lang.String reason)
          Specifies the reason for the rerating operation
 void setSearchFilter(SearchFilterModel searchFilterModel)
          Deprecated.  
 void setSubscriptionSearchFilter(SubscriptionSearchFilterModel searchFilterModel)
          Sets the search filter used to select the subscriptions to rerate.
 void setTierTableCode(java.lang.String tierTableCode)
          Sets the identifier code of the tier table
 void setTranslationTableCode(java.lang.String translationTableCode)
          Sets the identifier code of the translation table
 
Methods inherited from class com.highdeal.hci.MessageOperationAdapter
marshal
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

OPERATION_NAME

public static final java.lang.String OPERATION_NAME
See Also:
Constant Field Values
Constructor Detail

RerateBulkOp

public RerateBulkOp()
Builds an empty RerateBulk Operation

Method Detail

release

public void release()
Release operation


getName

public java.lang.String getName()
Returns the name of the operation, that is "rerateBulk"

Specified by:
getName in interface MessageOperation
Returns:
"rerateBulk"

getOfferCode

public java.lang.String getOfferCode()
Returns the identifier code of the offer to rerate

Returns:
The offer code
See Also:
setOfferCode(String)

setOfferCode

public void setOfferCode(java.lang.String offerCode)
Sets the identifier code of the offer to rerate

Parameters:
offerCode - code of the subscription table to rerate
See Also:
getOfferCode()

getSearchFilter

public SearchFilterModel getSearchFilter()
Deprecated. 

Returns the search filter used to select the subscriptions to rerate

Returns:
The search filter
See Also:
setSearchFilter(SearchFilterModel)

setSearchFilter

public void setSearchFilter(SearchFilterModel searchFilterModel)
Deprecated. 

Sets the search filter used to select the subscriptions to rerate

Parameters:
searchFilterModel - A search filter used to select the subscriptions to rerate
See Also:
getSearchFilter()

getSubscriptionSearchFilter

public SubscriptionSearchFilterModel getSubscriptionSearchFilter()
Returns the search filter used to select the subscriptions to rerate.

Returns:
the search filter
See Also:
setSubscriptionSearchFilter(SubscriptionSearchFilterModel)

setSubscriptionSearchFilter

public void setSubscriptionSearchFilter(SubscriptionSearchFilterModel searchFilterModel)
Sets the search filter used to select the subscriptions to rerate.

Parameters:
searchFilterModel - a search filter used to select the subscriptions to rerate
See Also:
getSubscriptionSearchFilter()

getChargingContractSearchFilter

public ChargingContractSearchFilterModel getChargingContractSearchFilter()
Returns the search filter used to select the charging contracts to rerate.

Returns:
the search filter
See Also:
setChargingContractSearchFilter(ChargingContractSearchFilterModel)

setChargingContractSearchFilter

public void setChargingContractSearchFilter(ChargingContractSearchFilterModel searchFilterModel)
Sets the search filter used to select the charging contracts to rerate.

Parameters:
searchFilterModel - a search filter used to select the charging contracts to rerate
See Also:
getChargingContractSearchFilter()

getTranslationTableCode

public java.lang.String getTranslationTableCode()
Returns the identifier code of the translation table

Returns:
The translation table code
See Also:
setTranslationTableCode(String)

setTranslationTableCode

public void setTranslationTableCode(java.lang.String translationTableCode)
Sets the identifier code of the translation table

Parameters:
translationTableCode - Code of the subscription table to rerate
See Also:
getTranslationTableCode()

getTierTableCode

public java.lang.String getTierTableCode()
Returns the identifier code of the tier table

Returns:
The code of the charge plan
See Also:
setTierTableCode(String)

setTierTableCode

public void setTierTableCode(java.lang.String tierTableCode)
Sets the identifier code of the tier table

Parameters:
tierTableCode - The code of the tier table
See Also:
getTierTableCode()

getPricingMacroCode

public java.lang.String getPricingMacroCode()
Returns the identifier code of the pricing macro

Returns:
The pricing macro code
See Also:
setPricingMacroCode(String)

setPricingMacroCode

public void setPricingMacroCode(java.lang.String pricingMacroCode)
Sets the identifier code of the pricing macro

Parameters:
pricingMacroCode - Code of the pricing macro to rerate
See Also:
getPricingMacroCode()

getChargePlanId

public java.lang.String getChargePlanId()
Returns the identifier of the charge plan

Returns:
The identifier of the charge plan
See Also:
setChargePlanId(String)

setChargePlanId

public void setChargePlanId(java.lang.String chargePlanId)
Sets the identifier of the charge plan

Parameters:
chargePlanId - The identifier of the charge plan
See Also:
getChargePlanId()

getMappingTableId

public java.lang.String getMappingTableId()
Returns the identifier of the mapping table

Returns:
The identifier of the mapping table
See Also:
setMappingTableId(String)

setMappingTableId

public void setMappingTableId(java.lang.String mappingTableId)
Sets the identifier of the mapping table

Parameters:
mappingTableId - The identifier of the mapping table
See Also:
getMappingTableId()

getRangeTableId

public java.lang.String getRangeTableId()
Returns the identifier of the range table

Returns:
The identifier of the range table
See Also:
setRangeTableId(String)

setRangeTableId

public void setRangeTableId(java.lang.String rangeTableId)
Sets the identifier of the range table

Parameters:
rangeTableId - The identifier of the range table
See Also:
getRangeTableId()

getFromDate

public java.util.Date getFromDate()
Returns the from date. This date is the starting date of the rerating process. It indicates which snapshot will be selected, which transaction transactions will be deleted and which CDRs will be rated. This date must be set to midnight. It has no effect on rerating to set hour or minute.

Returns:
The from date
See Also:
setFromDate(Date)

setFromDate

public void setFromDate(java.util.Date fromDate)
Sets the from date. This date is the starting date of the rerating process. It indicates which snapshot will be selected, which transaction transactions will be deleted and which CDRs will be rated. This date must be set to midnight. It has no effect on rerating to set hour or minute.

Parameters:
fromDate - Starting date of the rerating process
See Also:
getFromDate()

isAdaptFromDate

public boolean isAdaptFromDate()
Returns whether the from date must be adapted

Returns:
true if the from date must be adapted, false otherwise
See Also:
setAdaptFromDate(boolean)

setAdaptFromDate

public void setAdaptFromDate(boolean adaptFromDate)
Specifies whether the from date must be adapted

Parameters:
adaptFromDate - whether the from date must be adapted
See Also:
isAdaptFromDate()

getReason

public java.lang.String getReason()
Returns the reason for the rerating operation

Returns:
the reason for the rerating operation
See Also:
setReason(String)

setReason

public void setReason(java.lang.String reason)
Specifies the reason for the rerating operation

Parameters:
reason - the reason for the rerating operation
See Also:
getReason()

getMaxThroughput

@Deprecated
public int getMaxThroughput()
Deprecated. 

Returns the max throughput

Returns:
the max throughput

setMaxThroughput

@Deprecated
public void setMaxThroughput(int val)
Deprecated. 

Sets the max throughput value. If val is greater than 1000 then the throughput is considered without limitation and the value is set to 0. A negative value is considered like 0 (no limitation).

Parameters:
val - the value of the maxThroughput.

setAttributes

public void setAttributes(XMLAttributes atts)
Description copied from interface: XMLMarshallable
Sets the attributes of the XML representation of the element being processed.

Specified by:
setAttributes in interface XMLMarshallable
Parameters:
atts - The XML attributes of the current element

addCharacterData

public void addCharacterData(java.lang.String cData)
Description copied from interface: XMLMarshallable
Adds character data to the content element.

Specified by:
addCharacterData in interface XMLMarshallable
Parameters:
cData - The character data to be added

addChild

public void addChild(java.lang.String tagName,
                     XMLMarshallable child)
Description copied from interface: XMLMarshallable
Adds a child to the object, the child representing the marshallable object which must be added to the element.

Specified by:
addChild in interface XMLMarshallable
Parameters:
tagName - The name of tag for the child
child - The child to be added

marshalAttributes

public void marshalAttributes(XMLOutputter output)
Description copied from interface: IXMLMarshallable
Gives an XML representation of the attributes of an object.

Specified by:
marshalAttributes in interface IXMLMarshallable
Parameters:
output - The XML output to marshal the object attributes into

marshalChildren

public void marshalChildren(XMLOutputter output)
Description copied from interface: IXMLMarshallable
Gives an XML representation of the child objects of an object.

Specified by:
marshalChildren in interface IXMLMarshallable
Parameters:
output - The XML output to marshal the child objects into

getClass

public java.lang.Class<?> getClass(java.lang.String nsUri,
                                   java.lang.String tag,
                                   XMLAttributes atts)
Description copied from interface: XMLMapping
Returns the Java class for a specified XML tag and its attributes in a namespace.

Specified by:
getClass in interface XMLMapping
Parameters:
nsUri - The unique resource identifier of the namespace of the XML tag
tag - The local part of the XML tag
atts - The attributes of the XML tag
Returns:
A Java class with a default constructor

Document Published: October 2015 (SAP CC 4.0 SP10 and Later)