Hirdetés
 

PI/XI interface problémák és megoldások

PDF
Nyomtatás

Tippek és trükkök az SAP PI / XI szerverekhez

Bevezetés

Az SAP XI/PI technológia új. 2-3 éve van a piacon és a meghatározó ügyfelek nemrég kezdték el használni. Gyűjtöttünk némi tapasztalatot a használatával kapcsolatban, amit ezúton szeretnénk megosztani. A cikk PI/XI alapismereteket feltételez, az angol kifejezéseket általában eredeti formájukban használjuk.

PIXI

Ha furcsának hangzik a PIXI név, akkor itt az alkalom, hogy elmagyarázzam: Kedvenc SAP-nknak volt egy terméke, amit eXchange Infrastructure(XI) névre kereszteltek, majd pár évvel később rejtélyes - de nem szokatlan - módon átnevezték Process Integration(PI)-ra. Tehát sokan XI-nak hívták, sokan PI-nak, ami gyakori félreértésekhez vezetett. Tehát a Józan Ész közbeszólt és azóta nem hivatalosan PIXI szervereknek hívják őket.

Minenesetre a jó ötlet hátterében van egy pár ravasz beállítási lehetőség, amivel kapcsolatban segítségre lehet szükség. A mi interface-ünk a következő módon működik:

asapxi01.jpg

Ez nem egy SOAP interface, de nagyon hasonló a folyamat, csak a generált XML-ből hagytuk el a SOAP elemeket. 

A message folyamat ábrázolása

asapxi02.jpg

A következő checklist-et használtuk

asapxi03.jpg

A message és adat tipusok

Jó hírem van: nincs szükség rájuk. Ha megvannak a példa XML állományok, akkor ezeket használhatod az message mapping-ek elkészítéséhez. Egyszerűen nyomd meg az import gombot, mint ahogy a következő képen látod és válaszd ki a példa file-t. A másik oldal természetesen az RFC function interface. Tehát minden híváshoz két message mapping kell: 1 request és 2 response.

asapxi04.jpg

Memóriaigény

A gépben, amin dolgoztam csak 800 MB memória volt. Minthogy egy ERP és két PIXI szerverhez is hozzá kellett férnem, az összes szabad memóriát felhasználtam és a gép tényleg lelassult. Egy kattintáshoz körülbelül 15 másodpercre volt szükség. Ez elég bosszantó volt, de egy kedves kolléga gyorsan segített két GB-nyi memória installálásával. Ez most már a minimumnak tekinthető, ha folyamatosan akarunk dolgozni ilyen rendszerekkel.

Java problémák

God created the Sun and Sun made Java. ;) Ez persze nem jelenti azt, hogy tökéletes lenne. Például volt egy "Enterprise Services Directory cannot be started" ("Enterprise Services Repository kann nicht gestartet werden") hibánk. Még nem találtam tökéletes megoldást, de ha a Control Panel-ben a Java Control Panelen belül letöröljük az összes ideiglenes internet file-t (temporary internet files), akkor már működni fog. Ezt persze minden egyes indulásnál meg kell ismételni.

asapxi05.jpg

Dynamic URL routing

Hogyha nem csak egy HTTP szerverrel szeretnél kommunikálni, akkor igazán trükkös lesz a megoldás.
A szükséges lépések:

asapxi06.jpg

1. Kell egy funkció, ami az URL-t beleteszi a header-be

asapxi07.jpg

2.Az URL az input oldalon egy mezőben található, amit az első lépésnél található funkcióval teszünk át egy változóba.

asapxi08.jpg

3. Az Integration Builder-ben igy kell beállítani a communication channel-t

asapxi09.jpg

4. Ezeket a paramétereket is be kell állítani a communication channel-nél

Figyelj arra, hogy az alapértelmezettként beállított URL-nek is HTTP:// -el kell kezdődnie. (ahogy a fenti képen látható)

Utána egy igazán csavarosan groteszk akadály következett: a PIXI szerver runtime cache-e. Nem az SLD-cache-ről beszélek, amit könnyedén frissíthetünk az "Enterprise Services Builder" menüjében. Nem, külön el kell indítani az SXI_CACHE tranzakciót a PIXI SAP GUI felületén és ezzel lehet újra generálni ezeket a cache-eket. Volt egy message mapping problémánk - short dump - és körülbelül egy óráig tartott, amíg megtaláltuk és frissítettük ezeket a tárakat.

XML-Header: fix HTTP content type

Ez a probléma még egy testi reakciót is okozott nálam: valami nagyon furcsa érzésem támadt a gyomrom körül. Ugyanis az XML-tartalmom lelkiismeretesen össze lett állítva és le lett ellenőrizve újra és újra és újra... És nem működött, nem működött, nem működött. Válaszul egy pompás SOAP teszter programot tettem fel a rendszerre, a soapUI-t - köszönet a fejlesztőinek - és leteszteltem ugyanazt az XML-t. Működött. Ez XML-tartalom ugyanaz volt - némi whitespace karakter kivételével - és mégis különböző lett az eredmény.
Kénytelen voltam egy házi készítésű HTTP request saver-t eszkábálni, ami mindkét request-et elmentette. Csak így találtam meg a megoldást.
Az SAP és a third party cég is biztosak abban, hogy hogyan kell kinéznie egy HTTP header-nek. Annyira biztosak a content type-ban is, hogy soha nem is említik. Csakhogy különböző HTTP content type-ot haszálnak:
• SAP: "application/xml"
• Third party: "text/xml"

Tehát ez a content type okozta azt a furcsa érzést a gyomrom körül!

A megoldás az, hogy a communication channel-t kibővítjük egy modullal a következő képnek megfelelően:

asapxi10.jpg

Bázis rendszer problémák

A PIXI szerverünk új volt - csak néhány hónappal előtte installálták: ennek következtében körülbelül 10-20 órát "bázisos" problémákkal vesződtünk:
• PIXI adapter nem működik
• PIXI nem tudja elíndítani az "Enterprise Services Builder"-t
• PIXI pufferek nincsenek frissítve
• PIXI rendszert javították és a communikációs csatornákat nem indították újra (RFC short dump)
Ahhoz, hogy egy ilyen szerver stabilan működjön és mindig elérhető legyen, egy bizonyos időbefektetéssel kell számolni az installálás után is.

Konklúzió

Hosszútávon érdemes PIXI interface-eket használni, de a sikeres bevezetéshez elegendő tapasztalat és egy sor trükk - lásd fentebb - is szükséges.

Melléklet

A felhasznált komponensek

SAP PI(XI) 7.1
http://service.sap.com/xi
http://en.wikipedia.org/wiki/SAP_Exchange_Infrastructure

SAP ERP
http://www.sap.com/solutions/business-suite/erp/index.epx

SOAPUI
http://www.soapui.org/

A fejlesztőkről

Andreas Katzer egy tapasztalt PI/XI tanácsadó, aki elsősorban Svájcban dolgozik.
Balai Zsolt - ennek a dokumentumnak a szerzője - egy SAP/internetes technikai tanácsadó HR/FI/CO/MM/SD tapasztalattal.

Az eredeti cikk

Az eredeti angol dokumentum itt található:
http://zbalai.com/_abap/content/400_online_interfaces_using_pixi/Online_Interfaces_using_PIXI_V04.pdf

Balai Zsolt - ennek a dokumentumnak a szerzője - egy SAP/internetes technikai tanácsadó HR/FI/CO/MM/SD tapasztalattal.


Nincs hozzászólása.
A téma megvitatása a fórumon. (0 hozzászólás)