Thursday, April 9, 2009

What is Forward and Backward Scheduling?


What do you mean by forward scheduling and backward scheduling?

Backward scheduling is the calculation of deadline dates: the arrival time at the customer site is calculated as the earliest possible goods receipt time at the customers unloading point on the requested delivery date. All four of the delivery and transportation scheduling lead times are subtracted from the customer’s requested delivery date to determine if this date can be met.

The transit time, loading time, and pick/pack time are subtracted from the customer’s requested delivery date to calculate the required material availability date.

The system calculates backward scheduling as follows:

Requested delivery date minus transit time  = Goods issue date 
Goods issue date minus loading time = Loading date 
Loading date minus transportation lead time = Transportation scheduling date 
Loading date minus pick/pack time = Material availability date

By default, the system will calculate delivery dates the closest day, taking into consideration the working days of the shipping point and a rounding profile. In this case the system assumes a 24 hour work day and lead times can be entered in days up to 2 decimal points.  This is referred to as daily scheduling.

Precise scheduling calculated down to the day, hour and minute is supported.  This allows the scheduling of a delivery within a single day.  It is activated by maintaining the working hours for a particular shipping point.

Backward scheduling is always carried out first.  If the material availability date or transportation scheduling date is calculated to be in the past, the system must then use forward scheduling.

Forward scheduling is also done if no product is available on the material availability date calculated by backward scheduling. The system does an availability check to determine the first possible date when product will be available. This new material availability date forms the starting point for scheduling the remaining activities.  The loading time, pick/pack time, transit time, and transportation lead time are added to the new material availability date to calculate the confirmed delivery date.                                                                                                                     

Movement type determination and Availability Check


SM30 - Table View - V_TVEPZ -> Assign schedule line categories

  • First check the Proposed schdule line category (SchLC)   - double click on the line item
VOV6 - Maintain the schedule line categories - double click on the line item
  • For example, you can control the default returns movement type.
  • 651 - two steps - with a transfer posting using 453
  • 653 - one steps - direct post to unrestricted used
Control the Transaction Flow (tick to activate the function)
  • transfer of requirement
  • for availability check for sales
  • production allocation active

Configuring Availability Check Through Checking Groups

1. The checking group + checking rule determine how the availability check is to be performed.

2. The checking group determines whether and how the system checks the stock availability and generates requirements for material planning. The checking group defines what type of requirements will be passed on i.e. summarized requirements (daily/weekly) or individual requirements for each sales order.

3. The checking rule applies to how the availability check is to be carried out at the transaction level. Note that you must define checking rules for each individual application such as for production orders for example. In Sales and Distribution, the checking rule is specified internally within the system and cannot be changed.

4. The checking rule, in conjunction with the checking group, determines the scope of the availability check for every business operation; that is, which stocks, receipts and issues are to be included in the availability check and whether the check is to be carried out with or without the replenishment lead time.

5. Briefly explaining the above – checking group determines which type of requirement to be passed on to MRP whether it be individual or summarized and checking rule which is at the transaction level and can be configured independently for each application module, determines which stocks, receipts and issues to be taken into account. For performing an availability check checking group has to work in conjunction with checking rule.

6. Advantages of individual processing over summarized processing –  
Backorder processing is possible. 
You can access (MD04) order, line and schedule line individually which gives a greater control on available stock and requirements placed on stock. 
The system automatically uses individual requirements in case of special stock items.

7. Required data for the Availability check to be carried out – 
The Availability check must be switched on at the requirement class level. 
The Availability check must be set at the schedule line level. 
A requirements type must exist by which the requirements class can be found. 
A plant must be defined in the sales order for each schedule line item (in other words plant must be defined for every material in MMR). 
A checking group must be defined in the material master record in the MRP3 screen in the availability check field.

8. Configuring Availability check and defining Checking Groups – 
Checking groups are introduced into the sales order based on the setting in the material master record. 
SAP standard checking groups are 01 – summarized requirements and 02 – individual requirements or you can create your own by copying the standard ones. 
Total sales and total deliveries columns are there to configure a checking rule to sum up requirements to post to MRP either individually or by day or week. 
Block quantity required can be set if you want several users to be able to process the material simultaneously in different transactions without blocking each other. 
The no check indicator is CHECKED when you DO NOT want the system to carry out ATP check.

9. Defining material block for other users – the block check box is an indicator that enables you to block material master records of a particular material during the availability check and restrict other users from accessing same master record and reserve the material. If the block is not set, two users can confirm the same material at the same time for two different orders, not knowing if the stock is available or not. If you select this field, the material is blocked during the availability check and other users cannot: a) Make changes in the material master record. b) Create purchase orders for the material. C) Create orders for the material.

10. Defining default values for checking groups - Checking groups are introduced into the sales order based on the setting in the material master record. 
However if there is no entry present in the material master record for the checking group, a default value can be set here, depending on material type and plant. 
This default value will be used by the system depending on the material type mentioned in MMR and plant in sales order. 
If an entry exists, this default value is over written by MMR.

11. Controlling Availability Check – in this section, you tell the system what stock on hand and what inward and outward movements of stock it must take into account when performing the availability check in addition to whether or not to consider the replenishment lead time.

12. These settings are based on the checking group that is assigned to the material master record and the checking rule that is predefined and assigned to the sales and distribution transaction.

13. These settings carry out control both for sales order and delivery as well. This is due to the fact that you may want to include specific stock or incoming stock for the sales order, yet at the time of the delivery only include physical stock on hand waiting to be shipped.

14. It is possible to indicate to the system that you would like the availability check NOT TO CHECK the stock at the storage location level. This indicator is used to set the scope of the availability check. 

15. It is used to switch off the check at storage location level. You create a reservation for a particular storage location. However, the scope of the availability check is set in such a way as to exclude the storage location. In this case, the system carries out the check at plant level only and does not take the storage location into account that is specified in the reservation.

16. Should you not want the system to automatically check RLT, you may indicate so here. RLT is the time taken for a material to become available. It is only used when doing an ATP check and is taken from MMR.

17. Defining the elements in the availability check entirely depends on the business needs, but a few tips are given under –  
When controlling the Availability check at the time of the sales order, a purchase requisition does not necessarily indicate by it is going to come into the plant. 
A shipping notification on the other hand - a confirmed purchase order – is a good indicator of receiving stock on a specified date. 
It is always recommended not to select the shipping notifications for the delivery requirements type as you may not actually receive the stock into plant or warehouse for which you are creating a delivery.

Backward and Forward Scheduling


Backward scheduling is the calculation of deadline dates: the arrival time at the customer site is calculated as the earliest possible goods receipt time at the customers unloading point on the requested delivery date. All four of the delivery and transportation scheduling lead times are subtracted from the customer's requested delivery date to determine if this date can be met. 

The transit time, loading time, and pick/pack time are subtracted from the customer’s requested delivery date to calculate the required material availability date. 

The system calculates backward scheduling as follows: 

Requested delivery date minus transit time  = Goods issue date  
Goods issue date minus loading time = Loading date  
Loading date minus transportation lead time = Transportation scheduling date  
Loading date minus pick/pack time = Material availability date 

By default, the system will calculate delivery dates the closest day, taking into consideration the working days of the shipping point and a rounding profile. In this case the system assumes a 24 hour work day and lead times can be entered in days up to 2 decimal points.  This is referred to as daily scheduling. 

Precise scheduling calculated down to the day, hour and minute is supported.  This allows the scheduling of a delivery within a single day.  It is activated by maintaining the working hours for a particular shipping point. 

Backward scheduling is always carried out first.  If the material availability date or transportation scheduling date is calculated to be in the past, the system must then use forward scheduling. 

Forward scheduling is also done if no product is available on the material availability date calculated by backward scheduling. The system does an availability check to determine the first possible date when product will be available. This new material availability date forms the starting point for scheduling the remaining activities.  The loading time, pick/pack time, transit time, and transportation lead time are added to the new material availability date to calculate the confirmed delivery date. 

Creating Multiple Materials in Material Determination


Material Determination is used to swap one material for another.It is possible to get a list of materials for substituiton,but remember you can substitue only one material from the list.

This can be done through substituiton reason T Code [OVRQ] 
See the substitution reason number for Manual Material Selection 
- check the Entry box 
- check the Warning box 
- select A for Stategy 
- save.

Go To VB11 to create Material Determination (taking into consideration that all the previous steps for material determiantion i.e. maintaining condition types,maintaining procedures for material determination and assigning procedures to sales doc. types have been done)

Create one material determination,dont forget to give the Subst reason on top and also on the line.

Click the Variants Icon on top left-Sreen opens

Specify different materials you want to swap with the material you have enterd

Note that the subst reason is already copied on the screen

Remember materials should be of the same sales area,atleast Divisions should be same.

SD material Determination based on availability check


For SD material Determination you can create a Substitution reason and on the Strategy field, the following info. is available:

Product selection in the background is performed on the basis of the availability check.

We want to have the material determination only in case on material shortage. We expect the Substitution reason to give us this functionallity.   It does not hovever take the availabilty into account before substitution.

We thought the worse case is to create a ABAP which is linked to the "requirement" field in the Procedure (OV13).

Has anyone had the same requirement? Is this a bug or just incorrectly documented?

I also encountered this abnormally recently using material determination. In order to combat the problem, the first product substitution should be for the original material. I've illustrated this below:

Original Product: ABC 
Substitutes: DEF, XYZ

In order to perform product substitution ONLY in the case of ATP failure for product ABC, structure the Material Determination record as follows:

Material Entered: ABC Substitutes: ABC 
DEF 
XYZ

There seems to be a devaition at availability check and or on a conceptual note still.

Availability check can be configured both at requiremnt class and at the schedule line categories level.

Whilst the availabilty check at the requirement class level via global and mandatory configuration the schedule line catgry availability check deals with the order.

It is mandatory that the reqmnt class is flagged off for avlblty check and the schdelu line cat need not be.

The following are the mandatory for Availability check to happen--

1. Must be swithced on at the requirment class level and at the schedule line level.

2. Reqmnt type must exist by which a requiremnt class can be found

3. There must exist a plant and is defined

4.Checking group must be defined in Material Master records(it controls whthr the system is to create individual or collective reqmnt)

A combination of checking gropup and checking rule will determine the scope of availbaility check.

Availability Check on Quotation


SAP standard does not do an availability check on the quotation, as it is not a definite order, usually just a pricing quote.

When it is converted to an order, the first availability check is carried out, as well as credit checks.  The system will check stock in the plant, plus what is contained in the availability checking rule (scope of check) eg: can add POs for replenishment, purchase reqs, different planned orders, and subtract sales orders, deliveries etc already created against that material in that plant (and possibly Storage location).

If there is enough stock in the plant/SLoc, the system will give you a confirmed date, or give you a date based on the production time or purchasing time from the material master.  The date the system proposes is based on the customer's requested delivery date.

SAP first backward schedules looking at the required delivery date, less transportation time, less transportation lead time, less pick and pack time, less production/purchase time if applicable.  If the date it calculates is equal or later than today’s date, then it will confirm the customer’s required date.  If it falls in the past, SAP will then forward schedule for today’s date, plus the times listed above to get the date when the customer can actually have it.

ATP is the single most complex part of the SD module, depending upon how PP and MRP is set up.

MRP works semi-separately, depending on how it is set up.  Basically, MRP looks at the demand on the plant, and if it the stock does not meet expected sales orders and deliveries, it will create a purchase requisition (outside purchase) or requirement or planned order (for production) to cover the shortfall.  When MRP is started, it will turn the PR into a PO or the requirement into a production order.