W celu optymalizacji generowanych propozycji zapotrzebowania materiałowego został zaktualizowany algorytm ich powstawania. Opisywany algorytm odnosi się do poniższych danych definiowanych w systemie:
- Minimalny stan magazynowy – pole dostępne w aplikacji Artykuły, w widoku Planowanie, sekcji Dane planowania.. Minimalny stan magazynowy oznacza najmniejszą liczbę artykułów, która powinna znajdować się na magazynie. Minimalny stan zapasów zabezpiecza przed ewentualnymi opóźnieniami w dostawach, zmianami w czasie realizacji zamówień oraz nagłymi wzrostami zapotrzebowania podczas uzupełniania magazynu. Stan zapasów nie powinien spadać poniżej stanu minimalnego – dlatego też mechanizm planowania zapotrzebowania materiałowego generuje odpowiednią propozycję po osiągnięciu stanu niższego niż wskazany jako minimalny.
- Poziom uzupełnienia stanów magazynowych – pole dostępne w aplikacji Artykuły, w widoku Planowanie, sekcji Dane planowania. Umożliwia zdefiniowanie ilości, do której stan magazynowy zostanie za każdym razem uzupełniony. Poziom uzupełnienia będzie uzupełniał stany w momencie, kiedy poziom zapasów jest mniejszy niż minimalny stan magazynowy.
- Poziom ponownego zamówienia – pole dostępne w aplikacji Artykuły, w widoku Planowanie, sekcji Dane planowania. Poziom ponownego zamówienia oznacza stan zapasów potrzebny do pokrycia zapotrzebowania w czasie odnawiania zapasów (tzn. w okresie od momentu złożenia zamówienia do chwili dostarczenia zamawianego artykułu). Spadek stanu zapasów poniżej stanu ponownego zmówienia wyznacza moment konieczności złożenia zamówienia na materiał.
- Czas odnowienia zapasów – pole dostępne w aplikacji Artykuły, w widoku Planowanie, sekcji Dane zakupu (zewnętrzne/wewnętrzne). Czas odnowienia zapasów (zewnętrznych lub wewnętrznych) to podawany w dniach kalendarzowych okres potrzebny na odnowienie zapasów, liczony od daty złożenia zewnętrznego lub wewnętrznego zamówienia do daty dostępności artykułu na magazynie.
- Długość cyklu produkcyjnego – pole dostępne w aplikacji Artykuły, w widoku Planowanie, sekcji Dane produkcyjne. Określa czas potrzebny na wytworzenie danego artykułu produkcyjnego (definiowany jako liczba dni roboczych od daty początkowej do daty końcowej). Wykorzystywany jest on w przypadku, gdy artykuł jest wytwarzany tylko na podstawie zestawienia materiałowego. W przeciwnym razie czas długości cyklu produkcyjnego obliczany jest na podstawie czasów w zdefiniowanej technologii produkcji oraz produkowanej ilości produkcji.
Sposób działania nowego algorytmu planowania:

Serwer planowania oblicza przewidywany stan magazynowy dla każdego artykułu. Jest to oczekiwana ilość artykułu (nie są brane pod uwagę propozycje planowania, produkcji, dystrybucji lub zakupów), która będzie dostępna w określonym terminie. Następnie serwer planowania porównuje przewidywane ilości z minimalnym stanem magazynowym oraz z poziomem ponownego zamówienia ustawionymi dla artykułu w aplikacji Artykuły, w widoku Planowanie.
Minimalny stan magazynowy i poziom ponownego zamówienia inicjują tworzenie propozycji zakupu/produkcji. Minimalny stan magazynowy zawsze generuje propozycję zakupu/produkcji, gdy prognozowana ilość zapasów spadnie poniżej tej wartości.
Poziom ponownego zamówienia pozwala definiować przedziały czasowe poprzez spójne działanie z czasem odnowienia zapasów. W danym przedziale zapotrzebowania są kumulowane, a system generuje tylko jedną propozycję zakupu/produkcji na cały okres.
W logice planowania wszystkie wymienione koncepcje współpracują. Najpierw system planuje ponowne zamówienia, a następnie sprawdza, czy konieczne jest zamówienie uzupełniające wynikające z minimalnego stanu magazynowego. Dzieje się tak tylko wtedy, gdy żaden czas odnowienia zapasów nie został jeszcze zakończony i pozostaje otwarty.
- Poziom minimalnych stanów magazynowych o wartości 0 jest brany pod uwagę w planowaniu.
- Poziom ponownego zamówienia, który ma wartość 0,nie jest uwzględniany przez algorytm planowania.
- Poziom uzupełnienia stanów magazynowych wynoszący 0nie jest uwzględniany przez algorytm planowania.
- Poziom ponownego zamówienia powinien mieć wartość większą od poziomu minimalnych stanów magazynowych.
W aplikacji Planowanie zapotrzebowania materiałowego dostępny jest parametr Optymalizuj przy przekroczeniu poziomu ponownego zamówienia. Funkcja ta pozwala na podzielenie zamawianej ilości na dwie propozycje. Gdy parametr jest wyłączony, ilość zamówienia jest obliczana w celu zwiększenia przewidywanej ilości zapasów do docelowego poziomu zapasów i nie ma znaczenia, czy data otrzymania jest wcześniejsza od obliczonej.
W przypadku, gdy parametr Optymalizuj przy przekroczeniu poziomu ponownego zamówienia jest aktywny, ilość z pierwszej propozycji zwiększy prognozowany poziom zapasów do docelowego poziomu zapasów dopiero w dniu dostawy. Druga propozycja podniesie prognozowany poziom stanów magazynowych do docelowego poziomu zapasów w dniu obliczeń o ilość zapotrzebowania w tym jednym dniu.
Przykład zastosowania

W podanym wyżej przykładzie, w momencie uruchomienia procesu planowania stan magazynowy znajduje się ponad poziomem ponownego zamówienia. Już drugiego dnia stan zostanie dwukrotnie zmniejszony przez istniejące w systemie zapotrzebowanie na dany artykuł. Biorąc pod uwagę czas odnowienia zapasów, jaki jest potrzebny na uzupełnienie zapasów, system w najszybszym możliwym terminie wygeneruje propozycję zapotrzebowania, która uzupełni stan zapasów do poziomu ponownego zamówienia. W przypadku gdy zostanie określona Wielkość partii dla artykułu w widoku Planowanie w aplikacji Artykuły zamówiona ilość może przekroczyć poziom ponownego zamówienia.