Migrating orders from TIBCO Order Management - Long Running 5.0.0 HF2 to TIBCO Order Management 5.1.0

You can migrate the orders from TIBCO Order Management - Long Running 5.0.0 HF2 to TIBCO Order Management 5.1.0 by using any of the following processes.

Prerequisites

  • Order Management - Long Running 5.0.0 HF2 tenant database connection and its Tenant ID (database from where orders are being migrated)
  • Pluggable Cache Connection
  • Archival database Connection
  • JMS Connection (sequenced orders in queue are fetched from JMS)
  • Migration scripts on Order Management - Long Running 5.0.0 HF2 database

    This script is available under 5.1.0 directory at location $OM_HOME/db/database-scripts/migration_LR_5.0.0_To_5.1.0 (This script creates MIGRATED_ORDERS table in Order Management - Long Running 5.0.0 HF2 database, which is used to track the orders that are migrated)

Note:
  • You cannot migrate the orders that are in OPD status. To migrate such orders, ensure that the orders have passed OPD state.
  • When the same order ID is present in both Order Management - Long Running 5.0.0 HF2 and Order Management 5.1.0, the order of the latter gets replaced during migration.
  • Audit trail logs for final state orders are migrated, but audit trail logs for in-progress orders are not seen after migration. If you perform an action on the Order Management 5.1.0 orders, only a log is generated and seen on the UI.
  • Catalog is not migrated. You need to reload models on Order Management 5.1.0.
  • At a time, only orders from one tenant are migrated.

    If you want to migrate orders from multiple tenants, you need to configure that particular user under migration and do the migration for that user.

Online Migration

Procedure

  1. To access Swagger REST API, enter the following endpoint in a browser: http:// localhost:9100/V1/migration/order.
  2. In the request body, pass the various parameters of the orders that you want to migrate.
    Here is a sample JSON file with order parameters:
    {
      "count": 0,
      "criteria": "string",
      "customerID": "string",
      "dateRange": {
        "endDate": "2020-08-20T08:17:02.973Z",
        "startDate": "2020-08-20T08:17:02.973Z"
      },
      "externalBusinessTransactionID": "string",
      "headerUDves": [
        {
          "name": "string",
          "value": "string"
        }
      ],
      "orderId": "string",
      "orderLineUDves": [
        {
          "name": "string",
          "value": "string"
        }
      ],
      "orderRef": "string",
      "orderSummary": true,
      "pagination": {
        "endRecord": 0,
        "startRecord": 0
      },
      "parameters": {
        "params": [
          {
            "key": "string",
            "value": "string"
          }
        ]
      },
      "sortCriteria": {
        "sortFields": [
          {
            "field": "ORDER_ID",
            "orderUDFField": "string",
            "sortBy": "ASC",
            "sortSequence": 0
          }
        ]
      },
      "status": "string",
      "subscriberID": "string"
    }
  3. To migrate only the in-progress orders, in $OM_HOME/roles/configurator/standalone/config/ConfigValues_Migration.xml file, set the value of the com.tibco.offlineMigration.migrateOrderInFinalState flag as FALSE.
  4. To migrate the in-progress orders and the final state (CANCELLED, COMPLETE, WITHDRAW) orders, in the $OM_HOME/roles/configurator/standalone/config/ConfigValues_Migration.xml file, set the value of com.tibco.offlineMigration.migrateOrderInFinalState flag as TRUE.

Result

In-progress orders are migrated to Pluggable Cache and Archival database and final state orders are migrated to the Archival database.

If Order Sequencing is enabled (com.tibco.fom.orch.enableOrderSequencing is set as TRUE), the in-progress sequenced orders are migrated one by one to the Pluggable Cache and Archival with Order Status as Blocked.

Offline Migration

Procedure

  1. In the $OM_HOME/roles/om-migration/standalone/bin directory, open the script migrateOrder.sh (for Linux) or migrateOrder.ps1 (for Windows) with an xml editor.
  2. To determine between which time range orders you want to migrate, modify the StartDate and EndDate values.
    Note: For offline migration, only time range criteria is supported.
  3. Run the migrateOrder.sh script for Linux or migrateOrder.ps1 script for Windows.
    Note: Ensure that the migration server is running before you run the script.
  4. To migrate only the in-progress orders, in $OM_HOME/roles/configurator/standalone/config/ConfigValues_Migration.xml file, set the value of the com.tibco.offlineMigration.migrateOrderInFinalState flag as FALSE.
  5. To migrate the in-progress orders and the final state (CANCELLED, COMPLETE, WITHDRAW) orders, in $OM_HOME/roles/configurator/standalone/config/ConfigValues_Migration.xml file, set the value of the com.tibco.offlineMigration.migrateOrderInFinalState flag as TRUE.

Result

In-progress orders are migrated to Pluggable Cache and Archival database and final state orders are migrated to the Archival database.

If Order Sequencing is enabled (com.tibco.fom.orch.enableOrderSequencing is set as TRUE), the in-progress sequenced orders are migrated one by one to the Pluggable Cache and Archival with Order Status as Blocked.