Integracje systemowe

Automatyzacja dokumentów przewozowych przy fakturach w ERP

Cykliczne dopasowywanie dokumentów przewozowych do faktur w ERP bez kolejnej aplikacji do utrzymania.

STATUS
Rozwiązanie produkcyjne
ROLA
Architektura, implementacja, wdrożenie produkcyjne, dokumentacja
OBSZAR
Integracje systemowe · ERP · Logistyka
W skrócie

Przewoźnik generował dokument PDF dla przesyłki, ale pliki trafiały zbiorczo do folderu sieciowego i były nazwane numerem listu przewozowego. Użytkownik pracujący na fakturze znał inny klucz, więc odnalezienie dokumentu oznaczało ręczne wyszukiwanie. Zbudowałem integrację, która automatycznie importuje pliki, dopasowuje je do dokumentów handlowych w ERP i udostępnia przy fakturze bez dokładania kolejnej pełnej aplikacji do utrzymania.

Wyzwanie
  • 01Dokument przewozowy i faktura były powiązane biznesowo, ale technicznie żyły w dwóch różnych miejscach.
  • 02Folder z plikami nie zapewniał retencji procesu, informacji o stanie ani wygodnego audytu.
  • 03Dokument mógł pojawić się wcześniej niż numer listu został uzupełniony przy fakturze.
  • 04Jedna przesyłka mogła obejmować więcej niż jedną fakturę.
  • 05Rozwiązanie miało działać na produkcji bez modyfikowania standardu ERP i bez dokładania niepotrzebnej platformy.
Rozwiązanie

Proces został zbudowany z elementów już obecnych w środowisku: SQL Server, harmonogramu zadań, mechanizmu atrybutów ERP oraz istniejącego kanału powiadomień.

  • 01Źródło: plik PDF trafia do kontrolowanego folderu, a jego nazwa zawiera numer listu przewozowego.
  • 02Wyzwalacz: zadanie cykliczne uruchamia import w godzinach pracy.
  • 03Import i walidacja: kontrola nazwy, zapis dokumentu do repozytorium oraz log przebiegu.
  • 04Dopasowanie: numer listu jest zestawiany z informacją przy dokumencie handlowym w ERP.
  • 05Publikacja: przy dopasowanej fakturze pojawia się link do dokumentu, a źródłowy plik trafia do archiwum.
PRZEPŁYW
01PDF przewoźnika
02Import
03Dopasowanie
04ERP
05Archiwum / użytkownik
Trzy przypadki dopasowania
  • 01Brak dopasowania. Plik pozostaje do ponownej próby. Dopiero kolejne nieudane przebiegi powodują alert, z zabezpieczeniem przed wielokrotnym wysyłaniem tej samej informacji.
  • 02Jedno dopasowanie. Dokument trafia do repozytorium i zostaje udostępniony przy fakturze. Wartość wpisana wcześniej ręcznie przez użytkownika nie jest automatycznie nadpisywana.
  • 03Wiele dopasowań. Około 6% przesyłek obejmowało więcej niż jedną fakturę. Plik jest przechowywany raz, a odwołanie jest dostępne przy każdym powiązanym dokumencie.
Obserwowalność

Automatyzacja ma własny ślad operacyjny.

  • 01Alert krytyczny przy błędzie wykonania.
  • 02Alert operacyjny dla plików czekających na dane po stronie procesu.
  • 03Raport dzienny dla zespołu IT.
  • 04Log każdego przebiegu z liczbą plików znalezionych, zaimportowanych, pominiętych i niedopasowanych oraz czasem wykonania.
Rezultaty
  • 01Kilkaset dokumentów zostało powiązanych z fakturami podczas pierwszego pełnego uruchomienia.
  • 02Dokument przewozowy jest dostępny jednym kliknięciem z poziomu faktury.
  • 03Powiązanie przesyłki z dokumentem handlowym jest zapisane w systemie zamiast pozostawać wiedzą użytkownika.
  • 04Pliki trafiają do repozytorium objętego polityką kopii zapasowych i retencji zamiast pozostawać w niezarządzanym folderze.
  • 05Rozszerzenie rozwiązania na kolejny zakres wymagało zmiany konfiguracji, a nie nowego wdrożenia kodu.
Decyzje projektowe
  • 01Logika blisko danych zamiast osobnej aplikacji: problem i wolumen nie uzasadniały kolejnej platformy.
  • 02Konfiguracja zamiast wartości zaszytych w kodzie: zmiana zakresu nie wymaga wdrożenia.
  • 03ERP pozostaje źródłem prawdy dla relacji dokumentów.
  • 04Ponowienie zamiast natychmiastowego alarmu: proces biznesowy może być wolniejszy niż automat.
  • 05Kontrolowany sposób wdrożenia na produkcji: diagnostyka, kopia stanu, transakcja i możliwość wycofania.
TECHNOLOGIE

SQL Server · T-SQL · zadania cykliczne · PowerShell · poczta transakcyjna · lekka usługa HTTP

Materiał zanonimizowany. Nazwy organizacji, przewoźnika, systemów wewnętrznych, serwerów i identyfikatorów zostały pominięte.