88 Migrating Pricing Data to PDC With ECE

Learn how to set up your environments and run the Oracle Communications Pricing Design Center (PDC) migration utility to migrate Oracle Communications Billing and Revenue Management (BRM) pricing data or PDC pricing data to a PDC system that supports BRM Elastic Charging Engine (ECE).

Topics in this document:

If you are migrating BRM pricing data to PDC with ECE, see "About Migrating BRM Pricing Data to PDC With ECE".

If you are migrating PDC pricing data to PDC with ECE, see "About Migrating PDC Pricing Data to PDC With ECE".

Pricing data migration should be performed by experienced pricing administrators. You should have a basic understanding of how to create product offerings and to configure setup components. See PDC Creating Product Offerings for more information.

To use the migration utility, you must also understand the following:

  • Database administration tasks

  • Extensible Markup Language (XML) programming

  • XML schema definition (XSD)

To minimize impact and risks to your production systems, Oracle recommends to perform the initial migration on a development test system and then import the migrated data to your production systems.

About Migrating BRM Pricing Data to PDC With ECE

If you are using Pricing Center to create and manage your price lists and using the real-time engine (RRE) and the batch rating engine (BRE) for usage rating, the pricing data is stored in the BRM database. If you want to use ECE for usage rating, you must first install PDC with the ECE option and then migrate the pricing data from the BRM database into the PDC database.

You use the command-line utility, MigrateBRMPricing, to migrate the BRM pricing data into the PDC database.

Note:

The migration of branded data is not supported.

The migration utility migrates both real-time and batch pricing data. The BRM pricing data consists of configuration objects and pricing objects. Because the pricing objects reference configuration objects, you must migrate the configuration objects prior to migrating the pricing objects. To do this, you run the migration twice: first to migrate the configuration objects and then to migrate the pricing objects.

The configuration objects include data such as event objects, service objects, impact categories, and zone models.

The pricing objects consist of the following:

  • Products and all objects referenced by a product, including rateplans, price model selectors, Access Point Name (APN) selectors, price models, time models, usage scenario (USC) groups.

  • Discounts and all objects referenced by discounts, including discount models, discount model selectors, discount rules, triggers, and filters.

  • Chargeshares and all objects referenced by a chargeshare.

  • Subscriptions objects, including deals, plans, and plan lists.

If the pricing analysis reports contain a large number of messages, you can consider migrating pricing objects by category. If you decide to migrate the pricing objects by category, you must migrate them in the following order:

  1. Products and all objects referenced in the products

  2. Discounts and all the objects referenced in the discounts

  3. Chargeshares

  4. Subscription objects

If you migrate pricing objects by category, each migration process must be completed first before starting the next. For example, the products migration process must be completed, that means all products and related objects are analyzed, transformed, and available in the PDC database, before you start the discounts migration process and so on.

See "MigrateBRMPricing" for the utility's syntax and parameters.

Note:

The BRM term for an object sometimes differs from the PDC term for the same object. See the mapping BRM to PDC terminology table in PDC Creating Product Offerings for more information.

Migration of the BRM pricing data is performed in two phases:

  1. Data analysis: In this phase, the migration utility extracts and analyzes the BRM pricing data for PDC compatibility. The analysis shows errors that need to be fixed before the data can be migrated.

  2. Data migration: In this phase, the migration utility adjusts, transforms, checks for ECE compatibility, adjusts (if needed), and migrates the BRM pricing data to the PDC database.

You must perform the migration process twice. First you analyze and migrate configuration objects, such as event objects, service objects, impact categories, and zone models. Then, you analyze and migrate pricing objects, such as products and discounts.

About the BRM Data Analysis Phase for Migrating BRM Pricing Data to PDC With ECE

The data analysis phase is the first phase of the migration of the BRM pricing data.

The following procedure describes how the BRM pricing data is processed in this phase:

  1. The migration utility extracts the BRM pricing data from the BRM database and saves the data in XML files.

  2. The migration utility analyzes the data to determine if the configurations are supported in PDC and whether any configurations need to be adjusted prior to the migration.

  3. The migration utility generates analysis reports that provide the list of the data configurations that need to be adjusted by the utility during the migration process and any configurations that you would need to adjust manually.

    You need to review the analysis reports and resolve any pricing data configuration errors in the BRM database. If you make updates to the pricing data in the BRM database, you must restart the migration process to extract the latest objects from the BRM database and perform the data analysis again.

    When you restart the migration process, the analysis reports are also re-generated for the latest data.

Figure 88-1 shows the data analysis phase for migrating BRM pricing data to PDC with ECE:

Figure 88-1 Data Analysis Phase for Migrating BRM Pricing Data to PDC With ECE

Description of Figure 88-1 follows
Description of "Figure 88-1 Data Analysis Phase for Migrating BRM Pricing Data to PDC With ECE"

The migration utility can adjust most BRM pricing configurations. Adjustments to the BRM pricing data configurations may result in existing BRM objects being updated or new BRM objects being created. In some cases, the migration utility may require additional information from you before it can adjust the data. But, there are some configurations that it cannot adjust and for those cases, you may need to change the configurations manually before continuing with the migration.

The data analysis phase is complete when there are no data configurations errors in the analysis reports.

About the Data Migration Phase for Migrating BRM Pricing Data to PDC With ECE

The data migration phase is the second phase of the migration process. You must resume the migration process after the analysis phase is complete to start the data migration.

The following procedure describes how the data is processed in the data migration phase:

  1. The migration utility adjusts the BRM pricing data in the XML files, if necessary, to enable transformation to the PDC data model.

  2. The migration utility transforms the BRM pricing data to PDC components and saves them in XML files.

  3. The migration utility checks the data to determine if the configurations are supported in ECE and whether any configurations need to be adjusted prior to the migration.

  4. The migration utility generates compatibility reports that provide the list of the data configurations that need to be adjusted by the utility during the migration process and any configurations that you would need to adjust manually.

    You need to review the compatibility reports, resolve any pricing data compatibility errors in the BRM database, and restart the data migration process.

    When you restart the migration process, the compatibility reports are also re-generated for the latest data.

  5. The migration utility loads the PDC components into the PDC database.

  6. The migration utility loads any new and updated BRM objects (resulting from the data adjustments) into the BRM database.

  7. The migration utility generates the migration report with information about the BRM objects that were successfully migrated to the PDC database.

  8. The migration utility generates the process report with information about the BRM objects that were created or updated in the BRM database.

For more information about the migration utility reports, see "About Migration Reports".

Figure 88-2 shows the data migration phase for migrating BRM data to PDC with ECE:

Figure 88-2 Data Migration Phase for Migrating BRM Data to PDC With ECE

Description of Figure 88-2 follows
Description of "Figure 88-2 Data Migration Phase for Migrating BRM Data to PDC With ECE"

For more information on setting up and migrating the BRM pricing data to PDC with ECE, see "Performing Migration of BRM Pricing Data to PDC With ECE".

Performing Migration of BRM Pricing Data to PDC With ECE

To set up and migrate the BRM pricing data to PDC with ECE:

  1. Create a backup of the BRM production database.

    See "Creating a BackUp of Your BRM Database".

  2. Setup the development system to run the initial migration of the BRM pricing data.

    See "Setting Up the BRM Development System" for more information.

  3. Migrate the BRM configuration and pricing objects.

    See "Migrating the BRM Pricing Data to PDC With ECE" for more information.

  4. Restart the PDC and ECE systems.

    See "Restarting the Systems".

  5. Test the migrated data.

    See "Testing the Migrated Data".

  6. Import the migrated data to the production systems.

    See "Importing the Migrated Data to the Production Systems".

Creating a BackUp of Your BRM Database

If you migrating data from the BRM database, Oracle recommends that you perform a full backup of your BRM production database prior to running the migration.

If you migrating data from the PDC database, Oracle recommends that you perform a full backup of your PDC production database prior to running the migration.

Performing a full backup allows you to restore your production database to its original state in the event of any data corruption or data loss. Back up both the database definition and all the database contents.

Use the backup to restore the database on a test system to ensure the backup is valid.

See your database software documentation for more information on performing full database backups.

Setting Up the BRM Development System

Setting up the BRM development system includes setting up a BRM system with BRM pricing data and installing a PDC system.

Perform the following tasks to setup your development system:

  1. Review the system requirements for installing the PDC and BRM systems.

    See "Pricing Design Center System Requirements" in PDC Installation Guide.

  2. Perform the following pre-installation tasks for PDC:

    • Installing and configuring the Oracle Database

    • Installing and configuring Oracle WebLogic Server

    • Installing and configuring BRM

    See "Pricing Design Center Pre-Installation Tasks" in PDC Installation Guide.

  3. Install the complete PDC software.

    Note:

    Before you install PDC, ensure that the PDC database does not have any existing pricing data.

    When you install BRM Integration Pack, ensure that you select the Migrate RRE and BRE pricing data to PDC with ECE option.

    See "Installing Pricing Design Center Software" in PDC Installation Guide.

  4. Copy the BRM pricing data from the production database to the development system.

    You can copy the BRM pricing data in one of two ways:

    • Use the BRM load utilities, loadpricelist and LoadIfwConfig, to export the pricing data from your BRM production database and load it into the BRM development database.

      See the discussion about pricing utilities in PDC Creating Product Offerings for information about running these utilities.

      Note:

      Keep a record of the following information as you create the BRM database. This information is used later to configure the MigrateBRMPricing utility.

      • User login and password for the BRM database

      • Name of the machine on which BRM database is created

      • IP address of the machine on which BRM database is created

      • Port number assigned to the BRM database

      • Service Name or SID for the BRM database

    • Restore the database from the BRM database backup.

      See your database software documentation for more information about database restore.

  5. Ensure BRM_Integration_Pack_Home/apps/bin is in your PATH environment variable, where BRM_Integration_Pack_Home is the directory in which you installed BRM Integration Pack.

  6. (Optional) Configure the MigrateBRMPricing utility. See "Configuring the Migration Utility for PDC with ECE" for more information.

  7. Ensure all users of the migration utility are added to the Migration Admin group.

    The users of the migration utility must belong to the Migration Admin group, which is created during the PDC installation. You can add additional users to this group by using the WebLogic Administration Console.

  8. Ensure that the BRM loadpricelist and LoadIfwConfig utilities are configured correctly and can connect to the BRM database.

    The migration utility uses the BRM load utilities to extract the pricing data from the BRM database to XML files.

    See the discussion about pricing utilities in PDC Creating Product Offerings for more information.

  9. (Optional) If your BRM data consists of pipeline services that are mapped to multiple events in the Pipeline Manager IFW_REF_MAP database table, then you must add REF_PARAM combination key to the IFW_REF_MAP entry in IFW_Home/tools/XmlLoader/LoadIfwConfig.xsd file.

    <xs:element name="IFW_REF_MAP" type="TableType_IFW_REF_MAP" minOccurs="0" maxOccurs="unbounded"> 
       <xs:key name="IFW_REF_MAP_PrimaryKey_1"> 
          <xs:selector xpath="IFW_REF_MAP"/>
          <xs:field xpath="@ID"/>
          <xs:field xpath="@REF_OBJ"/> 
          <xs:field xpath="@REF_PARAM"/> 
       </xs:key> 
    </xs:element> 
  10. Obtain the Java Keystore password.

Configuring the Migration Utility for PDC with ECE

The migration configuration file contains the information that you provided during PDC installation. You can edit this file if you want to change the information that you provided.

To configure the migration utility:

  1. Make a copy of the BRM_Integration_Pack_Home/apps/migration/MigrateConfiguration.xml file, where BRM_Integration_Pack_Home is the directory in which you installed BRM Integration Pack.

  2. Open the copy in a text editor.

  3. Edit the file based on your requirements.

    Table 88-1 lists the elements in MigrateConfiguration.xml and the syntax and description for each element.

    Table 88-1 Elements in the MigrateConfiguration.xml File

    Element Syntax Description

    walletConfiguration

    <walletConfiguration>
      <pdcWalletLocation>BRMIntegratioPackWallet</pdcWalletLocation>
    </walletConfiguration>

    Specifies the Oracle wallet that stores the sensitive information, such as database passwords, where BRMIntegratioPackWallet is the complete path to the BRM Integration Pack wallet.

    xrefDatabase

    <xrefDatabase>
      <connectionInfo>
        <login>CrossRefUserName</login>
        <hostName>CrossRefHostName</hostName>
        <port>CrossRefPort</port>
        <serviceName>CrossRefServiceName</serviceName>
      </connectionInfo>
    </xrefDatabase>

    Contains the details about the transformation cross-reference database, where:

    • CrossRefUserName specifies the cross-reference database user name

    • CrossRefHostName specifies the IP address or the host name of the machine on which the cross-reference database is configured

    • CrossRefPort specifies the port number assigned to the cross-reference database

    • CrossRefServiceName specifies the name of the cross-reference database service

    migrationDatabase

    <migrationDatabase>
      <connectionInfo>
        <login>MigrationUserName</login>
        <hostName>MigrationHostName</hostName>
        <port>MigrationPort</port>
        <serviceName>MigrationServiceName</serviceName>
      </connectionInfo>
    </MigrationDatabase>

    Contains the details about the migration cross-reference database, where:

    • MigrationUserName specifies the cross-reference database user name

    • MigrationHostName specifies the IP address or the host name of the machine on which the cross-reference database is configured

    • MigrationPort specifies the port number assigned to the cross-reference database

    • MigrationServiceName specifies the name of the cross-reference database service

    By default, the connection information in the <migrateDatabase> elements is same as the connection information in the <xrefDatabase> elements. However, during BRM Integration Pack installation, the Installer allows you specify a migration cross-reference database that is different from the transformation cross-reference database. In that case, the connection information in the <migrateDatabase> elements and the <xrefDatabase> elements may differ.

    migrationSource

    <migrationSource>
      <deploymentType>MigrationSourcetype</deploymentType>
      <pricingServer>
    SourcePDCPricingServer
    </pricingServer>
      <brmConfiguration>
    SourceBRMConfiguration
      </brmConfiguration>
    </migrationSource>

    Contains the details about the migration source system.

    • <deploymentType> element specifies the migration source, where MigrationSourcetype is:

      LEGACY_BRM. to specify that the source is a BRM system that uses real-time and batch rating engines and BRM Pricing Center.

      PDC_WITH_ONLINE_BATCH_USAGE. to specify that the source is a BRM system that uses real-time and batch rating engines and PDC.

    • <pricingServer> element contains the source PDC server information if the migration source is PDC_WITH_ONLINE_BATCH_USAGE.

    • brmConfiguration contains the source BRM system configuration details.

    pricingServer

    <migrationSource>
      <pricingServer>
        <connectionInfo>
          <hostName>SourcePricingServerHostName</hostName>
          <port>SourcePricingServerPort</port>
          <adminUser>SourceAdminUserName</adminUser>
          <pdcUser>SourcePDCUser</pdcUser>
          <pdcSSL>SourceSSLOption</pdcSSL>
        </connectionInfo>
      </pricingServer>
    </migrationSource>

    Contains the source PDC server information, where:

    • SourcePricingServerHostName specifies the IP address or the host name of the machine on which the source PDC server is deployed

    • SourcePricingServerPort specifies the port number of the domain on which the source PDC server is deployed

    • SourceAdminUserName specifies the user name of the source PDC server administrator

    • SourcePDCUser specifies the user name of the source PDC system user

    • SourceSSLOption specifies whether the source PDC server supports SSL.

      enabled. Specifies that PDC supports SSL. If SSL is enabled, MigrateBRMPricing uses the t3s://Host:Port URL to access PDC

      disabled. Specifies that PDC does not support SSL. If SSL is disabled, MigrateBRMPricing uses the t3://Host:Port URL to access PDC

    brmConfiguration

    <migrationSource>
      <brmConfiguration>
        <brand>BrandOption</brand>
    <fieldSelection>EventFieldInfo</fieldSelection>
        <breConfig>
          <containerDesc> 
            <param> 
              <paramname>EDRField</paramname> 
              <paramvalue>EDRFieldValue</paramvalue> 
              </param> 
          </containerDesc> 
          <eventExtension> 
            <param> 
              <paramname>BREEvent</paramname> 
              <paramvalue>ExtensionBlockName</paramvalue> 
            </param> 
          </eventExtension> 
          <serviceExtension> 
            <param>                  
              <paramname>BREService</paramname> 
              <paramvalue>ExtensionBlockName</paramvalue> 
            </param> 
          </serviceExtension> 
          <defaultValue>  
            <param> 
              <paramname>SERVICE_CLASS</paramname> 
              <paramvalue>DefaultServiceClass</paramvalue> 
            </param> 
          </defaultValue> 
        </breConfig>
      </brmConfiguration>
    /<migrationSource>

    Contain the details about the source BRM system configuration.

    • <brand> element specifies whether the source BRM system supports branding, where BrandOption is enabled or disabled.

    • <fieldSelection> element contains the information about the target rating engine and the BRM event fields provided as input to the target rating engine for usage rating.

    • <breConfig> element contains the batch rating engine configurations.

    • <containerDesc> element specifies the EDRC fields that are migrated for events.

      In the following example, all the EDRC_FIELDS mapped to ALL_RATE are migrated for the events.

      <containerDesc>
        <param>
          <paramname>EDRC_DESC</paramname>
          <paramvalue>ALL_RATE</paramvalue>
        </param>
      </containerDesc>
    • <eventExtension> element specifies to migrate the fields of the specified extension block for the batch rating engine event.

      Example:

      <eventExtension> 
        <param> 
          <paramname>/event/delayed/session/telco/gsm</paramname> 
          <paramvalue>ASS_GSMW_EXT</paramvalue> 
        </param> 
      </eventExtension> 
    • <serviceExtension> element specifies to migrate the fields of the specified extension block for the batch rating engine service.

      Example:

      <serviceExtension> 
        <param> 
          <paramname>/service/telco/gprs</paramname> 
          <paramvalue>ASS_GPRS_SERV_EXT</paramvalue> 
        </param> 
      </serviceExtension> 
    • <defaultValue> element specifies the default service class, where DefaultServiceClass is the default service class name.

    fieldSelection

    <fieldSelection>
    <targetEngine>TargetRatingEngine</targetEngine>
    <eventFields>
    <eventName>EventName</eventName>
    <fullyQualifiedName>EventFieldName</fullyQualifiedName>
    </eventFields>
    </fieldSelection>

    Contains the information about the target rating engine and the BRM event fields provided as input to the target rating engine for usage rating.

    <targetEngine> element specifies the target rating engine used for usage rating, where: TargetRatingEngine is one of the following:

    • Convergent Charging specifies that ECE is used for usage rating.

    • Realtime Charging specifies that the real-time rating engine is used for usage rating.

    • Batch Charging specifies that the batch rating engine is used for usage rating.

    <eventFields> element specifies the fields that are provided as input to TargetRatingEngine, where:

    • EventName specifies the class name of the BRM event; for example, /event.

    • EventFieldName specifies the fully qualified name of the BRM event field that is provided as input to TargetRatingEngine; for example, PIN_FLD_NAME.

    Note: Each <fieldSelection> element can have multiple <eventFields> elements but only one <targetEngine> element. To support multiple target rating engines, add the <fieldSelection> element for each target rating engine.

    Similarly, each <eventFields> element can have multiple <fullyQualifiedName> elements but only one <eventName> element. To rate multiple events, add the <eventFields> element for each event.

    migrationTarget

    <migrationTarget>
      <deploymentType>MigrationTargettype</deploymentType>
      <pricingServer>
    TargetPDCPricingServer
    </pricingServer>
      <brmConfiguration>
    TargetBRMConfiguration
      </brmConfiguration>
    </migrationTarget>

    Contains the details about the migration target system.

    • <deploymentType> element specifies the migration target, where MigrationTargettype is:

      PDC_WITH_ONLINE_BATCH_USAGE to specify that the target is a BRM system that uses real-time and batch rating engines and PDC.

      PDC_WITH_CONVERGENT_USAGE to specify that the target is a BRM system that uses ECE and PDC.

    • <pricingServer> element contains the target PDC server information

    • <brmConfiguration> element contains the target BRM system configuration details

    pricingServer

    <migrationTarget>
      <pricingServer>
        <connectionInfo>
          <hostName>TargetPricingServerHostName</hostName>
          <port>TargetPricingServerPort</port>
          <adminUser>TargetAdminUserName</adminUser>
          <pdcUser>TargetPDCUser</pdcUser>
          <pdcSSL>TargetSSLOption</pdcSSL>
        </connectionInfo>
      </pricingServer>
    </migrationTarget>

    Contains the target PDC server information, where:

    • TargetPricingServerHostName specifies the IP address or the host name of the machine on which the target PDC server is deployed.

    • TargetPricingServerPort specifies the port number of the domain on which the target PDC server is deployed.

    • TargetAdminUserName specifies the user name of the target PDC server administrator.

    • TargetPDCUser specifies the user name of the target PDC system user.

    • TargetSSLOption specifies whether the target PDC server supports SSL.

      enabled specifies that PDC supports SSL. If SSL is enabled, MigrateBRMPricing uses the t3s://Host:Port URL to access PDC

      disabled specifies that PDC does not support SSL. If SSL is disabled, MigrateBRMPricing uses the t3://Host:Port URL to access PDC

    brmConfiguration

    <migrationTarget>
      <brmConfiguration>
        <loadConfigDir>LoadConfigPath</loadConfigDir>
        <loadPriceListDir>LoadPriceListPath</loadPriceListDir>
        <loadIfwConfigDir>LoadPipelineConfigPath<loadIfwConfigDir>
      </brmConfiguration
    </migrationTarget>

    Contain the details about the target BRM system configuration, where:

    • LoadConfigPath specifies the path to the directory from where the load_config utility is run.

    • LoadPriceListPath specifies the path to the directory from where the load_price_list utility is run.

    • LoadPipelineConfigPath specifies the path to the directory from where the LoadIfwConfig utility is run.

    logFile

    <logFile>MigrationLogFileLocation</logFile>

    Specifies the directory that stores MigrateBRMPricing log files, where MigrationLogFileLocation is the complete path and the name of the log file.

    reportFile

    <reportFile>ReportFileLocation</reportFile>

    Specifies the directory where MigrateBRMPricing stores the reports generated during the migration process, where ReportFileLocation is the complete path to the directory.

    brmExtractedXML

    <brmExtractedXML>BRMExtractedXML</brmExtractedXML>

    Specifies the directory where MigrateBRMPricing stores the XML files containing the pricing data extracted from the BRM database, where BRMExtractedXML is the complete path to the directory.

    pdcExtractedXML

    <pdcExtractedXML>PDCExtractedXML</pdcExtractedXML>

    Specifies the directory where MigrateBRMPricing stores the XML files containing the pricing data extracted from the PDC database, where PDCExtractedXML is the complete path to the directory.

    brmXML

    <brmXML>BRMDataFile</brmXML>

    Specifies the directory where MigrateBRMPricing creates the XML files containing the BRM data that needs to be updated or created in the BRM database, where BRMDataFile is the complete path to the directory.

    pdcXML

    <pdcXML>PDCDataFile</pdcXML>

    Specifies the directory where MigrateBRMPricing creates the XML files containing the extracted BRM data in PDC format, where PDCDataFile is the complete path to the directory.

    userInputXML

    <userInputXML>UserInputXML</userInputXML>

    Specifies the directory that contains the XML user input files that you provide for data adjustments, where UserInputXML is the complete path to the directory.

    xrefSQL

    <xrefSQL>XrefData</xrefSQL>

    Specifies the directory where MigrateBRMPricing creates the files containing the migration and transformation cross-reference data in sql format, where XrefData is the complete path to the directory.

    selectiveMigration

    <selectiveMigration>
    <useBatch>MigrationOption</useBatch>
    <batchName>BatchFileName</batchName></selectiveMigration>

    Contain the details for selective migration, where:

    • MigrationOption is:

      true to specify that selective migration of data must be enabled.

      false to specify that selective migration of data must be disabled.

    • BatchFileName is the name of the XML file that contains the pricing objects to be migrated.

  4. Save and close the file.

Migrating the BRM Pricing Data to PDC With ECE

When you migrate pricing data from the BRM database to the PDC database, you must migrate the configuration objects and then migrate the pricing objects.

To migrate the pricing data from the BRM database to the PDC database:

  1. Migrate the configuration objects. See "Migrating BRM Configuration Objects".

  2. Migrate the pricing objects. See "Migrating BRM Pricing Objects".

Migrating BRM Configuration Objects

To migrate the configuration objects:

  1. Ensure that the BRM and PDC databases are running.

  2. Go to the BRM_Integration_Pack_Home/apps/migration directory.

  3. Run the following command, which starts the data analysis phase:

    MigrateBRMPricing -config -analyze
  4. Enter the BRM Integration Pack wallet password when prompted.

  5. Review the configuration analysis report and fix any data configuration errors that are reported (see "Fixing Errors Found in the Analysis Phase").

  6. In step 5, if you made changes to the data in the BRM database, run the following command, which restarts the data analysis phase:

    MigrateBRMPricing -config -analyze -restart
  7. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  8. Repeat steps 5 to 7 until there are no errors in the configuration analysis report.

  9. Run the following command, which starts the data migration phase:

    MigrateBRMPricing -resume

    Note:

    MigrateBRMPricing does not proceed with the transformation and migration of the configuration objects to the PDC database if there are any critical or user input errors in the configuration analysis report.

  10. Review the configuration compatibility report and fix any data configuration errors that are reported (see "Fixing Errors Found in the Migration Phase").

  11. In step 10, if you made changes to the data in the BRM database, run the following command, which restarts the data analysis phase:

    MigrateBRMPricing -restart
  12. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  13. Repeat steps 10 to 12 until there are no errors in the configuration compatibility report.

  14. Review the migration report and verify that all the configuration objects were migrated to the PDC database successfully.

Migrating BRM Pricing Objects

To migrate BRM pricing objects, do one of the following:

Migrating All BRM Pricing Objects

To migrate all pricing objects:

  1. In the PDC application, ensure that the configuration objects are available.

  2. Ensure that the BRM and PDC databases are running.

  3. Go to the BRM_Integration_Pack_Home/apps/migration directory.

  4. Run the following command, which starts the data analysis phase for all pricing objects:

    MigrateBRMPricing -pricing -analyze
  5. Enter the BRM Integration Pack wallet password when prompted.

  6. Review the pricing analysis reports (product, discount, sponsorship and subscription analysis reports) and fix any data configuration errors that are reported (see "Fixing Errors Found in the Analysis Phase").

  7. Do one of the following:

    • If you fixed any configuration objects errors reported in the pricing analysis reports, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the pricing analysis report, restart the pricing data analysis phase by running the following command:

      MigrateBRMPricing -pricing -analyze -restart
  8. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  9. Repeat steps 6 to 8 until there are no errors in the pricing analysis reports.

  10. Run the following command, which starts the data migration phase:

    MigrateBRMPricing -resume

    Note:

    MigrateBRMPricing does not proceed with the transformation and migration of the pricing objects to the PDC database if there are any critical or user input errors in the pricing analysis reports.

  11. Review the pricing compatibility reports (product, discount, sponsorship and subscription compatibility reports) and fix any ECE compatibility errors that are reported (see "Fixing Errors Found in the Migration Phase").

  12. Do one of the following:

    • If you fixed any configuration object errors reported in the pricing compatibility reports, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the pricing compatibility report, restart the pricing data analysis phase by running the following command:

      MigrateBRMPricing -restart -pricing
  13. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  14. Repeat steps 11 to 13 until there are no errors in the pricing compatibility reports.

  15. Review the migration report and verify that all pricing objects were migrated to PDC successfully.

  16. Make corrections to PDC data, if needed. See "Changes Required After Migration".

Migrating BRM Pricing Objects by Category

When you migrate pricing objects by category, the migration of all the objects in each category must be completed before starting the next.

To migrate pricing objects by category:

  1. In the PDC application, ensure that the configuration objects are available.

  2. Ensure that the BRM and PDC databases are running.

  3. Go to the BRM_Integration_Pack_Home/apps/migration directory.

  4. Run the following command, which starts the data analysis phase for products and all objects referenced by a product:

    MigrateBRMPricing -product -analyze
  5. Enter the BRM Integration Pack Wallet password when prompted.

  6. Review the product analysis report and fix any data configuration errors that are reported (see "Fixing Errors Found in the Analysis Phase").

  7. Do one of the following:

    • If you fixed any configuration object errors reported in the product analysis report, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the product analysis report, restart the data analysis phase for products by running the following command:

      MigrateBRMPricing -product -analyze -restart
  8. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  9. Repeat steps 6 to 8 until there are no errors in the product analysis report.

  10. Run the following command, which starts the data migration phase for products:

    MigrateBRMPricing -resume

    Note:

    MigrateBRMPricing does not proceed with the transformation and migration of the pricing objects to the PDC database if there are any critical or user input errors in the analysis reports.

  11. Review the product compatibility report and fix any data configuration errors that are reported (see "Fixing Errors Found in the Migration Phase").

  12. Do one of the following:

    • If you fixed any configuration object errors reported in the product compatibility report, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the product compatibility report, restart the data analysis phase for products by running the following command:

      MigrateBRMPricing -restart -product
  13. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  14. Repeat steps 11 to 13 until there are no errors in the product compatibility report.

  15. Review the migration report and verify that the products and objects referenced by a product were migrated to PDC successfully.

  16. Make corrections to PDC data, if needed. See "Changes Required After Migration".

  17. Run the following command, which starts the data analysis phase for discounts and all objects referenced by a discount:

    MigrateBRMPricing -discount -analyze
  18. Enter the BRM Integration Pack wallet password when prompted.

  19. Review the discount analysis report and fix any data configuration errors that are reported.

  20. Do one of the following:

    • If you fixed any configuration object errors reported in the discount analysis report, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the discount analysis report, restart the data analysis phase for discounts by running the following command:

      MigrateBRMPricing -discount -analyze -restart
  21. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  22. Repeat steps 19 to 21 until there are no errors in the discount analysis report.

  23. Run the following command, which starts the data migration phase for discounts:

    MigrateBRMPricing -resume
  24. Review the discount compatibility report and fix any data configuration errors that are reported.

  25. Do one of the following:

    • If you fixed any configuration object errors reported in the discount compatibility report, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the discount compatibility report, restart the data analysis phase for discounts by running the following command:

      MigrateBRMPricing -restart -discount
  26. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  27. Repeat steps 24 to 26 until there are no errors in the discount compatibility report.

  28. Review the migration report and verify that the discounts and all objects referenced by a discount were migrated to PDC successfully.

  29. Make corrections to PDC data, if needed. See "Changes Required After Migration".

  30. Run the following command, which starts the data analysis phase for chargeshares and all objects referenced by a chargeshare:

    MigrateBRMPricing -sponsorship -analyze
  31. Enter the BRM Integration Pack wallet password when prompted.

  32. Review the sponsorship analysis report and fix any data configuration errors that are reported.

  33. Do one of the following:

    • If you fixed any configuration object errors reported in the sponsorship analysis report, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the sponsorship analysis report, restart the data analysis phase for chargeshares by running the following command:

      MigrateBRMPricing -sponsorship -analyze -restart
  34. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  35. Repeat steps 32 to 34 until there are no errors in the sponsorship analysis report.

  36. Run the following command, which starts the data migration phase for chargeshares:

    MigrateBRMPricing -resume
  37. Review the sponsorship compatibility report and fix any data configuration errors that are reported.

  38. Do one of the following:

    • If you fixed any configuration object errors reported in the sponsorship compatibility report, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the sponsorship compatibility report, restart the data analysis phase for chargeshares by running the following command:

      MigrateBRMPricing -restart -sponsorship
  39. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  40. Repeat steps 37 to 39 until there are no errors in the sponsorship analysis report.

  41. Review the migration report and verify that the chargeshares and all objects referenced by a chargeshare were migrated to PDC successfully.

  42. Make corrections to PDC data, if needed. See "Changes Required After Migration".

  43. Run the following command, which starts the data analysis phase for subscription objects:

    MigrateBRMPricing -subscription -analyze
  44. Enter the BRM Integration Pack wallet password when prompted.

  45. Review the subscription analysis report and fix any data configuration errors that are reported.

  46. Do one of the following:

    • If you fixed any configuration object errors reported in the subscription analysis report, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the subscription analysis report, restart the data analysis phase for subscription objects by running the following command:

      MigrateBRMPricing -subscription -analyze -restart
  47. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  48. Repeat steps 45 to 47 until there are no errors in the subscription analysis report.

  49. Run the following command, which starts the data migration phase for subscription objects:

    MigrateBRMPricing -resume
  50. Review the sponsorship compatibility report and fix any data configuration errors that are reported.

  51. Do one of the following:

    • If you fixed any configuration object errors reported in the subscription compatibility report, restart the complete migration process. See "Migrating BRM Configuration Objects".

    • If you fixed only pricing objects errors reported in the subscription compatibility report, restart the data analysis phase for subscription by running the following command:

      MigrateBRMPricing -restart -subscription
  52. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  53. Repeat steps 50 to 52 until there are no errors in the sponsorship compatibility report.

  54. Review the migration report and verify that all subscription objects were migrated to PDC successfully.

  55. Make corrections to PDC data, if needed. See "Changes Required After Migration".

  56. Using the target PDC application, verify that you are able to create and modify subscription objects without any errors.

Migrate Pricing Data Selectively

You can migrate the following pricing objects selectively to PDC: products, discounts, and sponsorships.

Note:

You cannot migrate subscriptions (bundles or packages) selectively.

You cannot migrate data incrementally. After migrating a set of pricing objects, restart the migration process with new set of pricing objects.

To migrate the pricing objects selectively:

  1. In the PDC application, ensure that the configuration objects are available.

  2. Ensure that the BRM and PDC databases are running.

  3. Go to the BRM_Integration_Pack_Home/apps/migration directory.

  4. Create an XML file with the required pricing objects to be migrated; for example, pricingbatch.xml.

    This XML file can include either the services for which the pricing objects have to be migrated (for example, /service/telco/gsm/gprs) or the categories of pricing objects (for example, product) that need to be migrated. Multiple pricing objects can be separated by a comma.

    Pricing objects for both the specific service and the specific category cannot be migrated together. You can migrate pricing objects either by services associated with these objects or by the category of pricing objects, selectively, at a time. If both service types and offering codes are specified in the same XML file, offering codes takes precedence.

    The following example shows the sample XML file created for migrating pricing objects by services:

    <!--Example for selectively migrating services. Note that services are listed under the name tag. -->
    <filterBy>
    <service>
    <name>/service/telco/gsm/roaming</name>
    <name>/service/telco/gsm/gprs</name>
    <name>/service/subscription</name>
    </service>
    </filterBy>
    

    The following example shows the sample XML file created for migrating pricing objects by category:

    <!--Example for selectively migrating Pricing objects. Note that pricing Objects are comma separated. -->
    <filterBy>
    <product>
    <codes>Product1,Product2</codes>
    </product>
    
    <discount>
    <codes>Discount1,Discount2</codes>
    </discount>
    
    <sponsorship>
    <codes>Sponsorship1,Sponsorship2</codes>
    </sponsorship>
    </filterBy>
    
  5. Continue the pricing objects migration process. See "Migrating BRM Pricing Objects by Category".

About Migrating PDC Pricing Data to PDC With ECE

If you are using PDC to create and manage your price lists and using the real-time and batch rating engines for usage rating, and you want to use ECE for usage rating, you must first install PDC with ECE and then migrate the pricing data from the source PDC database into the target PDC database.

You use the command-line utility, MigrateBRMPricing, to migrate the PDC pricing data into the target PDC database.

Migration of the PDC pricing data is performed in a single phase, the data migration phase. In the data migration phase, the migration utility extracts the existing PDC data, checks for ECE compatibility, adjusts the pricing data, and migrates the adjusted data to the target PDC database.

You must perform the migration process twice. First you migrate configuration objects. Then, you migrate pricing objects.

The migration utility can adjust most pricing configurations. Adjustments to the PDC pricing data configurations may result in existing objects being updated or new objects being created. In some cases, the migration utility may require additional information from you before it can adjust the data. But, there are some configurations that it cannot adjust and for those cases, you may need to change the configurations manually before continuing with the migration.

You run the MigrateBRMPricing or MigrateBRMPricing -resume command to start the data migration phase.

About the Data Migration Phase for Migrating PDC Pricing Data to PDC With ECE

The following procedure describes how the PDC pricing data is processed in the migration phase:

  1. The migration utility extracts the PDC pricing data and saves the data in XML files.

  2. The migration utility checks the data to determine if the configurations are supported in ECE and whether any configurations need to be adjusted prior to the migration.

  3. The migration utility generates compatibility reports that provide the list of the data configurations that need to be adjusted by the utility during the migration process and any configurations that you would need to adjust manually.

    You need to review the compatibility reports, resolve any pricing data compatibility errors in the PDC database, and restart the migration process.

    When you restart the migration process, the compatibility reports are also re-generated for the latest data.

  4. The migration utility loads the PDC components into the target PDC database.

  5. The migration utility generates the migration report with information about the PDC objects that were successfully migrated to the PDC database.

For more information about the migration utility reports, see "About Migration Reports".

Figure 88-3 shows the data migration phase for migrating PDC data to PDC with ECE:

Figure 88-3 Data Migration Phase for Migrating PDC Data to PDC With ECE

Description of Figure 88-3 follows
Description of "Figure 88-3 Data Migration Phase for Migrating PDC Data to PDC With ECE"

For more information on setting up and migrating the PDC pricing data to PDC with ECE, see "Performing Migration of PDC Pricing Data to PDC With ECE".

Performing Migration of PDC Pricing Data to PDC With ECE

To set up and migrate the PDC pricing data to PDC with ECE:

  1. Create a backup of the PDC production database.

    See "Creating a BackUp of Your BRM Database".

  2. Setup the PDC development system to run the initial migration of the pricing data.

    See "Setting Up the BRM Development System" for more information.

  3. Migrate the PDC configuration and pricing objects.

    See "Migrating the PDC Pricing Data to PDC With ECE" for more information.

  4. Restart the PDC and ECE systems.

    See "Restarting the Systems".

  5. Test the migrated PDC data.

    See "Testing the Migrated Data".

  6. Import the migrated data to the PDC production systems.

    See "Importing the Migrated Data to the Production Systems".

Creating a BackUp of Your PDC Database

Oracle recommends that you perform a full backup of your PDC production database prior to running the migration.

Performing a full backup allows you to restore your production database to its original state in the event of any data corruption or data loss. Back up both the database definition and all the database contents.

Use the backup to restore the database on a test system to ensure the backup is valid.

See your database software documentation for more information on performing full database backups.

Setting Up the PDC Development System

Setting up the PDC development system includes installing a PDC system.

Perform the following tasks to set up the PDC development system:

  1. Review the system requirements for installing the PDC system.

    See "Pricing Design Center System Requirements" in PDC Installation Guide.

  2. Perform the following pre-installation tasks for PDC:

    • Installing and configuring the Oracle Database

    • Installing and configuring Oracle WebLogic Server

    • Installing and configuring BRM

    See "Pricing Design Center Pre-Installation Tasks" in PDC Installation Guide.

  3. Install the complete PDC software.

    Note:

    Before you install PDC, ensure that the PDC database does not have any existing pricing data.

    When you install BRM Integration Pack, ensure that you select the Migrate PDC Pricing Data to PDC with ECE option.

    See "Installing Pricing Design Center Software" in PDC Installation Guide.

  4. Copy the configuration objects from the BRM database to the development system by using BRM load utilities. See the discussion about the type of configuration objects (setup components in PDC) that are managed in BRM and their corresponding load utilities in PDC Creating Product Offerings.

  5. Copy the PDC pricing data from the production database to the development system.

    You can copy the PDC pricing data in one of two ways:

    • Use the ImportExportPricing utility to export the pricing data from your PDC production database and load it into the PDC development database.

      See the discussion about the ImportExportPricing utility in PDC Creating Product Offerings for more information.

    • Restore the database from the BRM database backup.

      See your database software documentation for more information about database restore.

  6. Ensure BRM_Integration_Pack_Home/apps/bin is in your PATH environment variable, where BRM_Integration_Pack_Home is the directory in which you installed BRM Integration Pack.

  7. (Optional) Configure the MigrateBRMPricing utility. See "Configuring the Migration Utility for PDC with ECE" for more information.

  8. Ensure all users of the migration utility are added to the Migration Admin group.

    The users of the migration utility must belong to the Migration Admin group, which is created during the PDC installation. You can add additional users to this group by using the WebLogic Administration Console.

  9. Obtain the Java Keystore password.

Migrating the PDC Pricing Data to PDC With ECE

When you migrate pricing data from the source PDC database to the target PDC database, you must migrate the configuration objects and then migrate the pricing objects.

To migrate the pricing data from the source PDC database to the target PDC database:

  1. Migrate the configuration objects. See "Migrating BRM Configuration Objects".

  2. Migrate the pricing objects. See "Migrating BRM Pricing Objects".

Migrating PDC Configuration Objects

To migrate the configuration objects:

  1. Ensure that the BRM and PDC databases are running.

  2. Go to the BRM_Integration_Pack_Home/apps/migration directory.

  3. Run the following command, which starts the data migration phase:

    MigrateBRMPricing -config
    
  4. Enter the BRM Integration Pack wallet password when prompted.

  5. Review the configuration compatibility report and fix any data configuration errors that are reported (see "Fixing Errors Found in the Migration Phase").

  6. In step 5, if you made changes to the data in the BRM database, run the following command, which restarts the data migration phase:

    MigrateBRMPricing -resume
    
  7. Repeat steps 5 and 6 until there are no errors in the configuration compatibility report.

  8. Review the migration report and verify that all the configuration objects were migrated to the target PDC system successfully.

  9. Using the target PDC application, verify that you are able to view, create, and modify configuration objects without any errors.

Migrating PDC Pricing Objects

To migrate PDC pricing objects, do one of the following:

Migrating All PDC Pricing Objects

To migrate all pricing objects:

  1. In the target PDC application, ensure that the configuration objects are available.

  2. Ensure that the BRM and PDC databases are running.

  3. Go to the BRM_Integration_Pack_Home/apps/migration directory.

  4. Run the following command, which starts the data migration phase for all pricing objects:

    MigrateBRMPricing -pricing
  5. Enter the BRM Integration Pack wallet password when prompted.

  6. Review the pricing compatibility reports (product, discount, sponsorship and subscription analysis reports) and fix any data configuration errors that are reported. If you encounter any critical errors while migrating pricing objects from BRM to PDC, run the MigrateBRMPricing utility with -skip parameter to skip critical errors and continue the migration process (see "Fixing Errors Found in the Migration Phase").

    Note:

    You can use the -skip parameter only if you are migrating BRM pricing objects to PDC with ECE.

    Critical errors encountered due to configuration objects cannot be skipped by using the -skip parameter. You need to manually fix the errors and then restart the migration process.

  7. Do one of the following:

    • If you fixed any configuration object errors reported in the pricing compatibility reports, restart the complete migration process. See "Migrating Pricing Data to PDC With ECE".

    • If you fixed only pricing objects errors reported in the pricing compatibility reports, restart the pricing data migration phase by running the following command:

      MigrateBRMPricing -restart -pricing
  8. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  9. Repeat steps 6 to 8 until there are no errors in the pricing compatibility reports.

    Note:

    MigrateBRMPricing does not proceed with the migration of the pricing objects to the target PDC database if there are any critical or user input errors in the pricing compatibility reports.

  10. Review the migration report and verify that all pricing objects were migrated to the target PDC system successfully.

  11. Make corrections to data in the target PDC system, if needed. See "Changes Required After Migration".

  12. Using the target PDC application, verify that you are able to create and modify pricing objects without any errors.

Migrating PDC Pricing Objects by Category

When you migrate pricing objects by category, the migration of all the objects in each category must be completed before starting the next.

To migrate pricing objects by category:

  1. In the target PDC application, ensure that the configuration objects are available.

  2. Ensure that the BRM and PDC databases are running.

  3. Go to the BRM_Integration_Pack_Home/apps/migration directory.

  4. Run the following command, which starts the data analysis phase for products and all objects referenced by a product:

    MigrateBRMPricing -product
  5. Enter the BRM Integration Pack wallet password when prompted.

  6. Review the product compatibility report and fix any data configuration errors that are reported (see "Fixing Errors Found in the Migration Phase").

  7. Do one of the following:

    • If you fixed any configuration object errors reported in the product compatibility report, restart the complete migration process. See "Migrating Pricing Data to PDC With ECE".

    • If you fixed only pricing objects errors reported in the product compatibility report, restart the data migration phase for products by running the following command:

      MigrateBRMPricing -restart -product
    • If you encounter any critical errors while migrating pricing objects from BRM to PDC, run the MigrateBRMPricing utility with -skip parameter to skip critical errors and continue the migration process. See "Skipping Errors and Continue Pricing Objects Migration".

  8. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  9. Repeat steps 6 to 8 until there are no errors in the product compatibility report.

    Note:

    MigrateBRMPricing does not proceed with the migration of the pricing objects to the target PDC database if there are any critical or user input errors in the compatibility reports.

  10. Review the migration report and verify that the products and objects referenced by a product were migrated to the target PDC system successfully.

  11. Make corrections to the target PDC data, if needed. See "Changes Required After Migration".

  12. Using the target PDC application, verify that you are able to create and modify products without any errors.

  13. Run the following command, which starts the data migration phase for discounts and all objects referenced by a discount:

    MigrateBRMPricing -discount
  14. Enter the BRM Integration Pack wallet password when prompted.

  15. Review the discount compatibility report and fix any data configuration errors that are reported.

  16. Do one of the following:

    • If you fixed any configuration object errors reported in the discount compatibility report, restart the complete migration process. See "Migrating Pricing Data to PDC With ECE".

    • If you fixed only pricing objects errors reported in the discount compatibility report, restart the data migration phase for discounts by running the following command:

      MigrateBRMPricing -restart -discount
  17. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  18. Repeat steps 15 to 17 until there are no errors in the discount compatibility report.

  19. Review the migration report and verify that the discounts and all objects referenced by a discount were migrated to the target PDC system successfully.

  20. Make corrections to data in the target PDC system, if needed. See "Changes Required After Migration".

  21. Using the target PDC application, verify that you are able to create and modify discounts without any errors.

  22. Run the following command, which starts the data migration phase for chargeshares and all objects referenced by a chargeshare:

    MigrateBRMPricing -sponsorship
  23. Enter the BRM Integration Pack wallet password when prompted.

  24. Review the sponsorship analysis report and fix any data configuration errors that are reported.

  25. Do one of the following:

    • If you fixed any configuration object errors reported in the sponsorship compatibility report, restart the complete migration process. See "Migrating Pricing Data to PDC With ECE".

    • If you fixed only pricing objects errors reported in the sponsorship compatibility report, restart the data migration phase for chargeshares by running the following command:

      MigrateBRMPricing -restart -sponsorship
  26. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  27. Repeat steps 24 to 26 until there are no errors in the sponsorship analysis report.

  28. Review the migration report and verify that the chargeshares and all objects referenced by a chargeshare were migrated to the target PDC system successfully.

  29. Make corrections to data in the target PDC system, if needed. See "Changes Required After Migration".

  30. Run the following command, which starts the data migration phase for subscription objects:

    MigrateBRMPricing -subscription
  31. Enter the BRM Integration Pack wallet password when prompted.

  32. Review the subscription compatibility report and fix any data configuration errors that are reported.

  33. Do one of the following:

    • If you fixed any configuration object errors reported in the subscription compatibility report, restart the complete migration process. See "Migrating Pricing Data to PDC With ECE".

    • If you fixed only pricing objects errors reported in the subscription compatibility report, restart the data migration phase for subscriptions by running the following command:

      MigrateBRMPricing -restart -subscription
  34. Restart the ECE server. See "Starting and Stopping ECE" in BRM System Administrator's Guide.

  35. Repeat steps 32 to 34 until there are no errors in the subscription analysis report.

  36. Review the migration report and verify that all subscription objects were migrated to the target PDC system successfully.

  37. Make corrections to data in the target PDC system, if needed. See "Changes Required After Migration".

  38. Using the target PDC application, verify that you are able to create and modify subscription objects without any errors.

Fixing Errors Found in the Analysis Phase

The following sections describe how to provide required input data and how to fix some of the common critical errors reported in the migration analysis reports. The migration analysis report lists the data configurations that are not supported in PDC.

Fixing Analysis "User Input Required" Errors

The migration utility may require you to provide additional information prior to migrating resources and discount and chargeshare configurations from the BRM database to the PDC database. The analysis reports list these objects marked as User Input Required with a description of the information that is required. You provide the input in an XML file.

To provide the input:

  1. Make a copy of the predefined XML templates in the BRM_Integration_Pack_Home/apps/xml directory in the BRM_Integration_Pack_Home/apps/xml/userinput directory, where BRM_Integration_Pack_Home is the directory in which the PDC software is installed.

  2. Update the XML file content with the required information.

  3. Ensure that the XML input file conforms to the XML schema definition in the BRM_Integration_Pack_Home/apps/xsd directory.

See the following topics for more information:

Identifying Resource ID for Noncurrency Resources Used in Batch Rating

If you have a noncurrency resource that is used in batch rating, you need to map the resource name to the resource ID defined in the BRM server so that the resource can be mapped to the BEID definition.

The following example shows the XML that you would provide to map the resource LOYALTY to resource ID 1000019:

<?xml version="1.0" encoding="UTF-8" ?> 
<Resource>
<BalanceElement type="0">
      <BREResourceName>LOYALTY</BREResourceName> 
      <BEIDCode>LOY</BEIDCode> 
      <ResId>1000019</ResId> 
</BalanceElement>
</Resource>
Providing Values List for Expressions in Discount and Chargeshare Configurations

If you use an expression as a filter criteria in the discount and chargeshare detail, you need to list the values in the expression individually.

Example 1

If you use the expression Peak* with Peak1, Peak2, and Peak3 for time model and 21* with 2155557 and 2155558 for resource Id in the discount detail, you need to provide these values individually. Following is an example of the XML file that you would provide:

<Filters xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       
xsi:noNamespaceSchemaLocation="\oracle\communications\brm\pdc\migration\pricing\impl\bre\userinputxml\BreFilter_UserInput.xsd">
<Filter master="M1" rank="1">
<TimeModel>
      <name>Peak1</name>
      <name>Peak2</name>
      <name>Peak3</name>
</TimeModel>
<ResID>
      <id>2155557</id>
      <id>2155558</id>
</ResID>
</Filter>
</Filters>

Alternatively, you can correct the expression in the discount detail itself. If you change the discount detail configuration, you need to restart the migration utility.

Example 2

If you specify an expression in the rate plan field, such as !(Rate1|Rate2|Rate3), you need to provide the XML that specifies the rate plans that should apply rather than those that should be excluded. This is because the NOT operator is not supported in PDC.

Analysis Errors Requiring Pricing Data Changes

The following are some common BRM configurations that require manual changes prior to migrating the data to the PDC data model. These configurations are listed in the migration analysis reports and the report also specifies exactly where the issues reside in your data. They are listed here for your reference and to provide more details on how to resolve them.

The following changes are required prior to migration:

Multiple Impact Categories in a Rate Plan

In PDC, the balance impact in charge does not contain impact categories. If you migrate a BRM rate plan selector with multiple rules which result in the same rate plan but with different impact categories, the migration utility reports an error. If you migrate a rate plan selector with multiple rules that result in the same rate plan with the same impact category, this rate plan selector is migrated as long as the impact category is specified in the rateplan.

Recommended Action

For the rate plan selector which has multiple rules that result in the same rate plan with different impact categories, create a separate rate plan for each impact category. In each newly created rate plan, inspect the rate objects and remove any balance impacts that specify impact categories not applicable to that rate plan.

Example 1

Table 88-2 shows a rate plan selector with multiple rules that result in the same rate plan (rate plan A) with different impact categories:

Table 88-2 Rate Plan Selector

Rule Rule Expression Rate Plan Impact Category Used in Rate Plan Selector

Rule 1

Attribute values

Rate plan A

IC1

Rule 2

Attribute values

Rate plan A

IC2

Rule 3

Attribute values

Rate plan A

*

Rule 4

Attribute values

Rate plan A

default

Table 88-3 shows the rate objects in rate plan A.

Table 88-3 Rate Plan A

Rate Object Impact Category Used in Rate Object Balance Impact

Rate Object 1

IC1

$1.00

Rate Object 1

IC2

$2.00

Rate Object 1

*

$5.00

Rate Object 1

default

$0.50

Rate Object 2

IC1

$1.50

Rate Object 2

*

$6.00

Rate Object 3

IC1

$1.75

Rate Object 3

default

$0.50

Rate Object 4

default

$0.50

Solution

Make the changes shown in Table 88-4 to the rate objects:

Table 88-4 Rate Plan Selector

Rule Rule Expression Rate Plan Impact Category Used in Rate Plan Selector

Rule 1

Attribute values

Rateplan A_IC1

IC1

Rule 2

Attribute values

Rateplan A_IC2

IC2

Rule 3

Attribute values

Rateplan A_*

*

Rule 4

Attribute values

Rateplan A_default

default

Table 88-5 shows the rate objects in rate plan A_IC1.

Table 88-5 Rate Plan A_IC1

Rate Object Impact Category Used in Rate Object Balance Impact

Rate Object 1

IC1

$1.00

Rate Object 1

IC1 (previously *)

$5.00

Rate Object 2

IC1

$1.50

Rate Object 2

IC1 (previously *)

$5.00

Rate Object 3

IC1

$0.50

Rate Object 4

IC1 (previously default)

$1.00

Table 88-6 shows the rate objects in rate plan A_IC2.

Table 88-6 Rate Plan A_IC2

Rate Object Impact Category Used in Rate Object Balance Impact

Rate Object 1

IC2

$2.00

Rate Object 1

IC2 (previously *)

$5.00

Rate Object 2

IC2 (previously *)

$6.00

Rate Object 3

IC2 (previously default)

$0.50

Rate Object 4

IC2 (previously default)

$1.00

Table 88-7 shows the rate objects in rate plan A_IC3.

Table 88-7 Rate Plan A_IC3

Rate Object Impact Category Used in Rate Object Balance Impact

Rate Object 1

*

$5.00

Rate Object 2

*

$6.00

Rate Object 3

* (previously default)

$0.50

Rate Object 4

* (previously default)

$0.50

Table 88-8 shows the rate objects in rate plan A_default.

Table 88-8 Rate Plan A_Default

Rate Object Impact Category Used in Rate Object Balance Impact

Rate Object 1

default

$0.50

Rate Object 1

default (previously *)

$5.00

Rate Object 2

default (previously *)

$6.00

Rate Object 3

default

$0.50

Rate Object 4

default

$0.50

Derived Impact Category Used in Zone Model

Impact categories defined for zoning can be flagged as derived, which means that they can only be used in USC and APN selectors. BRM allows derived impact categories to be used in a zone model, but PDC does not. If you migrate a BRM zone model with an impact category of type derived, the migration utility reports an error.

Recommended Action

If a derived impact category is used in a zone model, change the type from 1 (derived) to 0.

Example

The impact category, Brazil, which is associated with the zone item, San Jose to Brazil, is defined as derived and is used in a zone model.

Solution

Update the IFW_IMPACT_CAT table using the following SQL statement:

UPDATE IFW_IMPACT_CAT SET TYPE=0 WHERE Impact_Category LIKE 'Brazil';
Zone Items Differentiated Only by Service Code

In PDC, a zone item in a zone model does not specify a service code. In BRM, if two zone items in a zone model differ by only the service code, then the migrated zone items gives a unique constraint error in PDC because they will be identical.

Recommended Action

Modify the zone items that differ only by service code to make them unique or remove the duplicate item.

Example

Origin Destination Valid From Service Zone Impact Category

123

456

1999-01-01

SMS1

IC1

123

456

1999-01-01

SMS2

IC2

Solution

Modify the ValidFrom field in the IFW_STANDARD_ZONE table to a unique value (for example, 02-JAN-99 in the above example), to make the combination unique without using the service code.

Extended Service Class Event Mapping

In PDC, an extended service class does not inherit the event mapping of the parent class, and all events to be used with the extended service class must be explicitly mapped. In BRM, an extended service class inherits the event mapping of the parent class. If you migrate a BRM pricing object with a service-event combination that is not available in the service-event mapping, the migration utility reports an error.

Recommended Action

Ensure that all extended service classes have mappings for all the events used in pricing objects that reference them.

Example

The service-event map (pin_event_map file) contains these mappings:

/service/ip       :/event/session   ...
                  :/event/session/dialup ...
/service/ip/gprs  :/event/session/gprs/master
                  :/event/session/gprs/subsession ...

A product exists that applies to /service/ip/gprs and /event/session. The migration utility reports an error because /event/session is not mapped to /service/ip/gprs.

Solution

Map /service/ip/gprs to /event/session.

/service/ip       :/event/session   ...
                  :/event/session/dialup ...
/service/ip/gprs  :/event/session/gprs/master
                  :/event/session/gprs/subsession ...
                  :/event/session
Service Contains Deal Mapped to Parent Service

In BRM, Pricing Center allows to add a service to a plan and to add a deal to that service which applies to a parent class of the service. PDC does not allow this configuration, and the migration utility reports an error if such a plan is migrated.

Recommended Action

Change the service in the plan to match the service referenced in the deal.

Example

Plan A applies to /service/telco/gsm/voice and contains:

  • Deal 1, which applies to /service/telco.

  • Deal 2, which applies to /service/telco/gsm.

Solution

The plan should be changed to have the following service/deal combination:

  • /service/telco

    • Deal 1

  • /service/telco/gsm

    • Deal 2

Using Overlapping Date Ranges to Sequentially Impact Multiple Resources

PDC does not support BRM rate plans with more than one date tier with overlapping date ranges. This type of configuration is typically used to first consume an included balance, such as Anytime Minutes and after the balance is exhausted, to charge for the remaining usage.

Recommended Action

Re-configure the product to contain only a usage charge and configure a discount to credit the charge and debit the available balance.

Example

A rate plan for voice calls has two date tiers:

  • Consume Minutes, with a validity period that starts immediately and never ends.

  • Charges for call, with a validity period that starts immediately and never ends.

Solution

Re-configure the product by doing the following:

  1. Create a discount based on the user scenario for consumption.

  2. Remove the consumption tier from the product.

  3. Do one of the following:

    • Create a new deal and add the discount created in step 1.

    • Add the discount created in step 1 to the existing deal and cancel the existing deal for the subscriber.

  4. Purchase the new or modified deal in BRM.

Quantity Brackets in a Fold

PDC requires the basis for quantity brackets in a fold to be specified as Resource Balance and the resource to be a noncurrency resource. If you migrate a BRM fold which has basis for quantity bracket configured with anything other than Resource Balance or the resource is a currency resource, the migration utility reports an error.

Recommended Action

Correct the fold configuration to use Resource Balance as the basis for quantity brackets and specify a noncurrency resource.

Examples

  • The basis for quantity discount bracket is Continuous or Rate Dependent.

  • The basis is Resource Balance but the resource is a currency resource.

Solution

Review the business scenario and ensure that your fold configuration is implemented correctly. You can only fold a noncurrency resource and the basis for quantity brackets in a fold must be Resource Balance.

BRM Object Names Containing Special Characters

PDC does not support the character "=" in a pricing object name. The migration utility reports an error if such objects are migrated.

Recommended Action

Change the pricing object name to not contain the "=" character.

Custom Fields

The migration utility is not aware of any custom fields that you may have created in the BRM database.

For example, the migration utility reports the following error while converting the event storable class to XML if the event storable class has custom fields:

SEVERE: Error while run migration!
oracle.communications.brm.pdc.migration.MigrationException: Got a non zero exit status from the command: 
/home/pin/7.5/bin/storableclasstoxml -r /home/pin/opt/oracle/11.2.0.3/apps/migration/xml/extract/Event.xml -o /event/*. Check if the BRM is up and running.

Recommended Action

Make custom fields available to applications. Refer to the discussion about making custom fields available to your applications for Java application in BRM Developer's Guide.

Note:

After creating the JAR file, restart the Connection Manager (CM) before running the migration utility.

Fixing Errors Found in the Migration Phase

During the data migration phase, the PDC data is validated against pricing features supported in ECE. The compatibility reports contain lists of errors that need to be fixed prior to completing the migration. The following sections describe how to provide user input and how to fix the most common critical errors in the compatibility reports.

Skipping Errors and Continue Pricing Objects Migration

When you encounter any critical errors while migrating pricing objects from BRM to PDC, run the MigrateBRMPricing utility with -skip parameter to skip critical errors and continue the migration process

Typically, the migration process stops if critical errors are encountered. For pricing objects, you can run the MigrateBRMPricing utility with the -skip parameter to skip the critical errors encountered and continue the migration process. You can use the -skip parameter with -pricing, -product, -discount, and -sponsorship parameters. For example:

MigrateBRMPricing -product -skip

When you run the MigrateBRMPricing utility with -skip parameter, you are warned to ensure that you would want to skip objects and continue migration with errors. If you enter Y (yes), you are prompted to enter the encrypted password for the migration cross-reference database and the migration process is started after you provide the password. If you enter N (no), the migration process stops.

Running the MigrateBRMPricing utility with the -skip parameter:

  1. Skips the following objects if there are critical errors encountered for these objects during the migration analysis phase: price selectors, Access Point Name (APN) selectors, price models, time models, usage scenario (USC) selectors, discount selectors, discount filters, and discount triggers.

  2. Creates dummy objects for the following pricing objects while migrating the data: charges, discounts, discount selectors, charge selectors, and chargeshares.

You can find the dummy objects in the XML files in the BRM_Integration_Pack_Home/apps/migration/xml/pdc directory. After you complete the migration, you can search for the dummy objects in the PDC UI and fix the values.

Note:

Dummy objects for charges and discounts are created with the pricing as 0 (zero) and the description as MIGRATION_DUMMY_OBJ.

For more information, see "MigrateBRMPricing".

Fixing Compatibility "User Input Required" Errors

The migration utility may require you to provide additional information prior to migrating configurations to the PDC database. The analysis reports list these objects marked as User Input Required with a description of the information that is required. You provide the input in an XML file.

To provide the input:

  1. Make a copy of the predefined XML templates in the BRM_Integration_Pack_Home/apps/xml directory in the BRM_Integration_Pack_Home/apps/xml/userinput directory, where BRM_Integration_Pack_Home is the directory in which the PDC software is installed.

  2. Update the XML file content with the required information.

  3. Ensure that the XML input file conforms to the XML schema definition in the BRM_Integration_Pack_Home/apps/xsd directory.

See the following topics for more information:

Identifying Taxcode for the General Ledger ID Used in Offline Charging

In PDC, general ledger IDs are mandatory in charge offers and charge selectors with the Offline Usage pricing profile. Each general ledger ID must be mapped to a tax code. ECE uses this mapping for offline charging. If you are migrating a charge offer or charge selector with the Offline Usage pricing profile, provide the XML file with the general ledger ID and tax code mapping as user input for migration.

Sample General Ledger ID and Taxcode Mapping XML File

If the general ledger IDs are 1031 and 1045 and the tax codes are NORM and TAX, the following is the XML that you would provide to map 1031 to NORM and 1045 to TAX:

<?xml version="1.0" encoding="UTF-8" ?>
<glidtaxcodemap>
  <glid value=1031>
    <taxcode>NORM</taxcode>
  </glid>
  <glid value=1045>
    <taxcode>TAX</taxcode>
  </glid>
</glidtaxcodemap>
Mapping Batch Rating Engine Fields Used in Selectors to Corresponding ECE Fields

If you are migrating the batch rating engine pricing data to the PDC system that supports ECE, do the following:

  1. Verify the source fields in the BRM_Integration_Pack_Home/apps/xml/userinput/selectors field mapping XML file (for example, SelectorsFieldMappingUI.xml).

  2. Add or modify entries to map the fields from the batch rating engine container to the corresponding ECE fields.

Sample Selectors Field Mapping XML File

The following is an example of the XML file that you would provide to map batch rating engine fields to corresponding ECE fields:

<?xml version="1.0" encoding="UTF-8" ?> 
<FieldNameMappings>
   <FieldNameMap>
      <SourceField>AnyEvent.ACCESS_POINT_NAME</SourceField>
      <TargetField>AnyEvent.ACCESS_POINT_NAME</TargetField>
      <FieldType>EventAttributeSpec</FieldType>
    </FieldNameMap>
   <FieldNameMap>
      <SourceField>EventDelayedSessionTelcoGsm.A_NUMBER</SourceField>
      <TargetField>EventDelayedSessionTelcoGsm.USER_IDENTITY</TargetField>
      <FieldType>EventAttributeSpec</FieldType>
   </FieldNameMap>
   <FieldNameMap>
      <SourceField>AnyEvent.SERVICE_CLASS</SourceField>
      <TargetField>AnyEvent.SERVICE_CLASS</TargetField>
      <FieldType>EventAttributeSpec</FieldType>
   </FieldNameMap>
   <FieldNameMap>
      <SourceField>AnyEvent.USAGE_CLASS</SourceField>
      <TargetField>AnyEvent.USAGE_CLASS</TargetField>
      <FieldType>EventAttributeSpec</FieldType>
   </FieldNameMap>
   <FieldNameMap>
      <SourceField>AnyEvent.RETAIL_ZONE</SourceField>
      <TargetField>AnyEvent.RETAIL_ZONE</TargetField>
       <FieldType>EventAttributeSpec</FieldType>
   </FieldNameMap>
   <FieldNameMap>
      <SourceField>AnyEvent.SERVICE_CODE</SourceField>
      <TargetField>AnyEvent.SERVICE_CODE</TargetField>
      <FieldType>EventAttributeSpec</FieldType>
   </FieldNameMap>
   <FieldNameMap>
      <SourceField>EventDelayedSessionTelcoGsm.B_NUMBER</SourceField>
      <TargetField>EventDelayedSessionTelcoGsm.CALLED_ID</TargetField>
      <FieldType>EventAttributeSpec</FieldType>
</FieldNameMappings>
Mapping Custom Rules To Usage Types in Selectors

You need to map a custom rule to each usage type used in selectors.

To map the custom rule, you need to specify the custom rule as the target field in the selectors field mapping XML file. You can map the ready-to-use custom rules in the PDC_Home/apps/Samples/Examples/OOB_CRs.xml file (where PDC_Home is the directory in which the PDC software is installed) to the ready-to-use extended rating attributes (ERAs). If the custom rule uses a profile attribute specification, provide the profile attribute specification in the profile attribute specifications XML file (for example, ProfileAttrSpec.xml) as user input.

Sample Selectors Field Mapping XML File

The following is an example of the XML file that you would provide to map the Usage Type fields with the Custom Rule fields:

<?xml version="1.0" encoding="UTF-8" ?> 
<FieldNameMappings>
   <FieldNameMap>
      <SourceField>AnyEvent.USAGE_TYPE</SourceField>
      <TargetField>Closed User Group Rule</TargetField>
      <FieldType>UsageTypeField.CUG</FieldType>
   </FieldNameMap>
   <FieldNameMap>
      <SourceField>AnyEvent.USAGE_TYPE</SourceField>
      <TargetField>Family Rule</TargetField>
      <FieldType>UsageTypeField.FF</FieldType>
   </FieldNameMap>
</FieldNameMappings>
Identifying ECE Fields for RUM Fields in BRM

If you are migrating the batch rating engine pricing data to the PDC system that supports ECE, do the following:

  1. Verify the fieldname values in the BRM_Integration_Pack_Home/apps/xml/userinput/service-event mapping XML file (for example, BccServiceEventMapUserInput.xml).

  2. Specify the corresponding ECE field name for the RUM fields from the batch rating engine container.

Sample Service-Event Mapping XML File

The following is an example of the service-event mapping XML file that you would provide to use for the TelcoGsmTelephony service and EventDelayedSessionTelcoGsm event combination in ECE:

<?xml version="1.0" encoding="UTF-8" ?> 
<attributeSpecMaps>
  <name>TelcoGsmData_ASM</name>
  <internalId>b8358331-f2ba-45c0-9d52-2efff62ca056</internalId>
  <priceListName>Default</priceListName>
  <eventRUMSpec>
    <name>EventDelayedSessionTelcoGsm_ERS</name>
    <priceListName>Default</priceListName>
    <eventSpecName>EventDelayedSessionTelcoGsm</eventSpecName>
    <rumSpec>
      <rumExpression>
         <eventFieldExpression>
             <fieldName>EventDelayedSessionTelcoGsm.DURATION</fieldName>
         </eventFieldExpression>
      </rumExpression>
      <rumName>Duration_batch</rumName>
    </rumSpec>
    <rumSpec>
      <rumExpression>
        <eventFieldExpression>
          <fieldName>EventDelayedSessionTelcoGsm.WHOLESALE_AMOUNT</fieldName>
        </eventFieldExpression>
      </rumExpression>
      <rumName>Passthrough</rumName>
    </rumSpec>
  </eventRUMSpec>
  <productSpecName>TelcoGsmData</productSpecName>
</attributeSpecMaps>

Compatibility Errors Requiring Pricing Data Changes

The following are some common PDC configurations that require manual changes prior to migrating the data to the PDC system that supports ECE. These configurations are listed in the migration compatibility reports and the report also specifies exactly where the issues reside in your data. They are listed here for your reference and to provide more details on how to resolve them.

The following changes are required prior to migration:

Events Split across Time Periods

ECE supports only the Continuous splitting option for rating events that crosses multiple time periods. If you migrate a rate plan or charge with any other splitting option, the migration utility reports an error.

Recommended Action

When you migrate a PDC charge, ensure that the Quantity used to select steps field in the Advance section is set to Dependent On in the PDC UI or the Applicable Quantity Treatment element is set to Continuous in the XML file generated by the migration utility.

Quantity Ranges With Negative Values

ECE does not support quantity ranges with negative values. The migration utility reports an error if such values are migrated.

Recommended Action

When you migrate a PDC charge, or a discount, ensure that quantity ranges contain positive numbers.

Changes Required After Migration

The following changes are required after migration:

Rate Plan Selector with Multiple RUMs

In PDC, pricing using multiple RUMs is implemented with a single charge that contains separate charge trees for each RUM. In BRM, pricing using multiple RUMs is implemented with separate rate plans or rate plan selectors for each RUM.

For BRM rate plan selectors with multiple RUMs, the migration utility does not do a complete migration of the rate plan selectors. The rate plan selector is migrated to one charge selector with one rule mapped to a single charge and the charge will contain multiple charge trees, one for each RUM.

Recommended Action

After migration, re-configure the charge selector in PDC by defining rules where each rule results in a charge that contains a charge tree for each RUM.

Rate Plan Selector with Zone Models

In BRM, you can create rate plan selectors with zone models. But, ECE supports rate plan selectors only with value maps. Therefore, the migration utility does not migrate the zone model values in the rate plan selectors.

Recommended Action

After migration, add the zone model values for each charge and re-configure the charge selector in PDC by updating the rules.

Noncurrency Resources Used as Counters

When configuring a credit balance impact in PDC, only positive values are accepted in the PDC UI and the value is stored as a negative value, which is the convention for credits. Therefore, the value in the PDC UI has a different sign from the corresponding value in the database.

In Pricing Center, when a noncurrency balance element is impacted with a positive value, as in a counter, it is migrated as follows:

  • If the Grantable flag is not checked in the balance impact, it is migrated to a debit in PDC.

  • If the Grantable flag is checked, it is migrated to a credit with a positive value in PDC. Because PDC reverses the sign of a credit amount, the migrated credit is initially displayed as a negative value, but when Save is clicked, the negative sign is removed, because negative values are not accepted in the UI. Consequently, the value in the database becomes a negative value. This changes the initial configuration and would likely result in pricing errors.

Recommended Action After migration, change the balance element to a counter. If the balance element is tagged as a counter, the database value is not changed and PDC displays this balance impact as an increase of the counter using the actual amount stored in the database.

Example

Given the following balance impact in Pricing Center:

Impact: "Dollars Spent"
Impact: "Dollars Spent"
Id: 1500001 
Amount: 0.40 per minute
Grantable: Yes

After migration, the balance impact in PDC is:

Credit: "Dollars Spent"
Id: 1500001 
Amount: 0.40 per minute

Without changing the balance element to a counter, if this balance impact is displayed in PDC and saved, it is stored as:

Credit: "Dollars Spent"
Amount: -0.40 per minute
Id: 1500001 

After changing the balance element to be a counter, if this balance impact is displayed in PDC, it is displayed and saved as:

Increase: "Dollars Spent"
Id: 1500001 
Amount: 0.40 per minute

Solution:

Update the BalanceElement table using the following SQL statement.

UPDATE BalanceElement 
SET Counter=1 
WHERE NumericCode=1500001;

BRM Rate Plans with Multiple Currencies

In BRM, a product can have multiple real-time rate plans, one rate plan per currency or one pipeline rate plan with multiple currencies. These product configurations are migrated in different ways.

BRM Real-Time Rate Plans

If you migrate a BRM product with multiple real-time rate plans per currency, it is migrated as one charge offer with one charge that has multiple branches, one for each currency charge. This is not displayed in the PDC application.

Recommended Action

After migration, if you want to change a price in the migrated charge offer, you can edit the XML for the charge offer, change prices for the appropriate currencies, and then import the charge offer without viewing it in a changeset in the PDC application. The changeset is stored in PDC and published to BRM.

BRM Pipeline Rate Plans

If you migrate a BRM product with a pipeline rate plan with multiple currencies, it is migrated as one charge offer with one charge that has multiple currencies. The currencies that are not specified for the rate plan are displayed as read-only in the PDC application.

Recommended Action

After migration, if you want, you can edit the charge and remove the currencies which are read-only and create duplicate charge offers with one charge per currency. For more information about configuring pricing for a charge, see the discussion about specifying charge details and configuring pricing in charges in PDC Creating Product Offerings.

Handling Migration Process Errors

Errors during the data migration can occur for various reasons, such as:

  • Database connection problems

  • Permission to write files

  • The XML data does not comply with the XSD

If you encounter these types of errors, look in the migration utility's log file, which is located in the log file directory specified in the BRM_Integration_Pack_Home/apps/migration/MigrateConfiguration.xml configuration file, for the specific details.

Resolving Java Heap Space Error

The migration utility is a Java process that runs on the Java Virtual Machine (JVM). While running the utility, you may receive "java.lang.OutOfMemoryError: Java heap space" error message on the WebLogic Managed Server. This occurs when the JVM runs out of heap space that it uses to run the utility.

The Java heap space size for the migration utility is set to 512 megabytes initial heap space and 4096 megabytes maximum heap space. In most cases, these default settings are sufficient. However, if you receive the Java heap space error, you may want to adjust the heap space sizes by adjusting the JVM parameters -Xms<size> and Xms<size>, where -Xms<size> specifies the initial heap space and -Xmx<size> specifies the maximum heap space.

To set the Java heap space size:

  1. Open the BRM_Integration_Pack_Home/apps/migration/MigrateBRMPricing shell script in a text editor.

  2. Search for the following line:

    ${JAVA_HOME}/bin/java -Xms512m -Xmx4096m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=1024m  -cp ${clp} ${jvmopts} oracle.communications.brm.pdc.migration.Migrator $*
    
  3. Change 512m and 4096m to appropriate heap sizes.

    For example:

    ${JAVA_HOME}/bin/java -Xms768m -Xmx4352m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=1024m -cp ${clp} ${jvmopts} oracle.communications.brm.pdc.migration.Migrator $*
    
  4. Update the Java heap space settings on the WebLogic Server. See the Oracle WebLogic Server documentation for more information.

For more information about Java heap space sizing guidelines, refer to the JVM documentation.

Restarting the Systems

After the migration is complete, restart all the PDC and ECE system components.

Restarting the systems clears the data that is cached in the system memory during the migration.

Testing the Migrated Data

After migration is complete, test the migrated data before moving the data to the production systems.

For example:

  • Using the PDC application, verify that you are able to create and modify pricing and configuration objects without any errors.

  • Generate some usage events in ECE, then perform rating and billing of the events using the pricing data from before the migration and after.

  • Compare the rating and billing results and verify that the results are the same.

Importing the Migrated Data to the Production Systems

After you have successfully completed the migration of the configuration and pricing objects on the development system, you can import the changes to your production system.

Note:

To import changes from the development system to the production system, it is required that the BRM or PDC database on the production system must have exactly the same pricing data configurations as in the BRM or PDC database on the development system prior to the original migration.

To import the data to the production system:

  1. Ensure that the PDC production system is a new installation of PDC. The PDC database cannot have any existing data.

  2. Ensure that the PDC production database contains exactly the same configuration and pricing objects as in the PDC database on the development system prior to the original migration.

  3. Propagate any updates that you made to the PDC data in the development system during the original migration to the PDC production system.

  4. Copy the client.jks from the target PDC production system into the source PDC system.

  5. Update the BRM_Integration_Pack_Home/apps/bin/MigrateBRMPricing file with the keystore information for the target PDC production system where you want to import the changes:

    1. On the PDC development system, copy the BRM_Integration_Pack_Home/apps/bin/MigrateBRMPricing file and rename it Hostname_MigrateBRMPricing, where Hostname identifies the target PDC system.

    2. Edit the Hostname_MigrateBRMPricing file to reference the target production systems:

      1. Search for the jvmopts entry.

      2. Set the -Djavax.net.ssl.trustStore entry to the location of the client.jks file copied from Target server.

      3. Save and close the file.

  6. Copy the BRM Integration Pack wallet from the target PDC production system into the source PDC system.

  7. Update the migration utility's configuration file with the BRM Integration Pack wallet and connection information for the source and target PDC production systems where you want to import the changes:

    1. On the PDC development system,copy the BRM_Integration_Pack_Home/apps/migration/MigrationConfiguration.xml file and rename it Hostname_MigrationConfiguration.xml, where Hostname identifies the target PDC system.

    2. Edit Hostname_MigrateConfiguration.xml to reference the target production systems. See "Configuring the Migration Utility for PDC with ECE" for more information:

      1. Search for walletConfiguration.

      2. Set the pdcWalletLocation entry to the location of the BRM Integration Pack wallet copied from the target PDC production system.

      3. Search for pricingServer.

      4. Edit the connectionInfo entry within the pricingServer element to reference the PDC production system.

      5. Search for the xrefDatabase element.

        <xrefDatabase>
          <connectionInfo>
            <login>CrossRefUserName</login>
            <hostName>CrossRefHostName</hostName>
            <port>CrossRefPort</port>
            <serviceName>CrossRefServiceName</serviceName>
          </connectionInfo>
        </xrefDatabase>
        
      6. Edit the connectionInfo within the xrefDatabase element to reference the PDC transformation database.

      7. Save and close the file.

  8. Run the following command, which starts the import of the changes to the target PDC production system:

    MigrateBRMPricing -retarget -properties Hostname_MigrateConfiguration.xml
    

    If the retarget migration process stops, run the following command, which restarts the process:

    MigrateBRMPricing -retarget -restart -properties Hostname_MigrateConfiguration.xml
    

    When the retarget migration process is complete, a status report is generated in the report directory location specified in the BRM_Integration_Pack_Home/apps/migration/MigrateConfiguration.xml configuration file. The status report file name includes the target PDC system host name and port number. For example, StatusReport_Retarget_hostname_portnumber.html.

  9. Remove the XML files generated during migration (Optionally, you can store them in a secure location if you need them for future use).

    1. On the development system, open the BRM_Integration_Pack_Home/apps/migration/MigrateConfiguration.xml file.

    2. Search for the brmExtractedXML element:

      <brmExtractedXML>BRMExtractedXML</brmExtractedXML>
      
    3. Remove the XML files in the directory location specified by BRMExtractedXML.

    4. Search for the brmXML element:

      <brmXML>BRMDataFile</brmXML>
      
    5. Remove the XML files in the directory location specified by BRMDataFile.

    6. Search for the pdcXML element:

      <pdcXML>PDCDataFile</pdcXML>
      
    7. Remove the XML files in the directory location specified by PDCDataFile.

About Working with the PDC Pricing Data after Migration

After the BRM pricing data has been successfully migrated to PDC, you use the PDC application to modify the pricing data or create new pricing configurations. PDC transforms the data into the BRM pricing data model and then loads the data into the BRM database.

Modifications to the configuration objects which are managed in BRM must be done in BRM and then synchronized with PDC by using SyncPDC utility.

Note:

Ensure that /event/realtimeDiscount does not exist in BRM during migration.

See the discussion about synchronizing setup components in BRM PDC Creating Product Offerings for more information.