Anda di halaman 1dari 24

2/10/2016 Oracle functional: Scheduling In Order Management

Scheduling In Order Management
Introduction:
Scheduling is a concept, which helps to place the demand in the inventory based on the availability. 

Scheduling helps with the following:
* Find the availability of the items 
* Populate the Schedule ship date, arrival date and last acceptable date based on the calculated ATP Date 
* Performs the reservation based on Scheduled Ship Date 
* Calculates the delivery lead time based on as ship method 
* Prevents over demand by setting the items attribute Check ATP

Scheduling also allows you to check ATP (Available to Promise), and display availability automatically as soon as
the line is entered. Setup is required to perform ATP on an item. A sample scenario is provided in the testflow for
ATP item below. From the availability window, ATP availability button guides to APS's Global ATP window to view
availability across the global supply chain. 

This page describes in detail about the various profile options and setups, which affect the scheduling.

Functional Overview
Sales order line would be scheduled for both the ATP as well non­ATP items based on the availability of the item.
When scheduling is not performed during sales order entry (either manually or automatically), then as part of standard
functionality, scheduling will be done by the workflow process. 

Scheduling is done by the workflow process associated with the order line (OEOL). For example: Considering the
Line Flow – Generic work flow Once the order is Booked, the workflow completes the Booking activity and proceed
to the next stage i.e. Scheduling. This is when Scheduling is performed. 

Open the process 'Line Flow ­ Generic' in the Workflow Builder. The 'Line Flow ­ Generic' process looks as below 
* 'Line Flow – Generic' Process

Double click on the 'Enter ­ Line'subprocess, it will open the subprocess which looks as below

* 'Enter ­ Line' Subprocess

Order will wait at "Wait for Booking" till booking action is performed. The work flow will progress to next stage.

Double click on the 'Schedule ­ Line' subprocess in 'Line Flow ­ Generic' process. Double clicking opens 'Schedule ­
Line' subprocess which looks as below
* 'Schedule ­ Line' Subprocess

Once the line is scheduled, SCHEDULE_SHIP_DATE is populated into the OE_ORDER_LINES_ALL.

The SCHEDULE_SHIP_DATE should be a value between the REQUEST_DATE and the
LATEST_ACCEPTABLE_DATE.

Table Level Changes
Scheduling sets the VISIBLE_DEMAND_FLAG, SCHEDULE_STATUS_CODE as soon as the lines are scheduled.
The two columns are independent and are not based on the setups 

Scheduling controls following sets of data along with the above. 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 1/24
2/10/2016 Oracle functional: Scheduling In Order Management
SCHEDULE_ARRIVAL_DATE
SCHEDULE_SHIP_DATE
LATEST_ACCEPTABLE_DATE 
SHIPPING_METHOD, if the shipping network is set up 
DELIVERY_LEAD_TIME, if the shipping network is set up 
SHIP_FROM_ORG_ID (Warehouse) 
VISIBLE_DEMAND_FLAG is set to yes when the line is scheduled. Demand is visible to the planning applications
when the line is scheduled. 
SCHEDULE_STATUS_CODE is set to the SCHEDULED

Events Controlling Scheduling
Scheduling happens during any one of the following events
1. Automatic scheduling upon entry 
2. Manual Scheduling upon entry 
3. Scheduling during booking 
4. Scheduling after Booking

Automatic scheduling upon entry 
OM: Auto Schedule
If the profile OM: Auto Schedule is set to Yes, then line is scheduled at the time of saving. i.e. Scheduling is done at
the moment if cursor is moved from current line or Block, to next line or Block, manual save.
Ship Sets and Arrival Sets
You can include lines in Ship Sets or Arrival Sets depending on how you want to group them. Ship Sets and Arrival
Sets are based on similar dates: Ship Set (Schedule Ship Date) and Arrival Set (Schedule Arrival Date). Refer to the
documentation for further details. 

Go to the Shipping tab of the order lines and notice the Ship Set and Arrival Set fields. The following methods can be
used to set a value in these fields. 
1) Enter a value directly in one of these fields. 
2) Right click on the order line and go to Sets > New > Ship Set to create a new ship set, or Sets > Add to Set >
Ship Sets to add to an existing set. 
3) When entering the order header, enter either Ship or Arrival in the Line Sets field (Others tab). This will set the ship
set or arrival set field in the order lines by default. 
4) To set a default value in the Line Sets field from the Others tab, set up Defaulting Rules for the entity 'Order
Header', Attribute 'Line Sets'. 

Following screen shot shows one of the places the default value can be set up Customer Level. Navigation is
Customers > Standard Customers > Query Customer > Click on Customer link > Order Management Tab

When lines are entered into a Ship Set or Arrival Set, the scheduling would be done on saving the lines.
Why does the scheduling happen while using the Ship Set or Arrival Set? 
All of the lines in the set would have the same value for Schedule Ship Date. However we do have option to include 
lines of same order in different ship set / Arrival set. 
Order entry processing uses the warehouse, ship to location, shipment priority, and shipment method for scheduling
If the default Order Header value for sets is set to Ship, and 

a. if the profile option, "OM: Assign new set for each line," is set to "N," Order Management will automatically
determine the earliest Scheduled Ship Date, based upon your setup, and create a common ship set for all order lines
in that order. 

b. if the profile "OM: Assign new set for each line," is set to "Y," Order Management will automatically determine the
earliest Scheduled Ship Date, based upon your setup, and create a unique ship set for each line in an order.

Tools > Auto Schedule
If the Auto Schedule flag is set from the sales order line, the lines will get scheduled when they are saved. 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 2/24
2/10/2016 Oracle functional: Scheduling In Order Management

The Auto Schedule set flag can be set by following ways:

1) Setting the profile OM: Auto Schedule to Yes 

2) Setting the Transaction Type > Shipping Tab > Auto Schedule flag

Verify the Scheduling Levels on Transaction Types:

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 3/24
2/10/2016 Oracle functional: Scheduling In Order Management

The scheduling level on the order transaction type determines what type of scheduling is allowed. The possible
values for this are:
ATP Only ­ You will not be able to schedule or reserve lines on the order. This could be used for Bill­Only
or Bill­Only with Inventory Interface flows, or possibly for quoting scenarios.
No Reservations ­ You can perform all scheduling functions except for reserving inventory.
Allow All Scheduling Actions ­ All scheduling actions can be performed.
Inactive Demand With Reservations ­ You can manually enter any schedule date, but the system does
not schedule. The line can be reserved. The schedule date is not visible to MRP / APS. This functionality
is only for standard items, and it does not support ship or arrival sets.
Inactive Demand Without Reservations ­ You can manually enter any schedule date, but the system does
not schedule. No reservation can be placed on the line. The schedule date is not visible to MRP/APS.
This functionality is only for standard items, and it does not support ship or arrival sets.

3) Manual checking 

If profile OM: Auto Schedule is set to No and the Transactin Type Auto Schedule is not checked, then Auto
Schedule needs to be manually checked. Navigate to Tools > Auto Schedule from the Sales Order forms.

Manual Scheduling Upon Entry

If the profile OM: Auto Schedule is set to No, then line is not scheduled at the time of order entry. This would require
manual scheduling or this is postponed till booking activity. Three ways to do manual scheduling
1) Tools > Scheduling > Schedule 
2) Enter the Schedule Ship Date (or the Schedule Arrival Date if the Order Date Type in order header is 'Arrival') 
3) Keep the cursor on the line > Right Click > Scheduling > Schedule

Scheduling during Booking

When scheduling is not performed during sales order entry (either manually or automatically), then as part of standard
functionality, scheduling will be done by the workflow process at the time of booking. 

Scheduling is done by the work flow process associated with the order line. For example: Consider the Line Flow –
Generic work flow. Once the order is Booked, Workflow completes the Booking activity and proceed to the next
stage i.e. Scheduling. This is when Scheduling is performed. 

Open the process 'Line Flow ­ Generic' in the Workflow Builder. The 'Line Flow ­ Generic' process looks as below 

* 'Line Flow – Generic' Process

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 4/24
2/10/2016 Oracle functional: Scheduling In Order Management

Double click on the 'Enter ­ Line' subprocess, it will open the subprocess which looks as below 

* 'Enter – Line' Subprocess

Order will wait at “Wait for Booking” until Booking action is performed. Workflow will progress to the next stage.
Double click on the 'Schedule ­ Line' subprocess in 'Line Flow ­ Generic' process. Double clicking opens 'Schedule ­
Line' subprocess which looks as below 

* 'Schedule – Line' Subprocess

The Schedule activity attempts to schedule the order line. If the Schedule activity returns a result of Incomplete or
On Hold, the process moves to the Schedule ­ Eligible, activity. From there the process must be manually
progressed to return to the Schedule activity. 

'Schedule' activity has the function OE_OEOL_SCH.SCHEDULE_LINE which performs the scheduling. 

Scheduling after Booking

Scheduling after Booking can be achieved by two different work flow process, which has deferred activity before
'Schedule ­ Line' activity. 

Deferred Scheduling

'Schedule ­ Line, Deferred' subprocess is identical to the 'Schedule ­ Line', except two new activities. An activity to
determine whether the line is scheduled, and a defer activity. 

The 'Schedule ­ Line, Deferred subprocess begins with the Start activity. The 'Is Line Scheduled' activity checks
whether the line is scheduled or not. 

If scheduling is complete or if the line is not eligible for scheduling, then the process ends and the work flow moves
to next activity in the parent flow. If scheduling has not yet been completed, the process moves to the 'Schedule ­
Deferred' activity. This activity moves scheduling to the background engine.
Manual Scheduling

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 5/24
2/10/2016 Oracle functional: Scheduling In Order Management

From Release 12, a new scheduling sub­process named 'Schedule­Line, Manual' is introduced to control scheduling
manually after the order is booked. If the new sub­process is used in the line workflow, then after booking the order,
lines are blocked at the 'Schedule ­ Eligible' activity. From 'Schedule ­ Eligible' activity the lines can be progressed
from Sales Orders window or the Schedule Orders concurrent program can be used to schedule the lines. 

Scheduling Groups of Lines
The following table explains how does the ATP calculation, scheduling and reservations happens for different types
of item.

Business Scenarios (Test Flows)
This section includes testflows to understand some common business scenarios around scheduling. 

How does one control Scheduling after booking an Order?
As we have already seen either the lines get automatically scheduled or these are scheduled when the order is
booked. But if you want to postpone scheduling still further… 

This can be achieved by two ways. 
a. Changing of workflow definition 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 6/24
2/10/2016 Oracle functional: Scheduling In Order Management
b. Applying hold at the time of order entry
Changing of work flow definition
Along with 'Schedule ­ Line, Deferred' a new sub process 'Schedule ­ Line, Manual' is introduced.

Deferred scheduling work flow process to be used in place of the default 'Schedule ­ Line' activity.

One of the above sub­process can be copied and customized to the generic line process.

For example let us consider “Schedule ­ Line, Deferred” here The process “Schedule ­ Line, Deferred” should be used
in place of “Schedule – Line” in the Line work flow.

1. Copy “Line Flow – Generic” to some other name for example XX Line Flow ­Generic.
2. Copy “Schedule ­ Line Deferred” sub process into the new work flow process XX Line Flow ­Generic.

3. Replace this with the new one.

The new workflow would look as below:

Understanding Schedule – Line, Deferred

Once booking is done then the workflow stops at “Schedule – Deferred” status and this would remain at “Schedule –
Deferred” activity. Since this is a deferred activity, we need manual intervention to push this further and this is done
using the Workflow Background process request. 

Applying hold at the time of order entry

Apply hold once the line is saved and when booking “Could not Schedule. Line on Hold” processing message pops
up. Please apply the hold which is not an workflow activity­specific hold. 

Note: If the hold is specific to workflow activity, then the Workflow Activity attached should be 'Line Scheduling' for
Workflow Item 'OM Order Line' or Workflow Activity attached should be 'Book Order' for Workflow Item 'OM Order
Header' 

Sample Test case showing the above 

1. Create an Order and apply the hold at the time of order entry. 
2. Book the Order following error message pops up: 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 7/24
2/10/2016 Oracle functional: Scheduling In Order Management

See the Order is Booked but Schedule Ship Date is not populated (Scheduling not done) and Order Line is on Hold. 

Workflow status diagram shows: 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 8/24
2/10/2016 Oracle functional: Scheduling In Order Management

Once the hold is released, one would need to select Actions > Progress Order on the line, or run the Schedule Order
concurrent request to schedule the order. 

Note: “OM: Schedule Line on Hold” should be set to No. If the profile is Yes, then the workflow would complete the
scheduling activity.

Calculation of Latest Acceptable Date (LAD)
LAD is populated only when the Latest Schedule Limit (LSL) is provided at the time of order creation. Latest
Schedule Limit is defaulted from the site level or customer level based on defaulting rules.
Latest Acceptable Date (LAD) = Request Date + Latest Schedule Limit (LSL)

a. Set the Latest Schedule Limit 

At Customer level:

b. Set Defaulting Rules:

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 9/24
2/10/2016 Oracle functional: Scheduling In Order Management

Test Case 

The following test flow is created to demonstrate how to calculate the Latest Acceptable Date. 

Create an Order with the setups mentioned above. 

In Others Tab latest Schedule Limit defaulted from Customer Level which has higher precedence in Defaulting Rules

i.e. The LSL in this case is 10. 

Request date + Latest Schedule Limit = Latest Acceptable Date 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 10/24
2/10/2016 Oracle functional: Scheduling In Order Management

Calculation of Schedule Arrival Date
Schedule Arrival Date = Schedule Ship Date + Delivery Lead Time

Delivery Lead Time needs to be calculated in order to calculate the Schedule Arrival Date. Delivery Lead Time is the
Transit time taken. There are two possible ways to set this: Internal Location Assigned to the Customer or by setting
up Regions and Zones.

Internal Location Assigned to the Customer

Step 1 
Identify the “Ship To” Address for which Delivery Lead time is to be specified 

Step 2 
Create a Location for the ship to Address in Inventory Module. 
Navigation: Inventory responsibility > Set up > Organizations > Locations

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 11/24
2/10/2016 Oracle functional: Scheduling In Order Management

Click Address tab

Step 3 

Inter­location transit time needs to be defined for the specific ship method, to be used for the transit from Source
Location to Destination Location. Navigation: Inventory responsibility > Set up > Organizations > Inter­Location
transit times

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 12/24
2/10/2016 Oracle functional: Scheduling In Order Management

Step 4 

Associate this internal location to the customer ship to location on customer standard Form 
Navigation: Customers > Standard > Query the Customer > Click on Customer hyperlink
Click on the primary ship­to site > Details > Order Management tab > Enter the 'Internal Location' 

Click the Ship To Location 

Open the Ship to address at site level 
Define the Internal Location in Ship to Location

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 13/24
2/10/2016 Oracle functional: Scheduling In Order Management

Step 5 

Run ATP Data collections. 
Navigation: Order Management > Scheduling > ATP Data Collection 
Run it as "Complete Refresh" 
Every time that a static setup is changed a Complete Refresh is needed. 

Step 6 
Add the 'Request Date type' as Arrival on the Customer Standard Form. 

Regions and Zones 
Step 1 
Setup regions and zones. 

Navigation: Order Management > Set up > Shipping > Regions and Zones > Regions and Zones
Define Regions or Zones.

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 14/24
2/10/2016 Oracle functional: Scheduling In Order Management

Step 2 
Set up region level and zone level in­transit times in the “Transit Times” form 
Navigation: Order Management > Setup > Regions and Zones > Transit Times 

a. Set the "From Location" to the Shipping Org 
b. Set the "Destination Type" to [Region] or [Zone] as appropriate. 
c. Set the "Destination" to the appropriate Region or Zone (ship to location) 
d. Enter the Ship Methods for that Region or Zone and the Intransit Times 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 15/24
2/10/2016 Oracle functional: Scheduling In Order Management

Step 3 

Run the following programs 
OM > Shipping > Interfaces > Run 

a. Import Shipping Locations (WSHMLOCR) 

Parameters: 
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­ 

Map Regions : Yes 
Location Type : Both (Process both Internal and External Locations) 
Start Date : as required 
End Date : as required 

b. Location to Region Mapping (WSHLRMA) 
Parameters: 
­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­­
Insert Flag : Yes 
Location Start Date : as required 
Location End Date : as required 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 16/24
2/10/2016 Oracle functional: Scheduling In Order Management

c. Region Interface (WSHRGINT) 
(no parameters) 

Step 4 

Run ATP collections. 
Nav > Order Mangement > Scheduling > ATP Data Collection 
It needs to be a "Complete Refresh" 
Every time that a static setup is changed a Complete Refresh is needed.

Test case created by using General Setup process
The following test flow is created to demonstrate how lead time is used to calculate the schedule arrival date. 

1. Enter a sales order for that specific 'customer' and 'ship to' 

2. In Others tab the values would be defaulted as below 

3. Enter the lines details

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 17/24
2/10/2016 Oracle functional: Scheduling In Order Management

4. Book the Order 

For the particular 'In­transit Delivery' Delivery lead­time and Schedule Ship Date on the order lines under shipping
alternative region would be populated. 
When the order date type is Arrival then Schedule Ship Date cannot be changed. The following error occurs 

Test case created by using Regions or Zone Setup process

1. Enter a sales order for that specific 'customer' and 'ship to' 
2. In Others tab the values would be defaulted as below 
3. Enter the lines details 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 18/24
2/10/2016 Oracle functional: Scheduling In Order Management
4. Book the Order 

Test flow for ATP Item (calculation of Schedule Ship Date/ Available Date)

Available Date / Schedule Ship Date = Request date + Use defined time fence in ATP Rule i.e. For ATP items.
Scenario explains how to Schedule Ship Date / Available date for the ATP item is Request date + 1 day. Schedule
Ship Date is the date on which the item can be shipped. It is based on the material availability. 

Create an ATP item 
ATP item needs to be created i.e. Check ATP and ATP Rules needs to be set in Order Management. 

Assign the item to Organization 

Check the availability 

Create an Order and click the availability button. Available Date would be blank and an Error “The requested item or
one of its components is not collected” displayed on availability window as mentioned below. 

Resolve the Error Message 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 19/24
2/10/2016 Oracle functional: Scheduling In Order Management
To resolve the error “The requested item or one of its components is not collected” ATP data collection needs to be
run. 
Run the ATP Data collection for complete refresh. 
Navigation ­> Scheduling ­> ATP Data Collection 

Note the ATP Rule in Order Management. 

Define infinite Supply 
To define the number of days required to manufacture the material is defined in ATP Rules. 
Query the Rule used in the Items Attributes (Order Management tab). 
Navigate to Inventory > Setup > Rules > Available to promise 

In infinite Supply, select the option as User­defined time fence and days as 1. 
Once the setups are completed 

Usage of Calendars 
Available date in the availability window would be populated based on the ATP Rule and Calendar. 
For example make changes to the workday calendar for a period 01­Jan­1990 to 31­DEC­2015 to show infinite supply

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 20/24
2/10/2016 Oracle functional: Scheduling In Order Management
date is +1 (no weekends to consider). 

To reflect the changes rebuild the calendar. 

Tools > Rebuild

On Booking the order the order lines will be scheduled based on next available date. 

Run the ATP Data collection for complete refresh. 
Navigation > Scheduling > ATP Data Collection 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 21/24
2/10/2016 Oracle functional: Scheduling In Order Management

The following test case shows how the Available date and Schedule Ship Date are calculated 

Create an Order and enter the order line

Order Details 

Line Details

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 22/24
2/10/2016 Oracle functional: Scheduling In Order Management

In this case Available Date / Schedule Ship Date = Request date + 1 day(s) (Use defined time fence in ATP Rule).

Timestamp Calculation 

In scheduling time stamp is not considered, normally it would be 23:59:00 i.e. EOD. One exception to this is for Non
ATPable items, the profile 'MSC: Retain Time for Non­ATPable Items’, which governs display of timestamps for only
Non ATPable items only. When this profile option is 'Yes', then time stamp is copied from Requested Date. 

Note: At the time of rescheduling it would consider the first scheduling time stamp 
In case if the profile option is 'No' then for both ATPable and Non ATPable items, resources will be considered till
end of day and always SSD will be end of the day i.e. 23:59:00. 

Testflow for Reservations 

If OM: Reservation Time Fence is set to a number greater than zero, then the reservation is created for the item as
soon as the order is scheduled, if the schedule date is within the reservation time fence window. The time fence is
the system date plus the number of days specified in the profile. For example, if the profile is set to 30 days, then as
long as the Schedule Ship Date for the order is within the system date plus 30 days, then reservation is created. 

The reservation is created once the line is scheduled either by manually or automatically. 
To view the reservation details Click Tools > Scheduling > Reservation Details 

Attributes Related to Scheduling 

The following is a list of line attributes related to scheduling.
Request Date 
Schedule Ship Date 
Schedule arrival date 
Warehouse 
Ordered Quantity 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 23/24
2/10/2016 Oracle functional: Scheduling In Order Management
Ordered Quantity UOM 
Shipping Method 
Delivery Lead Time 
Demand Class 
Customer 
Inventory Item 
Ship Set 
Arrival Set
If there is a change in any of the above attributes rescheduling would happen, since they are dependent on each
other. The exception for the above scenario is Request Date and Ship Method. The Request Date and Ship Method
can be controlled by two system parameters:
Reschedule with Request Date Change 
Reschedule with Ship Method Change
If the above mentioned parameters are set to No, then Rescheduling will not happen even if the Request Date and
Ship Method are changed and vise versa 

Profiles and System Parameters related to Scheduling 

1. Profiles 

Following are profile options related to Scheduling. Refer to the documentation for further information.
OM: Schedule Lines on Hold 
OM: Autoschedule 
OM: Reservation Time Fence 
OM: Auto Push Group Date 
OM: Authorized to Override ATP 
OM: Scheduling Rule 
MRP: ATP Assignment Set 
INV: Capable to Promise

Scheduling profiles related to OM are explained in:

Note:396960.1 ­ Scheduling Across Orders in Order Management

2. System Parameters 

Navigate to OM > System Parameters > Values and select your Operating Unit and the category Scheduling
Parameters. Notice the following system parameters. Refer to the documentation for further details.
Allow Partial Reservation 
Firm Demand Events 
Latest Acceptable Date 
Promise Date Setup 
Reschedule with Request Date Change 
Reschedule with Ship Method Change
 
Concurrent Programs 

1) Schedule Order 
Navigation: Orders, Returns > Schedule Order 

2) Reserve Orders 
Navigation: OM > Reports, Requests > Run Requests 

http://snroracle.blogspot.com/2014/02/scheduling­in­order­management.html 24/24

Anda mungkin juga menyukai