bapi & idoc & edi
-
Upload
laxmi-narsimha-rao-mamidala -
Category
Documents
-
view
247 -
download
32
Embed Size (px)
description
Transcript of bapi & idoc & edi

IBM Global Services
© Copyright IBM Corporation 2006
Overview of ALE / IDOCs
March, 2006

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 2
IBM Global Services
© Copyright IBM Corporation 2006
Topics to coverTopics to cover
What is ALE?
Components of ALE.
Anatomy of an IDoc.
ALE Processing
Transactions For Monitoring and Processing IDocs.
Questions

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 3
IBM Global Services
© Copyright IBM Corporation 2006
ALE TerminologyALE Terminology
•ALE - Application Linking & Enabling
•IDoc - Intermediate Document
•EDI - Electronic Data Interchange

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 4
IBM Global Services
© Copyright IBM Corporation 2006
ALE Objective ALE Objective

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 5
IBM Global Services
© Copyright IBM Corporation 2006
ALE!! What is it ??
It is a set ofIt is a set of Tools, programs and data definitions
that provides the mechanism for that provides the mechanism for distributing functionality and data across distributing functionality and data across multiple system.multiple system.

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 6
IBM Global Services
© Copyright IBM Corporation 2006
What Data can be Exchanged ?What Data can be Exchanged ?
Transaction Data–SD, MM, FI, CO, etc.
Master Data–Material, Customer, Vendor, etc.
Control Data–Organizational Reference Information
•Plants, Sales Orgs, etc.
Data required to enable tightly coupled, distributed applications
–Separate HR, Separate Treasury, etc.

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 7
IBM Global Services
© Copyright IBM Corporation 2006
Features –ALE / IDocsFeatures –ALE / IDocs
Distributed System yet integrated with SAP R/3
Based on ‘Application-to-Application integration using ‘Message Architecture’
Reliable communication Data is exchanged using “IDocs”
Support both R/2, R/3 and External system
If network problem, message is buffered
ALE support backward compatibility
ALE ensure that , data is transferred only once

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 8
IBM Global Services
© Copyright IBM Corporation 2006
ALE Scenario ALE Scenario
Document
SAP System R/3 SAP System R/3IDoc
EDI SubsystemEDI Subsystem
IDocIDoc

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 9
IBM Global Services
© Copyright IBM Corporation 2006
What is ALE ?
Components of ALE.
Anatomy of an IDoc.
ALE Processing
Transactions For Monitoring and Processing IDocs.
Trouble Shooting
Questions
Topics to coverTopics to cover

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 10
IBM Global Services
© Copyright IBM Corporation 2006
Components of ALE Components of ALE
Services:Services:
Application ServicesApplication Services
Distribution ServicesDistribution Services
Communication ServicesCommunication Services
Tools:Tools:
Customizing Tools Customizing Tools
Development ToolsDevelopment Tools

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 11
IBM Global Services
© Copyright IBM Corporation 2006
Application ServicesApplication Services
Services:Services:
Application ServicesApplication Services
Distribution ServicesDistribution Services
Communication ServicesCommunication Services
Tools:Tools:
Customizing Tools Customizing Tools
Development ToolsDevelopment Tools
This is where the SAP applications ( SD, FI, MM etc. ) generate their data and documents

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 12
IBM Global Services
© Copyright IBM Corporation 2006
Distribution ServicesDistribution Services
Services:Services:
Application ServicesApplication Services
Distribution ServicesDistribution Services
Communication ServicesCommunication Services
Tools:Tools:
Customizing Tools Customizing Tools
Development ToolsDevelopment Tools
Recipients Formats and
Filters the data Creates IDocs
( Intermediate
Documents

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 13
IBM Global Services
© Copyright IBM Corporation 2006
Communication ServicesCommunication Services
Services:Services:
Application ServicesApplication Services
Distribution ServicesDistribution Services
Communication ServicesCommunication Services
Tools:Tools:
Customizing Tools Customizing Tools
Development ToolsDevelopment Tools
•TCP/IP
•RFC
•tRFC
• etc

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 14
IBM Global Services
© Copyright IBM Corporation 2006
Development ToolsDevelopment Tools
Services:Services:
Application ServicesApplication Services
Distribution ServicesDistribution Services
Communication ServicesCommunication Services
Tools:Tools:
Customizing Tools Customizing Tools
Development ToolsDevelopment Tools
Model Maintenance Tool.
(for configuring the flow of data
between systems )Shared Master Data(SMD)tools
(for distributing master data ) Customization parameters
(within SAP for IDoc filtering and
conversion. )

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 15
IBM Global Services
© Copyright IBM Corporation 2006
Customizing ToolsCustomizing Tools
Services:Services:
Application ServicesApplication Services
Distribution ServicesDistribution Services
Communication ServicesCommunication Services
Tools:Tools:
Customizing Tools Customizing Tools
Development ToolsDevelopment Tools Tools for creating and modifying IDocs

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 16
IBM Global Services
© Copyright IBM Corporation 2006
Application Data
MasterIDOC Determine
Receipients
DetermineReceipients
Filter/ConvertData, Create IDOC
Filter/ConvertData, Create IDOC
Comm.IDOC
Application Functions
Application Functions
Filter/ConvertData
Filter/ConvertData
Comm.IDOC
CarrierCarrier
Application Layer
Application Layer
Distribution/ ALE Layer
Distribution/ ALE Layer
Communication Layer
Communication Layer
ApplicationApplication
In a Nut ShellIn a Nut Shell

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 17
IBM Global Services
© Copyright IBM Corporation 2006
Topics to coverTopics to cover
What is ALE ?
Components of ALE.
Anatomy of an IDoc.
ALE Processing
Transactions For Monitoring and Processing IDocs.
Trouble Shooting
Questions

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 18
IBM Global Services
© Copyright IBM Corporation 2006
IDoc ConceptIDoc Concept
R/3 System
System 1
SAPDocument
EDI subsystem R/3 System R/2 System 3rd party software
System 2
IDoc

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 19
IBM Global Services
© Copyright IBM Corporation 2006
IDoc StructureIDoc Structure
Status Record IDoc-IDStatus information
Data Record IDoc-IDSequence/HierarchySegment Format definition for
• header data• item data
Control Record IDoc-IDSender-IDReceiver-IDIDoc type and logical messageExternal structure

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 20
IBM Global Services
© Copyright IBM Corporation 2006
Control recordData RecordStatus Record
IDOC
“Intermediate Document”

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 21
IBM Global Services
© Copyright IBM Corporation 2006
The very first record of an IDoc package is always a control record. Thestructure of this control record of the structure EDIDC and describes the contents of the data contained in the package. The control record goes to table EDIDC
Control RecordControl Record

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 22
IBM Global Services
© Copyright IBM Corporation 2006
Message TypeMessage Type
Message Type indicates How to Know what the data Means
Data Exchanged by IDOC and EDI is known as Messages
Message of same kind belong to the same message type
Message types are stored in table EDMSG

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 23
IBM Global Services
© Copyright IBM Corporation 2006
All records in the IDoc, which come after the control record, are the IDoc data. They are all structured alike, with a segment information part and a data part, which is 1000 character in length, filling the rest of the line. Data & Segment info is stored in EDID4 for release 4.x and EDID3 for release 2.x and 3.x.
Data RecordData Record

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 24
IBM Global Services
© Copyright IBM Corporation 2006
Status RecordStatus Record Information about the IDoc status like:IDoc identification numberStatus number - table verifiedIDoc typeDirectionData and time stamp; Structure: EDIDS

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 25
IBM Global Services
© Copyright IBM Corporation 2006
Status of IDOCStatus of IDOC
A two-digit status is assigned to an IDoc to allow the processing to be monitored.
The statuses for outbound IDocs are between '01' and '49', while the statuses for inbound IDocs begin with '50'.
Status confirmation when using port type 'File':
The external system writes the status records in a status file, which is read by the R/3 System. In this case, the confirmation always refers to outbound IDocs.
Status confirmation using IDoc type SYSTAT01:
The system sending the confirmation writes the status records as data records of IDoc type SYSTAT01. All port types and both directions can be entered.

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 26
IBM Global Services
© Copyright IBM Corporation 2006
Idoc SegmentsIdoc Segments
TCODE:
WE31

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 27
IBM Global Services
© Copyright IBM Corporation 2006
Idoc TypesIdoc Types
TCODE:
WE30

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 28
IBM Global Services
© Copyright IBM Corporation 2006
How to Attach SegmentsHow to Attach Segments

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 29
IBM Global Services
© Copyright IBM Corporation 2006
Message TypesMessage Types
WE81WE82

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 30
IBM Global Services
© Copyright IBM Corporation 2006
IDOC Type/ Message Type/ Processing Function ModuleIDOC Type/ Message Type/ Processing Function Module
Valid combination of Message type and IDOC type are stored in table EDIMSG
Combination of message type and IDOC type determine the processing algorithm. This is usually a function module and is set up in table EDIFCT.

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 31
IBM Global Services
© Copyright IBM Corporation 2006
Topics to coverTopics to cover
What is ALE ?
Components of ALE.
Anatomy of an IDoc.
ALE Processing.
i.Outbound Processing
ii.Inbound Processing
Transactions For Monitoring and Processing IDocs.
Trouble Shooting
Questions

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 32
IBM Global Services
© Copyright IBM Corporation 2006
Outbound Processing

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 33
IBM Global Services
© Copyright IBM Corporation 2006
Outbound processing: directOutbound processing: direct
Application posting
Need to create IDOC?
Create master IDOC
Customer Distribution Model
Receiver determination
Segment filter
Field value conversion
Version change
ALE layer
Dispatch controlDatabase
M
Application document posted simultaneously with IDOCs
Comm. layer
asynch. RFCor
EDI
CLinks C
Comm. layer

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 34
IBM Global Services
© Copyright IBM Corporation 2006
Application posting
Need to create IDOC?
Create master IDOC
Customer Distribution Model
Receiver determination
Segment filter
Field value conversion
Version change
ALE layer
Dispatch controlDatabase
M
Application document posted simultaneously with IDocs
Comm. layer
asynch. RFCor
EDI
Links C
Querying the ModelQuerying the Model
asynch. RFCor
EDI
Comm. layer
C
- ALE supplies APIs (function modules) to allow applications to query the model
Is anybody interested in my message type? Optional: what filter objects are they
interested in?

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 35
IBM Global Services
© Copyright IBM Corporation 2006
Application posting
Need to create IDOC?
Create master IDOC
Customer Distribution Model
Receiver determination
Segment filter
Field value conversion
Version change
ALE layer
Dispatch controlDatabase
M
Application document posted simultaneously with IDocs
- The application creates the IDOCThe application creates the IDOC- Technically it is stored as an Technically it is stored as an
internal tableinternal table- Passed to ALE via an API Passed to ALE via an API
(function module)(function module)
Links C
Handover IDoc to ALEHandover IDoc to ALE
asynch. RFCor
EDI
C
Comm. layer

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 36
IBM Global Services
© Copyright IBM Corporation 2006
Receiver determinationReceiver determination
Application posting
Need to create IDOC?
Create master IDOC
Customer Distribution Model
Receiver determination
Segment filter
Field value conversion
Version change
ALE layer
Dispatch controlDatabase
M
Application document posted simultaneously with IDocs
asynch. RFCor
EDI
Links C
asynch. RFCor
EDI
C
Comm. layer
- If the application has no specified If the application has no specified recipientsrecipients ALE refers to the customer ALE refers to the customer
distribution model to determine distribution model to determine themthem
Data not relevant to receiver Data not relevant to receiver (according to model) is removed (according to model) is removed in ALE layer.in ALE layer.

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 37
IBM Global Services
© Copyright IBM Corporation 2006
Segment filterSegment filter
Application posting
Need to create IDOC?
Create master IDOC
Customer Distribution Model
Receiver determination
Segment filter
Field value conversion
Version change
ALE layer
Dispatch controlDatabase
M
Application document posted simultaneously with IDocs
asynch. RFCor
EDI
Links C
asynch. RFCor
EDI
C
Comm. layer
- The filter is data-independentThe filter is data-independent- IDOC segments that are not IDOC segments that are not
required can be removedrequired can be removed- The filter is message and receiver-The filter is message and receiver-
specificspecific

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 38
IBM Global Services
© Copyright IBM Corporation 2006
Field value conversionField value conversion
Application posting
Need to create IDOC?
Create master IDOC
Customer Distribution Model
Receiver determination
Segment filter
Field value conversion
Version change
ALE layer
Dispatch controlDatabase
M
Application document posted simultaneously with IDocs
asynch. RFCor
EDI
Links C
asynch. RFCor
EDI
C
Comm. layer
- The contents of individual The contents of individual fields can befields can be translated to new valuestranslated to new values suppressedsuppressed
- The filter is message and The filter is message and receiver-specificreceiver-specific

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 39
IBM Global Services
© Copyright IBM Corporation 2006
Version changeVersion change
Application posting
Need to create IDOC?
Create master IDOC
Customer Distribution Model
Receiver determination
Segment filter
Field value conversion
Version change
ALE layer
Dispatch controlDatabase
M
Application document posted simultaneously with IDocs
Comm. layer
asynch. RFCor
EDI
Links C
asynch. RFCor
EDI
C
Comm. layer
- IDOCs can be changed to older IDOCs can be changed to older versionsversions
- Systems with different release Systems with different release levels can communicate levels can communicate without additional application without additional application logiclogic

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 40
IBM Global Services
© Copyright IBM Corporation 2006
Make LinksMake Links
Application posting
Need to create IDOC?
Create master IDOC
Customer Distribution Model
Receiver determination
Segment filter
Field value conversion
Version change
ALE layer
Dispatch controlDatabase
M
Application document posted simultaneously with IDocs
CCLinks
asynch. RFCor
EDI
C
Comm. layer
- Links are written between IDOC Links are written between IDOC andand Application object contained Application object contained
in IDOCin IDOC Communication-Layer's Communication-Layer's
"Transaction-ID""Transaction-ID"

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 41
IBM Global Services
© Copyright IBM Corporation 2006
Dispatch controlDispatch control
Application posting
Need to create IDOC?
Create master IDOC
Customer Distribution Model
Receiver determination
Segment filter
Field value conversion
Version change
ALE layer
Dispatch controlDatabase
M
Application document posted simultaneously with IDocs
C
asynch. RFCor
EDI
Links C
asynch. RFCor
EDI
C
Comm. layer
- Technical comms parameters are Technical comms parameters are defineddefined
- EDI or aRFC (asynch. remote EDI or aRFC (asynch. remote function call)function call)
- Send immediately or cumulate Send immediately or cumulate and send via batch joband send via batch job If batch, packet size is If batch, packet size is
determineddetermined

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 42
IBM Global Services
© Copyright IBM Corporation 2006
Scenario analysisScenario analysis
• How does the IDOC look like ?
• How is data being sent ?
• How is the data being received ?

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 43
IBM Global Services
© Copyright IBM Corporation 2006
Outbound program development
• Program logic
– “How is the IDOC being created ?”
• Triggering
– “How is the IDOC creation kicked off ?”

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 44
IBM Global Services
© Copyright IBM Corporation 2006
Program logicProgram logic
• Select data from application tables• Fill data into IDOC • Pass IDOC to ALE layer (Call function MASTER_IDOC_DISTRIBUTE)• Commit Work
• Receiver determination• Segment filtering• Version Control• Dispatch Control
IDOC program
ALE layer
MASTER_IDOC_DISTRIBUTE

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 45
IBM Global Services
© Copyright IBM Corporation 2006
MASTER_IDOC_DISTRIBUTEMASTER_IDOC_DISTRIBUTE
Call function ‘MASTER_IDOC_DISTRIBUTE’ Exporting
master_idoc_control: IDOC control record
Tables
communication_idoc_control: returned information about the
distribution
master_idoc_data: IDOC data segments

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 46
IBM Global Services
© Copyright IBM Corporation 2006
Filling an EDIDD structureFilling an EDIDD structure
Header (55bytes) SDATA (1000bytes)…. SEGNAM ….EDIDD
Z1SEGField1 Field2 Field3 Field4
“10” “ABC”
MOVE “Z1SEG” to EDIDD-SEGNAMMOVE “10” to Z1SEG-FIELD1MOVE “ABC” to Z1SEG-FIELD2MOVE Z1SEG to EDIDD-SDATA

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 47
IBM Global Services
© Copyright IBM Corporation 2006
General Programming rulesGeneral Programming rules
Design Guidelines for creating IDOC data records:
• Left-justified filing of IDOC Fields
• Replacing SAP codes with ISO codes
currency keys
country keys
unit of measure
shipping instructions
• Converting Currency Amounts

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 48
IBM Global Services
© Copyright IBM Corporation 2006
Left-justified FillingLeft-justified Filling
All fields must be left-justified Character fields:
automatic
Non-character fields:
‘Condense’ statement must be used
Check IDOC documentation to find out which fields require a ‘condense’
All types unequal to ‘char’, ‘cuky’, ‘clnt’, ‘accp’, ‘numc’, ‘dats’, ‘tims’ or ‘unit’ require a condense

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 49
IBM Global Services
© Copyright IBM Corporation 2006
Code ConversionsCode Conversions
Replacing SAP codes with ISO codes
– Currency keys: ‘currency_code_sap_to_iso’– Country keys: ‘country_code_sap_to_iso’– Units of measure: ‘unit_of_measure_sap_to_iso’– Shipping instructions: sap_iso_package_type_code’
• Conversion of currency amounts– ‘currency_amount_sap_to_iso’

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 50
IBM Global Services
© Copyright IBM Corporation 2006
Basic Configuration ElementsBasic Configuration Elements
Create and allocate Logical System Define Ranges (Idocs, Ports, etc ) Define RFC Destinations Define Ports Maintain Customer Model Create Partner Profiles

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 51
IBM Global Services
© Copyright IBM Corporation 2006
Logical SystemLogical System
TCODE:
BD54; Stored in table T000

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 52
IBM Global Services
© Copyright IBM Corporation 2006
Allocate Logical System to the clientAllocate Logical System to the client
SALE > BASIC SETTINGS > SET UP LOGICAL SYSTEM > ASSIGN LOGICAL SYSTEM TO THE CLIENT
TCODE:
SCC4

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 53
IBM Global Services
© Copyright IBM Corporation 2006
Number RangesNumber Ranges
Maintain number ranges for ports Maintain number ranges for IDocs Maintain number ranges for IDoc types and segment version Maintain number range for change pointers

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 54
IBM Global Services
© Copyright IBM Corporation 2006
Maintaining RFC DestinationsMaintaining RFC Destinations
TCODE:
SM59

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 55
IBM Global Services
© Copyright IBM Corporation 2006
Displaying and Maintaining PortsDisplaying and Maintaining Ports
A port is a logical representation of a A port is a logical representation of a communication channel in SAP with communication channel in SAP with the data communicated being IDocsthe data communicated being IDocs.
TCODE:
WE21

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 56
IBM Global Services
© Copyright IBM Corporation 2006
Partner ProfilesPartner Profiles
TCODE:
WE20

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 57
IBM Global Services
© Copyright IBM Corporation 2006
Partner Profiles-OutboundPartner Profiles-Outbound

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 58
IBM Global Services
© Copyright IBM Corporation 2006
Partner Profiles-InboundPartner Profiles-Inbound

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 59
IBM Global Services
© Copyright IBM Corporation 2006
Distribution ModelDistribution Model
TCODE:
BD64

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 60
IBM Global Services
© Copyright IBM Corporation 2006
Transfer of dataTransfer of data
Transfer master data for material, customer, vendor to different client or system with BALE

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 61
IBM Global Services
© Copyright IBM Corporation 2006
Filter ObjectsFilter Objects
BD95BD59

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 62
IBM Global Services
© Copyright IBM Corporation 2006
Sending Master Data IdocsSending Master Data Idocs
Only send objects that have changed ?
Change Pointeravailable?
Master data ?
Standalone with custom logic to keeptrack of changes
Change Pointerbased Program
y
N
Y
Standalone programwith user-definable selection criteria
N
Y

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 63
IBM Global Services
© Copyright IBM Corporation 2006
Sending Transactional Data IdocsSending Transactional Data Idocs
Ensure trans- actional Integrity?
Output Determination available ?
Transaction Data ?
hard coded ALElayerModification
Output determinationbased Program
y
N
Y
N
Y
User-Exitavailable?
N
Hardcoded ALE layerno Modification
Y
See Master data

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 64
IBM Global Services
© Copyright IBM Corporation 2006
Change Pointers Change Pointers
Application Posting
• Post Application document
• Create Change Document
• Are changes ALE relevant ?
•Write Change Pointers
• Commit Work
ALE configuration
• ALE relevant Fields
Batch Program(RBDMIDOC)
IDOC Module (Masteridoc_Create_SMD_<MSGTYPE>)
• Read Change Pointers• Fill IDOC• Call ALE layer• Update Change Pointer
Master data
Change pointers
ALE layerMaster_IDOC_DISTRIBUTE
• Determine IDOC module• Call IDOC module

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 65
IBM Global Services
© Copyright IBM Corporation 2006
Change PointersChange Pointers
BD61BD50

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 66
IBM Global Services
© Copyright IBM Corporation 2006
Change Pointers… ContinuedChange Pointers… Continued
BD52BD60

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 67
IBM Global Services
© Copyright IBM Corporation 2006
IDOC moduleIDOC module IDOC module has to be implemented as function module
Naming Convention: MASTERIDOC_CREATE_SMD_<msgtype>
Function module reads change pointers information to get data that needs to go into IDOC
Function module logic:
Read change pointers
Fill IDOC structure
Call ALE layer
Update Change Pointer status
Commit Work

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 68
IBM Global Services
© Copyright IBM Corporation 2006
ALE Configuration For Change PointersALE Configuration For Change Pointers
• Define change pointer creation• Define which change document fields are to be logged
• Change pointer activation
• Activate generally
• Activate per message type
• “Publish” new function module• Link message type to function module

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 69
IBM Global Services
© Copyright IBM Corporation 2006
ALE For Transactional data ---- Output DeterminationALE For Transactional data ---- Output Determination
NACE

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 70
IBM Global Services
© Copyright IBM Corporation 2006
Output Determination -- Access SequenceOutput Determination -- Access Sequence

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 71
IBM Global Services
© Copyright IBM Corporation 2006
Output Determination -- Output TypesOutput Determination -- Output Types

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 72
IBM Global Services
© Copyright IBM Corporation 2006
Output Types -- DetailsOutput Types -- Details

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 73
IBM Global Services
© Copyright IBM Corporation 2006
Output Types -- Partner FunctionsOutput Types -- Partner Functions

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 74
IBM Global Services
© Copyright IBM Corporation 2006
Output Types -- Processing RoutinesOutput Types -- Processing Routines

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 75
IBM Global Services
© Copyright IBM Corporation 2006
Output Types -- ProceduresOutput Types -- Procedures

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 76
IBM Global Services
© Copyright IBM Corporation 2006
Output Types -- Procedures ControlOutput Types -- Procedures Control

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 77
IBM Global Services
© Copyright IBM Corporation 2006
Output Types -- Condition recordsOutput Types -- Condition records

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 78
IBM Global Services
© Copyright IBM Corporation 2006
Inbound Processing

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 79
IBM Global Services
© Copyright IBM Corporation 2006
Inbound Processing.Inbound Processing.
Application posting
Field value conversion
ALE layer
Input control
Database
A
Simultaneously update IDOC's status
Comm. layer
asynch. RFCor
EDI
Version change
Segment filter
C
A
Post application document
Process IDOCSerialization

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 80
IBM Global Services
© Copyright IBM Corporation 2006
Input ControlInput Control
Application posting
Field value conversion
ALE layer
Input control
Database
A
Simultaneously update IDOC's status
Comm. layer
asynch. RFCor
EDI
Version change
Segment filter
C
A
Post application document
Process IDOCSerialization
- For each message type and sender For each message type and sender one can defineone can define when to process when to process
(immediate/batch)(immediate/batch) whether to call application whether to call application
directly or start customer directly or start customer workflowworkflow
who should get work items in who should get work items in case of errorcase of error
- Incoming IDOC packets are passed to Incoming IDOC packets are passed to applicationapplication

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 81
IBM Global Services
© Copyright IBM Corporation 2006
Application InputApplication Input
Application posting
Field value conversion
ALE layer
Input control
Database
A
Simultaneously update IDOC's status
Comm. layer
asynch. RFCor
EDI
Version change
Segment filter
C
A
Post application document
Process IDOCSerialization
- Inbound IDOCs are passed to Inbound IDOCs are passed to the application via a the application via a standardized function standardized function interfaceinterface

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 82
IBM Global Services
© Copyright IBM Corporation 2006
SerializationSerialization
Application posting
Field value conversion
ALE layer
Input control
Database
A
Simultaneously update IDOC's status
Comm. layer
asynch. RFCor
EDI
Version change
Segment filter
C
A
Post application document
Process IDOCSerialization
- When processing the When processing the inbound IDOC, the inbound IDOC, the application can call an ALE application can call an ALE API (function module) to API (function module) to check that the IDOC has not check that the IDOC has not been overtakenbeen overtaken If change No. 1 arrives If change No. 1 arrives
after change No. 2, the after change No. 2, the IDOC containing it has IDOC containing it has been overtaken (by the been overtaken (by the IDOC containing the IDOC containing the later change)later change)

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 83
IBM Global Services
© Copyright IBM Corporation 2006
FM Assignment to Message Type and IDoc typeFM Assignment to Message Type and IDoc type
TCODE:
WE57

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 84
IBM Global Services
© Copyright IBM Corporation 2006
Process CodesProcess Codes
WE41WE42

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 85
IBM Global Services
© Copyright IBM Corporation 2006
Process Codes in Inbound and OutboundProcess Codes in Inbound and Outbound
TCODE:
WE64

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 86
IBM Global Services
© Copyright IBM Corporation 2006
FM For Inbound EDI FM For Inbound EDI
TCODE:
BD67

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 87
IBM Global Services
© Copyright IBM Corporation 2006
Inbound Program DevelopmentInbound Program Development
INBOUND_IDOC_PROCESSIDOC
ALE layer
IDOC_INPUT_<MSGTYPE>
• Read IDOC data• Post Application data• Send Success info back to ALE layer
ALE configuration• Partner Profiles• Process Code• Function module attribute• Function module registry
Workflow Task
Call function
Return Variables
If ERROR, trigger
• Version change• Segment filter• Field conversion

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 88
IBM Global Services
© Copyright IBM Corporation 2006
ALE error handlingALE error handling
User action R/3 action
Execute Workitem
Fix error and reprocess IDocorFlag IDoc for deletion
Error in inbound function module
ALE triggers error event
Workitem appears in user's Inbox
Display IDoc for user processing
(IDoc method "InputForeground")
ALE triggers end event
Workitem completed
input Error Occurred
input Finished

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 89
IBM Global Services
© Copyright IBM Corporation 2006
ALE error handlingALE error handling
Necessary Steps: Create new object type in Business Object Repository for IDOC;
object is child of IDOCAPPL
Create new customer task
Create event-couplings linking
Event ‘inputErrorOccured’ linked to standard task
Event ‘inputFinished’ to function module
To support mass processing:
Create new object type as child of IDOCPACKET
Maintain process code to refer the above objects and events

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 90
IBM Global Services
© Copyright IBM Corporation 2006
Advanced Inbound TopicsAdvanced Inbound Topics
• Data consistency
• Serialization
• Individual vs. mass processing
• Call transaction function modules

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 91
IBM Global Services
© Copyright IBM Corporation 2006
Data ConsistencyData Consistency
• Problem:
– Ensure transactional integrity• Don’t process and IDOC twice• Allow for IDOC reprocessing after rollback of
application document posting
• Solution:
– Application document must be posted in the same LUW as the IDOC status records
– IDOC function module must not use a ‘Commit Work’

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 92
IBM Global Services
© Copyright IBM Corporation 2006
Data ConsistencyData Consistency
ALE Layer Applicationfunction module
Read IDoc(s)
Commit Work
Unlock IDoc(s) andapplication objects
Lock IDoc(s)
Write IDoc(s) statusWrite linksOptional:
Write serialization dataTrigger event(s)
Lock application objectsOptional: Serialization checkProcess IDoc dataWrite application data to DB

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 93
IBM Global Services
© Copyright IBM Corporation 2006
SerializationSerialization
Receiver
1
2
1
2
Object X, changed twice:
First IDOC overtaken
Comm. LayerSender
!?
!?
Input from IDOC 1 must be prevented in order not to lose information from IDOC 2

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 94
IBM Global Services
© Copyright IBM Corporation 2006
SerializationSerialization
Check, if IDOC has been overtaken Use function module ‘IDOC_SERIALIZATION_CHECK’
react to overtaken IDOCs according to your needs
Prerequisite is the definition of a serialization object

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 95
IBM Global Services
© Copyright IBM Corporation 2006
Mass ProcessingMass Processing Processing more than one IDOC can improve
throughput: more than one IDOC is processed per Commit Work
the function can be coded to add multiple entries to a table with one update command (‘array insert’)
Function module has to be coded in a way that it supports mass processing
Attribute of delivered function module specifies if mass processing is supported or not

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 96
IBM Global Services
© Copyright IBM Corporation 2006
Call TransactionCall Transaction
Pros: Error reprocessing in foreground
Easy to program
Cons: Call Transaction has significant performance overhead
Automatic Commit work, no data consistency
Recommendation: Try to use function modules that update database directly
If you want to use ‘Call transaction’, they have been ‘ALE-enabled’ to guarantee data concistency

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 97
IBM Global Services
© Copyright IBM Corporation 2006
Topics to coverTopics to cover
What is ALE ?
Components of ALE.
Anatomy of an IDoc.
ALE Processing
Transactions For Monitoring and Processing IDocs.
Questions

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 98
IBM Global Services
© Copyright IBM Corporation 2006
Monitoring IDocsMonitoring IDocs
• The IDoc interface offers 2 different approaches for tracking of data load and data flow:
Reports for monitoring
Workflow for notifications
• Both approaches are based on the concept of status transitions, i.e. an IDoc changes its status from a given value to another value.

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 99
IBM Global Services
© Copyright IBM Corporation 2006
List Of All IDocs Created. (Default, Additional, EDI)-- WE02/ WE05List Of All IDocs Created. (Default, Additional, EDI)-- WE02/ WE05

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 100
IBM Global Services
© Copyright IBM Corporation 2006
Selection Program For Issuing Output -- WE15Selection Program For Issuing Output -- WE15

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 101
IBM Global Services
© Copyright IBM Corporation 2006
Process All Selected IDocs. WE14Process All Selected IDocs. WE14

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 102
IBM Global Services
© Copyright IBM Corporation 2006
Test Tool For Idoc Processing (WE19)Test Tool For Idoc Processing (WE19)

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 103
IBM Global Services
© Copyright IBM Corporation 2006
Select IDocs BD87Select IDocs BD87

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 104
IBM Global Services
© Copyright IBM Corporation 2006
Idoc Search For Business Contents (Database). WE09Idoc Search For Business Contents (Database). WE09

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 105
IBM Global Services
© Copyright IBM Corporation 2006
Status Conversion With Trfc Execution. BD75Status Conversion With Trfc Execution. BD75

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 106
IBM Global Services
© Copyright IBM Corporation 2006
QuestionsQuestions

ABAP | Confidential | ALE For ABAPers .ppt | 04/11/23 Slide 107
IBM Global Services
© Copyright IBM Corporation 2006