Select Fulfillment Lines for Orchestration Process Steps

Create a line selection rule that selects fulfillment lines, then specify whether the orchestration process step will process them.

A line selection rule is type of rule that determines whether an orchestration process step processes a fulfillment line. There are some cases where you don't want to process a line.

  • The line has an item isn't shippable, such as a subscription or warranty.
  • You set the Purchasable attribute to Yes for the item in the Product Information Management work area.

Use a line selection rule to prevent the orchestration process step from processing these lines.

Example

In this example, you create a line selection rule that makes sure Order Management doesn't attempt to ship a nonshippable item.

Assume you sell digital video recorders. The sales order includes more than one fulfillment line for each items.

  • Digital video recorder

  • Remote control

  • Instruction manual

  • Extended warranty

Your customers can purchase the extended warranty as a contract online, but its not a shippable item, so Order Management must not attempt to send it to the fulfillment system during the Shipment task. So, you create a rule.

  • If Order Management can't ship the item, then don't attempt to ship it.

Here's the rule you will create.

line selection rule

where

  • DooSeededOrchestrationRules is a dictionary that contains a set of predefined functions, variables, objects, and other data you can use to define behavior for an orchestration process.

  • DOOFLine contains fulfillment line attributes, such as orderedQty, customerPONumber, creationDate, and so on. You can reference these attributes and use their values in your rule.

  • shippableFlag is a fulfillment line attribute.

  • Y is one possible value of shippableFlag.

This example includes a business rule that requires you to use a dictionary, fact, and other objects. We strongly recommend that you familiarize yourself with these objects before you proceed. For details, see the Business Rules chapter in the Implementing Order Management book.

Summary of the Steps

  1. Create the If statement.

  2. Create the Then statement.

This topic uses example values. You might need different values, depending on your business requirements.

Create the If Statement

  1. Go to the Setup and Maintenance work area, then go to the task.

    • Offering: Order Management

    • Functional Area: Orders

    • Task: Manage Orchestration Process Definitions

  2. On the Manage Orchestration Process Definitions page, locate the CallCustomerWhenLargeInvoice orchestration process, then click Actions > Edit.

    Learn how to create CallCustomerWhenLargeInvoice. For details, see Add Branches to Orchestration Processes.

  3. On the Edit Orchestration Process Definitions page, in the Process Details area, in the Step Definition list, locate the Ship Item row.

  4. In the Ship Item row, in the Line Selection Criteria column, click Click for Rule.

  5. In the Line Selection Criteria dialog, click Add Rule > Expand.

  6. In the If area, click Left Value, expand DOOSeededOrchestrationRules > DOOFline, click ShippableFlag, then click OK.

  7. In the Right Value attribute, enter "Y". You must include the double quotation marks.

Create the Then Statement

You will create this Then statement.

  • assert new resultObjKey:DooSeededOrchestrationRules.DOOFLine.fulfillLineId

where

  • Assert New adds the result into the Result fact of the DooSeededOrchestrationRules dictionary.

  • resultObjKey is a property of Result. It specifies the fulfillment line to examine.

  • DooSeededOrchestrationRules.DOOFLine.fulfillLineId specifies to use the value of the fulfillLineId attribute in the DOOFLine fact of DooSeededOrchestrationRules.

Create the Then statement.

  1. In the Then area, click Add Action > Assert New.

  2. Click Select a Target > DooSeededOrchestrationRules.Result.

  3. Click Edit Properties.

  4. In the Properties dialog, in the ResultObjKey row, click Value.

  5. In the Condition Browser, enter DOOFLine, wait a moment, expand DooSeededOrchestrationRules.DOOFLine, click FulfillLineId, then click OK > OK.

  6. In the Line Selection Criteria dialog, click Validate, make sure the Validation Log that displays doesn't contain errors, then click Save.

  7. On the Edit Orchestration Process Definition page, click Save.