Eseményfeldolgozás felosztott, értelmezett IDoc csomagok esetén

A felosztott IDoc csomagban több IDoc van, amelyek mindegyike egyetlen üzleti objektumnak felel meg.

Az adapter a következő eljárás szerint dolgoz fel egy több IDoc dokumentumot tartalmazó IDoc csomaghoz tartozó bejövő eseményt:
  1. Amikor az SAP rendszer elküldi a tranzakcióazonosítót az adapternek, akkor az adapter ellenőrzi az esemény állapotát, és az alábbiak valamelyikét teszi:
    • Ha ez egy új esemény, akkor az adapter tárol egy EVNTID azonosítót (ami a tranzakcióazonosítónak felel meg) 0 állapottal (Létrehozva) az esemény-helyreállítási táblában.
    • Ha az esemény állapota -1 (Visszagörgetés), akkor az adapter frissíti az állapotot 0 (Létrehozva) értékre.
    • Ha az esemény állapota 1 (Végrehajtva), akkor az adapter jelzi a sikert az SAP rendszernek.
  2. Az SAP rendszer elküldi az IDoc csomagot az adapternek, ami értelmezi azt és átalakítja az IDoc dokumenumot több üzleti objektumba, és eltárolja azokat a memóriában.
  3. Az adapter frissíti az esemény-helyreállítási tábla BQTOTAL oszlopát (vagy táblamezőjét) a csomagban található IDoc dokumentumok számának értékére. Ez a szám megfigyelési és helyreállítási célokra használatos.
  4. Ha az adapter hibát észlel az IDoc csomag feldolgozása során, akkor az a két mód valamelyikén viselkedhet az IgnoreIDocPacketErrors konfigurációs tulajdonságtól függően.
    • Ha az IgnoreIDocPacketErrors tulajdonság false (hamis) értékre van állítva, akkor az adapter leállítja a csomagban lévő többi IDoc feldolgozását, és hibát jelent az SAP rendszernek.
    • Ha az IgnoreIDocPacketErrors tulajdonság true (igaz) értékre van állítva, akkor az adapter egy hibát naplóz, és folytatja a csomagban lévő többi IDoc feldolgozását. A tranzakció állapota 3 (Folyamatban) értékkel lesz megjelölve. Ebben az esetben az adapter naplója megjeleníti a meghiúsult IDoc dokumentumok számát, és ezeket az egyedi IDoc dokumentumokat külön újra el kell küldeni. Ezeket a rekordokat kézileg is karban kell tartania az esemény-helyreállítási táblában.
  5. Az SAP rendszer egy COMMIT hívást küld az adapternek.
  6. Az adapter egymásután elküldi az üzleti objektumokat az üzenetvégpontnak, és frissíti a BQPROC tulajdonságot annak az IDoc dokumentumnak a sorszámával, amelyiken éppen dolgozik. Az adapter az objektumokat egy egyedi XA tranzakció (egy kétfázisú véglegesítési tranzakció) részeként szállítja a megfelelő végpont számára, amelyet az alkalmazáskiszolgáló vezérel.
  7. Amikor a végpont fogadja az eseményt és a tranzakció véglegesítésre került, az adapter növeli a BQPROC tulajdonságban lévő számot.
    Megjegyzés: Az üzenetvégpontot úgy kell beállítani, hogy támogassa az XA tranzakciókat.
  8. Miután az adapter leszállította az IDoc csomagban lévő összes üzleti objektumot az üzenetvégpontnak, az esemény állapotát 1 (Végrehajtva) értékre frissíti.
  9. Az IDoc csomag feldolgozása során történő hirtelen megszakítások esetén az adapter az aktuális sorszámtól folytatja az IDoc dokumentumok feldolgozását. Az adapter folytatja a BQPROC tulajdonság frissítését, még ha az IgnoreIDocPacketErrors true értékre is van állítva. Az adapter folytatja a feldolgozást, hátha kézileg zárja le az adaptert, amikor az éppen egy IDoc csomagot dolgoz fel.
  10. Ha kivétel történik, míg az adapter feldolgozza az eseményt, illetve míg a végpont kivételt állít elő, akkor az esemény állapota -1 (Visszagörgetés) lesz.
  11. Ha nem történik kivétel, akkor az adapter a következőket teszi:
    • Elküld egy COMMIT hívást az adapternek, és az esemény állapota 1 (Végrehajtva) lesz.
    • Elküld egy CONFIRM hívást az adapternek.

    Az adapter ezután törli az 1 (Végrehajtva) állapotú rekordokat, majd naplóz egy CEI eseményt, ami nyomkövetési és megfigyeli célokra használható.


Felhasználási feltételek |


(c) Copyright IBM Corporation 2005, 2006.
Ez az információs központ Eclipse technológiára épül (http://www.eclipse.org)