Konfiguracja ustawień dokumentów w Comarch WMS

1. Konfiguracja ustawień dokumentów

W aplikacji Comarch WMS umożliwiono konfigurację istotnych ustawień dokumentów. Te ustawienia (m.in. zapisu dyspozycji, rozbijania pozycji) opisuje tabela WMS.Configuration na bazie SQL systemu ERP Altum, (na którym zostały wykonane skrypty podczas instalacji aplikacji za pomocą Comarch ERP Auto Update). Większość z dostępnych tam atrybutów jest konfigurowalne z aplikacji Comarch WMS Zarządzanie, co zostało opisane w instrukcji użytkownika.
Poniżej przedstawiono tabelę z wartościami atrybutów, które należy skonfigurować z poziomu SQL.

Key Value
1 Resources_IsLacksAvaiable 1
3 Resources_WMSLotsImportance 1
4 SynchronizationMaxRetryCount 3
5 SynchronizationServiceAddress 127.0.0.1
6 SynchronizationServicePort 55432
  • Import_OverrideFeaturesFromDocuments – parametr dotyczący nadpisywania cechy dla artykułów z packing list (0 wyłączone, 1 włączone);
  • Resources_IsLacksAvaiable – parametr dotyczący włączenia/wyłączenie obsługi braków (0-wyłączona, 1- włączona);
  • Resources_LacksResolveLotsOnly– parametr dotyczący uzupełnienia braków dla partii (wartość 1) lub dla artykułu (wartość 0);
  • Documents_CopyAcceptanceHeaderAttributesToPositions – parametr dotyczący kopiowania atrybutu z nagłówka dokumentu przyjęcia na jego pozycję (0 wyłączone, 1 włączone);
  • Documents_CopyReleaseHeaderAttributesToPositions – parametr dotyczący kopiowania atrybutu z nagłówka dokumentu wydania na jego pozycję (0 wyłączone, 1 włączone);
  • Resources_PreferLowerLocations – parametr dotyczący preferowanego położenia dolnego (0 wyłączone, 1 włączone); Po zmianie na wartość 1 podczas wydań, jako priorytetowe będą podpowiadane położenia dolne, w przypadku gdy zadysponowana ilość jest mniejsza lub równa ilości zasobów na położeniu dolnym. Jeżeli zadysponowana ilość jest większa od ilości zasobów na położeniu dolnym, wówczas podpowiadane będzie położenie górne;
  • Documents_AssignOperatorOnSplittedPosition – parametr dotyczący przypisania operatorów dla podzielonych pozycji (0 wyłączone, 1 włączone);
  • Documents_ShowRealizationPositionStopMessage – parametr dotyczący pojawianie się komunikatu przy przerywaniu realizacji pozycji (0 wyłączone, 1 włączone, domyślnie ustawiona wartość 1);
  • PrintoutAfterAutomaticRealizationMode – parametr dotyczy drukowania dokumentu po realizacji automatycznej, przeprowadzonej z poziomu systemu ERP (0 – wyłączone, 1 – wydruk dokumentu, 2 – wydruk tylko całościowo zrealizowanego dokumentu, dokument zrealizowany częściowo nie zostanie wydrukowany);
  • MergeSourceDocuments – parametr determinuje sposób generowania dokumentów magazynowych podczas generowania z dokumentów handlowych; (0 – dla każdego dokumentu handlowego tworzony jest oddzielny dokument magazynowy; 1 – jeżeli jest taka możliwość generowany jest jeden dokument magazynowy do wybranych dokumentów handlowych);
  • AllowGenerateDocumentsWithoutProcessStage – parametr uzależnia powodzenie synchronizacji od dostępnych procesów (0 – dokument nie zostanie zsynchronizowany jeśli dostępny będzie więcej niż jeden proces, 1 – jeżeli podczas synchronizacji będzie dostępy więcej niż 1 proces to na dokumencie proces nie zostanie ustawiony, będzie on możliwy do wyboru podczas pierwszego podniesienia dokumentu);
  • Documents_InitialGroupingEnabled – parameter dotyczy wstępnego grupowania dyspozycji na liście dyspozycji oczekujących na podstawie warunku grupującego (1- dyspozycje na liście są wstępnie pogrupowane, 0 – dyspozycje nie są pogrupowane). W przypadku wyboru wartości 1 standardowo dyspozycje grupowane są według kontrahenta. Warunek ten może być zmieniony w funkcji [WMS].[Documents_GetGroupingCondition];
  • PrintGroupedDocumentSeparately – parametr określa czy zgrupowane dokumenty powinny być drukowane osobno czy jako jeden wydruk (0 – dokumenty drukowane oddzielnie, 1 – dokumenty drukowane są na jednym wydruku);
  • StartGroupingOnSingleDocumentSelection – parametr określa możliwość uruchomienia grupowania z pojedynczym dokumentem, do którego nie ma dokumentów podobnych (0 – grupowanie nie będzie możliwe, 1 – bez zaznaczenia dokumentów podobnych lub jeśli ich nie ma zostanie uruchomiony proces przypisany do dokumentu, dokument nie utworzy grupy złożonej z pojedynczego dokumentu);
  • StocktakingNumberOfElementsSynchronizedInTransaction – parametr określa liczbę elementów z arkusza inwentaryzacyjnego synchronizowanych w jednej transakcji. Domyślna wartość 0 oznacza, że synchronizowane będą wszystkie elementy na raz w pojedynczym wywołaniu Api. Po określeniu wartości parametru, elementy arkusza będą synchronizowane w pętli w paczkach o określonej licznie elementów w oddzielnych transakcjach;
    Uwaga
    Parametr obsługiwany od wersji ERP Altum 2019.5.
  • StocktakingChangeLogisticUnitLocationStrategy – parametr określający zachowanie aplikacji podczas inwentaryzacji ciągłej lub z systemu ERP, w przypadku gdy jednostka logistyczna została odnaleziona na innym położeniu oraz z innym zasobem, niż to które jest zapisane w systemie. Reasumując nastąpiło odczytanie jednostki logistycznej na innym położeniu z inną partią (założenie: P1 – partia znajdująca się na jednostce logistycznej w zasobach, która nie została odczytana podczas inwentaryzacji , P2 – partia odczytana na tej jednostce logistycznej podczas inwentaryzacji).
    Zachowanie aplikacji w zależności od wartości parametru:
    1 – partia P1 jest przenoszona razem z jednostką logistyczną na odczytane położenie;
    2 – partia P1 zostaje zdjęta z jednostki logistycznej i pozostaje luzem na położeniu, którym się znajdowała przed odczytem;
    3 – partia P1 zostaje wydana.
    Wartość 3 jest wartością domyślną.
  • StocktakingFindLotByLotEan – parametr odpowiedzialny za uzupełnianie danych na odczycie (klasa cechy, wartość cechy, data ważności, EAN) z danej partii towaru na odczytach inwentaryzacyjnych dla artykułów oznaczonych kodem EAN (1 wartość domyślna – po zeskanowaniu na odczycie kodu EAN odpowiadającego partii towaru, na odczycie zostaną uzupełnione dane (klasa cechy, wartość cechy, data ważności, EAN), wówczas po zapisaniu, taka pozycja zostanie dodana na odczyt; 0 – jeśli na odczycie operator zeskanuje kodu EAN odpowiadający partii towaru, wówczas zostanie wyszukany towar po tym EANie partii, ale na odczyt nie zostanie domyślnie dodana żadna partia towaru);
  • NotRealizedPositionsDocumentLockMode – parametr odpowiadający za odblokowywanie w systemie ERP dogenerowanych dokumentów na niezrealizowane pozycje, podczas częściowej realizacji dokumentów AWD/ZWM w aplikacji Comarch WMS (1 – dogenerowany dokument będzie odblokowany po stronie systemu ERP, 0 – dogenerowany dokument będzie zablokowany po stronie systemu ERP). Parametr może zostać dodany dla określonego procesu, ustawiając odpowiednią wartość w kolumnie ProcessStageId;
    Uwaga
    Standardowo parametr nie jest dodany w tabeli WMS.Configuration. Można go dodać poleceniem:
    INSERT INTO WMS.Configuration ([Key],[Value],ProfileId,IsGlobal,ProcessStageId,IsMultiValue)
    VALUES (‚NotRealizedPositionsDocumentLockMode’,1,NULL,1,NULL,0)
  • DbVersion – parametr wewnętrzny.
  • ErpInstalationVersion – parametr wewnętrzny.
Uwaga
Po modyfikacjach w tabeli WMS.Configuration należy wylogować oraz zalogować się ponownie do aplikacji Comarch WMS

1.1 Obsługa braków

Parametr Resources_IsLacksAvaiable z tabeli WMS.Configuration odpowiada za możliwość tworzenia pozycji, które są brakami. Tworzą się one w sytuacji, gdy zasoby po stronie WMS różnią się od tych po stronie ERP. Powód takich braków może być różny (np. wystawienie z poziomu kolektora dokumentu ZWM na towar, na który następnie przychodzi dyspozycja wystawiona w aplikacji Comarch ERP, w której brakuje właśnie tego towaru). Parametr ten pozwala stwierdzić gdzie powstały braki, przez co można zareagować na taką sytuację.
Nie ma możliwości modyfikacji tego parametru, gdy:

  • Nie wszystkie dokumenty ZWM są zatwierdzone,
  • Istnieją braki na dokumentach,

Gdy parametr jest wyłączony nie ma możliwości wygenerowania dokumentu, dla którego brakuje zasobów.

1.2 Uwzględnianie cech niewpływających na partię towaru

Parametr Documents_IgnoreLotInfluence odpowiada za obsługę cech, które nie wpływają na partię towaru podczas procesu przyjęć. Parametr ten może przyjmować dwie wartości:

  • „0” – nie ignoruje
  • „1” – ignoruje

1.3 Filtrowanie na liście pozycji

W aplikacji Comarch WMS Magazynier za rodzaj wyszukiwania pozycji na liście odpowiada parametr AutoFilterMode, którego wartość można skonfigurować z poziomu tabeli WMS.Configuration. Na liście pozycji dokumentu AWD/ZWM/MP domyślnie ustawiona jest wartość filtra: [Do realizacji], a zrealizowane pozycje zostają automatycznie ukryte na liście. Parametr AutoFilterMode odpowiada za zachowanie aplikacji po zeskanowaniu kodu (EAN, nazwy, położenia, cechy) pozycji. Parametr ten może przyjmowac dwie wartości:

  • 1 (domyślna) – Po zeskanowaniu kodu (EAN, nazwy, położenia, cechy) pozycji przycisk filtra przyjmuje wartość: [Wszystkie] i wyszukuje po wszystkich pozycjach z AWD/ZWM/MP (zrealizowanych oraz niezrealizowanych).
  • 0 – Po zeskanowaniu kodu (EAN, nazwy, położenia, cechy) pozycji przycisk filtra przyjmuje wartość: [Do realizacji], a wyszukiwanie odbywa się tylko w stosunku do pozycji niezrealizowanych w całości z AWD/ZWM/MP. Jeżeli użytkownik ręcznie zmieni wartość na przycisku z: [Do realizacji] na: [Wszystkie], wówczas wyszukiwanie będzie odbywało się dla wszystkich pozycji z AWD/ZWM/MP (zrealizowanych oraz niezrealizowanych). Jeżeli ponownie zmieni wartość na: [Do realizacji] wówczas ponownie wyszukiwanie powinno się odbywać tylko w stosunku do niezrealizowanych w całości pozycji.

Oznacza to, że przy wartości parametru AutoFilterMode równego 0 użytkownik nie będzie mógł skanerem wyszukać pozycji już zrealizowanej, jeżeli nie zmieni ręcznie filtra na wartość: [Wszystkie].
Niezależnie od ustawień wyżej opisanego parametru przy próbie realizacji pozycji, która została już całkowicie lub częściowo zrealizowana wyświetli się komunikat z informacją o stopniu realizacji pozycji oraz zapytaniem o edycję pozycji – rys. poniżej.

rys.1._5.3_konf

Natomiast dla dokumentów dodawanych z poziomu Comarch WMS Magazynier po zeskanowaniu towaru, który został już dodany oraz wybraniu opcji [Edytuj] wyświetlony zostanie komunikat „Ta pozycja została już zrealizowana” – rys. poniżej.

rys.2._5.3_konf

1.4 Uwzględnianie cech towarów przy wydawaniu zasobów

Parametr Resources_WMSLotsImportance odpowiada za to, jak będą traktowane elementy dokumentów
z Comarch ERP Altum przy wydawaniu zasobów. Przy ustawieniu wartości parametru 1, jeśli cechy towaru nie zostaną ustawione jawnie, to Comarch WMS sam dobierze zasoby według ustawionych algorytmów wydań i przesunięć. Jeśli zostanie określona cecha, a pojawi się rozbieżność pomiędzy stanami w Comarch WMS, a Comarch ERP Altum, wtedy zostanie wydany towar o innych cechach (z innej partii). W przypadku wartości parametru 0 określamy, że ważniejsze są partie z Comarch ERP Altum, tzn. wydawane są zasoby zgodne z partiami z ERP Altum (te same wartości cech wpływających na partie), a jeśli ich nie ma, powstaną braki na dokumentach WMS.

Wartość parametru Resources_WMSLotsImportance przyjmuje domyślną wartość 0. Parametr ten nie zmienia wartości podczas konwersji.

Uwaga
Nie można zmienić wartości parametru Resources_WMSLotsImportance do momentu zatwierdzenia wszystkich dokumentów magazynowych w systemie Comarch ERP Altum.

1.5 Określanie liczby prób synchronizacji

Parametr SynchronizationMaxRetryCount z tabeli WMS.Configuration określa ile prób synchronizacji zostanie podjętych w przypadku problemu z przesłaniem danego obiektu.

Domyślnie parametr SynchronizationMaxRetryCount ma ustawioną wartość 3, co oznacza, że w przypadku problemu z synchronizacją danego obiektu zostaną przeprowadzone kolejne 2 (łącznie 3) próby synchronizacji tego obiektu. W przypadku restartu usługi synchronizacji następuje ponowna próba zsynchronizowania wszystkich obiektów, które wcześniej nie zostały zsynchronizowane. Nie jest wówczas brana pod uwagę ilość wcześniejszych prób synchronizacji.

1.6 Dane dotyczące usługi synchronizacji

Tabela konfiguracyjna zawiera parametr SynchronizationServiceAddress, który informuje o tym na jakim serwerze pracuje usługa synchronizacji Comarch WMS Service.

Uwaga
Jeżeli usługa Comarch WMS Service będzie uruchomiona na tym samym stanowisku co serwer baz danych, należy podać następujący adres: 127.0.0.1. lub adres komupeta obsługującego synchronizację

Kolejnym parametrem dotyczącym usługi synchronizacji jest parametr SynchronizationServicePort, który określa na jakim porcie działa synchronizacja. Domyślną wartością jest port 55432.

1.7 Automatyczna realizacja przesunięcia

Dla przesunięć typu: Zmiana położenia nośnika oraz Rozpakowanie nośnika istnieje parametr AutomaticRealization (tabela WMS.ProcessTasks, kolumna Arguments), który może przyjmować 2 wartości:

  • True (wartość domyślna) – podczas przesunięcia automatycznie ustawiana jest ilość zrealizowana dla towarów zgodnie z ilością znajdującą się na nośniku;
  • False – podczas przesunięcia automatycznie ustawiana jest ilość zrealizowana „0”; dyspozycja musi zostać zrealizowana przez operatora.

1.8 Ustawienia dat ważności

W aplikacji Comarch WMS Magazynier istnieje możliwość korzystania z dat ważności dla towarów. Za określenie, która z cech będzie obsługiwana jako data ważności odpowiada parametr Features_ExpirationDateFeatureId.
Parametr Features_ExpirationDateFeatureId określa id cechy artykułu. Aby pobrać aktualne id tej cechy można skorzystać z następującej instrukcji SQL:

SELECT DISTINCT f.FeatureId, Value From Storage.Features f LEFT JOIN Storage.ArticleFeatures af on af.FeatureID = f.FeatureID JOIN Dictionaries.FieldValuesWithTranslations tv on f.NameID = tv.FieldValueID and LanguageID = 1 WHERE f.[ValueType] = 15 and LotInfluance = 1

Wartość, która zostanie zwrócona przez powyższe zapytanie należy wpisać jako wartość parametru Features_ExpirationDateFeatureId w tabeli WMS.Configuration.

1.9 Konfiguracja wydania z uwzględnieniem akceptowalnej daty ważności

Po odpowiedniej konfiguracji istnieje możliwość blokowania wydania zasobów, których data przydatności jest nieakceptowalna przez klienta, dla którego realizowane jest wydanie. Za ustawienia tej funkcjonalności odpowiadają parametry z tabeli WMS.Configuration – rys. poniżej.

rys.13._5.3_konf

Aby skonfigurować kontrolowanie akceptowalnej daty ważności należy w pierwszej kolejności umożliwić korzystanie z dat ważności dla towarów. Instrukcja znajduje się w rozdziale 1.8 Ustawienia dat ważności.
Następnie z poziomu Comarch ERP Altum dodać odpowiedni atrybut. Dodawany atrybut powinien mieć ustawiony Typ: Liczba oraz Format: 1234, należy również zaznaczyć podgląd i edycję dla aplikacji WMS Magazynier (Rys. poniżej – Dodanie atrybutu w Comarch ERP Altum). Na dodanym atrybucie należy dodać obiekt [Kontrahent].

rys.14._5.3_konf

Następnie należy skorzystać z parametru ExpDateControlMode. Przyjmuje on następujące wartości:

  • 0 – brak kontroli akceptowalnej daty ważności,
  • 1 – włączona względna kontrola akceptowalnej daty ważności – operator zostanie poinformowany o tym, że próbuje wydać zasób nie spełniający wymogów daty ważności poprzez wyświetlenie komunikatu ostrzegającego (w postaci toasta).
    W przypadku następującej konfiguracji: włączona realizacja sztuka po sztuce, wyłączone tworzenie rezerwacji – po zeskanowaniu pozycji z datą ważności nie spełniająca wymogów kontrahenta zostanie wyświetlone okno z komunikatem oraz zapytaniem czy zeskanowany zasób ma zostać wydany, czy też nie. Dodatkowo, jeżeli zasób znajduje się na jednostce logistycznej operator będzie miał możliwość podglądu jednostek, na których znajdują się zasoby z datą ważności spełniającą zdefiniowane kryteria.
  • 2 – włączona bezwzględna kontrola akceptowalnej daty ważności (operator nie może wydać zasobu, jeżeli występuje niezgodność z ustawieniami atrybutu na karcie kontrahenta).
    Następnie należy odnaleźć zdefiniowany atrybut korzystając z zapytania:
    SELECT TV.Value, * FROM secAttributes.AttributeClasses AC
    JOIN Dictionaries.TranslationValues TV ON TV.TranslationID = AC.NameTranslationID
    Wartość z kolumny AttributeClassID należy wprowadzić do tabeli WMS.Configuration jako wartość parametru CustomerExpirationDateAttributeClassId.Stworzoną klasę atrybutu należy dodać na karcie kontrahenta i ustawić odpowiednią wartość w dniach (Rys. poniżej)rys.15._5.3_konf
    Przykład
    Datę realizacji Zamówienia Sprzedaży ZS określono na: 23-10-2016 (ZS wprowadzono do systemu ERP 17-10-2016).Zamówienie dotyczy kontrahenta Comarch S.A. z określonym minimalnym terminem przydatności przyjmowanych towarów na poziomie: 90 dni.
    Oznacza to, że na podstawie niniejszego zamówienia klient przyjmie zasoby, których data ważności jest nie wcześniejsza niż: 21-01-2017 (23-10-2016 + 90 dni).Jeżeli zamówienie zostanie zrealizowane z opóźnieniem, czyli realizacja wydania w Comarch WMS Magazynier nastąpi dopiero 26-10-2016, wówczas akceptowalna data przydatności wyliczona zostanie względem daty 26-10-2016, a nie 23-10-2016.
    Jeżeli dyspozycja wydania w WMS Magazynier zostanie utworzona na podstawie dokumentu handlowego z ERP rezerwującego zasób z konkretną wskazaną datą ważności, wówczas na kolektorze możliwe będzie wydanie takiego artykułu pomimo tego, że data ważności jest nieakceptowalna przez danego kontrahenta.

    1.10 Informacja o zasobie proponowanym do wydania mimo braku rezerwacji

    W Comarch WMS Magazynier, w przypadku sposobu pracy z magazynem, gdzie konkretne zasoby nie są rezerwowane przez dyspozycje wydania oczekujące na realizację, istnieje możliwość włączenia funkcjonalności wyświetlania na pozycjach dyspozycji ZWM informacji o zasobie proponowanym do wydania (Rys. poniżej).
    Na pozycji ZWM wskazany zostanie konkretny zasób oraz jego położenie, zaproponowany do wydania zgodnie z:

    • algorytmem wydań danego magazynu (FIFO, FEFO, LIFO)
    • warunkami wymaganymi dla danej dyspozycji (np. odpowiednią datą ważności),

    ale nie zostanie on zarezerwowany, czyli zablokowany do wydania przez innego magazyniera podczas realizacji innej dyspozycji.

    W rezultacie, magazynier jeszcze przed rozpoczęciem realizacji wydania, pomimo braku rezerwacji konkretnego zasobu, otrzyma orientacyjną informację o obszarach, do których ma się udać i zasobach jakie ma pobrać w celu realizacji dyspozycji.
    Aby korzystać z tej funkcjonalności należy skorzystać z parametru ShowProposedResources, tabela WMS.Configuration, ustawiając jego wartość na ‘1’.

    rys.8._5.3_konf

    1.11 Obsługa jednostek „transportowych”

    W aplikacji Comarch WMS istnieje możliwość skonfigurowania procesów wydania o określenie, czy towar wydawany jest z nośnika, czy razem z nośnikiem. Za tę funkcjonalność odpowiada parametr AssignLogisticUnitsAsTransportUnits, znajdujący się w tabeli WMS.Configuration. Przyjmuje on 2 wartości:

    • 0 – jednostka logistyczna nie jest traktowana jako transportowa,
    • 1 – jednostka logistyczna jest oznaczona jako transportowa (towar wydawany jest z nośnikiem).
      Dodatkowo należy ustawić ProcessStageId dla tego parametru. ProcessStageId to Id z tabeli WMS.ProcessStages.

    Dane dotyczące jednostek transportowych, które zostały wydane znajdują się w widoku WMS.vTransportUnits.

    1.12 Generowanie kodu nośnika w procesie realizacji dyspozycji w WMS Magazynier

    W aplikacji Comarch WMS Magazynier istnieje możliwość wygenerowania kodu nowego nośnika bezpośrednio podczas procesu realizacji tego nośnika – przyjęcia lub kompletacji wydania.
    Aby korzystać z funkcjonalności należy dla konfigurowanego procesu ustawić krok z wyborem typu jednostki logistycznej przed krokiem z kodem jednostki logistycznej.

    rys.9._5.3_konf

    W argumentach kroku: Docelowa jednostka logistyczna procesów realizacji dyspozycji znajdują się dwa parametry: @ShowBarcodesGenerator oraz @AutomaticallySetBarcodeMode.
    Parametr @ShowBarcodesGenerator jest odpowiedzialny za widoczność generatora kodów w aplikacji, wartość True – przycisk generowania jest widoczny, wartość False – przycisk generowania jest ukryty.
    Parametr @AutomaticallySetBarcodeMode jest odpowiedzialny za sposób generowania kodów i może przyjmować następujące wartości:

    • 0 – brak automatycznego generowania kodu; aby wygenerować kod należy wybrać przycisk [Wygeneruj nowy],
    • 1 – automatyczne generowanie nowego kodu jednostki; wygenerowany kod jest od razu widoczny w polu;
    • 2 – użyj poprzedniego kodu; pole jest automatycznie uzupełniane ostatnim użytym/wygenerowanym automatycznie kodem przez danego operatora w trakcie realizacji danej dyspozycji; w przypadku braku użytego wcześniej kodu kod należy wybrać z listy lub wygenerować korzystając z przycisku [Wygeneruj nowy],

    Dodatkowo przy konfiguracji: @ShowBarcodesGenerator=true; @AutomaticallySetBarcodeMode=1 lub 2 oraz przy wyłączonym kroku z kodem jednostki logistycznej kod jednostki będzie generowany w tle – bez konieczności potwierdzania przez operatora (dla wartości 1 będzie to zawsze nowy kod, dla wartości 2 będzie to kod ostatnio użyty).
    W procesie wydania przy wyłączonej opcji automatycznego uzupełniania kodu jednostki prezentowane są dwa przyciski: [Wygeneruj nowy] oraz [Użyj poprzedniego].

    rys.10._5.3_konf

    rys.11._5.3_konf

    rys.12._5.3_konf

Czy ten artykuł był pomocny?