Setting BUCAgentsServer, SBAMetricsServer in the Operator

The BUCAgentsServer agent handles reassignment of pending order releases, while the SBAMetricsServer agent manages SBA metric updates and purge operations. You can set up these Order Hub agents by configuring the appropriate properties in the IBM® Sterling™ Order Management System Software Operator.

  • Configure the Sterling Order Management System Software Operator to run the agents in the required agent profiles, as shown in the following example.
  - agentServer:
      names:
        - SBAMetricsServer
        - BUCAgentsServer
      readinessFailRestartAfterMinutes: 10
      terminationGracePeriodSeconds: 60
    name: agents-orderhub
    profile: ProfileMedium
    property:
      customerOverrides: AgentProperties
      envVars: EnvironmentVariables
      jvmArgs: MediumJVMArgs
    replicaCount: 1

Setting the BUCAgentsServer

  • For the Reassign pending order release feature to work, the BUCAgentsServer must be set up by using the following configurations.
    1. Create a queue to reassign pending order release, as shown in step #2.
    2. Add the following properties to AppServerProperties and AgentProperties.
      yfs.yfs.buc.agents.queue: <CreateReassignPendingOrder>
      yfs.yfs.buc.agents.providerurl: <providerUrl>
      yfs.yfs.buc.agents.qcf: <qcf>
      Note: 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. Hence, you must ensure that the rules are that configured correctly. For more information about configuring the modification rules, see REASSIGN_ORDER_RELEASE.0001 transaction.

Setting the SBAMetricsServer

  1. Add the following properties to AppServerProperties and AgentProperties.
    yfs.sba.enabled: 'Y'
    yfs.sba.updatenodecapacity.event.flow: SBA_ResourcePoolChangedOnSuccessSend
    yfs.yfs.flow.override.icf: <icf>
    yfs.yfs.flow.override.providerurl: <providerUrl>
    yfs.yfs.flow.override.qcf: <qcf>
    yfs.sba.agent.metrics.NC.queue: <NodeCapacityQueue>
    Note: Alternatively, you can add these properties to BaseProperties so that they are applicable to both AppServerProperties and AgentProperties.
    • Create queues for the following tasks and configure the Sterling Order Management System Software Operator, as shown in step #3.
      • Order update processing (OU)
      • Shipment update processing (SU)
      • Removal of processed update records (RM/RP)
      • Node capacity processing (NC)
    • For each of the queues define the scheduleinterval, the number of minutes for how often to run the agent, as shown in step #3.
  2. Add the following properties to AgentProperties.
    yfs.sba.agent.url: <providerUrl>
    yfs.sba.agent.qcf: <qcf>
    yfs.sba.agent.icf: <icf>
    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
  3. Configure the following optional parameters as required.
    • 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 AppServerProperties and AgentProperties or BaseProperties. 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 in to 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 AppServerProperties update the following parameter to 'N'.
      yfs.sba.alerts.queuesubscription: 'Y'

SBA metrics purge configuration

The SBAMetricsServer agent includes purge logic to manage SBA transaction tables, which temporarily store functional metrics that are derived from OMS core tables. Regular purging of these tables helps maintain system performance, reduce storage space, and ensure compliance with data retention policies. Purging removes the outdated data that is no longer needed for business operations.

How purge works

SBA defines its own transaction tables to isolate metric data from core OMS tables. Purge is carried out by the SBA_METRICS_PRG agent transaction. Two agent criteria are used.
  • SBA_METRICS_PRG_UPD purges order and shipment update temporary tables.
  • SBA_METRICS_PRG_PRM purges all other SBA transaction tables.

Batch delete operations are used for speed, with special handling for child table dependencies.

Configurable purge parameters

You can tailor the purge behavior based on these factors.
Lead days
Lead days are configurable thresholds beyond which data is considered stale.
Fulfillment status
Fulfilled and unfulfilled records have different retention periods.
Agent scheduling
Schedules the frequency and timing of purge agent activity.
Table 1. Purge criteria
Table Purge trigger Retention period
SBA Order Update Temp The order is fulfilled and the update is processed. Immediate
SBA Shipment Update Temp The shipment update is processed. Immediate
SBA Order Data
  • The order is fulfilled: 40 days after creation.
  • The order is unfulfilled: 100 days after creation.
Configurable
SBA Shipment Data
  • The shipment is confirmed: 40 days after fulfillment.
  • The shipment is unconfirmed: 100 days after creation.
Configurable
SBA Order Release Data
  • The order is fulfilled: 40 days after fulfillment.
  • The order is unfulfilled: 100 days after creation.
Configurable
SBA Capacity Data Based on business logic. TBD
SBA Shipment Line Data Based on business logic. TBD

Default retention periods

By default, SBA purges records are based on their fulfillment or confirmation status to maintain system performance and manage storage efficiently. Fulfilled orders and confirmed shipments are purged 40 days after their creation or fulfillment. Unfulfilled orders and unconfirmed shipments are purged 100 days after their creation. These default time frames help ensure that temporary data does not accumulate unnecessarily in the system.

Configurable properties

You can adjust the number of days after which different types of records are purged by updating the SBA configuration file properties or by using the OMS user interface.

Table 2. Configurable properties
Property name Description Default value
sba.purge.order.fulfilled.days Days after which fulfilled orders are purged. 40
sba.purge.order.unfulfilled.days Days after which unfulfilled orders are purged. 100
sba.purge.shipment.confirmed.days Days after which confirmed shipments are purged. 40
sba.purge.shipment.unconfirmed.days Days after which unconfirmed shipments are purged. 100
sba.purge.release.fulfilled.days Days after which fulfilled releases are purged. 40
sba.purge.release.unfulfilled.days Days after which unfulfilled releases are purged. 100