SAP Tutoriel IDOC : définition, structure, types, format et tableaux

Qu’est-ce qu’un IDOC ?

IDOC est simplement un conteneur de données utilisé pour échanger des informations entre deux processus capables de comprendre la syntaxe et la sémantique des données.

Autrement dit, un IDOC est comme un fichier de données au format spécifié qui est échangé entre 2 systèmes qui savent interpréter ces données.

IDOC signifie « Document intermédiaire »

Lorsque nous exécutons un sortant Processus ALE ou EDI, un IDOC est créé.

Dans le SAP Système, les DOC I sont stockés dans la base de données. Chaque IDOC a un numéro unique(au sein d'un client).

Fonctionnalités clés

  • Les IDOC sont indépendant des systèmes d’envoi et de réception.(SAP-À-SAP ainsi que les non-SAP)
  • Les IDOC sont basés sur EDI normes ANSI ASC X12 et EDIFACT. En cas de conflit de taille de données, il en adopte une de plus grande longueur.
  • Les IDOC sont indépendant du sens d'échange des données par exemple ORDERS01 : module Achats : entrants et sortants
  • Les IDOC peuvent être visualisés dans un éditeur de texte. Les données sont stockées au format caractères au lieu du format binaire.

Structure d'un IDOC

Structure d'un IDOC

La structure I doc se compose de 3 parties –

  1. La partie administration (Dossier de contrôle)- qui a le type d'idoc, le type de message, l'état actuel, l'expéditeur, le destinataire, etc. C'est ce qu'on appelle l'enregistrement de contrôle.
  2. Les données de candidature (Enregistrement de données) – Qui contient les données. C'est ce qu'on appelle les enregistrements de données/segments.
  3. Les informations d'état (Enregistrement de statut)- Ceux-ci vous renseignent sur les différentes étapes par lesquelles l'idoc est passé.

Vous pouvez consulter un I-DOC à l'aide de la transaction WE02 or WE05

Structure d'un IDOC

Comme le montre la capture d'écran ci-dessus, l'enregistrement IDOC comporte trois parties : Contrôle, Données et Statut. Examinons-les en détail – Dossier de contrôle

  • Toutes les données des enregistrements de contrôle sont stockées dans la table EDIDC. La clé de ce tableau est le numéro IDOC
  • Il contient des informations telles que le numéro IDOC, la direction (entrant/sortant), l'expéditeur, les informations sur le destinataire, le canal qu'il utilise, le port qu'il utilise, etc.
  • La direction « 1 » indique l'aller, « 2 » indique l'arrivée.

Enregistrement de données

  • L'enregistrement de données contient des données d'application telles que les informations d'en-tête des employés, les détails hebdomadaires, les détails des clients, etc.
  • Toutes les données d'enregistrement de données sont stockées dans des tables EDID2 à EDID4 et EDIDD est une structure où vous pouvez voir ses composants.
  • Il contient des données telles que le numéro d'idoc, le nom et le numéro du segment dans l'idoc, la hiérarchie et les données.
  • Les données réelles sont stockées sous forme de chaîne dans un champ appelé SDATA, qui est un champ de 1000 caractères de long.

Enregistrement de statut

  • L'enregistrement de statut est joint à un I-DOC à chaque jalon ou lorsqu'il rencontre des erreurs.
  • Toutes les données d'enregistrement d'état sont stockées dans la table EDIDS.
  • Les statuts 1 à 42 sont pour les sortants tandis que 50 à 75 pour les entrants

Types d'IDOC

Un type I DOC (de base) définit la structure et le format du document commercial à échanger. Un IDOC est une instance d'un type IDOC , tout comme le concept de variables et de types de variables dans langages de programmation. Vous pouvez définir des types IDOC en utilisant WE30

Qu'est-ce qu'un Segment ?

Un segment définit le format et la structure d'un enregistrement de données dans I-DOC. Les segments sont des composants réutilisables.

Pour chaque segment SAP crée des

  • Type de segment (indépendant de la version)
  • Définition du segment (dépendant de la version)
  • Documentation des segments

Les 3 derniers caractères sont la version du segment

Les définitions continuent de changer selon la version mais le type de segment reste le même.

Transaction:WE31

Segment dans IDOC

Qu’est-ce que le type IDOC d’extension ?

Un IDOC est de 2 types : -

  1. Basic
  2. Extension

Type d'IDOC d'extension

SAP fournit de nombreux types IDOC de base prédéfinis qui ne peut pas être modifié. Si vous souhaitez ajouter plus de données à ces types de base restreints, vous pouvez utiliser un type d'extension. La plupart du temps, vous le ferez ne pas utiliser l'extension.

Type d'IDOC d'extension

Documentation

Chaque IDOC est soigneusement documenté dans la transaction WE60

Documentation

Type de message

Un message représente un type spécifique de document transmis entre deux partenaires Ex. Commandes, réponses aux commandes, factures, etc.

Un type idoc peut être associé à de nombreux types de messages

De plus, un type de message peut être associé à différents types d'idoc. Transaction WE81

Type de message

Vues IDOC

Un type IDOC peut être utilisé pour plusieurs types de message, ce qui entraîne des IDOC contenant plus de champs que requis pour un type de message particulier.
Les vues IDOC sont utilisées pour améliorer les performances de génération d'IDOC afin de garantir que seuls les segments pertinents sont remplis de données. Les vues IDOC sont importantes uniquement pour le traitement sortant.

Vues IDOC

Profils des partenaires

Un partenaire est défini comme un partenaire commercial avec lequel vous faites des affaires et échangez des documents.

Dans le profil de partenaire d'un partenaire avec lequel nous échangeons des Idocs, nous conservons les paramètres nécessaires à l'échange de données. La transaction utilisée est WE20.

Profils de partenaires dans IDOC

Port

Le port définit les caractéristiques techniques de la connexion entre votre SAP système et l’autre système avec lequel vous souhaitez transférer des données (sous-système). Le port définit le support sur lequel les données sont échangées entre les 2 systèmes.

Il existe différents types de ports. Les 2 plus couramment utilisés sont les Ports TRFC utilisé dans l'ALE et Fichier ports utilisés par EDI.

Pour les ports TRFC il faut donner le nom de la destination logique créée en utilisant SM59.

Lorsque vous utilisez le port de fichier, vous pouvez spécifier le répertoire dans lequel le fichier IDOC doit être placé. L'autre système ou le middleware récupérera le fichier à partir d'ici. Le module Function peut être utilisé pour générer un nom de fichier pour l'idoc. Alors que Contrôle de qualité vous pouvez utiliser « Fichier sortant » pour spécifier un nom de fichier constant. L'onglet "déclencheur sortant" peut être utilisé pour fournir des informations si nous voulons déclencher un traitement sur le sous-système lorsqu'un idoc est créé à cet emplacement. Nous devons spécifier le nom du fichier de commande et le répertoire qui doit être exécuté.

Port dans IDOC

C'est tellement CONFUSANT !

Comprenons le processus de création d'un IDOC avec un exemple -

  • Chaque fois qu'un bon de commande (PO) est créé, nous souhaitons envoyer l'IDOC à un fournisseur.
  • Le bon de commande est envoyé sous la forme d'un IDOC au fournisseur (partenaire). Ce partenaire doit être compatible EDI dans ce système. SAP devrait se rendre compte qu'il pourrait envoyer des documents à ce fournisseur par voie électronique.
  • Le bon de commande envoyé en tant qu'idoc sortant par le client sera un idoc entrant pour le fournisseur. Le SAP Le système du côté du fournisseur peut traiter cela pour créer un document de demande (une commande client) sur son système.
  • Devis, RFQ, PO, SO, facture, bon de livraison, etc. sont quelques-uns des documents couramment échangés via IDOC.

Le processus de transfert de données hors de votre SAP système est appelé le Processus sortant, tandis que celui des données entrant en vous SAP le système s'appelle Processus entrant. En tant que développeur ou consultant qui sera impliqué dans la mise en place de processus de thèse pour votre organisation. Voici les étapes pour les configurer-

Le processus sortant

Étapes impliquées –

  1. Créer des segments (WE31)
  2. Créer un type d'IDOC (WE30)
  3. Créer un type de message (WE81)
  4. Associer un type de message au type idoc (WE82)
  5. Créer un port (WE21)
  6. Si vous envisagez d'utiliser la méthode de contrôle de message pour déclencher des idocs, créez le module fonction pour créer l'idoc et associez le module fonction à un code de processus sortant.
  7. Sinon, créez le module fonction ou le programme autonome qui créera l'idoc
  8. Créez un profil de partenaire (WE20) avec les informations nécessaires dans les paramètres sortants pour le partenaire avec lequel vous souhaitez échanger l'idoc. Déclenchez l'idoc.

Le processus entrant

Étapes impliquées-

  1. Création du type Idoc de base (Transaction WE30)
  2. Création d'un type de message (Transaction WE81)
  3. Association du type Message au type Idoc de base (Transaction WE82)
  4. Créer le module fonction de traitement de l'idoc
  5. Définir les caractéristiques du module fonction (BD51)
  6. Allouer le module fonction entrant au type de message (WE57)
  7. Définition du code de processus (Transaction WE42)
  8. Création de profil partenaire (Transaction WE20)