Class ModifySubscriptionBulkOp
- All Implemented Interfaces:
MessageOperation,XMLMarshallable
subscriptionSearchFilter and one
subscriptionModification, or one
chargeActivationSearchFilter and one
chargeActivationModification, otherwise the operation fails.As the subscription is a tree structure, the filter must retrieve exactly entities on which the modification will occur. Modifications can occur on subscriptions (not necessarily root subscriptions) or charge activations in the tree structure.
If modifications occur on subscriptions, the filter must be a
subscriptionSearchFilter, if the modifications occur on
charge activations, the filter must be a chargeActivationSearchFilter.If the filter is a
subscriptionSearchFilter, the modification model must be
a subscriptionModification, if the filter is a
chargeActivationSearchFilter, the modification model must be
a chargeActivationModification.
This operation may conflict with the pre-rating feature. This may lead to inconsistency if the modification
is done in the past since the post-rating could have a result that differs from the one of the related pre-rating.
To prevent from that, the user is warned when he/she tries to modify a subscription containing unresolved pre-ratings.
But if the user considers the modification as safe, he/she can force it (using the ignorePrerating parameter).
- modification of a sharable parameter in the past (means before the date of the last pre-rating),
- set in the past of one of the following dates: cancellationDate, suspensionDate and expirationDate,
- modification of a parameter in the past (means before the date of the last pre-rating),
- set the expiration date in the past,
- modification of the debtor or the creditor,
subscription or a chargeActivation counter can be modified only if it has already been created.
It means that only the subscriptions for which a rating have been done or the subscriptions which have been activated by the pnr scheduler or the activateAll
operation, will be impacted by this bulk modification.
To improve bulk performance and minimize database locks, this process allows the user to customize some parameters :
-
PNR_BULK_THREAD_COUNTthreads used to modify subscriptions. -
PNR_BULK_SEARCH_FETCH_SIZEsize of subscription blocks which matches the search filter. -
PNR_BULK_MODIFICATION_FETCH_SIZEsize of subscription blocks to modify.
Operation Result
ModifySubscriptionBulkResult Operation Failure Exceptions
XML API for HCI
The XML APIs specify the following XSD fragment:
XSD Fragment
<xs:element name="modifySubscriptionBulk">
<xs:complexType>
<xs:choice>
<xs:sequence>
<xs:element ref="subscriptionSearchFilter" minOccurs="1" maxOccurs="1"/>
<xs:element ref="subscriptionModification" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
<xs:sequence>
<xs:element ref="chargeActivationSearchFilter" minOccurs="1" maxOccurs="1"/>
<xs:element ref="chargeActivationModification" minOccurs="1" maxOccurs="1"/>
</xs:sequence>
</xs:choice>
<xs:attribute name="ignorePreRating" type="xs:string" default="false"/>
<xs:attribute name="ignorePendingSession" type="xs:string" default="false"/>
</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:
| Edition | Final Target Instances | |||||
| rater | updater | guider | bulkLoader | taxer | dispatcher | |
| charge | No | Yes | No | No | No | No |
Audit Domain
This operation is audited by the system as part of the audit domain: CUSTOMER. Consult the IT administrator.
-
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 filter.Gets the modification model.getName()Returns the name of the operation, that is "modifySubscriptionBulk".Gets the operation id.booleanGets the ignorePendingSession attribute.booleanGets the ignorePreRating attribute.voidmarshal(XMLOutputter output) Gives an XML representation of this object, including its children.voidsetAttributes(XMLAttributes atts) Sets the attributes of the XML representation of the element being processed.voidSets the filter.voidsetIgnorePendingSession(boolean ignorePendingSession) Sets the ignorePendingSession attribute.voidsetIgnorePreRating(boolean ignorePreRating) Sets the ignorePreRating attribute.voidSets the subscription modification.voidsetOperationID(String id) Sets the operation id.
-
Field Details
-
OPERATION_NAME
- See Also:
-
-
Constructor Details
-
ModifySubscriptionBulkOp
public ModifySubscriptionBulkOp()Builds an empty operation.
-
-
Method Details
-
getOperationID
Gets the operation id.- Returns:
- the operation id, or null if the operation has no id.
-
setOperationID
Sets the operation id.- Parameters:
id- the operation id.
-
getName
Returns the name of the operation, that is "modifySubscriptionBulk".- Specified by:
getNamein interfaceMessageOperation- Returns:
- "modifySubscriptionBulk"
-
getFilter
Gets the filter.- Returns:
- the filter.
-
setFilter
Sets the filter.- Parameters:
sf- the filter.
-
getModification
Gets the modification model.- Returns:
- the modification model.
-
setModification
Sets the subscription modification.- Parameters:
m- the subscription modification.
-
isIgnorePreRating
public boolean isIgnorePreRating()Gets the ignorePreRating attribute.- Returns:
- the ignorePreRating value
-
setIgnorePreRating
public void setIgnorePreRating(boolean ignorePreRating) Sets the ignorePreRating attribute.- Parameters:
ignorePreRating-
-
isIgnorePendingSession
public boolean isIgnorePendingSession()Gets the ignorePendingSession attribute.- Returns:
- the ignorePendingSession value
-
setIgnorePendingSession
public void setIgnorePendingSession(boolean ignorePendingSession) Sets the ignorePendingSession attribute.- Parameters:
ignorePendingSession-
-
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
-
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
-
marshal
Description copied from interface:XMLMarshallableGives an XML representation of this object, including its children.- Specified by:
marshalin interfaceXMLMarshallable- Parameters:
output- TheXML outputto marshal the object into
-