Punkty wejścia > Moduł Zapasy > Standardowy skrypt FUNCBN 

LECORD: Odczyt rekordu ORDERS

Filtr zleceń w toku w obliczeniach zapotrzebowania.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) w momencie odczytu blokady każdego rekordu tabeli ORDERS w celu utworzenia nagłówka pliku roboczego dla obliczeń.

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania

(Lokalizacja, artykuł itd.)

Klasa [F:ORD]

Zawiera rekord ORDERS

Zmienna typu integer I

Ustawienie I = 0 w celu przetworzenia zlecenia

Ustawienie I = 1 w celu zignorowania zlecenia

STRSTO: Obliczanie zapasu początkowego

Obliczanie zapotrzebowania zapasu początkowego

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany przed zapisem dowolnego rekordu tabeli CBNHEA ([F:CBH])

Pole zapas początkowy jest już obliczone i może zostać, w zależności od kontekstu, zmodyfikowane.

Zmienne

Zmienna lub maska

Definicja

WPRO

Zawiera 1, jeśli MPS

Zawiera 2, jeśli MRP

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

CALCOUV: Obliczanie pokrycia

Niestandardowe obliczanie pokrycia dla wszystkich przedziałów

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany tylko podczas obliczania pokrycia dla wybranych artykułów.

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

 [CBH] Załadowany nagłówek pliku roboczego

 [ITF] Załadowany artykuł-lokalizacja

 

Dostępne zmienne

  Zmienne początkowe

WNBBUC                  Liczba przedziałów

WNBJOU                  Liczba dnia przetwarzania (Data do – data od +1)

WBUCDEB(0..WNBBUC-1)             Tabela dat początkowych przedziału

WBUCFIN(0..WNBBUC-1)              Tabela dat końcowych przedziału

WQTY(0..WNBJOU-1)                    Tabela zapotrzebowania dzień po dniu

 I                                                          Flaga = 0

  Zmienne do zwrócenia

   WCOUV(0..WNBBUC-1)       Tabela pokrycia wg przedziału

    I  = 0                    Jeśli należy wykonać obliczenia standardowe 

I <> 0                   Jeśli tabela pokrycia została załadowana przez punkt wejścia

AFTREAPCB: Odczyt parametrów obliczeniowych

Początek przetwarzania lokalizacji

Kontekst i tryb działania

Transakcja

Brak transakcji w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany podczas zapotrzebowania materiałowego (MRP i MPS) po odczycie parametrów obliczania zapotrzebowania (tabela PARMRP) przed załadowaniem parametrów w zmiennych roboczych. Zawartość rekordu może zostać zmodyfikowana w celu uwzględnienia innych wartości parametrów.

Dostępne klasy i zmienne

Zmienna

Definicja

WPRO

Zawiera 1, jeśli MPS

Zawiera 2, jeśli MRP

Klasa [F:PCB]

Zawiera parametry lokalizacji

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

BEFWRICBH: Przed zapisem nagłówka tabeli roboczej

Punkt wejścia przed zapisem dowolnego rekordu tabeli roboczej CBNHEA / PDPHEA

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) po załadowaniu bufora klasy [CBH].

Rekordy tabeli roboczej CBW (tabela robocza dla przeterminowanych partii) są już zapisane.

Dostępne klasy i zmienne

Zmienne klasy

Definicja

Klasa [F:CBH]

Zawiera dane gotowe do zapisu

WPRO

Zawiera 1, jeśli MPS                                                     Zawiera 2, jeśli MRP

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

BEFWRICBD: Przed zapisem szczegółów tabeli roboczej

Punkt wejścia przed zapisem dowolnego rekordu tabeli roboczej CBNDET / PDPDET

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) po załadowaniu bufora klasy [CBD] z poziomu tabeli w toku ORDERS.

Dostępne klasy i zmienne

Zmienne klasy

Definicja

Klasa [F:CBH]

Zawiera dane nagłówka przetwarzanego artykułu

Klasa [F:CBD]

Zawiera bufor gotowy do zapisu

WPRO

Zawiera 1, jeśli MPS   Zawiera 2, jeśli MRP

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

CRESUG: Tworzenie sugestii w tabeli roboczej

Punkt wejścia przed zapisem dowolnej sugestii w tabeli roboczej CBNDET / PDPDET

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) po załadowaniu bufora klasy [CBD] dla dowolnej sugestii zakupu lub produkcji.

Bufor jest ładowany za wyjątkiem pól „Data od”, „Data do” i „Data zapotrzebowania”.  Zmienna WDATS zawiera datę referencyjną w celu utworzenia sugestii (datę zapotrzebowania), aby mogła ona zostać zmodyfikowana w celu wpłynięcia na daty sugestii.

 

Dostępne klasy i zmienne

Zmienne klasy

Definicja

Klasa [F:CBH]

Zawiera dane nagłówka

Klasa [F:ITF]

Zawiera dane zarządzania artykułem-lokalizacją

Klasa [F:CBD]

Zawiera bufor gotowy do zapisu (za wyjątkiem pól dat)

Zmienna typu data WDATS

Zawiera datę referencyjną w celu utworzenia sugestii (datę zapotrzebowania). Ta data może zostać zmodyfikowana w celu wpłynięcia na daty sugestii.

WPRO

Zawiera 1, jeśli MPS   Zawiera 2, jeśli MRP

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

ENDSTEP4: Po etapie 4 (generowanie szczegółowego pliku MRP)

Punkt wejścia na koniec etapu 4

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany na koniec etapu 4 (generowanie tabeli CBNDET). Umożliwia on np. ostrzeżenie użytkownika na koniec tego etapu poprzez wysłanie komunikatu.

Dostępne klasy i zmienne

Zmienne klasy

Definicja

Klasa [F:CBH]

Zawiera dane gotowe do zapisu

WPRO

Zawiera 1, jeśli MPS                                                     Zawiera 2, jeśli MRP

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

ENDSTEP6: Po etapie 6 (aktualizacja zleceń w toku)

Punkt wejścia na koniec etapu 6

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany na koniec etapu 6 (aktualizacja pliku ORDERS). Umożliwia on np. ostrzeżenie użytkownika na koniec tego etapu poprzez wysłanie komunikatu.

Dostępne klasy i zmienne

Zmienne klasy

Definicja

Klasa [F:CBH]

Zawiera dane gotowe do zapisu

WPRO

Zawiera 1, jeśli MPS   Zawiera 2, jeśli MRP

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

CUSMODLTI: Modyfikacja czasu realizacji kontroli jakości dla ZP

Możliwość modyfikacji czasu realizacji kontroli dla zleceń produkcyjnych

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) w momencie zapisu szczegółowego pliku roboczego ([F:CBD], tuż po pobraniu czasu realizacji kontroli jakości dla zleceń typu WOF i WOP. Umożliwia on modyfikację wartości tego czasu realizacji poprzez przypisanie zmiennej roboczej „Q”.

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania

(Lokalizacja, artykuł itd.)

Klasa [F:ORD]

Zawiera rekord ORDERS

Zmienna typu integer Q

Zawiera czas realizacji KJ.

Jeśli jest to konieczne do tej zmiennej należy przypisać inną wartość.

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

MRPQTYSUG: Modyfikacja ilości do uzupełnienia zapasów

Możliwość modyfikacji ilości do uzupełnienia zapasów

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany podczas planowania zapotrzebowania materiałowego (MRP i MPS) podczas etapu obliczania sugestii dla artykułów zarządzanych w zapasach. Umożliwia on wpłynięcie na ilość do uzupełnienia zapasów.

We wszystkich przypadkach ładowane jest przetwarzanie standardowe w celu zastosowania ewentualnych strat oraz zarządzania odpowiadającymi sugestiami przestrzegając polityki uzupełniania zapasów (ilość netto/ekonomiczna, podział itp.).

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania

(Lokalizacja, artykuł itd.)

Zmienna typu decimal WBES

Zawiera ilość uzupełnienia zapasów obliczoną w standardzie.

Jeśli jest to konieczne do tej zmiennej należy przypisać inną wartość.

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

COR_STOSEC: Zastosowanie sezonowości zapasu bezpieczeństwa

Możliwość zastąpienia standardowej metody stosowania przez sezonowość zapasu bezpieczeństwa

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany podczas planowania zapotrzebowania materiałowego (MRP i MPS) podczas etapu obliczania sugestii dla artykułów zarządzanych w zapasach. Umożliwia on interwencję w kwestii stosowania sezonowości zapasu bezpieczeństwa.

We wszystkich przypadkach ładowane jest przetwarzanie standardowe w celu zastosowania ewentualnych strat oraz zarządzania odpowiadającymi sugestiami przestrzegając polityki uzupełniania zapasów (ilość netto/ekonomiczna, podział itp.).

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania (Lokalizacja, artykuł itd.)

Klasa [F:ITF]

Zawiera dane przetwarzanego artykułu-lokalizacji

Zmienna typu data WDAT

Zawiera datę rozpoczęcia danego przedziału

Zmienna typu decimal WSAISON

Ta zmienna musi zostać uzupełniona przy pomocy obliczonego zapasu bezpieczeństwa

Zmienna globalna GPE

Do ustawienia jako 1 w celu uniemożliwienia standardowego zastosowania sezonowości.

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

XTRA_ORD: Uwzględnienie zleceń w toku dla artykułów dodatkowych

Ten punkt wejścia umożliwia dodanie dodatkowych artykułów w toku

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) na koniec etapu ładowania artykułu w toku. Umożliwia on integrację dodatkowych zleceń w toku, np. wydania z innej lokalizacji.

Przykład algorytmu dodawania:

###########################################################################

$ACTION

Case ACTION

   When 'XTRA_ORD': Gosub XTRA_ORD

Endcase

Return

 

#---------------------------------------------------------------------

$XTRA_ORD

Filter [ORD] Where STOFCY = 'XXX' &

&                  ITMREF = [F:CBH]ITMREF &

&                  FMI < 2 &

&                  WIPSTA < 4

&             Order By Key ORD1

 

For [ORD]

    Readlock [ORD] Curr

    If fstat = 0

        I = 0

        If [F:ORD]ENDDAT <= WCALDATF

            If I = 0

                # Ważne: należy ponownie zainicjalizować lokalizację w [ORD], ponieważ transklasa [CBD] = [ORD] w TRT_ORD

                [F:ORD]STOFCY = [F:CBH]STOFCY

                Gosub TRT_ORD From FUNCBN

                If GOK <>1

                    Break

                Endif

            Endif

        Endif

    Else

        GOK = -1

        Break

    Endif

Następny

Filter [ORD]

Return

 

 

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania (Lokalizacja, artykuł itd.)

Klasa [F:ITF]

Zawiera dane przetwarzanego artykułu-lokalizacji

 

SUGREQAVA: Uwzględnienie czasu realizacji kompletacji

Ten punkt wejścia umożliwia uwzględnienie czasu realizacji kompletacji w ramach obliczeń dat sugestii.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) w podczas obliczania dat sugestii. 

Przykład algorytmu uwzględniania czasu realizacji kompletacji:

  

$ACTION

Case ACTION

    When 'SUGREQAVA': Gosub SUGREQAVA

Endcase

Return

$SUGREQAVA

Case [F:ITF]REOCOD

    When 3,5: # ordre de fabrication suggéré

               WDATR = WDATF

               If [F:ITF]PRPLTI = 0

                    WDATF = WDATR

               Else

                    WCOR = 8

                    WCOD = 2

                    WDEL = [F:ITF]PRPLTI

                    Call CALDAT('-',WCOR,WDATR,WCOD,WDEL,WCAP,WCALDATD,WDATF) From CBNLIB

               Endif

    When Default # ordre d'achat/ordre inter-site suggéré

Endcase

Return

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania (Lokalizacja, artykuł itd.)

Klasa [F :ITF]

Zawiera dane przetwarzanego artykułu-lokalizacji

 

 

CHECK_CBNDET: Kontrola przed aktualizacją zleceń w toku

Ten punkt wejścia umożliwia interwencję po obliczeniu sugestii dla każdego artykułu i przed aktualizacją zleceń w toku (ORDERS).

Można go w szczególności użyć do kontroli, modyfikacji lub wyczyszczenia tabel roboczych PDPDET i CBNDET przed aktualizacją.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany podczas planowania zapotrzebowania materiałowego (MRP i MPS) podczas etapu obliczania sugestii dla artykułów zarządzanych w zapasach. Umożliwia on wpłynięcie na ilość do uzupełnienia zapasów. Umożliwia on interwencję przed aktualizacją zleceń w toku (aktualizacja tabeli ORDERS na podstawie PDPDET/CBNDET w następstwie obliczeń).

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

REPLANNING: Przed ponownym planowaniem sugestii

Możliwość zastąpienia standardowej metody stosowania przez sezonowość zapasu bezpieczeństwa

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Zmienna GREPLANNING umożliwia identyfikację, gdzie ten punkt wejścia jest wywoływany:

- RPL_INIT na początku przetwarzania ponownego planowania dla danej lokalizacji

- RPL_TRTSUGITM obliczenia sugestii artykułu

- RPL_CUMSTODIS obliczenia sumy dostępnego zapasu

- RPL_CALSUGSTO obliczenia sugestii artykułu w zapasach

 

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania (Lokalizacja, artykuł itd.)

Klasa [F:ITF]

Zawiera dane przetwarzanego artykułu-lokalizacji

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

LOAD_BUCKET: Przed korektą przedziałów

Konkretne przygotowanie przedziałów lub uniknięcie korekt standardowych.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) po załadowaniu parametrów. Umożliwia on uniknięcie standardowych obliczeń korekt przedziałów poprzez aktywację parametru GPE>0. 

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania

(Lokalizacja, artykuł itd.)

Klasa [F:ORD]

Zawiera rekord ORDERS

Zmienna typu integer I

Ustawienie I = 0 w celu przetworzenia zlecenia

Ustawienie I = 1 w celu zignorowania zlecenia

ENDSTEP5: Po etapie 5 (planowanie zasobów)

Punkt wejścia na koniec etapu 5

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany na koniec etapu 5 (obliczanie sugestii). Umożliwia on np. dodanie konkretnych WOS w CBNDET przed wygenerowaniem zleceń w toku.

Dostępne klasy i zmienne

Zmienne klasy

Definicja

Klasa [F:CBH]

Zawiera dane gotowe do zapisu

WPRO

Zawiera 1, jeśli MPS                                                     Zawiera 2, jeśli MRP

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

NOHINT: Optymalizacja powiązania ITM-ITF

Ten punkt wejścia umożliwia dodanie instrukcji „With Nohint” w przypadku problemów z wydajnością w instrukcji „Link” między tabelami [F:ITM] i [F:ITF].

Jest on wywoływany w skrypcie FUNCBN.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowanie zapotrzebowania materiałowego tuż przed pętlą na artykułach, których tryb uzupełniania zapasów to MRP/MPS.

Musi być on ustawiony jako 1 w konkretnym procesie powiązanym z punktem wejścia, jeśli użytkownik chce dodać instrukcję „With Nohint” w użytym zapytaniu.

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania

(Lokalizacja, artykuł itd.)

Klasa [F:ORD]

Zawiera rekord ORDERS

Zmienna typu integer I

Ustawienie I = 0 w celu przetworzenia zlecenia

Ustawienie I = 1 w celu zignorowania zlecenia

NOLOCK: Optymalizacja czyszczenia poprzednich wyników

Ten punkt wejścia umożliwia uniknięcia „Readlock ... Delete”, które są zbyt długie w dużej bazie danych oraz pozwala na użycie trybu mój-użytkownik z globalną blokadą tabel, których dotyczy PUR_TABLES_MONO.

Jest on wywoływany w skrypcie FUNCBN.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego tuż przed wyczyszczeniem poprzednich wyników.

Używana jest zmienna GPE. Domyślnie jej wartość to 0. Jest ona ustawiana jako 1 w konkretnym/spersonalizowanym skrypcie, powiązanym z punktem wejścia, jeśli użytkownik chce użyć trybu jednego użytkownika poprzez zastosowanie globalnej blokady na odpowiednich tabelach.

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania

(Lokalizacja, artykuł itd.)

Klasa [F:ORD]

Zawiera rekord ORDERS

Zmienna typu integer I

Ustawienie I = 0 w celu przetworzenia zlecenia

Ustawienie I = 1 w celu zignorowania zlecenia

CRE_SUG_SPLIT: Rozbicie sugestii

Ten punkt wejścia umożliwia interwencję podczas generowania sugestii w celu przejścia do rozbicia, np. na wielu dostawców.

Jest on wywoływany w skrypcie FUNCBN.

Kontekst i tryb działania

Transakcja

Brak transakcji w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego tuż przed wygenerowaniem sugestii w tabeli obliczeniowej.

Dostępne są następujące zmienne:

WSUG Ilość sugestii

WDATS Data sugestii

WNBR Liczba podziałów zgodnie z polityką uzupełnienia zapasów

WSTO Saldo zapasów dla obliczeń w toku

Przykład źródła

#--------------------------------------------------------------------------------------
# Punkt wejścia CRE_SUG_SPLIT
# W celu personalizacji rozbicia sugestii
# Dostępny jest rekord [F:CBH]
# Zmienne:
# – WSUG = sugerowana ilość
# – WDATS = sugerowana data
# – WNBR = liczba podziałów zgodnie z polityką uzupełniania zapasów
# – WSTO = saldo zapasów
#--------------------------------------------------------------------------------------
$ACTION
Case ACTION
When 'CRE_SUG_SPLIT': Gosub CRE_SUG_SPLIT
Endcase
Return
#--------------------------------------------------------------------------------------
$CRE_SUG_SPLIT
# ekran parametrów
If clalev ([M:ZCSP]) <= 0: Local Mask ZCSP [ZCSP]: Endif
# test przypadku >> tylko dla nabytego artykułu „SPLIT” (GX3APP)
If [F:CBH]ITMREF <> 'SPLIT': Return: Endif
# tylko dla sugestii zamówienia zakupu
If [F:CBH]REOCOD <> 2: Return: Endif
# uzupełnianie ekranu parametrów ZCSP
Wyzeruj [M:ZCSP]
[M:ZCSP]STOFCY = WFCY
[M:ZCSP]ITMREF = [F:CBH]ITMREF
[M:ZCSP]QTY = WSUG
[M:ZCSP]DAT = WDATS
[M:ZCSP]STOBAL = WSTO
[M:ZCSP]PROCESS = 'ZFUNCBN'
Gosub POS_SPLITTING
GPE = 1
Return
#--------------------------------------------------------------------------------------
$FEEDBACK
WSUG = [M:ZCSP]QTYOUT
WDATS = [M:ZCSP]DATOUT
WBPRO = [M:ZCSP]BPROUT
WSTO = [M:ZCSP]STOBAL
Gosub CRE_UNE_SUG From FUNCBN
Return
 
#--------------------------------------------------------------------------------------
# Rozbicie sugestii zamówienia zakupu
#--------------------------------------------------------------------------------------
# Należy otworzyć i uzupełnić informacje na ekranie parametrów ZCSP (ekran ZCSP musi istnieć)
#--------------------------------------------------------------------------------------
$POS_SPLITTING
Local Char TSUG_BPR(GLONBPR)(3)
Local Integer TSUG_BPRPCT(3)
Local Decimal TSUG_BPRMINQTY(3)
Local Decimal WWRK, WREO, WREOTOT, WDELTA
Raz TSUG_BPR, TSUG_BPRPCT, TSUG_BPRMINQTY
# test przypadku (GX3APP) rozbicie na 3 dostawców
TSUG_BPR(0) = 'FOU001'
TSUG_BPRPCT(0) = 40
TSUG_BPRMINQTY(0) = 250
TSUG_BPR(1) = 'FOU002'
TSUG_BPRPCT(1) = 40
TSUG_BPRMINQTY(1) = 200
TSUG_BPR(2) = 'FOU003'
TSUG_BPRPCT(2) = 20
TSUG_BPRMINQTY(2) = 150
# -------------------------------
# przetworzenie 1. rozbicia – dostawca 3
WWRK = int(([M:ZCSP]QTY * TSUG_BPRPCT(0)) / 100)
If WWRK < TSUG_BPRMINQTY(0): WREO = TSUG_BPRMINQTY(0): Else: WREO = WWRK: Endif
WREOTOT += WREO
[M:ZCSP]QTYOUT = WREO
[M:ZCSP]DATOUT = [M:ZCSP]DAT + 1
[M:ZCSP]BPROUT = TSUG_BPR(0)
Gosub FEEDBACK From =[M:ZCSP]PROCESS
If WREOTOT >= [M:ZCSP]QTY: Return: Endif
# -------------------------------
# przetworzenie 2. rozbicia – dostawca 3
WWRK = int(([M:ZCSP]QTY * TSUG_BPRPCT(1)) / 100)
If WWRK < TSUG_BPRMINQTY(1): WREO = TSUG_BPRMINQTY(1): Else: WREO = WWRK: Endif
WREOTOT += WREO
[M:ZCSP]QTYOUT = WREO
[M:ZCSP]DATOUT = [M:ZCSP]DAT + 1
[M:ZCSP]BPROUT = TSUG_BPR(1)
Gosub FEEDBACK From =[M:ZCSP]PROCESS
If WREOTOT >= [M:ZCSP]QTY: Return: Endif
# -------------------------------
# przetworzenie 3. rozbicia – dostawca 3
WWRK = int(([M:ZCSP]QTY * TSUG_BPRPCT(2)) / 100)
If WWRK < TSUG_BPRMINQTY(2): WREO = TSUG_BPRMINQTY(2): Else: WREO = WWRK: Endif
WREOTOT += WREO
[M:ZCSP]QTYOUT = WREO
[M:ZCSP]DATOUT = [M:ZCSP]DAT + 1
[M:ZCSP]BPROUT = TSUG_BPR(2)
# ostatnie rozbicie, korekta salda zapasów na potrzeby obliczeń MRP
[M:ZCSP]STOBAL += (WREOTOT – [M:ZCSP]QTY)
Gosub FEEDBACK From =[M:ZCSP]PROCESS
Return

CTLSTOSEC: przypadek szczególny zapasu bezpieczeństwa dla pierwszego zapotrzebow

Ten punkt wejścia umożliwia interwencję w celu wyzerowania zmiennej zapasu bezpieczeństwa.

Jest on wywoływany na koniec skryptu FUNCBN, jeśli parametr „Przestrzegaj zapasu bezpieczeństwa” jest ustawiony jako 1. zapotrzebowanie i tylko dla pierwszego przedziału i jeśli WBESBUC=0.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania (Lokalizacja, artykuł itd.)

Klasa [F:ITF]

Zawiera dane przetwarzanego artykułu-lokalizacji

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

NOADJUST: Korekta zapasu początkowego

Obliczanie zapotrzebowania zapasu początkowego

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany tuż przed korektą zapasu początkowego, jeśli zażądano zapasu fizycznego.

Korekta polega na nieuwzględnianiu dokumentów WZ/dokumentów kompletacji, które oczekują na zatwierdzenie. 

Aktywacja zmiennej GPE=1 pozwala na uniknięcie korekty zapasu początkowego i powrót do trybu funkcjonowania V5, w którym wszystkie alokacje są odejmowane od dostępnego zapasu.

Zmienne

Zmienna lub maska

Definicja

WPRO

Zawiera 1, jeśli MPS

Zawiera 2, jeśli MRP

 

Otwarte tabele

Wszystkie tabele obliczania zapotrzebowania.

BEFWRICBD1: Przed zapisem wyniku MRP

Ten punkt wejścia umożliwia kontrolę lub poprawienie niektórych informacji tuż przed wygenerowaniem zapotrzebowania w tabeli CBNDET lub PDPDET.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) tuż przed wstawieniem zapotrzebowania w wyniku MRP/MPS (2 wywołania). 

Używana jest zmienna GPE. Domyślnie jej wartość to 0. Musi być ona ustawiona jako 1 w konkretnym procesie powiązanym z punktem wejścia, jeśli użytkownik chce uniknąć zapisu bieżącej pozycji.

Dostępne/możliwe do zmodyfikowania zmienne znajdują się w buforze [F:CBD1].

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania (Lokalizacja, artykuł itd.)

Klasa [F:ITF]

Zawiera dane przetwarzanego artykułu-lokalizacji

 

 

CTLDATSUG: Kontrola daty sugestii

Ten punkt wejścia umożliwia kontrolę lub poprawienie niektórych informacji tuż przed wygenerowaniem zapotrzebowania w tabeli CBNDET lub PDPDET.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany w planowaniu zapotrzebowania materiałowego (MRP i MPS) na koniec obliczania daty rozpoczęcia i zakończenia sugestii ($CALDATSUG).

Dostępne/możliwe do zmodyfikowania zmienne to WDATD = data rozpoczęcia sugestii i WDATF = data zakończenia sugestii.
Inne informacje dotyczące bieżącej sugestii znajdują się w buforze [F:CBD1].

Dostępne klasy i zmienne

Zmienna

Definicja

Klasa [F:CBH]

Zawiera dane w trakcie przetwarzania (Lokalizacja, artykuł itd.)

Klasa [F:ITF]

Zawiera dane przetwarzanego artykułu-lokalizacji

CTLSTO: Zasoby magazynowe w trakcie kontroli jakości

Ten punkt wejścia umozliwia dostęp do tworzenia (innego) zasobu dla zapasów w trakcie kontroli jakości.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany podczas MRP i z poziomu MPS przed utworzeniem innego zasobu zapasu w trakcie kontroli jakości ($CTL_STO).

Punkt wejścia jest umiejscowiony tuż przed instrukcją „Write [CBD]”.

Zmienna GPE może zostać zmodyfikowana: GPE = 0 tworzy zasób, GPE <> 0 nie tworzy zasobu. Wartości pól klasy [F:CBD] (szczegółowe planowanie zapotrzebowania materiałowego), np. ilość i data zapotrzebowania, mogą zostać zmodyfikowane przed utworzenie zasobu.

Jeśli ustawiono parametr GOK<>1 to transakcja się zatrzymuje.


STARTSTOCKECC: Reorganizacja wersjonowanego zapasu początkowego

Ten punkt wejścia umożliwia reorganizację wersjonowanego zapasu początkowego po obliczeniu wersji.

Kontekst i tryb działania

Transakcja

Istnieje transakcja w toku.

Log

Istnieje otwarty log.

Różne przypadki wywoływania

Ten punkt wejścia jest wywoływany z MRP i MPS bezpośrednio po obliczeniu zapasu początkowego dla wersjonowanego artykułu. Ten punkt wejścia może być używany w celu reorganizacji obliczonego zapasu początkowego. Na przykład w celu przypisania sumy zapasu początkowego wszystkich wersji do konkretnej wersji (ostatniej wersji).

Zapas początkowy każdej wersji znajduje się na poziomie WECCSTODIS(n), a odpowiadające wersje główne i podwersje na poziomie WECCVALMAJ(n) i WECCVALMIN(n). n = maksymalna liczba wersji (kod działania ECCMX).

Jeśli ustawiono parametr GOK<>1 to transakcja się zatrzymuje.


REOMGT: Ignorowanie niezarządzanych artykułów

Ignorowanie artykułów (lokalizacji), których tryb uzupełniania zapasów = „niezarządzane”.

Opis kontekstu

Ten punkt wejścia umożliwia zignorowanie w obliczeniach MRP wszystkich artykułów (lokalizacji) , których tryb uzupełniania zapasów = „niezarządzane”. Dla tych artykułów nie tworzony jest żaden rekord w tabeli Planowanie zapotrzebowania materiałowego (CBNHEA), co może mieć wpływ na ulepszenie wydajności.


Uwaga: Dla wyprodukowanych artykułów, jeśli „ignorowane” artykuły są uznawane za składniki BOM-u, wyzwalany jest dodatkowy odczyt bazy danych, co może z kolei wpłynąc na zmniejszenie wydajności.


Transakcja

Istnieje transakcja w toku.


Log

Istnieje otwarty log.


Dostępna zmienna

Integer WREOMGT Domyślnie zdefiniowana jako 0 w celu uwzględniania wszystkich artykułów w obliczeniach MRP. Zdefiniowanie jako 1 umożliwia zignorowanie w obliczeniach MRP wszystkich artykułów (lokalizacji) , których tryb uzupełniania zapasów = „niezarządzane”.