Jak AI odpowiada na pytania z Infor LN, Epicor Kinetic i Sage X3, gdy raporty robi centrala za granicą?
AI może odpytywać Infor LN, Epicor Kinetic i Sage X3 przez API i odpowiadać kierownikom po polsku bez czekania tygodniami na raport z centrali.
Tak, AI może odpytywać te systemy bezpośrednio przez ich interfejsy programistyczne i dawać kierownikom zakładu odpowiedzi po polsku, bez czekania na raport z centrali. Warunek to konto serwisowe z dostępem do odczytu, które centrala zatwierdza raz, i serwer AI postawiony w Polsce. Dane z ERP nie wychodzą poza zakład.
Czekanie na raport z centrali: jak to naprawdę wygląda w polskim oddziale
Typowa sytuacja wygląda tak. Kierownik produkcji potrzebuje wiedzieć, czy zapas podzespołu wystarczy na nowe zlecenie, zanim uruchomi zmianę. Żeby to sprawdzić w Infor LN albo Epicor Kinetic, potrzebuje raportu. Loguje się do systemu, ale widzi tylko moduły przypisane do jego roli. Raport zbiorczy leży w kompetencji analityka z centrali, która jest w Niemczech albo Holandii. Zgłoszenie leci mailem. Odpowiedź wraca za dwa, trzy dni. Produkcja ruszyła wcześniej, na oko.
Do tego dochodzi bariera językowa. Operatorzy linii widzą angielskie komunikaty błędów i nie wiedzą, co z nimi zrobić. Ekran w Sage X3 wyrzuca «Transaction not balanced for account». Epicor Kinetic pokazuje status «PO Partially Received, Awaiting Invoice Match» przy zamówieniu zakupu. Nikt nie sięga po słownik, więc zgłoszenie idzie do mistrza, od mistrza do kierownika, od kierownika mailem do koordynatora w centrali.
AI podpięte do danych ERP zamyka oba problemy: odpowiada na pytania o dane po polsku i wyjaśnia angielskie statusy oraz komunikaty na poziomie operatora. Ale żeby to działało, trzeba wiedzieć, jak te trzy systemy faktycznie udostępniają dane.
Jak fizycznie wygląda podłączenie: ION API, REST Kinetic i web services Sage
Każdy z tych systemów ma osobny mechanizm integracji. Opisuję kolejno, bo różnią się tym, co trzeba mieć, i jak trudno to uruchomić.
Infor LN i M3 (ION API). Infor używa wspólnej warstwy integracyjnej zwanej ION (Infor Operating Network). To bramka REST, przez którą przepływają wszystkie dane między modułami i systemami zewnętrznymi. W LN pobieramy tak zwane BOD-y, czyli Business Object Documents: SyncItemMaster dla danych asortymentu, SyncInventoryCount dla stanów magazynowych, SyncPurchaseOrder i SyncProductionOrder dla zleceń. W M3 działamy przez programy MI (Management Interface): MMS200MI zwraca dane asortymentu z lokalizacją, PPS200MI zamówienia zakupu, PCS001MI zlecenia produkcyjne. Każde wywołanie to żądanie REST z autoryzacją OAuth 2.0.
Co trzeba mieć: ION API client wygenerowany przez administratora ION, para kluczy (client_id i client_secret) oraz konto serwisowe w LN lub M3 z rolami ograniczonymi do odczytu wskazanych modułów. Centrala zakłada konto i definiuje role, a potem nie musi nic robić.
Epicor Kinetic. Epicor od wersji Kinetic ma pełne REST API 2.0 z dokumentacją w standardzie OpenAPI. Przez endpoint /api/v2/odata/EpicorERP dostajemy serwisy: Erp.BO.JobEntryService dla zleceń produkcyjnych, Erp.BO.PartTranService dla ruchów magazynowych, Erp.BO.POEntryService dla zamówień zakupu, Erp.BO.OrderEntryService dla zamówień sprzedaży. Epicor pozwala też na definiowanie własnych zapytań jako endpointów: administrator tworzy BAQ (Business Activity Query) i ta kwerenda staje się dostępna przez REST. Bardzo przydatne, gdy zakład ma niestandardowe pola dodane przez poprzedniego integratora, co w polskich instalacjach Epicor zdarza się często.
Co trzeba mieć: konto serwisowe z rolą tylko do odczytu, adres serwera Epicor dostępny z sieci zakładu, klucz API albo dane do Basic Auth.
Sage X3. W nowszych wersjach X3 (od platformy Syracuse, czyli wersja 12 i wyżej) mamy dwa wejścia. Pierwsze: X3 Web Services oparte na SOAP lub REST z endpointami dla obiektów MFG (zlecenia produkcyjne), STK (stany magazynowe), SOH i SOL (nagłówki i linie zamówień sprzedaży), POH i POL (zamówienia zakupu). Drugie: Syracuse OData API pod /api/v2/, łatwiejsze do odpytywania przez zewnętrzne narzędzia. Starsze instalacje, sprzed migracji na Syracuse, mają głównie SOAP. Jeśli zakład korzysta z wersji 11 lub wcześniejszej, warto najpierw sprawdzić, jaką platformę wdrożono, zanim zaplanuje się podejście.
Czego producent nie udostępnia w standardzie: zaawansowane moduły raportowania Sage BI i konektor do Power BI mogą wymagać osobnej licencji. Samo odczytanie danych przez Web Services wchodzi w skład standardowej instalacji.
Jakie dane wyciągamy i z których dokumentów
Przy dostępie tylko do odczytu i uprawnieniach ograniczonych do modułów zakładu możemy wyciągnąć naprawdę dużo. Oto co realnie pobieramy przy typowym wdrożeniu:
- Zlecenia produkcyjne: numer zlecenia, pozycja, ilość planowana i zrealizowana, data uruchomienia i termin, centrum robocze, status (otwarte, w realizacji, zakończone, wstrzymane). W LN to moduł PCS (Production Control Schedule), w Epicor obiekt JobHead z liniami operacji JobOper, w Sage dokumenty MFG.
- Stany magazynowe i ruchy: aktualny stan na lokalizacji, ostatnie przyjęcia i wydania, historia przesunięć. W M3 przez MMS200MI i MWS060MI, w Epicor przez PartTran, w Sage przez obiekt STK.
- Zamówienia zakupu: status, dostawca, termin dostawy, ile przyjęto, ile jeszcze oczekuje. W LN moduł PUR, w Epicor POHeader z detalami PODetail, w Sage POH/POL.
- Zamówienia sprzedaży: harmonogram dostaw, statusy realizacji, zaległości wobec odbiorców. W LN moduł SLS, w Epicor OrderHed/OrderDtl, w Sage SOH/SOL.
- Koszty standardowe i rzeczywiste: odchylenia od kosztu standardowego zlecenia, koszty operacji na centrum roboczym. Zakres zależy od uprawnień do modułu finansowego, jakie centrala przyzna.
- Dane jakościowe: jeśli ERP ma wbudowany moduł kontroli jakości (w Epicor to Inspection, w Sage moduł Quality), wyciągamy wyniki kontroli wejściowej, odrzuty na produkcji i rejestrowane niezgodności.
Koszty i dane jakościowe wymagają zwykle osobnej zgody i osobnej roli. Przy pierwszym wdrożeniu zaczynamy od zleceń i zapasów. To wystarczy na kilka miesięcy pracy i daje namacalne efekty wystarczająco szybko, żeby przekonać centralę do rozszerzenia dostępu.
Co robi AI z danymi ERP w polskim zakładzie
Dane z API to numery, kody i ilości. AI przekształca je w odpowiedzi na konkretne pytania, zestawienia i alerty. Kilka przykładów z praktyki:
Odpowiedzi kierownikom po polsku. Kierownik zakładu wpisuje: „Czy mamy wystarczający zapas tulei 8x45 na zlecenie numer 2024-1187?". AI odpytuje PartTran w Epicor albo MMS200MI w M3, porównuje stan magazynowy z ilością potrzebną na zleceniu i odpowiada po polsku. Nie trzeba logować się do ERP, nie trzeba znać kodu lokalizacji ani symbolu pozycji w systemie.
Tłumaczenie komunikatów i ekranów ERP. Operator przy linii widzi komunikat błędu. Przepisuje treść do asystenta albo wkleja zrzut ekranu. AI wyjaśnia, co oznacza dany status, i podaje, co zrobić dalej. W jednym zakładzie produkcyjnym z Infor LN samo wyjaśnianie komunikatów modułu PCS i WIP (Work in Process) wyeliminowało kilka telefonów dziennie do koordynatora w centrali.
Zestawienia dla zarządu polskiego oddziału. Co tydzień AI generuje zestawienie: otwarte zlecenia produkcyjne i ich statusy, zaległe zamówienia zakupu powyżej ustalonego progu opóźnienia, pozycje z odchyleniem kosztów przekraczającym tolerancję. Takie zestawienie trafia na poranną odprawę bez angażowania analityka z centrali i bez czekania.
Wychwytywanie rozbieżności między stanem systemowym a fizycznym. AI porównuje stan magazynowy z ERP z wynikami spisu fizycznego z arkusza (CSV albo XLSX ze skanera kodów). Wskazuje pozycje, gdzie różnica przekracza tolerancję. U jednego klienta prowadzącego produkcję komponentów dla branży motoryzacyjnej po pierwszym takim porównaniu znaleźliśmy kilkanaście pozycji z rozbieżnościami, które funkcjonowały w systemie od kwartału, bo nikt ich regularnie nie zestawiał.
Alerty o zaległych dostawach. AI codziennie sprawdza zamówienia zakupu z przekroczonym terminem i wysyła kierownikowi zakupów skróconą listę z nazwą dostawcy, numerem PO i liczbą dni opóźnienia. Logika i próg konfigurowane u nas, wysyłka mailem albo na kanał w Teams.
Serwer AI w Polsce i dane, które nie wychodzą poza zakład
To punkt, który pojawia się na każdym spotkaniu z centralnym IT zagranicznej firmy. Pytanie brzmi zawsze tak samo: gdzie pójdą dane z ERP?
Serwer AI stawiamy w Polsce: albo na fizycznym serwerze w zakładzie, albo w polskim centrum danych. Modele językowe działają lokalnie lub w europejskiej infrastrukturze z udokumentowaną rezydencją danych. Dane z ERP nie trafiają nigdy do zewnętrznych serwisów konsumenckich. Nie ma ruchu do ChatGPT, nie ma ruchu poza Unię.
Konto serwisowe ma wyłącznie dostęp do odczytu. Konto nie może tworzyć, modyfikować ani usuwać danych. To zdecydowanie ułatwia rozmowę z centralą: zakres uprawnień jest węższy niż to, co dostaje zewnętrzny audytor.
Przy Infor LN i M3 bramka ION API Gateway może przyjmować połączenia tylko z jednego adresu IP serwera AI. Przy Epicor tak samo: reguła firewalla na poziomie serwera aplikacyjnego. Centralni administratorzy mają pełną kontrolę nad tym, kto i skąd się łączy. Przy Sage X3 dostęp przez Syracuse można ograniczyć do konkretnego zakresu adresów.
Przy ERP z wieloma instancjami (multi-company, multi-site) wskazujemy konkretny company code albo site ID polskiego zakładu. AI widzi tylko dane swojego zakładu, nie dane innych oddziałów ani całej grupy.
Od czego zaczynamy w polskim zakładzie
Przed pierwszym krokiem warto odpowiedzieć na trzy pytania.
Pierwsze: jaka wersja ERP? Infor LN od wersji 10 ma ION API. M3 od wersji 13 ma MI REST. Epicor Kinetic (dawniej Epicor ERP 10 i wyżej) ma REST API 2.0. Sage X3 od wersji 12 na platformie Syracuse. Starsze wersje mogą wymagać SOAP albo eksportu pliku zamiast żywego API.
Drugie: jaki jeden konkretny przypadek chcemy rozwiązać jako pierwszy? Najlepiej taki, który boli teraz: kierownik czeka na dane, operator nie rozumie ekranu, zestawienie robi się ręcznie co poniedziałek. Taki przypadek da się zamknąć w dwa do czterech tygodni i pokazać wynik.
Trzecie: kto w centrali może wystawić konto serwisowe? Przy dużych instalacjach Infor to zazwyczaj osobny zespół ION Admins. Przy Epicor wystarczy administrator ERP z uprawnieniami do zarządzania kontami. Przy Sage X3 administrator Syracuse. Jeden mail z listą potrzebnych modułów i potwierdzeniem dostępu wyłącznie do odczytu zwykle wystarczy.
Przy pierwszym podłączeniu zawsze robimy mapowanie: które obiekty są dostępne, jakie pola zawierają dane potrzebne dla zakładu i jak są nazwane w tej konkretnej instalacji. Epicor często ma pola dodane przez poprzedniego integratora. Infor LN w polskich zakładach bywa skonfigurowany z własnymi polami użytkownika w modułach produkcji i zakupów. To trzeba sprawdzić przed napisaniem pierwszych zapytań, bo inaczej AI odpowiada na dane, które nie odzwierciedlają rzeczywistości zakładu.
Jeśli centrala ociąga się z dostępem do API, można zacząć od eksportów. Epicor ma wbudowany moduł raportów z eksportem do CSV. Sage X3 pozwala zdefiniować eksport dowolnego obiektu. Infor M3 ma Data Export w module MNS500. Eksport uruchamiamy po stronie zakładu albo prosimy centralne IT o ustawienie cyklicznego zapisu do wspólnego folderu. AI czyta pliki i odpowiada na pytania. Dane mają opóźnienie wynikające z harmonogramu eksportu, ale efekt jest widoczny szybciej niż negocjowanie dostępu do API.
Chcesz sprawdzić, czy Twój zakład kwalifikuje się do takiego wdrożenia i co trzeba uzgodnić z centralą? Zapraszamy na 15 minut rozmowy. Pokazujemy też realne wdrożenia u firm produkcyjnych, które zaczynały dokładnie w tej sytuacji: ERP z centrali, ograniczone uprawnienia i kierownicy, którzy czekali na dane.
Chcecie to u siebie?
Na osobnej stronie rozpisaliśmy, co dokładnie podłączamy w Epicor Kinetic, o co możecie wtedy pytać asystenta i ile kosztuje wdrożenie.
Co podłączamy i ile to kosztuje →Najczęstsze pytania
Czy do podłączenia AI do Infor LN albo Epicor Kinetic trzeba zgody centrali zagranicznej?
Tak, ale tylko raz i w bardzo ograniczonym zakresie. Centrala zakłada konto serwisowe z dostępem wyłącznie do odczytu i wskazuje, do których modułów. Potem AI pracuje samodzielnie, bez angażowania IT z centrali w codzienne pytania.
Czy AI może zmieniać dane w ERP albo tylko je odczytywać?
Przy takim wdrożeniu AI działa wyłącznie na odczycie. Konto serwisowe nie ma uprawnień do tworzenia, modyfikowania ani usuwania danych. To świadomy wybór, który ułatwia też uzyskanie zgody centrali.
Mamy stary Sage X3 bez platformy Syracuse, czy coś się da zrobić?
Da się, ale inaczej. Starsze instalacje Sage X3 obsługują SOAP Web Services albo eksport pliku z obiektu przez moduł importu i eksportu. AI może czytać pliki eksportowane cyklicznie do wspólnego folderu. Dane mają opóźnienie wynikające z harmonogramu, ale odpowiedzi na pytania o zapasy i zlecenia działają.
Ile trwa podłączenie AI do Epicor Kinetic w zakładzie produkcyjnym?
Samo podłączenie do REST API Epicor zajmuje zazwyczaj kilka dni od momentu otrzymania konta serwisowego. Przygotowanie konkretnych zapytań i testowanie odpowiedzi na realnych danych zakładu to kolejne dwa do czterech tygodni, zależnie od liczby przypadków użycia.
Co zrobić, jeśli centrala odmawia dostępu do API i twierdzi, że to zagrożenie bezpieczeństwa?
Najskuteczniejszy argument to wskazanie, że dostęp jest tylko do odczytu, ograniczony do jednego company code polskiego zakładu i przyjmowany tylko z konkretnego adresu IP serwera AI. W praktyce po takim wyjaśnieniu większość centralnych działów IT zmienia zdanie, bo schemat jest identyczny z dostępem zewnętrznego audytora do raportów.
Opracowanie: zespół redAi z wykorzystaniem narzędzi AI.
Podłączymy Epicor Kinetic do AI u Was
15 minut rozmowy: mówicie, czego szukacie w danych, my mówimy, co wyciągniemy z Epicor Kinetic, ile to potrwa i czego potrzebujemy po Waszej stronie.
Umówcie 15 minut o Epicor Kinetic