Segregation policy configurations

The logic to derive the segregation pattern, which is called as the Segregation Policy, must be implemented for each data type based on the best options that are available for each data type to segregate the workload. With the 10.0.2206.0 release, Sterling Order Management System Software provides two segregation policies for OrderHeaderKey and OrderReleaseKey task queue data types.

Segregation policy for OrderHeaderKey data type

Following segregation policies are implemented for the OrderHeaderKey data type:
  • Order line size
  • Order attribute
Use the yfs.taskqueue.segregation.order property to configure the segregation policy for the OrderHeaderKey data type. This configuration helps you derive a segregation pattern according to the segregation policy behavior.
yfs property name Valid values Default value
yfs.taskqueue.segregation.order

orderlinesize

orderattribute

orderlinesize
Order line size segregation policy behavior
The order line size segregation policy derives a segregation pattern that is based on the count of order lines in an order and the rule values that define large and very large orders. The LARGE_ORDER_SIZE and VERY_LARGE_ORDER_SIZE rules are provided in IBM® Sterling Order Management System Software with default values as 20 and 500. An order with order line count that is more than or equal to the VERY_LARGE_ORDER_SIZE rule value is considered as a very large order. An order with the order line count that is less than the VERY_LARGE_ORDER_SIZE rule value and more than or equal to the LARGE_ORDER_SIZE rule value is considered as a large order. The segregation patterns for these two categories are VeryLarge and Large. For other orders, the segregation pattern is null.
Note: The VERY_LARGE_ORDER_SIZE rule can be modified by using manageRule API.
Order attribute segregation policy behavior

If you set the order attribute segregation policy, you must define an attribute name that you want to use for segregating order workload in the yfs.taskqueue.segregation.order.orderattribute property.

yfs property name Valid values
yfs.taskqueue.segregation.order.orderattribute An order attribute

The attribute can be a default attribute or an extended attribute order entity. The segregation pattern for the order is derived from the value of the attribute for that order.

Ideally, all attributes of an order can be considered for the order attribute policy. However, most of the attributes are not a valid candidate for segregation. Such attributes only produce undesired behavior. For example, the order attribute property is set to the primary key of the order or Createts/Modifyts of the order, or any date fields. The distinct values for these attributes are sufficiently high and can possibly be same as the order count. Also, many business fields are not valid for segregation. So, instead of allowing any attributes of an order, an enumeration is taken out and only those attributes are allowed for segregating the order fulfillment jobs. The following order attributes are available for segregation.
  • AllocationRuleID
  • AuthorizedClient
  • BuyerOrganizationCode
  • CarrierServiceCode
  • EnteredBy
  • EnterpriseCode
  • EntryType
  • OptimizationType
  • OrderPurpose
  • OrderType
  • PersonalizeCode
  • PriorityCode
  • PriorityNumber
  • SCAC
  • SearchCriteria1
  • SearchCriteria2
  • SellerOrganizationCode
  • ShipNode
  • VendorID
If you set an attribute that does not belong to the order, the attribute is discarded, a warning message is displayed, and the order workload is not segregated.

All extended attributes of the Order entity are considered for segregation. However, the attributes that are defined by using the CustomAttributes feature are not available for segregation.

Here is a list of Task Queue agents where the order segregation policies are implemented:
  • CHAINED_ORDER_CREATE
  • CLOSE_ORDER
  • CREATE_ORDER_INVOICE
  • DERIVED_ORDER_CREATE
  • PROCESS_ORDER_HOLD_TYPE
  • PURGE
  • RELEASE
  • SCHEDULE
  • START_ORD_NEGOTIATION
  • YCD_SHIP_NOTIFICATION

Segregation policy for OrderReleaseKey data type

Following segregation policies are implemented for the OrderHeaderKey data type:
  • Release line size
  • Release attribute
Use the yfs.taskqueue.segregation.release property to configure the segregation policy for the OrderReleaseKey data type. This configuration helps you derive a segregation pattern according to the segregation policy behavior.
yfs property name Valid values Default value
yfs.taskqueue.segregation.release

releaselinesize

releaseattribute

releaselinesize
Release line size segregation policy behavior
The release line size segregation policy derives a segregation pattern that is based on the count of order lines in an order release and the rule values that define large and very large orders. The LARGE_ORDER_SIZE and VERY_LARGE_ORDER_SIZE rules are provided in IBM Sterling Order Management System Software with default values as 20 and 500. A release with order line count that is more than or equal to the VERY_LARGE_ORDER_SIZE rule value is considered as a very large release. A release with the order line count that is less than the VERY_LARGE_ORDER_SIZE rule value and more than or equal to the LARGE_ORDER_SIZE rule value is considered as a large release. The segregation patterns for these two categories are VeryLarge and Large. For other order releases, the segregation pattern is null.
Note: The VERY_LARGE_ORDER_SIZE rule can be modified by using manageRule API.
Release attribute segregation policy behavior

If you set the release attribute segregation policy, you must define an attribute name that you want to use for segregating release workload in the yfs.taskqueue.segregation.release.releaseattribute property.

yfs property name Valid values
yfs.taskqueue.segregation.release.releaseattribute An attribute of YFS_Order_Release entity

The attribute can be a default attribute or an extended attribute order release entity. The segregation pattern for the order release is derived from the value of the attribute for that order release.

Similar to the order attribute, not all order release attributes are valid candidates for segregation. An enumeration is taken out and only those attributes are allowed for segregating the order release fulfillment jobs.
  • BuyerOrganizationCode
  • CarrierServiceCode
  • EnterpriseCode
  • OrderType
  • PersonalizeCode
  • PriorityCode
  • SCAC
  • ShipNode
  • SellerOrganizationCode

If you set an attribute that does not belong to the order release, the attribute is discarded, a warning message is displayed, and the order release workload is not segregated.

Here are the Task Queue agents where the order release segregation policies are implemented:
  • CONSOLIDATE_TO_SHIPMENT
  • SHIP_ADVICE