Configuring Sterling Order Management System Software for Order Hub

Complete this task to get your Sterling Order Management System Software environment ready for Order Hub features on premises.

Procedure

  1. Add or update the following properties:
    1. If you manage properties in files, then include the properties in the customer_overrides.properties file.
    2. If you manage properties in the database, then load the properties into the database. For more information, see Managing properties in the database.
    
    # Order Hub UI
    xapirest.servlet.cors.enabled=true
    xapirest.servlet.cors.allow.credentials=true
    xapirest.servlet.jwt.auth.enabled=true
    yfs.yfs.jwt.oms.verify.keyloader=jkstruststore
    yfs.api.security.token.enabled=Y
    
    # Order Hub Workspace Metrics (Optional)
    yfs.sba.enabled=Y
    yfs.yfs.flow.override.icf=<initialcontextfactory>
    yfs.yfs.flow.override.providerurl=<providerurl>
    yfs.yfs.flow.override.qcf=<qcf>
    yfs.sba.agent.url= <providerurl>
    yfs.sba.agent.qcf=<qcf>
    yfs.sba.agent.icf=<initialcontextfactory>
    yfs.sba.agent.metrics.OU.queue=<OrderUpdateQueue>
    yfs.sba.agent.metrics.OU.threads=4
    yfs.sba.agent.metrics.OU.scheduletrigger=Y
    yfs.sba.agent.metrics.OU.scheduleinterval=1
    yfs.sba.agent.metrics.SU.queue=<ShipmentUpdateQueue>
    yfs.sba.agent.metrics.SU.threads=2
    yfs.sba.agent.metrics.SU.scheduletrigger=Y
    yfs.sba.agent.metrics.SU.scheduleinterval=1
    yfs.sba.agent.metrics.RM.queue=<RemoveProcessedRecordsQueue>
    yfs.sba.agent.metrics.RM.threads=1
    yfs.sba.agent.metrics.RM.scheduletrigger=Y
    yfs.sba.agent.metrics.RM.scheduleinterval=10
    yfs.sba.agent.metrics.RP.queue=<RemoveProcessedRecordsQueue>
    yfs.sba.agent.metrics.RP.threads=1
    yfs.sba.agent.metrics.RP.scheduletrigger=Y
    yfs.sba.agent.metrics.RP.scheduleinterval=1440
    yfs.sba.agent.metrics.NC.queue=<NodeCapacityQueue>
    yfs.sba.agent.metrics.NC.threads=1
    yfs.sba.agent.metrics.NC.scheduletrigger=Y
    yfs.sba.agent.metrics.NC.scheduleinterval=720
    yfs.sba.updatenodecapacity.event.flow=SBA_ResourcePoolChangedOnSuccessSend
    
    # Order Hub Reassign Pending Orders (Optional)
    yfs.yfs.buc.agents.queue=<ReassignPendingOrdersQueue>
    yfs.yfs.buc.agents.providerurl=<providerurl>
    yfs.yfs.buc.agents.qcf=<qcf>
    

    Replace values denoted by brackets <> with the values that correspond to your environment.

    For more information, see Using the customer_overrides.properties file.

  2. Configure JWT authentication.
    1. Locate or create a keystore:
      JWT authentication requires a keystore. You can use an existing keystore, or you can create a new keystore. The keystore must include an alias that matches the value of the yfs.jwt.create.pk.alias property. The default value of the yfs.jwt.create.pk.alias property is oms-default-jwt.
      Note: You can use the following command as reference for development purpose only for generating keystore in Sterling Order Management System Software.
      Create a keystore by running the following command:
      keytool -genkey -keyalg RSA -keysize 2048 -keystore <keystore_name> -validity 365 -storetype JKS 
      -alias <alias_name> -storepass <password> -keypass <password> -dname "CN=oms, OU=oms, O=oms, L=oms, S=oms, C=US"
      Where:
      • -keystore provides the keystore name, for example, key.jks.
      • -alias describes the alias name that is configured as part of JWT properties of Sterling Order Management System Software.
      • -storepass and -keypass provides the password for your keystore.
      For example:
      keytool -genkey -keyalg RSA -keysize 2048 -keystore jwtkeystore.jks -validity 365 -storetype JKS 
      -alias oms-default-jwt -storepass secret4ever -keypass secret4ever -dname "CN=oms, OU=oms, O=oms, L=oms, S=oms, C=US"
    2. Add JVM system startup properties:
      -Dycp.jwt.auth.keyStore=<keystore>
      -Dycp.jwt.auth.keyStorePassword=<password>
      -Dycp.jwt.auth.trustStore=<keystore>
      -Dycp.jwt.auth.trustStorePassword=<password>
      For example:
       -Dycp.jwt.auth.keyStore=/var/oms/keystore/jwtkeystore.jks
      -Dycp.jwt.auth.keyStorePassword=secret4ever 
      -Dycp.jwt.auth.trustStore=/var/oms/keystore/jwtkeystore.jks
      -Dycp.jwt.auth.trustStorePassword=secret4ever 

      For more information, see Security yfs.properties.

  3. Optional: Enable the Reassign Pending Orders feature:
    1. In MQ, create the queue defined in the yfs.yfs.buc.agents.queue property.
    2. The Reassign pending order release feature uses REASSIGN_ORDER_RELEASE.0001 transaction, which requires modification rules to be set for certain order or shipment status. Therefore, you must ensure that the rules are configured correctly. For more information about configuring the modification rules, see REASSIGN_ORDER_RELEASE.0001.
    3. Start the BUCAgentsServer agent server.
  4. Optional: Enable the Order Hub Workspace Metrics feature:
    1. In MQ, create the following queues using the values defined in customer_overrides.properties:
      • Order update processing (OU)
      • Shipment update processing (SU)
      • Removal of processed update records (RM/RP)
      • Node capacity processing (NC)
    2. Start the SBAMetricsServer agent server.
  5. Optional: Configure additional parameters for the Order Hub Workspace Metrics feature:
    • Use the optional parameters to define the status that meet any of the following conditions.
      • Order is created
      • Order is scheduled
      • Order is fulfilled
      • Order is ready for back room pick
    • If you have custom statuses, add the following properties to customer_overrides.properties. The shown values are default values. For more information about configuring statuses, see Configuring statuses that are considered Fulfilled.
      yfs.sba.statuses.order.created=!1100.7777,1100
      yfs.sba.statuses.order.scheduled=1500
      yfs.sba.statuses.order.fulfilled=1100.7777,3700-
      yfs.sba.statuses.shipment.readyforbackroompick=1100.70.06.10
    • When you log into Order Hub, an API is called that automatically subscribes you to any Order Hub order and shipment queues for the enterprises you are entitled to. By default the following parameter is set to Y. If you want to manage the subscriptions manually, then in customer_overrides.properties update the following parameter to N.
      yfs.sba.alerts.queuesubscription=Y