4 Changing the List of Suspense Reasons and Subreasons

This document describes how to change the list of reasons for suspending events in Oracle Communications Billing and Revenue Management (BRM).

See also:

Changing the List of Suspense Reasons and Subreasons

Suspense Manager adds the reasons for failures to the records it stores. These reasons, called suspense reasons, can be divided into more specific suspense subreasons. These suspense reasons and subreasons are stored in the record. Because they are stored in the call records, you can search for them by using Suspense Management Center. For example, you can search for all the calls that could not be associated with a subscriber.

Note:

You cannot define subreasons for suspended batches, only for suspended records.

The Offline Mediation Controller error messages that actually cause call failures are mapped to these suspense reasons and subreasons. A default error code-to-suspense reason mapping is provided in Suspense Manager. If your business requires different suspense reasons or subreasons, you can change them and their mappings. You can make these changes at any time, but because you may have to upgrade existing data, it is best to have this mapping in place before you go into production.

Table 4-1 shows the default mapping. If the default mappings do not meet your business needs, follow the steps below to change them. You first edit the text file with your new suspense reasons and subreasons, and then load the mapping into the database.

  1. Edit the BRM_home/sys/msgs/suspense_reason_code.en_US file, adding suspense reasons as strings and mapping them to integers.

    Sample entry for a suspense reason with the ID of 1:

    STR
          ID = 1 ;
          VERSION = 1 ;
          STRING - "Unable to identify customer information" ;
    END
    

    Sample entry for a suspense subreason for a suspense reason with the ID of 2:

    DOMAIN = "suspense_subreason_1" ;
    STR
          ID = 2;
          VERSION = 1 ;
          STRING = "B number missing" ;
    END

    Note:

    • The default string has an ID of 0. This string appears by default in the case of an error that is not mapped to a suspense reason.
    • The reason code numbers 65535 and 65534 are reserved for use by BRM.

    The format of the suspense_reason_code.locale file is similar to that of the reasons.locale file.

  2. Map your suspense reasons to Offline Mediation Controller error messages by editing the pin_suspense_reason_code (for records) or pin_batch_suspense_reason_code (for batch files) file in the BRM_home/sys/data/config directory.

  3. Load your localized strings into the database by using the load_localized_strings utility.

    Example syntax:

    %load_localized_strings suspense_reason_code.en_US
    
  4. Load your suspense reason code mapping into the database by using the load_pin_suspense_reason_code or load_pin_batch_suspense_reason_code utility (in the BRM_home/bin directory). For details, see "load_pin_suspense_reason_code" or "load_pin_batch_suspense_reason_code".

    Example syntax for records:

    %load_pin_suspense_reason_code pin_suspense_reason_code
    

    Example syntax for batch files:

    %load_pin_batch_suspense_reason_code pin_batch_suspense_reason_code
    
  5. Verify that the strings were loaded by displaying the /strings objects using the Object Browser or the robj command with the testnap utility. See BRM Developer's Guide for general instructions on using testnap.

  6. Stop and restart the Connection Manager (CM).

  7. Stop and restart Suspense Management Center.

Your suspense reason and subreason strings are now loaded into the BRM database to be displayed and used by Suspense Management Center.

Table 4-1 shows the default mapping between Offline Mediation Controller error messages and Suspense Manager reasons for suspending records.

Table 4-1 Suspense Reasons

Offline Mediation Controller Error Messages Suspense Reason String Suspense Subreason String

CANCEL_NOT_ALLOWED

ECE DC error

Request processing cannot be cancelled.

CREDIT_CEILING_BREACH

ECE DC error

Request processing resulted in ceiling floor breached of an involved BalanceItem.

CREDIT_FLOOR_BREACH

ECE DC error

Request processing resulted in credit floor breached of an involved BalanceItem.

CUSTOM_EXTENSION_ERROR

ECE DC error

Error has occurred while executing operator specific custom extension code.

CUSTOMER_IN_TRANSACTION

ECE DC error

Customer is in another transaction

DUPLICATE_REQUEST

ECE DC error

It is a duplicate request

FINAL_UNIT_INDICATOR

ECE DC error

Request processing raised a final unit indicator flag.

INCORRECT_IMPACTS_FOR_DEBIT

ECE DC error

The no. of debit impacts does not match with the actual debit impacts.

INSUFFICIENT_RATED_QUANTITY

ECE DC error

Rated quantity was less than the minimum quantity for reservation.

LIFECYCLE_VALIDATION_FAILED

ECE DC error

After life cycle validation call was disallowed.

MISSING_SYSTEM_ALTERATION_FOR_DEBIT

ECE DC error

There are no system alteration offers for the debit request.

NO_QUALIFIED_CHARGE_OFFERS

ECE DC error

There are no qualified charge offers for this request.

NO_RATED_QUANTITY

ECE DC error

No quantity rated.

REFUND_NOT_ALLOWED

ECE DC error

Refund request is not allowed.

SYSTEM_ERR

ECE DC error

Undefined system error.

TX_FAILED

ECE DC error

Transaction commit failed.

ZERO_RUM_QUANTITY

ECE DC error

The RUM is zero.