Tutoriel SAP IDOC: définition, structure, types, format & les tables

Table des matières:

Anonim

Qu'est-ce qu'un IDOC?

IDOC est simplement un conteneur de données utilisé pour échanger des informations entre deux processus pouvant comprendre la syntaxe et la sémantique des données.
En d'autres termes, un IDOC est comme un fichier de données avec un 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 processus ALE ou EDI sortant , un IDOC est créé.
Dans le système SAP, les DOC I sont stockés dans la base de données. Chaque IDOC a un numéro unique (au sein d'un client).

Dans ce tutoriel, vous apprendrez:

  • Qu'est-ce qu'un IDOC?
  • Structure d'un IDOC
  • Types d'IDOC
  • Qu'est-ce qu'un segment?
  • Qu'est-ce que le type d'IDOC d'extension?
  • Vues IDOC
  • Profils de partenaires
  • Port
  • Le processus sortant
  • Le processus entrant
Principales caractéristiques
  • Les IDOC sont indépendants des systèmes d'envoi et de réception. (SAP-to-SAP ainsi que non-SAP)
  • Les IDOC sont basés sur les normes EDI, 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épendants du sens de l'échange de données, par exemple ORDERS01: module d'achat: entrant et sortant
  • Les IDOC peuvent être visualisés dans un éditeur de texte . Les données sont stockées au format caractère au lieu du format binaire.

Structure d'un IDOC


La structure I doc se compose de 3 parties -

  1. La partie administration ( enregistrement de contrôle ) - qui a le type d'idoc, le type de message, l'état actuel, l'expéditeur, le destinataire, etc. Ceci est appelé enregistrement de contrôle.
  2. Les données d'application ( enregistrement de données ) - qui contient les données. Celles-ci sont appelées les enregistrements / segments de données .
  3. Les informations d'état ( enregistrement d'état ) - Elles vous donnent des informations sur les différentes étapes par lesquelles l'idoc est passé.

Vous pouvez afficher un I-DOC à l'aide de la transaction WE02 ou WE05


Comme le montre la capture d'écran ci-dessus, l'enregistrement IDOC comprend trois parties Contrôle, Données et Statut. Examinons-les en détail - Control Record

  • Toutes les données d'enregistrement 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 le départ, «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 du client, etc.
  • Toutes les données d'enregistrement de données sont stockées dans des tables EDID2 à EDID4 et EDIDD est une structure dans laquelle vous pouvez voir ses composants.
  • Il contient des données comme 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 1 000 caractères.

Enregistrement de statut

  • L'enregistrement d'état est joint à un I-DOC à chaque étape 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 le sortant tandis que 50-75 pour le trafic entrant

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 les langages de programmation. Vous pouvez définir des types d'IDOC à l'aide de 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 créé par SAP

  • Type de segment (indépendant de la version)
  • Définition du segment (en fonction de la version)
  • Documentation du segment

Les 3 derniers caractères correspondent à la version du segment. Les
définitions changent constamment selon la version, mais le type de segment reste le même.
Transaction: WE31


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

Un IDOC est de 2 types: -

  1. De base
  2. Extension


SAP fournit de nombreux types IDOC de base prédéfinis qui ne peuvent pas être modifiés . 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 n'utiliserez PAS l' extension.


Documentation

Chaque IDOC est soigneusement documenté dans la transaction WE60


Type de message

Un message représente un type spécifique de document qui est transmis entre deux partenaires Ex. Commandes, réponses aux commandes, factures, etc.
Un type d'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


Vues IDOC

Un type IDOC peut être utilisé pour plusieurs types de message, ce qui entraîne des IDOC contenant plus de champs que nécessaire 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 ne sont importantes que pour le traitement sortant.


Profils de partenaires

Un partenaire est défini comme un partenaire commercial avec lequel vous gérez des affaires et échangez des documents.
Dans le profil de partenaire d'un partenaire avec lequel nous échangeons des Idocs, nous gérons les paramètres nécessaires à l'échange des données. La transaction utilisée est WE20 .

Port

The port defines the technical characteristics of the connection between your SAP system and the other system you want to transfer data with (subsystem). The port defines the medium in which data is exchanged between the 2 systems.
There are different types of ports. The 2 most commonly used are the TRFC ports used in ALE and File ports which EDI uses.
For TRFC ports we have to give the name of the logical destination created using SM59.
When using file port you can specify the directory where the IDOC file should be placed. The other system or the middleware will pick up the file from here. The Function module can be used to generate a file name for the idoc. While Testing you can use "Outbound file" to specify a constant file name. The tab "outbound trigger" can be used to supply information if we want to trigger some processing on the subsystem when an idoc is created at this location. We have to specify the command file name and the directory which has to be run.


This is so CONFUSING!

Let's understand the process of creating an IDOC with an example -

  • Whenever a Purchase Order (PO) is created we want to send the IDOC to a vendor.
  • The PO is sent in the form of an IDOC to the vendor (partner). That partner has to be EDI enabled in that system. SAP should realize that it could send doc to this vendor electronically.
  • The PO sent as an outbound idoc by the customer will be inbound idoc for the vendor. The SAP system on the vendor's side can process this to create an application document (a sales order) on their system.
  • Quotation, RFQ, PO, SO, Invoice, delivery note etc are some of the commonly exchanged documents through IDOC

The process of data transfer out of your SAP system is called the Outbound process, while that of data moving into you SAP system is called Inbound process. As a developer or a consultant who will be involved in setting up theses process for your organization. Here are the steps how to set them up-

The Outbound Process

Steps Involved -

  1. Create segments(WE31)
  2. Create an idoc type(WE30)
  3. Create a message type (WE81)
  4. Associate a message type to idoc type(WE82)
  5. Create a port(WE21)
  6. If you are going to use the message control method to trigger idocs then create the function module for creating the idoc and associate the function module to an outbound process code
  7. Otherwise, create the function module or stand-alone program which will create the idoc
  8. Create a partner profile(WE20) with the necessary information in the outbound parameters for the partner you want to exchange the idoc with.Trigger the idoc.

The Inbound Process

Steps Involved-

  1. Creation of basic Idoc type (Transaction WE30)
  2. Creating message type (Transaction WE81)
  3. Associating the Message type to basic Idoc type (Transaction WE82)
  4. Create the function module for processing the idoc
  5. Définir les caractéristiques du module fonction (BD51)
  6. Affectez le module fonction entrant au type de message (WE57)
  7. Définition du code de processus (transaction WE42)
  8. Création de profil de partenaire (Transaction WE20)