Finite Capacity Scheduling Instruments

Calculating and working with earliest material availability

The VAPS takes into account the earliest material availability date = EMAD

Material availability: Fundamentals

Without any further specification, the VAPS calculates the EMAD just on production order line level. Hence, there is no EMAD per operation at all.  You can, however, have the VAPS also consider routing links so that the EMAD can be calculated by the production order routing line which means that a production order line can be started even when the material for one (or more) operations is not yet available. 

• We calculate a value that we call EMAD
• EMAD = earliest material availability date

Basics of the EMAD calculation

  • We create a unique list of component demand
    • Day by day
    • We take into account
      • Demand from production orders
      • Demand from sales orders
      • Demand from transfer lines
      • Demand from job planning lines
      • Demand from service lines
      • Demand from assembly orders
  • Then we create a unique list of component supply
    • Day by day
    • We take into account
      • Supply on inventory
      • Supply from purchase orders
      • Supply from production orders
      • etc.
  • Then we allocate component supply to component demand

Important! – This “only” happens in the “VAPS world”. We do not make reservations (table 337) when we run the EMAD allocation​

How we allocate

  • Reservations:

      • We do not work against reservations; we work with reservations.​
      • If you have components that are reserved, we respect this. We do not allocate them (again)
      • These components get the date from the reservation as EMAD
  • Priorities
    • You can define which demand you want to fulfill first​, e.g.: sales orders first, then production orders​. 
      This is done via a specific setting called “EMAD demand priority”
  • Allocation time

    • You can define a timeframe starting from today, for which you want to calculate the EMAD. This is done via the VAPS setup.

If there is enough component supply on a certain day, we allocate that supply to the component line and have the earliest material availability date for that component.

We do „all or nothing“: if there is one component missing for a production order line, we remove all other allocations to use the available components for other production orders​


We have different allocation types

  • Pending: we never ran an EMAD calculation for that production order line​

  • Allocated: we could allocate a component supply to the component demand. The EMAD could get set to the production order component line​

  • Allocation failed: we could not find enough component supply for the component demand. There was no EMAD set.

  • Allocation removed: We could allocate a component supply to the component demand. However, there is at least one other component line in that production order line, for which the allocation failed​ and hence, the allocation was removed.

Setting the EMAD

  • A production order typically requires multiple components
  • If all components are available in the look-ahead window timeframe,
    each component line gets an EMAD
  • We take the latest EMAD of all component lines as the EMAD for the
    production order. Example:
    • Production order 1
      • Component 1 – EMAD = December 1
      • Component 2 – EMAD = November 20 
      • Component 3 – EMAD = December 4
    • EMAD for production order 1 = December 4

Consider the EMAD on the production order routing line level

Without any further specification, the VAPS calculates the EMAD just on production order line level. Hence, there is no EMAD per operation at all.  You can, however, have the VAPS also consider routing links so that the EMAD can be calculated by the production order routing line. This means that a production order line can be started even when the material for one (or more) operations is not yet available. 

Let's assume you have three operations. Let's also assume that this requires a very expensive raw material, but only at the third. Hence, you want that expensive material to be there only when you plan that third operation to start. In other words: you can start the first two operations without that precious raw material available. If you assign that particular raw material to the third operation via a routing link, you now get EMAD information as follows (on the production order routing line level):

VAPS different EMAD for operations

Per default, after having calculated the EMAD allocation, the VAPS would schedule all three operations starting after the EMAD of the latest operation. For the sake of clarity, I switched on the Availability View where you see operations with available material in green, and the ones with unavailable material in red:

VAPS EMAD on production order line level

As stated above, you can instruct the VAPS to consider the routing links. This is done on the VAPS Setup page:

VAPS - EMAD use routing links

Further steps needed:

    • Create the desired routing link code

VAPS create routing link

  • Enter this routing link code on the according routing page and in the BOM
      • Routing:

        VAPS routing link in routing
      • BOM


        VAPS routing link on BOM level

As a result, two of your operations start at their earlier EMAD, the last one at its own, later EMAD, this, of course, saving you time in your production processes.


VAPS schedule with EMAD on production order routing line level

In the Availability View, the VAPS even provides an optical warning, if you drag an operation to a point of time that is before its EMAD by showing the according operation in red:

VAPS schedule with EMAD on production order routing line level late order

Tip: If you work with routing link codes you should define priorities in the dialogs "EMAD demand priority" and "Routing demand priority".

Exclude items from EMAD calculation

In the current EMAD calculation logic, “all” components of a production order are considered when calculating the availability date.

With very detailed BOMs and having even low-priority material in these BOMs (meaning material that could be replenished very easily e.g. by a local dealer around the corner), this could create some downsides:

  • material that is out of stock but could easily be replenished might render a production order as “unable to allocate”
  • all these materials need to be calculated, although they won’t be a blocker for the production process

Because of this, you can exclude certain items from the EMAD calculation by ticking the option “Exclude From EMAD (VAPS)” on the item card and related pages. You can also exclude complete item categories from EMAD, by ticking the option on the respective category card. In this case, the setting is passed on to all associated articles and does not have to be made separately for each article.

vaps exclude items from emad calculation

Consideration of the supplier's delivery date promises in planning

In times of uncertain supply chains, information about material availability has become more and more important. When parts are ordered, it is important to know whether the supplier has confirmed a delivery date and what that date is. Production planners need to know for which production order lines (still to be planned) there are unconfirmed required materials. What is more, they only want to specifically schedule the production order lines for which the supplier has confirmed a specific date. We have taken care of these planning requirements and implemented a new functionality.

The "VAPS Setup" dialog offers an option that allows to exclude production orders without a promised delivery date from the planning with "Add all" and "Add all incl. alternatives":

VAPS - exclude not fully promised pos

Please note that you can still plan these orders manually per drag and drop. 

Handling of operations without promised receipt date that are already allocated

In case operations of a production order with a missing promised receipt date are already allocated to resources, they can be made directly visible. For this, we have added a new option to the "Availability View". Now operations needing material that is not fully promised are shown in orange (default).

VAPS - availablity view orange

You can change the default color in the VAPS setup:

VAPS - color promised receipt date

The planner can move these operations back to Standby by an according menu item:

VAPS - move to standby without receipt date

More options to exclude/include certain items from EMAD calculation can be found on the Setup page.

Handling of operations with missed EMAD

The picture below shows a production order that is scheduled to start on the 14th (of February)


VAPS - po missed EMAD

However, when you have a look at the EMAD calculation, you'll see that the earliest availability date is the 16th.

VAPS - EMAD calculation missed EMAD

The VAPS provides a helpful feature in the "Schedule" menu that allows you to easily move any production orders that violate their earliest material availability date back to standby. This ensures that your production process stays on track and avoids any delays caused by unavailable materials.VAPS - missed EMAD

Handling of completely picked items


Completely picked (i.e., taken from inventory) items are treated with a higher priority than unpicked ones

Apply EMAD tolerance to an item

As is commonly known, the EMAD calculation provides a date from which the required quantity of component demand is available and before which the production order must not start. The newly implemented EMAD tolerance allows defining the criterion not too narrowly so that, e.g., an order could already start if only 95% of the required material is available.

To be able to do so, we have enhanced the item card with the respective setting option. When calculating the demand, the entered value is multiplied by the available quantity.

VAPS - apply EMAD tolerance

Run EMAD calculation from the Job Queue

With the help of the Business Central job queue, you can schedule certain background jobs for regular execution. The EMAD calculation, which until now could only be called via the VAPS (interactively with - depending on the data volume - long calculation times), can now be triggered via the job queue as soon as the VAPS is installed. Thus, it could be run at night, for example,  without supervision and without the need for someone to log on to the system to start the VAPS.

Setting up the job queue has to be done within Business Central by the administrator.