rerating-events
rerating-events
Revenue Management
Rerating Events
Release 12.0
E79865-04
August 2023
Oracle Communications Billing and Revenue Management Rerating Events, Release 12.0
E79865-04
This software and related documentation are provided under a license agreement containing restrictions on
use and disclosure and are protected by intellectual property laws. Except as expressly permitted in your
license agreement or allowed by law, you may not use, copy, reproduce, translate, broadcast, modify, license,
transmit, distribute, exhibit, perform, publish, or display any part, in any form, or by any means. Reverse
engineering, disassembly, or decompilation of this software, unless required by law for interoperability, is
prohibited.
The information contained herein is subject to change without notice and is not warranted to be error-free. If
you find any errors, please report them to us in writing.
If this is software, software documentation, data (as defined in the Federal Acquisition Regulation), or related
documentation that is delivered to the U.S. Government or anyone licensing it on behalf of the U.S.
Government, then the following notice is applicable:
U.S. GOVERNMENT END USERS: Oracle programs (including any operating system, integrated software,
any programs embedded, installed, or activated on delivered hardware, and modifications of such programs)
and Oracle computer documentation or other Oracle data delivered to or accessed by U.S. Government end
users are "commercial computer software," "commercial computer software documentation," or "limited rights
data" pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental
regulations. As such, the use, reproduction, duplication, release, display, disclosure, modification, preparation
of derivative works, and/or adaptation of i) Oracle programs (including any operating system, integrated
software, any programs embedded, installed, or activated on delivered hardware, and modifications of such
programs), ii) Oracle computer documentation and/or iii) other Oracle data, is subject to the rights and
limitations specified in the license contained in the applicable contract. The terms governing the U.S.
Government's use of Oracle cloud services are defined by the applicable contract for such services. No other
rights are granted to the U.S. Government.
This software or hardware is developed for general use in a variety of information management applications.
It is not developed or intended for use in any inherently dangerous applications, including applications that
may create a risk of personal injury. If you use this software or hardware in dangerous applications, then you
shall be responsible to take all appropriate fail-safe, backup, redundancy, and other measures to ensure its
safe use. Oracle Corporation and its affiliates disclaim any liability for any damages caused by use of this
software or hardware in dangerous applications.
Oracle®, Java, and MySQL are registered trademarks of Oracle and/or its affiliates. Other names may be
trademarks of their respective owners.
Intel and Intel Inside are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are
used under license and are trademarks or registered trademarks of SPARC International, Inc. AMD, Epyc,
and the AMD logo are trademarks or registered trademarks of Advanced Micro Devices. UNIX is a registered
trademark of The Open Group.
This software or hardware and documentation may provide access to or information about content, products,
and services from third parties. Oracle Corporation and its affiliates are not responsible for and expressly
disclaim all warranties of any kind with respect to third-party content, products, and services unless otherwise
set forth in an applicable agreement between you and Oracle. Oracle Corporation and its affiliates will not be
responsible for any loss, costs, or damages incurred due to your access to or use of third-party content,
products, or services, except as set forth in an applicable agreement between you and Oracle.
Contents
Preface
Audience vi
Documentation Accessibility vi
Diversity and Inclusion vi
iii
Creating Rerate Jobs for Midsession Rating Changes 3-4
Configuring Event Notification for Automatic Rerate Job Creation 3-5
Assigning Reason Codes During Automatic Job Creation 3-6
Allowing Rerating of Old Events 3-6
iv
7 Rerating Utilities
load_pin_rerate_flds 7-1
pin_rate_change 7-2
pin_rerate 7-3
Rerate Job Creation Options 7-4
Rerate Job Processing Parameters 7-7
Rerate Job Configuration Options 7-8
v
Preface
Preface
This guide describes how to configure and run the event rerating process in Oracle
Communications Billing and Revenue Management.
Audience
This guide is intended for system administrators.
Documentation Accessibility
For information about Oracle's commitment to accessibility, visit the Oracle
Accessibility Program website at http://www.oracle.com/pls/topic/lookup?
ctx=acc&id=docacc.
vi
1
About Rerating Events
Learn about rerating events in Oracle Communications Billing and Revenue Management
(BRM) using Oracle Communications Elastic Charging Engine (ECE).
Topics in this document:
• About Rerating Events
• Run-time Options for Rerating
• How BRM Applies the Balance Impacts of Rerating
• How BRM Generates Rerated Events
If you are using the BRM real-time rating and batch rating engines for usage rating, see
"Setting Up Rerating" in BRM Configuring Pipeline Rating and Discounting for information
about rerating events.
1-1
Chapter 1
Run-time Options for Rerating
1-2
Chapter 1
How BRM Applies the Balance Impacts of Rerating
Note:
When recording a shadow event, you can customize your invoice to either show the
details of rerating or show the result only in an end balance. See BRM Designing
and Generating Invoices for information.
Shadow events are handled differently for usage events and recurring events:
• When unbilled usage events are rerated, the shadow adjustment event fully negates the
original balance impacts and applies new balance impacts for the rerated amount.
• When unbilled recurring events are rerated, the shadow adjustment event fully negates
the original balance impacts. Then a new recurring event is created that applies the
rerated balance impacts. The new recurring event is the same type of event as the
original event.
1-3
Chapter 1
How BRM Applies the Balance Impacts of Rerating
1-4
Chapter 1
How BRM Generates Rerated Events
However, the account is migrated if the rerate job status is NEW. In this case, the AMM
deletes the account from the rerate job in the source database and creates a new rerate job
with the account in the destination database.
Note:
After the account migration, you must run pin_rerate in the destination database to
rerate the account.
1-5
Chapter 1
How BRM Generates Rerated Events
The following events are not rerated but are reapplied because they were not originally
generated by rating:
• /event/billing/adjustment
• /event/billing/debit
• /event/billing/dispute
• /event/billing/item
• /event/billing/settlement
• /event/billing/payment
• /event/billing/reversal
• /event/billing/writeoff
• /event/billing/cycle/tax
• /event/billing/refund
• /event/billing/charge
Table 1-1 shows the rerating process for specific types of events.
1-6
Chapter 1
How BRM Generates Rerated Events
rerate job consisting of only the accounts that failed. The new rerate job is processed the next
time pin_rerate is run.
If an account selected for rerating is associated with a subscription service that was
transferred during the period for which rerating is specified, then the account to which the
service was transferred is included in the rerate job and all those accounts are rerated
concurrently in a single rerate operation. When rerating fails for one of these accounts, then
rerating fails for all accounts in the rerate request. In this case, pin_rerate creates a new
rerate job containing all the accounts in the rerate request.
For example, subscription service X is originally owned by Account A and transferred to
Account B on June 15. Later in the month, it is transferred from Account B to Account C.
Rerating of Account A from June 1 also results in rerating of accounts B and C. Accounts A,
B, and C are grouped together in a single rerate request. If rerating fails for any of these
accounts, pin_rerate creates a new rerate job consisting of all three accounts in a single
rerate request. The accounts are rerated again the next time pin_rerate is run.
1-7
2
Configuring BRM to Rerate Events
Learn how to configure Oracle Communications Billing and Revenue Management (BRM) to
enable rerating.
Topics in this document:
• About Setting Up Rerating
• Configuring BRM to Rerate Events through ECE
• Configuring Rerating Adjustment Events
• Configuring How to Allocate Rerating Results
• Enabling Deferred Tax Calculation During Rerating
where:
• em_gateway_host is the IP address of the machine on which the ECE EM Gateway
resides.
• em_gateway_port is the port of the machine on which the ECE EM Gateway resides.
2-1
Chapter 2
Configuring Rerating Adjustment Events
Note:
The load_pin_rerate_flds utility overwrites existing balance-impact
comparison fields. If you are updating balance-impact comparison fields, you
cannot load new fields only. You must load complete sets of the balance-
impact comparison fields when you run the utility. See "load_pin_rerate_flds"
for more information.
To customize the fields used to compare the event balance impacts of rerating with the
previous rating:
1. Open the BRM_home/sys/data/config/pin_rerate_compare_bi.xml file in a text
editor.
2. Add a RerateCompareBalImpacts element for each event balance impact field.
The following balance impact fields are mandatory:
2-2
Chapter 2
Configuring How to Allocate Rerating Results
• PIN_FLD_RESOURCE_ID
• PIN_FLD_BAL_GRP_OBJ
• PIN_FLD_GL_ID
• PIN_FLD_TAX_CODE
Note:
PIN_FLD_PRODUCT_OBJ is specified in the pin_rerate_compare_bi.xml
file by default but is an optional field.
You can specify any additional field from the /event object's PIN_FLD_BAL_IMPACTS
array.
3. Save and close the file.
4. Load the contents of the XML file into the /config/rerate_flds/compare_bi object:
load_pin_rerate_flds BRM_home/sys/data/config/pin_rerate_compare_bi.xml
2-3
Chapter 2
Enabling Deferred Tax Calculation During Rerating
<AllocateReratingAdjustments>enabled</AllocateReratingAdjustments>
2-4
3
Configuring BRM to Create Rerate Jobs
Automatically
Learn how to configure Oracle Communications Billing and Revenue Management (BRM) to
automatically create rerate jobs when specified events occur in the system, such as events
being backdated.
Topics in this document:
• About Creating Rerate Jobs Automatically
• Creating Rerate Jobs for Backdated Events
• Creating Rerate Jobs for Cycle Forward and Cycle Forward Arrears Charges
• Creating Rerate Jobs for Rollover Corrections
• Enabling Rerating for Canceled Noncurrency Resources
• Creating Rerate Jobs for Midsession Rating Changes
• Configuring Event Notification for Automatic Rerate Job Creation
• Assigning Reason Codes During Automatic Job Creation
• Allowing Rerating of Old Events
3-1
Chapter 3
Creating Rerate Jobs for Backdated Events
8. (Optional) Configure BRM to rerate backdated events older than the allowable
date. See "Allowing Rerating of Old Events".
9. (Optional) Customize BRM to automatically create rerate jobs for custom events,
such as when a charge offer is canceled. To do so, customize the
PCM_OP_SUBSCRIPTION_POL_GENERATE_RERATE_REQUEST policy
opcode. See "Customizing Automatic Creation of Rerate Jobs" in BRM Opcode
Guide.
where billingCycle is the maximum number of billing cycles. The default is 1 billing
cycle.
5. Save and close the file.
6. Stop and restart the CM.
3-2
Chapter 3
Creating Rerate Jobs for Cycle Forward and Cycle Forward Arrears Charges
Important:
Rerating recurring events can affect performance.
To enable BRM to automatically create rerate jobs for rerate cycle forward and cycle forward
arrears events after they are charged:
1. Open the CM configuration file (BRM_home/sys/cm/pin.conf) in a text editor.
2. Set the following entries to 1:
- fm_subscription rate_change 1
- fm_price log_price_change event 1
Note:
You must also configure BRM to generate notification events when rerate cycle
forward and cycle forward arrears charges occur. See "Configuring Event
Notification for Automatic Rerate Job Creation".
3-3
Chapter 3
Enabling Rerating for Canceled Noncurrency Resources
Note:
You must also configure BRM to generate notification events when rollover
corrections occur. See "Configuring Event Notification for Automatic Rerate
Job Creation".
3-4
Chapter 3
Configuring Event Notification for Automatic Rerate Job Creation
• If you enable this option, rerating uses the original pricing from the call's start time until
the called number is added to the Friends and Family list, and then uses the discounted
pricing for the remaining session.
• If you do not enable this option, rerating uses the discounted pricing for the entire call.
To create rerate jobs for midsession rating changes:
1. Go to the BRM_home/sys/data/config directory.
2. Create an XML file from the /config/business_params object:
pin_bus_params -r BusParamsRerate bus_params_rerate.xml
Note:
You must also configure BRM to generate notification events when midsession-
rating changes occur. See "Configuring Event Notification for Automatic Rerate Job
Creation".
3. To trigger notification events for first usage events, add the following lines:
9071 0 /event/billing/product/fee/cycle/cycle_arrear
9071 0 /event/billing/product/fee/cycle/cycle_forward_annual
9071 0 /event/billing/product/fee/cycle/cycle_forward_arrear
9071 0 /event/billing/product/fee/cycle/cycle_forward_bimonthly
9071 0 /event/billing/product/fee/cycle/cycle_forward_monthly
3-5
Chapter 3
Assigning Reason Codes During Automatic Job Creation
9071 0 /event/billing/product/fee/cycle/cycle_forward_quarterly
9071 0 /event/billing/product/fee/cycle/cycle_forward_semiannual
3787 0 /event/notification/rollover_correction/rerate
4. To trigger notification events when a charge changes midcycle, add the following
lines:
3768 0 /event/audit/price/product_update
3768 0 /event/audit/price/product_complete
5. To trigger notification events when a rollover event is corrected, add the following
lines:
3787 0 /event/notification/rollover_correction/rerate
3-6
Chapter 3
Allowing Rerating of Old Events
<AllowBackdateNoRerate>enabled</AllowBackdateNoRerate>
3-7
4
Manually Creating Rerate Jobs
Learn how to create rerate jobs manually by running the pin_rerate utility in Oracle
Communications Billing and Revenue Management (BRM).
Topics in this document:
• About Manually Selecting Events for Rerate Jobs
• Selecting Events for Rerate Jobs
• Backing Out Rating for Select Events
• Creating Rerate Jobs for Cycle Forward and Cycle Forward Arrears Events
• Assigning Reason Codes to Rerate Jobs
• Getting an Estimated Number of Rerated Events
• Specifying the Event Sequence in a Rerate Job
4-1
Chapter 4
Selecting Events for Rerate Jobs
where:
• accountID is the account POID object ID. For example, if the account POID is
0.0.0.1 /account 8606 0, the POID object ID is 8606.
• timestamp is the timestamp in [ss/mm/hh/]MM/DD/YYYY format.
For example, this command finds all events generated by 0.0.0.1 /account 8606 0
after 23 July 2023 and adds them to a rerate job:
pin_rerate -a 8606 -t 07/23/2023
Alternatively, you can run this command in calculate-only mode by adding the -c
parameter. It performs rerating but does not update anything in the BRM database. For
example, to run the previous command in calculate-only mode, you would enter:
pin_rerate -a 8606 -c -t 07/23/2007
Note:
You can use the calculate-only mode (-c parameter) with only the -a
parameter.
4-2
Chapter 4
Selecting Events for Rerate Jobs
where inputFile is the name of the XML file that lists the accounts.
For example, this command finds all events generated by the accounts listed in
accounts_to_rerate.xml after 15 July 2023 and adds the events to a rerate job:
pin_rerate -m accounts_to_rerate.txt -t 07/15/2023
In the input file, specify each account in a results array that lists account POIDs. For
example:
0 PIN_FLD_RESULTS ARRAY [1]
1 PIN_FLD_ACCOUNT_OBJ POID [0] 0.0.0.1 /account 12345 0
0 PIN_FLD_RESULTS ARRAY [2]
1 PIN_FLD_ACCOUNT_OBJ POID [0] 0.0.0.1 /account 12333 0
...
Note:
This job option does not support multilevel sharing group hierarchies. Only the
owner and their immediate children are included in the job.
By default, the owner and all members of the sharing group must reside in the same
database schema. To rerate sharing groups with accounts in multiple schemas, you must set
the CrossSchemaSharingGroup business parameter. See "Enabling Sharing Groups to
Support Multiple Schemas" in BRM Managing Customers for more information.
For example, this command finds all events generated after 23 July 2023 by the sharing
group owned by 0.0.0.1 /account 423591 and adds them to a rerate job:
pin_rerate -G 423591 -t 07/23/2023
4-3
Chapter 4
Selecting Events for Rerate Jobs
• A list of charge offers. To do so, use the -p inputFile parameter to include all
events for accounts associated with one or more specified charge offers. For
example:
pin_rerate -p charge_offer_rerate.txt -t 01/23/2023
• A list of discount offers. To do so, use the -i inputFile parameter to include all
events for accounts associated with one or more specified discount offers. For
example:
pin_rerate -i discount_offer_rerate.txt -t 01/23/2023
• A list of bundles. To do so, use the -d inputFile parameter to include all events for
accounts associated with charge offers or discount offers that belong to one or
more specified bundles. For example:
pin_rerate -d bundle_rerate.txt -t 01/23/2023
If a charge offer or discount offer is part of multiple bundles, all accounts that
purchase the charge offer or discount offer are selected for rerating even if they
did not purchase the bundle that was rerated.
Note:
The -p, -i, and -d parameters are mutually exclusive.
In the input file, list the charge offer, discount offer, or bundle names with one name on
each line. For example:
ChargeOffer_1
ChargeOffer_2
ChargeOffer_3
All names are case-sensitive and must match the names as defined in your Pricing
Design Center (PDC) product offerings.
For example, this command finds all events created after 10 January 2023 for
accounts that are associated with the event types listed in event_rerate.xml:
pin_rerate -n event_rerate.txt -t 01/10/2023
In the input file, you list the event types with one on each line. For example, this
specifies to select only GSM and GPRS events:
/event/session/telco/gsm
/event/session/telco/gprs
When rerating cycle fee events, to get the correct rerating results, include the cycle
events that occur during billing that are configured in the product, such as cycle
discount, rollover, and fold events in the event file. For example, if a cycle discount is
4-4
Chapter 4
Selecting Events for Rerate Jobs
configured to be some percentage of the charge during billing and if the cycle forward arrears
fee is modified during the billing cycle, then to rerate the cycle forward arrears event, you
need to include both events in the event file:
• /event/billing/product/fee/cycle/cycle_forward_arrear
• /event/billing/cycle/discount
You can specify to also include the subclasses of all event types listed in the input file. To do
so, include the -r parameter at the command line. For example:
pin_rerate -n event_rerate.txt -r -t 01/10/2023
In this example, the utility would also include the /event/session/telco/gsm/data, /event/
session/telco/gsm/voice, and /event/session/telco/gprs/session events in the rerate job.
For example, this command finds all events for accounts associated with the service types
listed in service_rerate.xml created after 20 May 2023, and adds the events to a rerate job:
pin_rerate -s service_rerate.txt -t 05/20/2023
In the input file, you list the service types with one on each line. For example:
/service/telco/gsm/data
/service/telco/gsm/telephony
/service/telco/gsm/sms
where subscriptionID is the service identifier the customer created for the account. The
service identifier is a unique ID that connects the customer to the service instance that the
customer owns. For example, it could be an phone number, email address, or a personal ID
number. Customers use the service identifier as their login name for the service.
For example, this command finds all events for accounts with the phone number 6495832245
created after 20 June 2023, and adds the events to a rerate job:
pin_rerate -line 6495832245 -t 06/20/2023
You can further restrict the selected accounts to those associated with:
• Charge offers (-p)
• Discount offers (-i)
• Bundles (-d)
• Events (-n)
4-5
Chapter 4
Selecting Events for Rerate Jobs
• Services (-s)
• Accounts (-m)
• Custom fields (-field_name)
For example, this command finds all events generated by the balance groups listed in
balance_groups.xml after 1 January 2023, and adds the events to a rerate job:
pin_rerate -g balance_groups.txt -t 01/23/2023
In the input file, provide a results array that lists the POIDS for accounts, bill units, and
balance groups. To rerate events for all balance groups in an account's bill unit, specify
a value of NULL as the POID ID for the balance group, as shown in the following
example:
0 PIN_FLD_RESULTS ARRAY [1]
1 PIN_FLD_ACCOUNT_OBJ POID [0] $DB_NO /account 12345 0
1 PIN_FLD_BILLINFO_OBJ POID [0] $DB_NO /billinfo 34567 0
1 PIN_FLD_BAL_GRP_OBJ POID [0] $DB_NO /balance_group 66765 0
0 PIN_FLD_RESULTS ARRAY [1]
1 PIN_FLD_ACCOUNT_OBJ POID [0] $DB_NO /account 12344 0
1 PIN_FLD_BILLINFO_OBJ POID [0] $DB_NO /billinfo 45654 0
1 PIN_FLD_BAL_GRP_OBJ POID [0] $DB_NO /balance_group NULL 0
...
where fieldName is the name of a field you define. For example, if tax was calculated
incorrectly, you might define the custom parameter -tax_supplier for selecting events
based on the PIN_FLD_TAX_SUPPLIER field. In this case, you would specify a list of
tax supplier IDs in the input file.
When you use a custom event field, the utility searches the base /event storable class
for the field.
If the custom event field is present only in a subclass, use the -n parameter instead.
For example, the PIN_FLD_ORIGIN_NETWORK field is not in the base /event class,
so you must use the -n parameter to select events based on that field. In this case,
you create an input file specifying the /event/activity/telco event in a file named
event_rerate.txt.
4-6
Chapter 4
Selecting Events for Rerate Jobs
Note:
When using the -n parameter with a custom field, the input file can contain only one
type of event.
To select accounts whose telco events were generated a the specified origin network, run the
following command:
pin_rerate -n event_rerate.txt -origin origin.txt -t 06/01/2024
If the event specified in the input file contains subclasses, all subclass events are also
selected. For example, if you specify /event/activity/telco, BRM also selects events from
the /event/activity/telco/gsm event.
To define custom event fields:
1. Create an XML file that maps the event field name to the utility's parameter name
according to the BRM rerating XML schema file (BRM_home/xsd/pin_rerate_flds.xsd).
You can map parameter names to fields in the base /event storable class or to fields in
an /event subclass. For example:
<PinRerate>
<Name>EVENT.PIN_FLD_TAX_SUPPLIER</Name>
<value>tax_supplier</value>
</PinRerate>
where the <Name> tag specifies the event field name, and the <value> tag specifies the
parameter name used at the command line.
Note:
Ensure that you validate your XML file against the XML schema. The
load_pin_rerate_flds utility cannot load an invalid XML file.
2. Load the XML file into the /config/rerate_flds object by running the
load_pin_rerate_flds utility:
load_pin_rerate_flds -f xml_file_name
The pin_rerate utility uses the /config/rerate_flds object to identify the event field to
search for.
4-7
Chapter 4
Backing Out Rating for Select Events
Note:
Use caution when choosing the events to back out because it can impact
your general ledger. For example, it is incorrect to use backout-only rerating
for a cycle event when the customer has already paid the cycle fee or to use
backout-only rerating when pricing is changed. Typically, backout-only
rerating is performed only on usage events where rating should not have
occurred.
To back out the balance impacts of rating, run pin_rerate with the -backout
parameter. Use the -backout parameter with other parameters that select the
accounts and their events to include in the job.
For example, the following command selects accounts whose events were rated by
the charge offers specified in the charge_offer_backout.txt file and backs out those
events that occurred after 12/1/2024:
pin_rerate -backout -p charge_offer_backout.txt -t 12/1/2024 -r
Note:
You can create rerate jobs for cycle forward and cycle forward arrears events after
their pricing has changed.
For example, suppose a $10 cycle fee is charged to an account for the cycle from April
15 to May 15. You change the fee from $10 to $20 on April 30, which is the middle of
the cycle. When you rerate events, BRM recalculates the cycle fees as follows:
• Refunds the $10 for the old cycle fee.
• Recalculates the cycle fees based on the $10 fee for the first 14 days in the cycle
and the $20 fee for the next 16 days in the cycle:
4-8
Chapter 4
Assigning Reason Codes to Rerate Jobs
where reasonCode is a unique integer, except for the number 1. The number 1 is reserved for
internal use.
For example, to assign reason code 100 to a rerate job containing events associated with a
single account, you could enter:
pin_rerate -reason 100 -a 86060 -t 01/30/2030
You cannot use the -e parameter when selecting events associated with the following:
• A list of accounts (-m)
• Balance groups (-g)
When you run the utility with the -e parameter, it displays an estimated number of events that
will be rerated on the screen without loading any data into the database. It also writes the
estimate to the pin_rerate.pinlog file.
For example, to get an estimate of the number of events that will be rerated for a list of
services, use this command:
pin_rerate -e -s service_rerate.txt -t 12/01/2024
4-9
Chapter 4
Specifying the Event Sequence in a Rerate Job
• The event occurrence time: Events are rerated in the order the events ended.
This is the default.
• The time the event was created in the database: Events are rerated in the order
they were loaded into the BRM database.
The event time you specify might depend on how the original events were rated:
• Events that are rated or loaded into the BRM database as a result of offline
charging can have a significant delay between the event end time and the time
they are loaded into the database. Using the event end time reflects the real-time
sequence of the original events. However, because batch events are recorded in
the order they were created in the database, this makes it harder to predict the
impact of a price configuration change. To compare the original and rerated
balance impacts of batch events, use the event creation time.
• Events rated by online charging, and cycle events and purchase events, have no
or very little delay between the event end time and the time they are loaded into
the database. Both times reflect the real-time sequence in which the original
events occurred and were recorded.
To specify the sequence in which to process events in a job, use the following syntax:
pin_rerate -b [c|e] eventCriteria
where:
• -bc specifies to rerate events in the order they were loaded into the BRM
database, and -be specifies to rerate events in the order that the usage events
occurred.
• -be specifies to rerate events in the order that the usage events occurred.
• eventCriteria is any event selection criteria, such as the -a, -d, -g, -i, -m, -p, -s , -
line, or custom parameters.
For example, this command selects events for all accounts that occurred after
06/15/2024, and specifies to rerate in the order in which the events occurred.
pin_rerate -be -t 06/15/2024
4-10
5
Processing Events in Rerate Jobs
Learn how Oracle Communications Billing and Revenue Management (BRM) rerates the
events in your jobs when you run the pin_rerate utility in processing mode.
Topics in this document:
• About the Rerating Process
• About Processing Rerate Jobs
• Specifying the Order to Process Rerate Jobs
Note:
If ECE cannot rerate events for an account, ECE sends a notification to BRM. In
turn, BRM uses the information to create a new rerate job for the account.
5-1
Chapter 5
About Processing Rerate Jobs
During the rerating process, ECE continues rating usage and applying top-ups, but
waits until rating completes to send the rated results to the BRM database.
Note:
Do not move accounts to another database schema while rerating events for
those accounts.
For a description of how the utility processes jobs, see "About the Rerating Process".
For more information about the utility's syntax and parameters, see "pin_rerate".
5-2
Chapter 5
About Processing Rerate Jobs
When you include the -l parameter, the utility generates both a summary report
(pin_rerate.summary) and a detailed report (pin_rerate.detail). You can specify the type of
report to create by doing the following:
• To generate only a detailed report, use the -ld parameter:
pin_rerate -rerate -ld
• To generate both a detailed report and a summary report, use the -lsd parameter:
pin_rerate -rerate -lsd
The following shows the series of commands to run for processing rerate jobs and generating
summary and detailed reports:
pin_rerate -process jobs
pin_rerate -process queue
pin_rerate -rerate -l
pin_rerate -process queue
pin_rerate -process recycle
Note:
Before you can recycle suspended records, they must be loaded into the BRM
database by SE Loader. You typically schedule SE Loader to run automatically
when you set up standard recycling.
To recycle the records suspended during the rerating process, run pin_rerate with the -
process recycle parameter.
Note:
Suspended records are typically recycled by running the pin_recycle utility.
However, pin_rerate calls the standard recycling opcode directly so you do not use
pin_recycle when using pin_rerate.
The pin_rerate utility finds all rerate jobs with a status of READY_FOR_RECYCLE and calls
the standard recycling opcodes to recycle the associated records. Standard recycling uses
the recycle key value in the record to identify and retrieve records suspended during the
rerating process.
5-3
Chapter 5
About Processing Rerate Jobs
After the records are recycled, pin_rerate changes the status of the jobs from
READY_FOR_RECYCLE to COMPLETE.
Note:
Note:
This processes all rerate jobs in the queue, and not just failed rerate jobs.
You can purge rerate jobs that occurred before a specified date and time by also
including the -t parameter:
pin_rerate -purge -t timestamp
5-4
Chapter 5
Specifying the Order to Process Rerate Jobs
2. Run the rerating process for the rerate job with reason code 101:
pin_rerate -process jobs -reason 101
pin_rerate -process queue
pin_rerate -rerate
pin_rerate -process queue
pin_rerate -process recycle
3. Run the rerating process for the rerate job with reason code 102:
pin_rerate -process jobs -reason 102
pin_rerate -process queue
pin_rerate -rerate
pin_rerate -process queue
pin_rerate -process recycle
You can optionally list multiple reason codes at the command line, but the utility will process
the jobs randomly. They are not processed in the order you list them at the command line, nor
are they processed in increasing or decreasing numeric order. For example, if you run the
following command, the utility would process the three jobs in random order:
pin_rerate -process jobs -reason 103,104,105
5-5
6
Tuning Rerating Performance
Learn how to improve performance for Oracle Communications Billing and Revenue
Management (BRM) rerating.
Topics in this document:
• Improving pin_rerate Performance
• Setting the Rerating Event Cache Size (Fetch Size)
• Configuring the Number of Accounts Per Job and Number of Jobs per Transaction
See also:
• About Rerating Events
• Configuring BRM to Create Rerate Jobs Automatically
• Processing Events in Rerate Jobs
• Configuring BRM to Rerate Events
Note:
These entries can only be used with pin_rerate -rerate option.
6-1
Chapter 6
Configuring the Number of Accounts Per Job and Number of Jobs per Transaction
Note:
Setting the pin_rerate per_job entry to a small number, for example 1,
results in many rerate jobs being created. Too many rerate jobs can
affect your system's performance due to the rerate steps performed for
each rerate job. Processing multiple accounts in one rerate job reduces
the total number of rerate steps performed compared to processing
those same accounts in multiple rerate jobs.
6-2
7
Rerating Utilities
Learn about the syntax and parameters for the Oracle Communications Billing and Revenue
Management (BRM) rerating utilities.
Topics in this document:
• load_pin_rerate_flds
• pin_rate_change
• pin_rerate
load_pin_rerate_flds
Use this utility to load the following information into the BRM database:
• Custom event selection parameters. The data is loaded into the /config/rerate_flds
object. See "Selecting Events Based on a Custom Event Field".
• Balance-impact comparison fields that determine if an adjustment event must be created.
The data is loaded into the /config/rerate_flds/compare_bi object. See "Configuring
Rerating Adjustment Events".
Location
BRM_home/sys/data/config
Run load_pin_rerate_flds from this directory.
Syntax
load_pin_rerate_flds -f xml_file_name [-v] [-h]
Parameters
-f xml_file_name
Specifies the name of the XML file that contains the data.
Note:
The file you load cannot include both event selection data and balance-impact
comparison data. You must load the files for these configurations separately.
-verbose
Displays information about successful or failed processing as the utility runs.
7-1
Chapter 7
pin_rate_change
Note:
This parameter is always used with other parameters and commands. It is
not position dependent. For example, you can enter -verbose at the
beginning or end of a command to initiate the verbose parameter. To
redirect the output to a log file, use the following syntax with the verbose
parameter. Replace filename.log with the name of the log file:
load_pin_rerate_flds any_other_parameter –v > filename.log
-help
Displays the syntax and parameters for this utility.
Results
This utility notifies you when it successfully creates the /config/rerate_flds object.
If it cannot create the /config/rerate_flds, it logs an error in the log file
(default.pinlog). It creates the log file either in the directory from which the utility was
started or in the directory specified in the configuration file.
pin_rate_change
Use this utility to create rerate jobs for cycle forward and cycle forward arrears events
when the pricing changes. Use this BRM utility after you change pricing in PDC and
before running the pin_rerate utility.
See "Creating Rerate Jobs for Cycle Forward and Cycle Forward Arrears Charges".
The pin.conf file for this utility is in BRM_home/apps/pin_rate_change.
Location
BRM_home/bin
Syntax
pin_rate_change [-v] [-d] [-h]
Parameters
-v
Displays information about successful or failed processing as the utility runs.
Note:
This parameter is not position dependent. For example, you can enter -v at
the beginning or end of a command to initiate the verbose parameter. To
redirect the output to a log file, use the following syntax with the verbose
parameter. Replace filename.log with the name of the log file:
pin_rate_change any_other_parameter –v > filename.log
7-2
Chapter 7
pin_rerate
-d
Creates a log file for debugging purposes. Use this parameter for debugging when the utility
appears to have run with no errors, but the data has not been loaded into the database.
-h
Displays the syntax and parameters for this utility.
Results
The pin_rate_change utility notifies you when it successfully creates the rerate jobs
If the pin_rate_change utility does not notify you that it was successful, run the command
again with the -d parameter, and look in the utility log file (default.pinlog) to find any errors.
The log file is either in the directory from which the utility was started, or in a directory
specified in the configuration file.
pin_rerate
Use this BRM utility to rerate events. See "About Rerating Events".
To rerate events, you run the pin_rerate utility multiple times: once to create rerating jobs
and several additional times to process the rerate jobs.
Note:
Location
BRM_home/bin
The pin.conf file for this utility is located in BRM_home/apps/pin_rerate. Run pin_rerate
from this directory.
Syntax Overview
You can run the pin_rerate utility in the following modes:
• Select mode: Select events for rerating and bundles them into a rerate job. See "Rerate
Job Creation Options".
• Process mode: Processes the rerate jobs. See "Rerate Job Processing Parameters".
• Configuration mode: Provides additional options when rerating jobs. See "Rerate Job
Configuration Options".
Results
If the pin_rerate utility does not notify you that it was successful, look in the utility log file
(pin_rerate.pinlog) to find any errors. The log file is either in the directory from which the
utility was started, or in a directory specified in the configuration file.
7-3
Chapter 7
pin_rerate
If rerating fails, the utility creates a report that includes the account numbers and start
times for failed rerates. The report file name is pin_rerate.status_report, and is in the
directory from where you ran the utility.
-a accountPOID [-c]
Includes the events associated with the specified account POID in the rerate job.
You can also include the -c option to rerate in calculate only mode. The utility rerates
the events without updating the database.
-t timestamp
Selects accounts for rerating based on the event start time. All accounts with events
that occurred between the start time and the current date are included in the rerate
job.
-G groupOwnerPoid -t timestamp
Selects accounts for rerating based on the specified sharing group owner. The owner
account and all member accounts of the specified charge sharing group, discount
sharing group, profile sharing group, or product sharing group are included in the
rerate job.
All accounts with events that occurred between the start time and the current date are
included in the rerate job.
By default, the owner and all members of the sharing group must reside in the same
database schema. To rerate sharing groups with accounts in multiple schemas, you
must set the CrossSchemaSharingGroup business parameter. See "Enabling
Sharing Groups to Support Multiple Schemas" in BRM Managing Customers for more
information.
7-4
Chapter 7
pin_rerate
Note:
This job option does not support multilevel sharing group hierarchies. Only the
owner and its immediate children are included in the job.
-p inputFile -t timestamp
Selects accounts for rerating based on the charge offers listed in the input file. Accounts that
have events associated with the charge offers specified in inputFile are included in the rerate
job.
In the input file, include a line for each charge offer name. All names are case sensitive.
-i inputFile -t timestamp
Selects accounts for rerating based on the discount offers listed in the input file. Accounts
that own at least one instance of the discount offer specified in inputFile are included in the
rerate job.
In the input file, include a line for each discount offer name. All names are case sensitive.
-s inputFile -t timestamp
Selects accounts for rerating based on the service names listed in the input file. Accounts
that have events associated with the services specified in inputFile are included in the rerate
job.
In the input file, include a line for each service name. All names are case sensitive.
-d inputFile -t timestamp
Includes in the rerate job all events associated with the bundles listed in the input file.
Accounts that have events associated with the charge offers and discount offers that belong
to the bundles specified in inputFile are selected for rerating.
In the input file, include a line for each bundle name. Names are case sensitive.
Note:
If a charge offer is a part of multiple bundles, all accounts that purchase the charge
offer are selected for rerating even if they did not purchase the bundle that was
rerated.
-n inputFile -t timestamp
Selects accounts for rerating based on the types of events. Accounts that have events of the
types specified in inputFile are selected for rerating.
In the input file, include a line for each bundle name. Names are case sensitive.
7-5
Chapter 7
pin_rerate
Note:
• If you use this parameter with the -r parameter, all subclasses of the
event specified in the input file are also rerated. See "Selecting Events
for Rerate Jobs".
• When a custom pin_rerate parameter is used, the -n parameter is
mandatory if the custom parameter is based on an event field present
only in an event subclass. In this case, the -n parameter input file can
contain only one type of event.
-m inputFile -t timestamp
Selects a set of accounts for rerating based on the provided account POIDs.
inputFile format: A text file containing the accounts to rerate in flist format. Specify
each account in a results array. For example:
0 PIN_FLD_RESULTS ARRAY [1]
1 PIN_FLD_ACCOUNT_OBJ POID [0] $DB_NO /account 12345 0
0 PIN_FLD_RESULTS ARRAY [2]
1 PIN_FLD_ACCOUNT_OBJ POID [0] $DB_NO /account 12333 0
...
-g inputFile -t timestamp
Selects accounts for rerating based on balance groups.
inputFile format: A text file containing information for one or more accounts in flist
format. Specify an account POID, bill unit POID, and balance group POID in a results
array for each account. For example:
0 PIN_FLD_RESULTS ARRAY [1]
1 PIN_FLD_ACCOUNT_OBJ POID [0] $DB_NO /account 12345 0
1 PIN_FLD_BILLINFO_OBJ POID [0] $DB_NO /billinfo 34567 0
1 PIN_FLD_BAL_GRP_OBJ POID [0] $DB_NO /balance_group 66765 0
0 PIN_FLD_RESULTS ARRAY [1]
1 PIN_FLD_ACCOUNT_OBJ POID [0] $DB_NO /account 12344 0
1 PIN_FLD_BILLINFO_OBJ POID [0] $DB_NO /billinfo 45654 0
1 PIN_FLD_BAL_GRP_OBJ POID [0] $DB_NO /balance_group NULL 0
...
To rerate all events for all balance groups for a given account's bill unit, specify a
value of NULL as the POID ID for the balance group object, as shown in the second
results array in the above example.
7-6
Chapter 7
pin_rerate
For information about defining custom pin_rerate parameters, see "Selecting Events Based
on a Custom Event Field".
Note:
If the custom parameter maps to a field in an /event subclass, you must specify the
subclass event by including the -n parameter, and the -n parameter input file can
include only one event. If you specify more than one type of event, an error is
returned.
-line subscriptionID
Selects accounts for rerating based on a subscription service. The subscription service is
identified by the PIN_FLD_ALIAS_LIST.PIN_FLD_NAME field, which can specify, for
example, the caller ID such as a phone number or the MAC address.
-reason reasonCode
Use with other selection parameters to assign a rerate reason code to the jobs created for
the selected accounts.
For more information about assigning rerate reason codes, see "Specifying the Order to
Process Rerate Jobs".
-r
Specifies to rerate all subclasses of the event specified in the input file.
You can use the -e parameter with the -p, -i, -s, -d, -n, -m, -g, and -fieldName parameters.
-e
Displays an estimated number of events that will be rerated to the screen without loading
any data into the database. It also writes the estimate to the pin_rerate.pinlog file.
You can use the -e parameter with the -p, -i, -s, -d, -n, and -fieldName parameters.
7-7
Chapter 7
pin_rerate
-process queue
Processes acknowledgment events from ECE and then updates the job's status to
ACCOUNT_LOCKED.
When processing rerate jobs, you run pin_rerate -process queue twice: once before
running utility with the -rerate parameter and again after running the utility with the -
rerate parameter.
-rerate -l [d | s | sd | n]
Rerates the events in the job, releases the lock on all accounts associated with the
job, and then changes the job's status to RERATED.
If you include the -l parameter, it also generates a detailed rerating report and
summary rerating report. To change which reports are generated, use the following:
• -ld: Generates a detailed rerating report (pin_rerate.detail) only.
• -ls: Generates a summary rerating report (pin_rerate.summary) only.
• -lsd: Generates both the detailed and summary rerating reports. This is the
default.
• -ln: Generates no report.
-b [ c | e ]
Specifies the order in which batch events are rerated based on the event time. You
can specify one of two times:
• -bc: Rerates events in the order that they were loaded into the BRM database.
• -be: Rerates events based on the time the event occurred. This is the default.
See "Specifying the Event Sequence in a Rerate Job" for more information.
7-8
Chapter 7
pin_rerate
-e -a | -s | -p | -n | -d
Returns an estimate of how many events might be affected by rerating based on which
accounts are being rerated:
• -e -a: Provides an estimate for a single account.
• -e -s: Provides an estimate for accounts associated with a specific service.
• -e -p: Provides an estimate for accounts that own with specific charge offers.
• -e -n: Provides an estimate for accounts with specific types of events.
• -e -d: Provides an estimate for accounts that own specific bundles.
If you do not specify one of these options when using the -e parameter, the utility returns 0.
Note:
You cannot use this parameter with the -m or -g parameters.
-backout
Specifies backout-only rerating, which backs out the balance impacts of rating without
rerating events. For more information about back-out-only rerating, see "Processing Events
in Rerate Jobs".
This parameter is optional and can be used with any other parameter.
Note:
When choosing the events to back out, do not select events that could imbalance
your general ledger, such as events for which fees have already been paid and
usage events that should be rerated. Typically, backout-only rerating is performed
only on usage events where rating should not have occurred.
-h | -help
Displays the syntax and parameters for this utility.
7-9