Dodano automatyczne generowanie i dołączanie dokumentów WZ/MMr powiązanych z listem przewozowym kurierskim (LPK) jako załączników PDF w komunikacie rejestracji przesyłki do Schenkera (integracja BC_SCHBOOK, komunikat BUSINESS_COMMERCE_COURIER_SHIPMENT_REGISTER, sekcja attachments).
Gdy wybrano usługę Elektroniczny zwrot dokumentów, generowanie PDF odbywa się automatycznie podczas zmiany statusu listu przewozowego z Definiowany na Gotowy, niezależnie od tego, czy operator pracuje z aplikacji desktop czy z terminala. Zaimplementowano również walidację rozmiaru załącznika (limit 6 MB wynikający z ograniczenia API Schenkera).
Od 2 czerwca 2026 Schenker przechodzi w całości na obsługę dokumentów elektronicznych i wymaga przekazywania dokumentów WZ/MMr jako załączników elektronicznych, jeśli użytkownik chce skorzystać z usługi Elektroniczny zwrot dokumentów już w momencie rejestracji przesyłki. Bez tej zmiany operator musiałby drukować dokument WZ i przekazywać go kurierowi w formie papierowej, co byłoby niezgodne z nowym wymaganiem Schenkera i mogłoby skutkować odmową odbioru przesyłki. Automatyczne dołączanie dokumentów WZ/MMr do komunikatu rejestracji przesyłki eliminuje konieczność drukowania dokumentów, ogranicza ryzyko błędów wynikających z ręcznego przekazywania dokumentacji i zapewnia zgodność integracji z wymaganiami przewoźnika.
Rozwiązanie zostało zrealizowane dwuetapowo.
Etap 1 – generowanie i zapis PDF (zmiana statusu LPK)
W trakcie zmiany statusu LPK z Definiowany na Gotowy zostaną wykonane w tle następujące czynności:
- Odnalezione zostaną dokumenty WZ/MMr powiązane z danym LPK.
- Rozpoznany zostanie typ dokumentu (WZ albo MMr).
- Odczytane zostaną nazwy raportów wydruku powyższych dokumentów przy odpowiedniej konfiguracji.
- Wygenerowany zostanie plik PDF z dokumentami WZ/MMr.
- Wykonana będzie walidacja pliku – rozmiar wygenerowanego pliku względem limitu API Schenkera (6 291 456 bajtów, tj. 6 MB). Jeżeli plik przekracza limit, zapis załącznika jest pomijany, a informacja o niezapisanym załączniku jest rejestrowana w słowniku Rejestr kurierskich listów przewozowych w szczególe Dziennik operacji na dowodach – operacja zmiany statusu LPK nie jest przerywana.
- Jeżeli nie było błędu zostanie zapisany wygenerowany dokument w szczególe Załączniki dla dokumentu LPK.

Rys. 1. Załącznik dołączony automatycznie do LPK
Sposób poinformowania operatora o niezapisanym załączniku różni się w zależności od aplikacji, z której korzysta operator:
- Aplikacja desktopowa – w momencie wystąpienia problemu (np. przekroczenia limitu 6 MB) operatorowi wyświetlany jest komunikat informujący, że załącznik WZ/MMr nie został zapisany oraz informacja o problemie jest dostępna również w postaci wpisu w szczególe Dziennik operacji na dowodach.
- WMS Client (terminal) – komunikat o niezapisanym załączniku nie jest wyświetlany operatorowi na ekranie terminala. Informacja o problemie jest dostępna wyłącznie w postaci wpisu w szczególe Dziennik operacji na dowodach.

Rys. 2. Komunikat z aplikacji desktop w przypadku przekroczenia maksymalnego rozmiaru pliku

Rys. 3. Dziennik operacji na dowodach – Informacja o niezapisaniu załącznika
Nazwa zapisywanego pliku jest budowana według wzoru:
{RapName}_{NagId}.pdf, gdzie:
- RapName to nazwa raportu odczytana z parametru kurierskiego,
- NagId to identyfikator dokumentu WZ/MMr.
Etap 2 – wysyłka komunikatu rejestracji przesyłki poprzez API
Następnie zapisany załącznik powiązany z LPK zostanie odczytany i przekazany do komunikatu BUSINESS_COMMERCE_COURIER_SHIPMENT_REGISTER.
Załączniki wewnątrz komunikatu będą miały nadany odpowiedni typ dokumentu WZ/MMr wymagany przez API Schenkera:
- WZ – Customer Delivery Note,
- MMr – Others.
Jeżeli w danych kuriera aktywna jest usługa Elektroniczny zwrot dokumentu, a dla LPK nie odnaleziono żadnego zapisanego załącznika (np. z powodu przekroczenia limitu 6 MB przez wszystkie powiązane dokumenty albo braku konfiguracji), procedura zwróci błąd. W takim przypadku załącznik nie jest dodawany do komunikatu, a sam komunikat rejestracji przesyłki nie zostaje wysłany – operator musi ponownie zmienić status dokumentu na Gotowy po usunięciu przyczyny (np. po wykonaniu konfiguracji przez konsultanta lub zmniejszeniu rozmiaru dokumentu źródłowego).
Pobieranie potwierdzonych/podpisanych dokumentów zwrotnych z platformy Schenkera jest poza zakresem tej zmiany.
Dokument, dla którego wygenerowany PDF przekracza 6 MB – załącznik jest pomijany, operacja zmiany statusu LPK nie jest przerywana, a do komunikatu API przekazywane są tylko załączniki, których rozmiar nie przekracza limitu.
Zmiany w sposobie korzystania z funkcjonalności
Dla operatora rejestrującego przesyłkę Schenker proces zmiany statusu LPK na Gotowy przebiega tak jak dotychczas.
Generowanie i dołączanie dokumentów WZ/MMr do komunikatu rejestracji przesyłki odbywa się automatycznie, bez dodatkowych czynności ze strony operatora, zarówno od strony Softlab ERP, jak i z terminala.
Sposób informowania operatora o problemie z zapisaniem załącznika (np. w przypadku przekroczenia limitu 6 MB) różni się w zależności od aplikacji, dlatego operator powinien znać to rozróżnienie:
- Softlab ERP – operator widzi na ekranie komunikat informujący, że załącznik WZ/MMr nie został zapisany.
- WMS Client (terminal) – operator nie zobaczy żadnego komunikatu na ekranie terminala. Informacja o niezapisanym załączniku jest rejestrowana wyłącznie w słowniku Rejestr kurierskich listów przewozowych w szczególe Dziennik operacji na dowodach – w razie potrzeby przyczynę problemu należy zdiagnozować na podstawie wpisów w tym słowniku (np. przy pomocy konsultanta lub administratora systemu).
Niezależnie od aplikacji, operator powinien zwrócić uwagę na jeden nowy przypadek: jeżeli dla kuriera aktywna jest usługa Elektroniczny zwrot dokumentu, a system nie odnalazł żadnego dokumentu WZ/MMr do dołączenia (np. z powodu przekroczenia limitu rozmiaru pliku lub braku konfiguracji parametrów raportu), komunikat rejestracji przesyłki nie zostanie wysłany. W takiej sytuacji operator musi ponownie zmienić status dokumentu na Gotowy po wyjaśnieniu i usunięciu przyczyny problemu (np. po skontaktowaniu się z konsultantem w celu weryfikacji konfiguracji).
Konfiguracja
Funkcjonalność wymaga nadania uprawnień: NIE
Funkcjonalność wymaga skonfigurowania: TAK