Ale, Edi & Idocs Introducion & Difference: Sap Tutorial
Ale, Edi & Idocs Introducion & Difference: Sap Tutorial
Ale, Edi & Idocs Introducion & Difference: Sap Tutorial
SAP Tutorial
EDI, stands for Electronic Data Interchange, is the electronic exchange of
structured business data between different applications.
EDI Architecture
What is ALE ?
ALE supports the distribution of the business functions and process across
loosely coupled SAP R/3 systems (different versions of SAP R/3). Connections
from R/2 and non SAP systems is also supported.
ALE supports-
Both ALE and EDI require data exchange. An Idoc is a data container which is
used for data exchange by both EDI and ALE processes.
What is IDOC?
IDOC is simply a data container used to exchange information between any two
processes that can understand the syntax and semantics of the data.
In simple words , an idoc is like a data file with a specified format which is
exchanged between 2 systems which know how to interpret that data.
IDOCs are based on EDI standards, ANSI ASC X12 and EDIFACT. In case of
any conflict in data size, it adopts one with greater length. IDOCs
are independent of the direction of data exchange e.g. ORDERS01 :
Purchasing module : Inbound and Outbound.IDOCs can be viewed in a text
editor. Data is stored in character format instead of binary format.IDOCs
are independent of the sending and receiving systems.(SAP-to-SAP as well
as Non-SAP)
In other words, an IDOC is like a data file with a specified format which is
exchanged between 2 systems which know how to interpret that data.
In the SAP System, I DOCs are stored in database. Every IDOC has a unique
number(within a client).
What is an IDOC?
Structure of an IDOC
IDOC Types
What is a Segment?
What is Extension IDOC type?
IDOC Views
Partner Profiles
Port
The Outbound Process
The Inbound Process
Key Features
IDOCs are independent of the sending and receiving systems.(SAP-to-
SAP as well as Non-SAP)
IDOCs are based on EDI standards, ANSI ASC X12 and EDIFACT. In a
case of any conflict in data size, it adopts one with greater length.
IDOCs are independent of the direction of data exchange e.g.
ORDERS01: Purchasing module: Inbound and Outbound
IDOCs can be viewed in a text editor. Data is stored in character format
instead of binary format.
Structure of an IDOC
1. The administration part (Control Record)- which has the type of idoc,
message type, the current status, the sender, receiver etc. This is referred
to as the Control record.
2. The application data (Data Record) - Which contains the data. These are
called the data records/segments.
3. The Status information (Status Record)- These give you information about
the various stages the idoc has passed through.
You can view an I-DOC using transaction WE02 or WE05
As seen the screenshot above IDOC record has three parts Control, Data and
Status. Let's look into them in detail - Control Record
All control record data is stored in EDIDC table. The key to this table is the
IDOC Number.
It contains information like IDOC number, the
direction(inbound/outbound), sender, recipient information, channel it is
using, which port it is using etc.
Direction '1' indicates outbound, '2' indicates inbound.
Data Record
Data record contains application data like employee header info, weekly
details, client details etc
All data record data is stored in EDID2 to EDID4 tables and EDIDD is a
structure where you can see its components.
It contains data like the idoc number, name and number of the segment in
the idoc, the hierarchy and the data
The actual data is stored as a string in a field called SDATA, which is a
1000 char long field.
Status Record
IDOC Types
An I DOC Type, (Basic) defines the structure and format of the business
document that is to be exchanged. An IDOC is an instance of an IDOC Type ,
just like the concept of variables and variables types in programming languages.
You can define IDOC types using WE30
What is a Segment?
A Segment defines the format and structure of a data record in I-DOC.
Segments are reusable components.
Definitions keep changing as per the version but the segment type remains the
same.
Transaction: WE31
What is Extension IDOC type?
An IDOC is of 2 types:-
1. Basic
2. Extension
SAP provides many a pre-defined Basic IDOC Types which can not be
modified. In case you want to add more data to these restricted basic type you
may use an extension type. Most of the times you will NOT use extension.
Documentation
Each IDOC are thoroughly documented in transaction WE60
Message Type
A message represents a specific type of document that is transmitted between
two partners Ex. Orders, orders responses, invoices etc
IDOC Views
An IDOC type can be used for more than one message type, which results in
IDOCs containing more fields than required for a particular message type.
IDOC views are used to improve performance in generating IDOCs to ensure
only the relevant segments are filled with data. IDOC Views are important only for
Outbound Processing.
Partner Profiles
A partner is defined as a business partner with whom you conduct business and
exchange documents
In the partner profile of a partner that we exchange Idocs with, we maintain the
parameters that are necessary for exchanging the data. The transaction used
is 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 -
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-
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.
BAPIs are defined in the BOR (Business object repository) as methods of SAP
business object types that carry out specific business functions. They are
implemented as RFC-enabled function modules and are created in the Function
Builder of the ABAP Workbench.
Some BAPIs and methods provide basic functions and can be used for most SAP
Business Objects. These are called STANDARDIZED BAPI's.
Step 3.In the next dialog box, following information needs to be specified :
Step4.To create the method select Yes in the next dialog box.
Step5.After the program has been generated and executed, check the program
in the method just created.Thus , a BAPI is created.
You can also use the BAPI Explorer (Transaction code BAPI) for 360' view on
BAPI