Class ModifySubscriberAccountOp

java.lang.Object
com.highdeal.pnr.hci.ModifySubscriberAccountOp
All Implemented Interfaces:
MessageOperation, XMLMarshallable

public class ModifySubscriberAccountOp extends Object implements MessageOperation
This operation allows to modify a subscriber account in the customer master data managed by the connected SAP CC system.

The modification of a subscriber account is taken into account immediatly. If the modification fails, an InvalidSubscriberAccountException is thrown. The reason of the problem is available thanks to the method getReason().

Here is the list of the allowed modifications:

Allowed modification description Reason of the exception when the modification is not respected
The additional info of a subscriber account can be updated (new property can be added, property can be removed). None
The holder of a subscriber account can be updated. MISSING_SERVICE_PROVIDER if not set.
Its default charged account can be updated. MISSING_DEFAULT_CHARGED_ACCOUNT if not set or if it is a credit limit balance.
New prepaid accounts can be added to the subscriber account and its full parameterization is taken into account if it is valid (it is not the case for modified accounts). DUPLICATED_CODES if the new prepaid accounts has the same code that another account.
Prepaid accounts can be removed. UNDELETABLE_ACCOUNT_BALANCE If at least one charge mapping uses the deleted balance, if it is the overrun target of an account or if it is not empty (and the option ignoreNotEmptyAccount is not set).
The description, the empty limit, the overrun balance (that can be removed), the tax code, the expiration alert plan and the clipping limit of a prepaid account can be modified. None, all the other modifications are not taking into account.
New credit limit balances can be added to the subscriber account and its full parameterization is taken into account if it is valid. DUPLICATED_CODES if the new credit limit balance has the same code that another account.
Credit limit balance can be removed. UNDELETABLE_ACCOUNT_BALANCE If at least one charge mapping uses the deleted balance.
The description, the credit limit and the reset frequency of a credit limit balance can be modified. None, all the other modifications are not taking into account.
New external account can be added to the subscriber account and its full parameterization is taken into account if it is valid. * DUPLICATED_CODES if the new external account has the same code that another account.
External account can be removed. UNDELETABLE_ACCOUNT_BALANCE If at least one charge mapping uses the deleted balance.
The description, the external account code, the external system code of an external account can be modified.
Currency can be modified only if the account is not already mapped by a charging mapping. FORBIDDEN_CURRENCY_UPDATE if the currency of a mapped account is modified.

Note

To delete some not empty prepaid accounts, set the option "ignoreNotEmptyAccount" to true. In this case, the prepaid accounts are first resetted before to be deleted. The reset takes into account the amount alerts only if the option "enableAmountAlerts" is set to true too.

Operation Result

ModifySubscriberAccountResult

XML API for HCI

The XML APIs specify the following XSD fragment:

XSD Fragment

<xs:element name="modifySubscriberAccount">
   <xs:complexType>
     <xs:sequence>
       <xs:element ref="subscriberAccount" minOccurs="1" maxOccurs="1"/>
     </xs:sequence>
     <xs:attribute name="ignoreNotEmptyAccount" type="xs:boolean" />
     <xs:attribute name="enableAmountAlerts" type="xs:boolean" />
   </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

Audit Domain

This operation is audited by the system as part of the audit domain: CUSTOMER. Consult the IT administrator.

  • Field Details

    • OPERATION_NAME

      public static final String OPERATION_NAME
      The XML tag name of the service operation: "modifySubscriberAccount"
      See Also:
  • Constructor Details

    • ModifySubscriberAccountOp

      public ModifySubscriberAccountOp()
      Initialize an empty modify subscriber account operation.
    • ModifySubscriberAccountOp

      public ModifySubscriberAccountOp(SubscriberAccountModel subcriberAccount)
      Initialize a modify subsriber account specifying the modification of the subscriber account.
      Parameters:
      subcriberAccount - The modified subscriber account
  • Method Details

    • getSubscriberAccount

      public SubscriberAccountModel getSubscriberAccount()
      Returns the modification of the subscriber account.
      Returns:
      The modified subscriber account
    • setSubscriberAccount

      public void setSubscriberAccount(SubscriberAccountModel subcriberAccount)
      Sets the modification of the subscriber account.
      Parameters:
      subcriberAccount - The modified subscriber account
    • getName

      public String getName()
      Returns the name of the operation. Is modifySubscriberAccount.
      Specified by:
      getName in interface MessageOperation
      Returns:
      "modifySubscriberAccount"
    • isIgnoringNotEmptyAccount

      public boolean isIgnoringNotEmptyAccount()
      Returns true if not empty prepaid account must be ignored. Useful to be able to delete not empty prepaid account. false otherwise.
      Returns:
      true if the modification ignores the not empty prepaid account, false otherwise
    • isIgnoringNotEmptyAccount

      public void isIgnoringNotEmptyAccount(boolean b)
      Sets if not empty prepaid account must be ignored or not.
      Parameters:
      b - true if the not empty prepaid accounts are ignored, false otherwise
    • isAmountAlertsEnabled

      public boolean isAmountAlertsEnabled()
      Returns true if the amount alerts must be taken into account when a not empty prepaid account is deleted, false otherwise.
      Returns:
      true if the amount alerts are enabled, false otherwise
    • isAmountAlertsEnabled

      public void isAmountAlertsEnabled(boolean b)
      Sets if amount alerts must be taken into account when a not empty prepaid account is deleted.
      Parameters:
      b - true to enable the amount alerts, false otherwise
    • 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
    • addChild

      public void addChild(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
    • addCharacterData

      public void addCharacterData(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
    • marshal

      public void marshal(XMLOutputter output)
      Description copied from interface: XMLMarshallable
      Gives an XML representation of this object, including its children.
      Specified by:
      marshal in interface XMLMarshallable
      Parameters:
      output - The XML output to marshal the object into