Integracja systemu Weaver WMS z platformą PrestaShop pozwala na znaczne usprawnienie pracy. Dzięki niej możesz szybko realizować zamówienia, wysyłać ich statusy klientom oraz kontrolować dostępność towarów w sklepie internetowym.
Konfiguracja w panelu PrestaShop
Żeby zintegrować sklep z system Weaver WMS, trzeba wygenerować klucz API i nadać mu odpowiednie uprawnienia. W tym celu w panelu PrestaShop należy wejść w „API” znajdujące się w zakładce „Zaawansowane”.
W tym oknie należy potwierdzić obie opcje w polu „Konfiguracja” oraz dodać nowy klucz API.
Następnie trzeba wygenerować klucz i nadać uprawnienia zasobom.
/*
* Wymagane Uprawnienia
* Orders GET
* Order_payments GET
* Order_states GET
* Order_histories GET POST
* Carriers GET
* Messages GET
* Addresses GET
* Countries GET
* Customers GET
* Currencies GET
* Combinations GET PUT
* Stock_availables GET PUT
* Specific_prices GET PUT POST DELETE
* Products GET PUT
*/
Po tych czynnościach możemy zapisać utworzony klucz.
Konfiguracja w systemie Weaver WMS
W systemie Weaver WMS należy przejść do zakładki Ustawienia oraz z listy ustawień E-commerce wybrać pozycję PrestaShop.
W podstawowych ustawieniach trzeba uzupełnić „Adres API” oraz „Token”.
Adres API to „http://adres-sklepu.pl/api/”. W naszym przypadku adres to http://shop.hdwr.eu dlatego w konfigurację wpisujemy „http://shop.hdwr.eu/api/”.
Token to klucz, który wygenerowaliśmy wcześniej podczas konfiguracji po stronie PrestaShop.
Po uzupełnieniu tych pól można sprawdzić połączenie klikając „Test połączenia”.
Pobieranie zamówień
W zakładce „Pobieranie zamówień możemy określić:
Okres, z którego chcemy pobierać zamówienia,
Definicję dokumentu,
Nazwę płatności pobraniowej,
Czy chcemy tworzyć automatycznie awizo wysyłki kurierskiej,
Czy chcemy używać nazwy odbiorcy z PrestaShop, jako pole Odbiorca(kod) dla nowych klientów
Wysyłka statusów zamówień
W tej zakładce podpisujemy odpowiednie Id statusów zamówień PrestaShop do statusów ZO w WMS.
Po użyciu przycisku „Pobierz statusy PrestaShop” pokaże się lista statusów ze sklepu i ich Id. Każdy status jest oddzielony nawiasami {}.
Np. Chcemy, żeby po zrealizowaniu ZO dla zamówienia na PrestaShop zmieniał się status na „Wysłane”. Dlatego sprawdzamy Id dla statusu „Wysłane” i wpisujemy je w pole „Id dla statusu 'Zrealizowane'”.
Wysyłanie stanów magazynowych
Gdy uruchomimy wysyłanie stanów magazynowych do sklepu PrestaShop, to każda zmiana ilości w systemie WMS będzie również wprowadzana do stanu magazynowego na panelu PrestaShop.
Uruchomienie integracji
W celu uruchomienia poszczególnych funkcji należy otworzyć zakładkę „PrestaShop” w „Zadania cykliczne” i dodać stworzoną konfigurację.
Działanie integracji
Zamówienia z PrestaShop pobiera się do systemu jako zamówienia od odbiorców [ZO]. Wszystkie dane dokumentu pobierane są ze sklepu.
Materiały w systemie Weaver WMS muszą posiadać taki sam kod lub kod zewnętrzny jak indeksy materiałów w PrestaShop.
Z dokumentu ZO wystawiamy dokument wydania zewnętrznego [WZ]. Po jego realizacji do PrestaShop wysyłany jest status zamówienia oraz zmiana stanów magazynowych.
Z dokumentu WZ możemy bardzo szybko wystawić fakturę oraz wysyłkę kurierską.
Weaver WMS działa w
oparciu o API w architekturze REST, które wykorzystuje protokół HTTP i jego
metody, takie jak:
– GET – służy do
pobierania danych (np. wyświetlania listy materiałów),
– POST – tworzy
nowe dane (np. dodaje nowego odbiorcę),
– PUT – aktualizuje
wcześniej dodane zasoby (np. wprowadza
zmiany do materiału),
– DELETE – służy
do usuwania danych.
Dane wchodzące i wychodzące z API są w formacie JSON. Każdy
obiekt zawarty jest pomiędzy nawiasami klamrowymi, a jego poszczególne elementy
oddzielane są przecinkami. Wartości elementów wpisywane są po ich nazwach oraz
dwukropku.
Podczas wysyłania zapytań do lokalnego API, program Weaver WMS musi być uruchomiony.
Swagger
Sprawdzenie działania poszczególnych adresów URI (endpoints) przy
pomocy swaggera zawartego w programie Weaver WMS.
W tym celu należy postępować zgodnie z instrukcją zawartą na
poniższym zdjęciu.
Następnie, żeby uzyskać pełny dostęp, należy przejść do zakładki Authentication i nacisnąć przycisk Try it out. Teraz w miejsca, gdzie wpisany jest „string”, należy odpowiednio wpisać login oraz hasło użytkownika WMS’a w cudzysłowie.
Po wypełnieniu pól należy wykonać zapytanie przyciskiem Execute, kod 200 świadczy o prawidłowym wykonaniu polecenia.
Strukturę API w swaggerze można również sprawdzić w testowym panelu, do którego link znajduje się poniżej.
Po autoryzacji jesteśmy w stanie wykonywać pozostałe zapytania, odpowiednio uzupełniając wartości elementów.
Poniżej znajduje się przykład dodawania odbiorcy (elementy, których nie uzupełniamy, należy usunąć, w tym przypadku uzupełniliśmy tylko wymagane dane).
Postman
Kolejnym sposobem sprawdzenia działania zapytań jest program
Postman.
Na początek należy zaimportować kolekcję z zapytaniami. 1. Wejdź do swaggera. 2. Przejdź do strony w formacie JSON.
3. Zaznacz cały tekst (Ctrl + A) i skopiuj go (Ctrl + C). 4. W głównym oknie Postman kliknij przycisk Import w lewym górnym rogu. 5. Przejdź do zakładki Raw text i wklej wcześniej skopiowany tekst.
Po wykonaniu powyższych kroków w menu po lewej stronie w
zakładce Collections powinna pojawić się kolekcja „WMS API”.
Pozostaje jeszcze skonfigurowanie środowiska. 1. Kliknij w ikonę Manage Environments w prawym, górnym rogu.
2. Kliknij przycisk Add, a następnie wypełnij pola według poniższego zrzutu ekranu i ponownie kliknij przycisk Add.
3. W prawym górnym rogu wybierz z listy dodane środowisko.
W programie Postman również trzeba wykonać autoryzację przed wykonywaniem
kolejnych zapytań. W tym celu należy z dodanej kolekcji wybrać /auth/sign-in,
przejść do sekcji Body i zastąpić domyślnie wpisane wartości, loginem oraz
hasłem użytkownika WMS.
Podczas wykonywania poszczególnych zapytań należy usuwać elementy, w których nie uzupełniamy wartości, ponieważ może to skutkować powstawaniem błędów.
W celu przekazania awizacji przyjęcia trzeba najpierw pobrać metodą GET dane z odpowiednich adresów. Pierwszą z nich jest dostawca, pobierany z adresu „suppliers”.
Kolejną potrzebną informacją jest numeracja, pobierana z adresu „document-numbers”. Dodatkowo możemy zastosować parametr „IncludeAllTypes” oraz „Types”.
Parametr "Types" dla przyjęć może przyjmować wartości:
- 0 - Zamówienie do dostawcy,
- 1 - Przyjęcie zewnętrzne,
- 2 - Przychód wewnętrzny.
Kolejnymi danymi są materiały oraz stawki VAT, pobierane z adresów odpowiednio „materials” oraz „tax-rates”. W przypadku stawek VAT nie jesteśmy w stanie filtrować widoku, dlatego pobrać trzeba wszystkie stawki znajdujące się w systemie.
Po pobraniu wszystkich danych możemy przejść do przesłania metodą POST awizacji przyjęcia poprzez adres „delivery-documents”.
W poniższym przykładzie dla większej przejrzystości zostały wpisane dane, które nie muszą być uzupełniane. Dla sekcji, takich jak: supplier, material, unit, taxrate, document-number, currency wystarczy jedynie podanie id.
W celu pobrania dokładnych danych dotyczących zrealizowanych dokumentów PZ należy najpierw pobrać dane z adresu „delivery-documents”.
Dzięki tej operacji uzyskamy listę dokumentów przyjęć wraz z ich statusami.
O statusie mówi nam parametr "documentStatus" i wyróżniamy w nim wartości:
- 0 - Oczekujący na realizację,
- 15 - Anulowany,
- 20 - W trakcie realizacji,
- 30 - Zrealizowany.
W tej chwili znamy już ID zrealizowanych dokumentów przyjęć, dlatego możemy przejść do adresu „delivery-documents/position-items” i filtrować go parametrami „IncludeAllDocuments” oraz „Documents”, w których wpisujemy odpowiednio „false” oraz ID dokumentu.
Przekazanie awizacji wydania
W celu przekazania awizacji wydania schemat różni się jedynie tym, że zamiast dostawcy, pobrać należy odbiorcę z adresu „recipients”.
Podczas pobierania numeracji dla dokumentów wydania użyjemy dla parametru „Types” inne wartości.
Parametr "Types" dla wydań przyjmuje wartości:
- 3 - Zamówienia od odbiorców,
- 4 - Wydania zewnętrzne,
- 5 - Rozchody wewnętrzne.
Na poniższym przykładzie pobieramy dokumenty WZ z zaznaczonym filtrem (utworzone po dacie 01.09.2020r.) oraz podzielone na 2 elementy na stronę.
Pobieranie jednostek logistycznych dla właściciela
Żeby pobrać wszystkich dostawców, którzy mogą być właścicielami, trzeba użyć adresu „suppliers” z parametrem „IsOwner”.
W celu pobrania jednostek logistycznych przypisanych do konkretnego właściciela należy użyć adresu „logistic-units” z parametrami „IncludeAllOwners” oraz „Owners”, w których wpisujemy odpowiednio „false” i ID właściciela.
Inwentaryzacja ciągła – proces wkomponowany jest w codzienną pracę na urządzeniach mobilnych
Niniejszy wpis dotyczy przeprowadzania procesu inwentaryzacji ciągłej.
Inwentaryzację ciągłą polega na tym, że użytkownik terminala mobilnego zostanie poproszony o podanie ilości pozostałej na miejscu magazynowym lub jednostce logistycznej po procesie pobierania materiału z miejsca lub jednostki logistycznej.
Proces inwentaryzacji ciągłej umożliwia bieżącą korektę stanów magazynowych w systemie zgodnie z rzeczywistymi ilościami znajdującymi się na miejscach magazynowych.
System umożliwia precyzyjną konfigurację ustawień inwentaryzacji ciągłej. Najprostszym scenariuszem jest uruchomienie inwentaryzacji ciągłej dla użytkownika lub roli, niezależnie od dokumentów. W tym celu należy w Ustawieniach terminala mobilnego w zakładce Inwentaryzacja ciągła wybrać opcję
Wyświetlaj. Jeśli po pobraniu towaru z miejsca chcemy wyświetlić prośbę o podanie ilości.
Wyświetlaj i wymusza. Jeśli użytkownik terminala mobilnego ma obowiązek podania pozostałej ilości. System zablokuje dalsze operacje bez podania tejże ilości.
Podczas pracy na urządzeniu mobilnym system po pobraniu ilości z miejsca wyświetli monit z prośbą o podanie pozostałej ilości.
Wszystkie operacje inwentaryzacji ciągłej dostępne są w sekcji Raporty – Inwentaryzacja ciągła. Raport zawiera szereg informacji związanych z procesem inwentaryzacji.
Inwentaryzacją ciągłą można również wymusić na urządzeniu mobilnym. W tym celu należy wejść w:
Menu -> Operacje -> Korekta ilości. Dla trybu bez jednostek logistycznych.
Menu -> Jednostki -> Korekta. Dla trybu jednostek logistycznych.
Bardziej uporządkowany sposób przeprowadzania inwentaryzacji ciągłej polega na otwarciu dokumentu Inwentaryzacji ciągłej. Takie podejście ma następujące zalety:
Dokument umożliwia wybór materiałów, dla których będziemy przeprowadzali proces,
Każda lokalizacja zostanie odpytana jednokrotnie (chyba że wymusimy powtórne sprawdzenie),
Na widoku dokumentu jesteśmy informowani o postępach z inwentaryzacji ciągłej,
Dokument inwentaryzacji łatwo skonwertować na dokumenty Inwentaryzacja – archiwum, którym można wyeksportować do systemu nadrzędnego ERP.
Aby utworzyć dokument inwentaryzacji ciągłej należy z menu głównego wybrać Dokumenty wewnętrzne – Inwentaryzacja ciągła – Otwórz dokument. Kretor poprowadzi poprzez proces otwierania dokumentu.
Należy również pamiętać aby zaznaczyć w odpowiednich użytkownikach (rolach), w Ustawieniach terminala mobilego opcję Zgodnie z dokumentem inwentaryzacji ciągłej w zakładce Inwentaryzacja ciągła. Wówczas system odpyta o ilości wyłacznie dla pozycji znajdującym się na dokumencie inwentaryzacji ciągłej.
System na bieżąco pozwala monitorować postęp inwentaryzacji ciągłej. Wyświetla rozbieżności w ilościach i za pomocą przycisku Zleć ponowne sprawdzenie pozwala ponownie zlecić weryfikację ilości dla pozycji, przydatna funkcja w przypadku występienia robieżności.
W każdej chwili można zamknąć dokument i stworzyć z niego dokument Inwentaryzacja – archiwum, który zostanie wyeksportowany do systemu nadrzędnego. Kreator archiwizacji dokumentu ciągłego umożliwia wybór materiałów oraz magazynów z systemu zewnętrznego, dla których utworzone zostaną dokumentu inwentaryzacji.
Podczas tworzenia dokumentu Inwentaryzacja – archiwum, system pobiera aktualne ilości magazynowe, dzięki temu do systemu ERP wyeksportowane zostaną poprawne ilości wraz z magazynami. Należy zadbać tylko o zamknięcie dokumentów w systemach, tak aby były spójne.
Niniejszy wpis dotyczy realizacji procesu Inwentaryzacji klasycznej wraz z opcjonalnym eksportem wynikowych danych do systemu nadrzędnego (w tym przypadku systemu ERP Soneta Enova).
Aby rozpocząć proces przeprowadzania inwentaryzacji należy skorzystać z kreatora otwierania inwentaryzacji. W tym celu należy wybrać opcję Dokumenty wewnętrzne -> Inwentaryzacja -> Dodaj inwentaryzację. Kreator poprowadzi poprzez proces otwierania inwentaryzacji.
Po otwarciu dokumentu inwentaryzacji można rozpocząć proces liczenia oraz realizacji inwentaryzacji na urządzeniu mobilnym. W tym celu należy upewnić się, że użytkownik mobilny posiada odpowiednie uprawnienie.
Jeśli użytkownik przypisany jest do roli, wówczas uprawnienia należy przypisać do roli.
Na urządzeniu mobilnym inwentaryzacja dostępna jest w Menu główne – Inwentaryzacja.
W czasie rzeczywistym, podczas realizacji procesu inwentaryzacji dostępny jest podgląd zinwentaryzowanych oraz oczekujących pozycji w aplikacji Desktop.
Zrealizowaną inwentaryzację należy zaksięgować oraz przenieść do archiwum. Księgowanie powoduje zasadniczo dwie rzeczy:
Zmianę ilości towaru w jednostkach logistycznych na miejscach w systemie.
Odblokowanie jednostek logistycznych.
Po przeniesieniu do archiwum możliwe jest wyeskportowanie dokumentu do systemu nadrzędnego ERP. Proces księgowania oraz archiwizacji przedstawiony jest poniżej.
Po przeniesieniu inwentaryzacji do archiwum jest ona dostępna w Dokumenty wewnętrzne – Inwentaryzacja archiwum.
Z tego poziomu możliwy jest eksport dokumentu do systemu nadrzędnego, jeśli serwis integracji został wdrożony. Na liście zarchiwizowanych inwentaryzacji dostępne są kolumny:
Kod magazynu (system zewnętrzny) – na tym magazynie systemu utworzy dokumentu inwetaryzacji.
Numer dokumentu (system zewnętrzny) – numer poprawnie utworzonego dokumentu inwentaryzacji w systemie nadrzędnym.
Błąd integracji. Treść błędu podczas dodawania dokumentu w ERP. Najczęściej będzie to brak materiału.
W systemie Enova dokument trafi do bufora inwentaryzacji. Należy zweryfikować ceny oraz zatwierdzić dokument.
Możliwa realizacja audytu w programie magazynowym Weaver WMS PRO z wykorzystaniem urządzeń wyposażonych w system Android. Proces audytu jest procesem sprawdzająco-produkcyjnym umożliwiającym utworzenie z danej jednostki logistycznej, innej jednostki (jednostek) z innym materiałem.
Proces audytu należy rozpocząć od utworzenia dokumentu Audytu z menu Produkcja -> [ADT] Dokumentu audytu. Po otworzeniu dokumentu będzie on widoczny na urządzeniu mobilnym w Rozchodach oraz Przychodach wewnętrznych. Jeśli przypiszemy RW lub PW na urządzeniu mobilnym do danego dokumentu audytu, to każda jednostka (przyjęta lub wydana) podpięta pod taki dokument będzie widoczna z poziomu audytu.
Po rozwinięciu dokumentu audytu na wersji desktop widać dokładnie źródłowe i docelowe jednostki logistyczne podpięte do danego audytu.
Dodatkowo dla każdego dokumentu audytu w zakładce „Wydruki” wygenerować można zaawansowany raport z audytu.
Po zakończeniu realizacji audytu, należy dla danego dokumentu wybrać opcję „Oznacz jako 'Zrealizowany'”, wówczas dokument przestanie być widoczny na urządzeniach mobilnych.