Info
The Time vector, Calculating what’s Available. The essentials forward using the JIT MRP engine.
Introduction #
Silicon ioi is an ERP software package featuring a forecasting and scheduling engine for Purchases and Manufactured products. Its particularity is to be composed of a “Near real time” core running permanently on the “back end” of the server. This makes it possible to quickly detect the needs and shortages of the various Items.
On a daily or hourly scale #
Most MRP engines operate on a weekly, and in exceptional cases daily, granularity. MRP processing of requirements is carried out in a time vector which has a fine granularity of the day, but which can go down to the hour level.
A type II MRP (Materials Requirement Planning) #
The planning engine complies with the principles for calculating Manufactured times laid down in the MRP II principles. This means that it takes into account the manufacturing time modeled in the Routing.
We invite the user to consult documents and training courses on the MRP I and MRP II principles.
A JIT Engine #
The planning engine is based on Just In Time (JIT) principles. It integrates master plan management. It can receive and manage customer consumption forecasts via an ERP-to-ERP (“machine to machine”) link, either from the customer’s ERP, or from the sales or Manufactured forecast departments. Silicon ioi also integrates the possibility of communicating with the upstream supply chain via ERP to ERP (‘machine to machine’) links to transmit the necessary supply plans to the various suppliers.
We invite the user to consult documents and training courses on MRP I and MRP II principles.
The Time vector #
The Time vector is an ERP-integrated process for continuously positioning planned future outputs (requirements) and planned inputs in a time line, and calculating a future profile over time.
Diagram:

Here we’ve represented the future stock situation of an item by placing the elements that influence the future stock profile:
- Stock at today’s date
- In P1, a supply at an expected date of arrival.
- In S1, a sale to be delivered on an agreed date.
- In P2, a supply with an expected arrival date.
- In S2, a sale to be Delivered on an agreed date.
- In P3, a supply with an expected arrival date.
We can see that the S2 sale will not be feasible, as it brings the Chart below zero and also below the Alert level or safety stock.
Info
The “balance to date” is the line shown here.
The engine detects this Alert type, which is called a forecast Alert. The system constantly analyzes all items for which a new event has occurred (change in stock quantity) or an existing item has been modified (customer order, new production). It immediately lifts the Alert.
Documents affecting the Time vector #
Here are the documents that come into play in the Time vector:
Attention
There is one Time vector for each Locations, so needs are isolated between them. On the other hand, it is possible to link the needs of the Locations and compensate for them by purchasing and selling between sites at prices agreed between them.
For stock output forecasts over time. #
- Sales Order lines (
ioi Sales,Order Detail) - Master Schedule (
ioi Master Schedule) coupled with Orders by date interval - Productions, Estimated Consumption section, (
ioi Production,Is. Materials) - Folders, estimated consumption part, (
ioi Dossier,Is. Materials)
For forecasts of In stock entries over time #
- Purchase Order lines, (
ioi Purchases,Order Detail) - Purchases Proposals, (
ioi Purchases Proposal) - Productions, head section, (
ioi Production) - Folders, head part, if item specified (
ioi Dossier)
For the starting point #
- From warehouses that have not been removed from the time vector.
Diagram :

Data integrated into the Time vector #
In each document, essential information is used and integrated into the Time vector.
- The Item, a key element, only lines with an Item are integrated into the Time vector.
- The site, there’s a time vector for each shop and each site for an item too. This is essential data. There is therefore a date balance per site and a date balance per shop.
- From warehouse, there is also a time vector per warehouse. It is important to indicate in the documents which warehouse will be used for picking.
- The expected quantity that will cause the stock variation. This means: balance to be Delivered, balance to be Received.
- The scheduled date of the stock change.
Attention
Some shops are excluded from the time vector for calculating balances. If documents refer to these warehouses (excluded from the time vector), the information will appear in the time vector but will be neutral in terms of the balance to date. (Outside Calculate).
Remove a Shop from the Time vector. #
In some company organizations, it’s interesting not to include part of the stock in what must be available.
Example:
- Stock dedicated to R&D must not be available for sale.
- Reserve stock for the repair center (in-house repairs) must not be available for sale.
From ioi Warehouse.
To inhibit a Shop, check the Off time vector box.
→ This action is secure, it requires Level 1 privilege in your role for this Shop.

Example: “The Fun Bike Company”, Locations
BXL, ShopWREP,Repair Warehouse

Attention
Changing this parameter involves re-calculating the time vector for all items on the site. Please refer to the Time vector maintenance functions.
A sales order and the time vector #
The status of the document, from the Line #
If an Item is defined, only the document lines in these states are part of the time vector :
-
To Processed (-2), if an order quantity is defined, -
Forecast (-1)`, if an order quantity is defined,
-
Waiting (1)andConfirmed (2), if an order quantity is defined, -
In Backorder (3), if the balance to be delivered exists (Quantity Ordered > Quantity Delivered), -
En B.O. / Reserved (5), if the balance to be delivered exists (Quantity Ordered > Quantity Delivered).
Astuce
A hidden field named to_execute=1 if a line is “Active” and therefore present in the vector. If the to_execute=0 it means that the balance to be delivered is zero, that the order is in preparation or fully delivered.
This line must be placed in time. #
To answer the management question “When do you want the customer to be delivered?”, you have the Shipping Scheduled DateTime field, which is a copy of the Shipping date time field on the Order line. This date, for each new line, is taken from the Order header from the Shipping date time field.
Example:
- Order header
Note the Fill all lines button, allowing you to change the date in all lines already encoded.

- Order details
This is where you’ll find one of the main elements of the Time vector

In preparation, these lines will not be present in the Time vector.
→ Let’s place this document in Waiting.

The system will display and place these lines for the items in question over time.
By consulting the item master record, in the Time vector tab, here’s the stock situation (DEMO: “The Fun Bike Company”) detailed by warehouse, with the purchase order in preparation:

Here’s the situation with the Customer Order placed in standby:

The balance to date is calculated by the server using an event detection system. If the Time vector process is off or heavily Busy, you can request an immediate update by pressing the Button.

Here’s the situation with the balance to date:

Site Balance, will count all Locations. It will not take into account any warehouses that have been excluded from the calculation of the time vector.
Whs Balance, will calculate the balance per shop. For a clearer view of these totals, we recommend filtering by Shop Warehouse.
Example:

This applies to all Items. Here’s the other Order line, situation:

Please note the Scheduled which is the expected delivery date.
A Purchase order and the time vector #
The status of the document, of the line. #
If an Item is defined, only the lines of the document being in one of these states are part of the time vector.
-
To Processed, (-2), if an order quantity is defined. -
Forecast (-1), if an order quantity is defined. -
Waiting and Confirmed (1,2), if an order quantity is defined. -
In Backorder (3), if the balance receivable exists (Quantity Ordered>Quantity Received). -
En B.O. / Reserved)(5), if balance to be received exists (Quantity Ordered>Quantity received).
Astuce
A hidden field named to_execute=1 if a line is Active and therefore present in the vector. If the to_execute=0 it means that the balance to be delivered is zero, that the order is in preparation or totally received.
This line must be placed in time. #
To answer the management question “When do you want the customer to be delivered?”, you have the Expected Arrival DateTime field, which is a copy of the Asked Arrival date time field on the Order line. This date, for each new line, is taken from the order header from the Expected Arrival date time field.
Order header #
Example :
Note the Fill all lines button which allows you to change the date in all lines already encoded.

→ Let’s place this document in standby:

→ The system will display and place in time these lines for the Items under consideration:

The balance to date is calculated by the server with an event detection system. If the Time vector process is off or heavily Busy, you can request an immediate update by pressing the Button.

Here’s the situation with the balance to date:

Please note the Scheduled which is the Expected arrival date.
Descend in the Available to date under Alert level #
In the Item master, a minimum Alert level is defined. This generally corresponds to the former “Safety stock”, i.e. the stock level below which you must not go. Of course, it is possible to go below this level, but forecasts must be made so that this level is the bottom limit in terms of stock.
→ Let’s set an Alert level at 3 for one of the Items. The Time vector will display this Alert level.

→ Time vector var present this Alert level:

Attention
The Alert level, if set in the Item, applies to all Locations. If placed in the Locations settings, it applies only to that Site.
For site settings, please view the Site panel (from the Parameters tab) :

→ Let’s create a customer order that will bring the forecast stock below the Alert level.

For our second Order line, we have no Alert:

Calculate available and scheduled availability #
With Silicon ioi, you can manage forecasts for successful delivery execution of your orders. It’s important to understand these concepts:
From stock: From stock: The quantity is in stock, regardless of planned arrivals and exits. This is a plain stock availability check. However, this check is not sufficient for good management. If, for example, you have stock to deliver an order and another order, which should have been delivered the day before, is going to take up a large part of the stock, the first order cannot be delivered in its entirety.
Available: This is the counted quantity in stock of what needs to be delivered by the scheduled delivery date for this order line. It does not count the Alert level (or safety stock). Available indicates what you can deliver NOW to fulfill orders.
Planned availability: This is the quantity available for delivery ON THE SCHEDULED DATE, taking into account scheduled stock arrivals and the Alert level to be respected.
One-off request for available stock on an Order #
Access a purchase order which is not in Prepared or Completely Delivered status.
Use the Action menu.

The system will show you the results:

For the entire Order, the possible states of Available are:
No calculatedFullPartialNothing(no availability)
Note the availability calculation date displayed in the document. This allows you to check that you’re up to date.
→ In Order details:

For the first line, note that the Scheduled Available is decreased by 3 as it takes into account the Alert level.
You can therefore :
- Deliver the order NOW.
- Deliver the order on the PLANNED DATE.
Scheduling and Monitoring the Time Vector #
Time Vector Scheduling #
The Time Vector scheduling (module Time Vector Scheduler) allows you to precisely organize the periods during which the Time Vector is executed within a weekly calendar.
Astuce
It is recommended to pre-reserve sleep mode slots to ensure IT maintenance can be performed without disturbing Time Vector tasks.
Scheduling example:
Real-Time Monitoring: Time Vector Monitor #
You can verify at any moment if the Time Vector is running through the Time Vector Monitor module.
Astuce
In case of error or stoppage, you can restart the Time Vector process via the menu Action > Reset time vector.
Info
When the Time Vector is in sleep mode, the JIT engine is stopped as well!
Process Monitoring: Item Stack #
In the Item Stack panel, you can view the items pending for recalculation stack — there is one stack per site.
Time Vector Visualization by Item #
On each item, in the Time Vector tab, access the detailed view of future movements (supplies, sales orders, etc).
Example analysis:
- Starting stock for this item is zero.
- A first purchase order will bring stock to 1 when received.
- A second purchase order will increase stock to 12 (+11).
- A sales order will bring stock back to zero when delivered (-12).
Grid view:
Graph view:
Flat Balance (net requirement without timeline) #
Still in the Time Vector tab of the item, the upper panel provides a summary: without considering detailed scheduling, the system presents the raw feasibility of orders.
Here, nothing needs to be done: sales orders can be fulfilled once purchase orders are received.
Info
The system will alert you if a purchase order is late for delivery.
Removing a purchase order
For example, if you remove purchase order
POGLG/202300005/1, the requirement will not be covered anymore:
Astuce
The Time Vector does not process immediately: execution is periodic (e.g. every minute). If the stack is not empty, force an immediate recalculation using the VT process button.
In such cases, a new supply order is needed: quantities are missing. The JIT engine will automatically generate the required purchase proposals.
JIT Engine Setup #
Key Points #
JIT runs per site. You must create at least one configuration per site to be processed.
Example of site setup:
Initialization / Deletion Phase #
When starting a JIT process, it is important to delete documents created in previous sessions (all JIT documents are marked To Handle, dated, and have a session number). You can also retain some documents (with the Keep it option). Any line in To Handle status can be deleted at initialization.
→ Select the type of documents to delete based on your needs.
Astuce
No need to delete created productions if you do not use production!
The system then generates:
- Purchase orders or proposals
- Production orders
Initialization / Rescheduling Phase #
For stock-consuming documents (sales orders, production BOMs): if enabled, the system will reposition each document to the current date if the scheduled delivery time is in the past.
For stock-replenishing documents (purchase orders, purchase proposals, production): if enabled, the same logic applies. Documents are positioned before the stock movements in the Time Vector to avoid endless replenishment loops.
How to Generate Purchases #
- Define the purchase journal to use.
Choose whether to generate purchase orders or purchase proposals directly.
Astuce
Refine this choice at item level (see item record).
- If you are using reference items (with no item record), you can also generate orders.
- Option
replenish to max levelif defined. - For scheduled arrival dates, the system considers the delivery delay set with the purchase price and, if specified, the supplier’s delivery delay (in supplier record). If no delay is specified, the system uses the default delay.
How to Generate Production #
- Set the default journal for production.
- Choose direct production or production proposal.
Astuce
Refine this choice at item level (see item record).
- Option
replenish to max levelif enabled. - The system takes into account the routing for manufacturing lead time.
JIT Scheduling #
You assemble in JIT packages all the configurations you wish to run:
Example “FULL ANT/LG/BXL”
- Deletion phase
- ANTWERP, INIT, Initialization only
- LIEGE, INIT, Initialization only
- BRUSSELS, INIT, Initialization only
- Generation phase:
- ANTWERP RUN, execution without initialization
- LIEGE RUN, execution without initialization
- BRUSSELS RUN, execution without initialization
Filtering Items #
You can filter items to include or exclude based on any field in the item record.
Filtering Supplier Catalog #
Filtering is also available on any field of the supplier catalog.
Manual JIT Execution #
You can allow (or not) manual JIT launching.
Execution Schedule #
Define the days of the week for JIT execution.
Attention
Avoid scheduling during sleep mode.
Astuce
Multiple executions per day are possible.
Last JIT Execution #
Overview of recent launches.
A detailed log is available during and after each execution.
Purchase Orders Created by JIT #
View all orders generated with status To Handle.
Tracking: Execution and Origin #
In each document, check the execution ID (date/time encoded in the ID).
Track the link between order line detail and the original requirement being covered.
Items on Alert #
To find items in warning mode (alert threshold reached or below):
- Item records per site (
ioi item site) - Or the item list in warning mode