Guidelines for Managing Shipment Sets

Apply guidelines when you use shipment sets.

  • If Order Management applies a hold on one or more lines in a shipment set, then it applies the hold on the entire shipment set.

  • If the fulfillment line is part of a shipment set, then you can't:

    • Split the fulfillment line. To split the line, remove it from the shipment set, add a new line, then split your new line.

    • Substitute an item. To substitute, remove the line that contains the item you must substitute from the shipment set, then add a new line that contains the substitution.

  • If you already shipped the fulfillment line, or if Order Management already created a request to invoice the line, then the Fulfillment Line Shipment Set Update constraint prevents you from updating the shipment set. The constraint comes predefined as enabled. You can disable it.

  • If you remove an order line from a shipment set, then Order Management doesn't update the orchestration plan.

  • If you manually schedule a shipment set, and if you select an option for one or more fulfillment lines, and if these lines are part of a shipment set, then Order Management applies the scheduling option that you select to all of the fulfillment lines that are part of the shipment set.

  • If you include items that can ship with items that can't ship in the same shipment set, then you can include a pause step in your orchestration process only if you need the pause so you can invoice the shippable and nonshippable items together. For example, you add line 1 that contains the shippable AS54888 Desktop Computer and line 2 that contains the nonshippable warranty that covers the AS54888 in the same set.

Import Shipment Sets

Import your shipment set through the OrderImportService web service or through file-based data import.

Here's part of an example payload that includes a shipment set.

<ns2:Line>
  <ns2:SourceTransactionLineIdentifier>101</ns2:SourceTransactionLineIdentifier>
  <ns2:SourceTransactionScheduleIdentifier>101</ns2:SourceTransactionScheduleIdentifier>
  <ns2:SourceTransactionLineNumber>1</ns2:SourceTransactionLineNumber>
  <ns2:SourceTransactionScheduleNumber>1</ns2:SourceTransactionScheduleNumber>
  <ns2:ProductNumber>AS54888</ns2:ProductNumber>
  <!--Parameterize-->
  <ns2:OrderedQuantity>15</ns2:OrderedQuantity>
  <!--Parameterize-->
  <ns2:OrderedUOM>Each</ns2:OrderedUOM>
  <!--ns2:OrderedUOMCode>Ea</ns2:OrderedUOMCode-->
  <ns2:RequestingBusinessUnitName>Vision Operations</ns2:RequestingBusinessUnitName>
  <ns2:ParentLineReference/>
  <ns2:RootParentLineReference/>
  <ns2:ShippingInstructions/>
  <ns2:PackingInstructions/>
  <ns2:ScheduleShipDate/>
  <ns2:RequestedShipDate>2019-10-14T01:08:52Z</ns2:RequestedShipDate>
  <ns2:RequestedFulfillmentOrganizationCode>M1</ns2:RequestedFulfillmentOrganizationCode>
  <ns2:ShipToAddress1>102, CityView</ns2:ShipToAddress1>
  <ns2:ShipToCity>CHATTANOOGA</ns2:ShipToCity>
  <ns2:ShipToPostalCode>37401</ns2:ShipToPostalCode>
  <ns2:ShipToState>TN</ns2:ShipToState>
  <ns2:ShipToCountry>US</ns2:ShipToCountry>
  <ns2:ScheduleShipDateTime>2016-12-20T10:10:10</ns2:ScheduleShipDateTime>
  <ns2:ScheduleArrivalDateTime>2016-12-20T10:10:10</ns2:ScheduleArrivalDateTime>
  <ns2:ShippingCarrier>DHL</ns2:ShippingCarrier>
  <ns2:ShippingServiceLevel>2nd day air</ns2:ShippingServiceLevel>
  <ns2:ShippingMode>Air</ns2:ShippingMode>
  <ns2:ShipSetName>SS1</ns2:ShipSetName>

Note

  • Use the ShipSetName attribute to specify the shipment set. Include the attribute in the Line hierarchy. This example sets the name to SS1, and its part of the hierarchy for source transaction line 101. It adds line 101 to shipment set SS1.

  • Set ShipSetName to the same value in each line that you need in the set. Assume your set includes lines 101 and 102. Set ShipSetName in line 102 to SS1.

  • Make sure each line that's part of the shipment set uses the same value for attributes that affect the set, such as Warehouse. For details, see Ship Order Lines in Shipment Sets.

  • To get the entire payload for this example, go to Technical Reference for Order Management (Doc ID 2051639.1), then download the Payloads and Files attachment. Open the attachment, then open source_order_with_shipment_set.txt.

Assign Your Orchestration Processes

Make sure the assignment rule that you use to assign your orchestration process to a shipment set assigns the same process to each fulfillment line in the set.

Assume you sell the AS54888 laptop computer and the AS9000 Computer Monitor as a package and want them to arrive at your customer's site at the same time. You can use a shipment set to do this.

Use the Setup and Maintenance work area to:

  1. Create a shipment set named Computer Shipment Set.
  2. Create an orchestration process named My Orchestration Process.
  3. Create an assignment rule that assigns any order line that has the Computer Shipment Set in the Shipment Set attribute to My Orchestration Process.
  4. Create a sales order that includes the AS54888 on line 1 and the AS9000 on line 2. Set the Shipment Set attribute to My Shipment Set on line 1 and line 2, then click Submit.

Here's some logic that you can use in your assignment rule to make sure you assign the same orchestration process to each line in the set:

If Shipment Set (Order Fulfill Line) = Computer Shipment Set, then Process Name is set to MyOrchestrationProcess.

We recommend that you use the Shipment Set attribute in your If statement. Don't use any other attribute because you can't guarantee that it will always evaluate to the expected value.

For example, we recommend that you don't use a rule like this:
If Process Name is Blank And Customer PO Number is Not Blank, then Process Name is set to Customer PO Number 

We recommend that you use Visual Information Builder to create the assignment rule. Don't use Oracle Business Rules.

For details, see Guidelines for Assigning Orchestration Processes.