Traitement des événements des paquets IDoc analysés globaux

L'adaptateur traite un paquet IDoc comme une seule unité de travail si tous les IDocs du paquet sont du même type. Tous les IDocs du paquet font alors partie d'une seule transaction XA vers un noeud final. Le traitement des événements est identique à celui d'un seul IDoc en ce qui concerne le mécanisme de reprise d'événements ; le paquet IDoc est considéré comme une seule unité de travail. Par conséquent, un échec enregistré sur le noeud final pour un des IDoc entraîne l'échec du paquet entier. En cas d'échec, tous les IDoc du paquet doivent être envoyés à nouveau vers le noeud final.

L'adaptateur traite un événement entrant de paquet global à l'aide de la procédure suivante :
  1. Lorsque le système SAP envoie un ID de transaction à l'adaptateur, ce dernier vérifie l'état de l'événement et effectue l'une des actions suivantes :
    • S'il s'agit d'un nouvel événement, l'adaptateur stocke un EVNTID (qui correspond à l'ID de transaction) avec l'état 0 (Created) dans la table de reprise des événements.
    • Si l'état de l'événement est -1 (Rollback), l'adaptateur change en CREATED.
    • Si l'état de l'événement est 1 (Executed), l'adaptateur renvoie un signal de succès au système SAP.
  2. Le système SAP envoie la paquet IDoc à l'adaptateur, qui l'analyse et le convertit en plusieurs objets métier avant de les stocker en mémoire.
  3. L'adaptateur envoie les objets métier vers le noeud final. Notez que l'adaptateur peut distribuer des objets aux noeuds finals, qu'ils prennent en charge les transactions ou non.
    • Pour les noeuds finals qui prennent en charge les transactions, l'adaptateur distribue l'objet au sein d'une transaction XA unique contrôlée par WebSphere Application Server. Lorsque le noeud final traite l'événement et que la transaction est validée, l'état de l'événement devient 1 (Executed).
      Remarque : Le noeud final doit être configuré pour prendre en charge les transactions XA.
    • Pour les noeuds finals qui ne prennent pas en charge les transactions, l'adaptateur distribue l'objet au noeud final et affecte l'état 1 (Executed) à l'événement. L'adaptateur distribue l'objet métier sans la qualité de service (QOS) qui garantit une livraison unique.
  4. Si une exception se produit pendant que l'adaptateur traite l'événement ou si le noeud final génère une exception, l'état de l'événement devient -1 (Rollback).
  5. Si aucune exception ne se produit, le système SAP effectue les tâches suivantes :
    • Il envoie un appel COMMIT à l'adaptateur et l'état de l'événement devient 1 (Executed).
    • Il envoie un appel CONFIRM à l'adaptateur.
    L'adaptateur supprime alors les enregistrements dont l'état est 1 (Executed) et consigne un événement CEI (common event infrastructure) à des fins de suivi et d'audit.

Conditions d'utilisation |


(c) Copyright IBM Corporation 2005, 2006.
Ce centre de documentation repose sur la technologie Eclipse (http://www.eclipse.org)