← Članci · EDI i abas

EDI i abas 1. dio: Arhitektura, EDP/FOP sučelje i pravila abas–EDIFACT konverzije

U prvom dijelu serije prikazujemo arhitekturu integracije sustava abas ERP (Vartab, EDP, FOP/EFOP) s EDIFACT konverterom, pravila omotnice, kodiranje znakova i najčešće zamke u pozadinskom radu.

abas ERP jedan je od najraširenijih ERP sustava među srednjim proizvodnim poduzećima, dobavljačima u automobilskoj industriji (Tier-1/Tier-2), metaloprerađivačkoj i plastičarskoj industriji te veleprodaji u Srednjoj Europi. Međutim, njihovi poslovni partneri – međunarodni proizvođači automobila (OEM), trgovački lanci i logistički operateri – ne razmjenjuju podatke u internim abas strukturama, već zahtijevaju standardizirane UN/EDIFACT poruke (u maloprodaji najčešće EANCOM podskup, a u autoindustriji EDIFACT profile temeljene na ODETTE/VDA standardima). U ovoj seriji od četiri dijela detaljno prikazujemo pravila konverzije između sustava abas i EDIFACT-a, arhitekturu sučelja i najčešće zamke u produkcijskom radu.

Prvi dio postavlja tehničke temelje: kako teče razmjena podataka između sustava abas ERP (Vartab, EDP, FOP/EFOP, abas EDI sučelje) i vanjskog EDI konvertera, koja sintaksna pravila vrijede za EDIFACT omotnicu te gdje projekti najčešće zapinju već kod prve poruke.

Praktični scenarij koji prati cijelu seriju

Kako bismo pravila konverzije prikazali u realnom industrijskom okruženju, kroz sva četiri dijela pratimo procese tipičnog proizvodno-trgovačkog poduzeća koje koristi abas ERP:

  • Pannon-Autóalkatrész Kft. – srednje poduzeće za proizvodnju metalnih i plastičnih dijelova koje koristi abas ERP. Ono predstavlja „našu” stranu integracije (GLN: 5990000000108).
  • EuroAuto Tier-1 GmbH – njemački kupac iz automobilske industrije koji temeljem okvirnog ugovora šalje UN/EDIFACT D.96A / D.07A planove isporuke i JIT odzive (DELFOR, DELJIT) te zahtijeva otpremnicu (DESADV) sa strogom hijerarhijom pakiranja i račun (INVOIC) (GLN: 4012345000016).
  • Barkács-Lánc Zrt. – trgovački lanac „uradi sam” i tehničke robe koji putem EANCOM D.96A standarda šalje pojedinačne narudžbenice (ORDERS) za svoj središnji distributivni centar (GLN kupca: 5990000000207, GLN skladišta: 5990000000214) te očekuje ORDRSP, DESADV i INVOIC poruke.

Proizvod u primjeru je prešani nosač kočnice i njegov montažni set: interni abas identifikacijski broj (nummer) je A-40210, traženi pojam (such) je FEKKONZOL-40, GTIN je 5991234004023, a šifra artikla kod kupca EuroAuto je EA-99812-B.

Kako podaci ulaze u abas ERP i izlaze iz njega?

abas ERP temelji se na objektno orijentiranoj bazi podataka čiju okosnicu čini Vartab (tablica varijabli). Svaki matični zapis (kupac, artikl, ambalaža) i svaki dokument (prodajni nalog, okvirni nalog/odziv, otpremnica, račun) sastoji se od polja zaglavlja (Head) i tablice (Table), kojima se može pristupati putem njemačkih ili engleskih naziva varijabli, uz mogućnost proširenja prilagođenim korisničkim y... poljima.

Umjesto izravnog generiranja EDIFACT znakovnog niza unutar ekranskih maski, produkcijska abas okruženja koriste dvoslojnu integracijsku arhitekturu u kojoj interno abas sučelje i vanjski EDI konverter (middleware) dijele zadatke:

  1. Interno abas EDI sučelje i FOP/EFOP upravljanje događajima: Kada se u abasu kreira dokument (npr. otpremnica ili račun), FOP (Flexible Oberflächenprogrammierung) skripta ili Java EFOP handler provjerava poslovne preduvjete te putem abas EDI modula (ili namjenskog Infosystema) izvozi strukturiranu prijelaznu datoteku (XML, flat-file ili JSON).
  2. EDP (Electronic Data Processing) / REST API sučelje: U ulaznom smjeru vanjski konverter putem abas EDP sučelja (ili REST API-ja / EDI međutablica) kreira ili ažurira poslovne objekte u abasu – izvršavajući potpuno istu poslovnu logiku i FOP provjere polja kao pri ručnom unosu.
  3. EDI konverter (middleware) i komunikacijski pristupnik: Konverter obavlja sigurnu B2B komunikaciju (AS2, OFTP2, SFTP), sintaksnu provjeru, mapiranje između EDIFACT segmenata i prijelazne abas strukture te upravljanje tehničkim potvrdama (CONTRL).
Sloj / KomponentaUloga u abas–EDIFACT procesuTipična tehnologija
Baza podataka i matični podaciPohrana dokumenata, unakrsnih referenci kupac–artikl i y... EDI zastavicaabas Vartab (Head + Table polja)
Poslovna pravila i okidačiProvjera obaveznih polja pri spremanju, automatsko pokretanje izvozaFOP / EFOP (Event Handler)
Aplikacijsko sučeljeTransakcijsko čitanje i pisanje u abas bazu uz punu poslovnu validacijuabas EDP, abas EDI-Schnittstelle, REST API
Konverzija (Mapping)Mapiranje prijelazne abas strukture ↔ UN/EDIFACT (EANCOM / Automotive)Vanjski EDI konverter / EDI cloud platforma
B2B komunikacijski kanalŠifrirani prijenos, digitalni potpis, potvrde o isporuci (MDN / EERP)AS2, OFTP2 (autoindustrija), SFTP, VAN

EDIFACT omotnica i osnovna pravila konverzije

Bez obzira šaljemo li EANCOM poruku trgovačkom lancu ili EDIFACT datoteku kupcu u autoindustriji, vanjska „omotnica” (envelope) poruke slijedi stroga sintaksna pravila:

UNA:+.? '
UNB+UNOD:3+5990000000207:14+5990000000108:14+261021:0830+00000451++ORDERS'
UNH+1+ORDERS:D:96A:UN:EAN008'
BGM+220+BL-2026-88412+9'
DTM+137:20261021:102'
...
UNT+18+1'
UNZ+1+00000451'

1. Razdjelnici i pravilo znaka za oslobađanje (escape)

Segment UNA:+.? ' definira pet kontrolnih znakova EDIFACT-a: razdjelnik komponenti (:), razdjelnik podatkovnih elemenata (+), decimalni znak (.), znak za oslobađanje/escape (?) i završetak segmenta ('). Tekstualna polja iz abasa (npr. opis artikla ili napomena o isporuci) često sadrže znakove + ili : (npr. Vijak M8+matica omjer 1:2). Pravilo: izvoz iz abasa ne smije ručno brisati te znakove; zadatak je EDI konvertera da ispred svakog kontrolnog znaka automatski umetne znak ? (Vijak M8?+matica omjer 1?:2).

2. Decimalni znak i formatiranje brojeva

U srednjoeuropskim postavkama abasa decimalni razdjelnik na ekranu često je zarez (12,50), uz moguće razdjelnike tisućica. U EDIFACT standardu (kada je 4. znak u UNA točka .) dopuštena je isključivo točka kao decimalni znak, dok su razdjelnici tisućica strogo zabranjeni. Sloj za EDP/izvoz stoga uvijek mora generirati strojni numerički format neovisan o lokalizaciji.

3. Razdvajanje internih ključeva od vanjskih EDI identifikatora

Svaki zapis u abasu ima internu referencu baze podataka (npr. (184,0,0)), identifikacijski broj (nummer, npr. 70045) i traženi pojam (such). Vanjski partner ne prepoznaje te interne oznake. U segmentima UNB i NAD smiju se nalaziti isključivo međunarodni identifikatori ili šifre koje je dodijelio partner:

  • U maloprodaji: 13-znamenkasti GLN (kvalifikator 14 u UNB, ::9 u NAD);
  • U autoindustriji: DUNS broj, ODETTE ID ili šifra dobavljača koju dodjeljuje kupac (NAD+SU+987654::92).

Karta poruka kroz 4 dijela serije

U nastavku serije detaljno obrađujemo sljedeće poslovne procese i pravila njihovog mapiranja između abasa i EDIFACT-a:

Poslovni procesEDIFACT porukaSmjerabas ERP objekt / procesDio serije
Pojedinačna narudžbenica kupcaORDERSKupac → abasKreiranje prodajnog naloga (Sales Order) putem EDP-a2. dio
Potvrda narudžbeORDRSPabas → KupacPotvrda prodajnog naloga (status, količina, rok isporuke)2. dio
Plan isporuke / JIT odzivDELFOR / DELJITKupac → abasOkvirni nalog (Blanket Order) i odzivi isporuke (LAB/FAB)2. dio
Najava otpreme / Otpremnica (ASN)DESADVabas → KupacOtpremnica (Lieferschein) + hijerarhija pakiranja / SSCC3. dio
Račun / OdobrenjeINVOICabas ↔ KupacRačun (Rechnung), odobrenje te Self-Billing usklađivanje4. dio

Razine potvrda: kada je poruka stvarno obrađena?

Za pouzdan rad abas–EDIFACT integracije ključno je razlikovati tri razine potvrda:

  1. Prijenosna potvrda (AS2 MDN / OFTP2 EERP): Potvrđuje samo da je šifrirana datoteka stigla na poslužitelj partnera.
  2. Sintaksna potvrda (EDIFACT CONTRL): Generira je primateljev EDI konverter kao potvrdu da poruka zadovoljava EDIFACT gramatiku (segmenti UCI / UCM).
  3. Aplikacijska / ERP razina (APERAK ili interni EDP status): Pokazuje je li abas EDP sučelje doista kreiralo prodajni nalog ili ažuriralo plan isporuke. Ako je artikl blokiran u abasu, CONTRL će biti pozitivan, ali će EDP uvoz završiti pogreškom!

Najčešće zamke u praksi

  • Kodiranje znakova (UNOC naspram UNOD / UNOW): Zadani skup znakova UNOC (ISO 8859-1) ne podržava srednjoeuropske dijakritičke znakove (hrvatske č, ć, đ, š, ž ili mađarske ő, ű). Ako u UNB segmentu nije postavljen UNOD:3 (ISO 8859-2) ili UNOW:4 (UTF-8), nazivi tvrtki i adrese bit će oštećeni.
  • Skraćivanje polja i višebajtni znakovi: Polja naziva i ulica u NAD segmentu ograničena su na 35 znakova (an..35), dok u abasu mogu biti dulja. Kod UTF-8 kodiranja rezanje se mora vršiti na granici cijelog znaka i prelijevati u sljedeće C080/C059 komponente.
  • Interaktivni FOP dijalozi u pozadinskom procesu: Klasična abas pogreška nastaje kada postojeća ekranska FOP skripta prikaze skočni prozor (naredbe box ili menu) npr. pri prekoračenju kreditnog limita. Ono što je u grafičkom sučelju jedan klik operatera, u pozadinskom EDP procesu uzrokuje zastoj ili prekid uvoza. Pravilo: FOP kod mora uvijek provjeravati način izvođenja te u pozadinskom EDI radu zapisivati upozorenja u log ili statusno polje (npr. yedierr).
  • Miješanje testnog i produkcijskog okruženja: Element 0035 u UNB segmentu označava testnu poruku (1). Ako konverter to ne filtrira, testni plan isporuke kupca može prebrisati stvarni plan proizvodnje u produkcijskom abas klijentu.

Sažetak

Fleksibilna Vartab i FOP/EDP arhitektura sustava abas ERP pruža izvrsnu osnovu za automatiziranu razmjenu podataka, pod uvjetom da su vanjska EDIFACT konverzija i interna abas validacija jasno razdvojene. Konverter preuzima brigu o sintaksi, kodnim stranicama i mapiranju identifikatora, dok FOP pravila u abasu moraju pouzdano raditi bez nadzora korisnika (headless način rada).

U drugom dijelu serije obrađujemo ulazne narudžbe i odzive: kako iz EANCOM ORDERS poruke nastaje prodajni nalog u abasu i ORDRSP potvrda te kako upravljati kumulativnim količinama (FZ brojevima) kod automobilskih DELFOR i DELJIT poruka.

Tražite pouzdano rješenje za abas–EDIFACT konverziju? Zatražite neobvezujuću ponudu ili besplatno provjerite svoje EDIFACT datoteke pomoću našeg EDIFACT validatora.