ale idoc edi

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

Upload: shesagiri

Post on 20-Jan-2015

80.449 views

Category:

Business


15 download

DESCRIPTION

SAP ALE,EDI and IDOC

TRANSCRIPT

Page 1: Ale Idoc Edi

IBM Global Services

© Copyright IBM Corporation 2006

Overview of ALE / IDOCs

March, 2006

Page 2: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 3: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 3

IBM Global Services

© Copyright IBM Corporation 2006

ALE TerminologyALE Terminology

•ALE - Application Linking & Enabling

•IDoc - Intermediate Document

•EDI - Electronic Data Interchange

Page 4: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 4

IBM Global Services

© Copyright IBM Corporation 2006

ALE Objective ALE Objective

Page 5: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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.

Page 6: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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.

Page 7: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 8: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 9: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 10: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 11: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 12: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 13: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 14: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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. )

Page 15: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 16: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 17: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 18: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 19: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 20: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 20

IBM Global Services

© Copyright IBM Corporation 2006

Control recordData RecordStatus Record

IDOC

“Intermediate Document”

Page 21: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 22: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 23: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 24: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 25: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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.

Page 26: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 26

IBM Global Services

© Copyright IBM Corporation 2006

Idoc SegmentsIdoc Segments

TCODE:

WE31

Page 27: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 27

IBM Global Services

© Copyright IBM Corporation 2006

Idoc TypesIdoc Types

TCODE:

WE30

Page 28: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 28

IBM Global Services

© Copyright IBM Corporation 2006

How to Attach SegmentsHow to Attach Segments

Page 29: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 29

IBM Global Services

© Copyright IBM Corporation 2006

Message TypesMessage Types

WE81WE82

Page 30: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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.

Page 31: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 32: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 32

IBM Global Services

© Copyright IBM Corporation 2006

Outbound Processing

Page 33: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 34: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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?

Page 35: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 36: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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.

Page 37: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 38: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 39: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 40: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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"

Page 41: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 42: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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 ?

Page 43: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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 ?”

Page 44: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 45: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 46: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 47: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 48: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 49: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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’

Page 50: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 51: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 51

IBM Global Services

© Copyright IBM Corporation 2006

Logical SystemLogical System

TCODE:

BD54; Stored in table T000

Page 52: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 53: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 54: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 54

IBM Global Services

© Copyright IBM Corporation 2006

Maintaining RFC DestinationsMaintaining RFC Destinations

TCODE:

SM59

Page 55: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 56: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 56

IBM Global Services

© Copyright IBM Corporation 2006

Partner ProfilesPartner Profiles

TCODE:

WE20

Page 57: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 57

IBM Global Services

© Copyright IBM Corporation 2006

Partner Profiles-OutboundPartner Profiles-Outbound

Page 58: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 58

IBM Global Services

© Copyright IBM Corporation 2006

Partner Profiles-InboundPartner Profiles-Inbound

Page 59: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 59

IBM Global Services

© Copyright IBM Corporation 2006

Distribution ModelDistribution Model

 TCODE:

BD64

Page 60: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 61: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 61

IBM Global Services

© Copyright IBM Corporation 2006

Filter ObjectsFilter Objects

BD95BD59

Page 62: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 63: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 64: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 65: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 65

IBM Global Services

© Copyright IBM Corporation 2006

Change PointersChange Pointers

BD61BD50

Page 66: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 66

IBM Global Services

© Copyright IBM Corporation 2006

Change Pointers… ContinuedChange Pointers… Continued

BD52BD60

Page 67: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 68: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 69: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 69

IBM Global Services

© Copyright IBM Corporation 2006

ALE For Transactional data ---- Output DeterminationALE For Transactional data ---- Output Determination

NACE

Page 70: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 70

IBM Global Services

© Copyright IBM Corporation 2006

Output Determination -- Access SequenceOutput Determination -- Access Sequence

Page 71: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 71

IBM Global Services

© Copyright IBM Corporation 2006

Output Determination -- Output TypesOutput Determination -- Output Types

Page 72: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 72

IBM Global Services

© Copyright IBM Corporation 2006

Output Types -- DetailsOutput Types -- Details

Page 73: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 73

IBM Global Services

© Copyright IBM Corporation 2006

Output Types -- Partner FunctionsOutput Types -- Partner Functions

Page 74: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 74

IBM Global Services

© Copyright IBM Corporation 2006

Output Types -- Processing RoutinesOutput Types -- Processing Routines

Page 75: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 75

IBM Global Services

© Copyright IBM Corporation 2006

Output Types -- ProceduresOutput Types -- Procedures

Page 76: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 76

IBM Global Services

© Copyright IBM Corporation 2006

Output Types -- Procedures ControlOutput Types -- Procedures Control

Page 77: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 77

IBM Global Services

© Copyright IBM Corporation 2006

Output Types -- Condition recordsOutput Types -- Condition records

Page 78: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 78

IBM Global Services

© Copyright IBM Corporation 2006

Inbound Processing

Page 79: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 80: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 81: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 82: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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)

Page 83: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 84: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 84

IBM Global Services

© Copyright IBM Corporation 2006

Process CodesProcess Codes

WE41WE42

Page 85: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 85

IBM Global Services

© Copyright IBM Corporation 2006

Process Codes in Inbound and OutboundProcess Codes in Inbound and Outbound

TCODE:

WE64

Page 86: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 86

IBM Global Services

© Copyright IBM Corporation 2006

FM For Inbound EDI FM For Inbound EDI

TCODE:

BD67

Page 87: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 88: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 89: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 90: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 91: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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’

Page 92: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 93: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 94: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 95: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 96: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 97: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 98: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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.

Page 99: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/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

Page 100: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 100

IBM Global Services

© Copyright IBM Corporation 2006

Selection Program For Issuing Output -- WE15Selection Program For Issuing Output -- WE15

Page 101: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 101

IBM Global Services

© Copyright IBM Corporation 2006

Process All Selected IDocs. WE14Process All Selected IDocs. WE14

Page 102: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 102

IBM Global Services

© Copyright IBM Corporation 2006

Test Tool For Idoc Processing (WE19)Test Tool For Idoc Processing (WE19)

Page 103: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 103

IBM Global Services

© Copyright IBM Corporation 2006

Select IDocs BD87Select IDocs BD87

Page 104: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 104

IBM Global Services

© Copyright IBM Corporation 2006

Idoc Search For Business Contents (Database). WE09Idoc Search For Business Contents (Database). WE09

Page 105: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 105

IBM Global Services

© Copyright IBM Corporation 2006

Status Conversion With Trfc Execution. BD75Status Conversion With Trfc Execution. BD75

Page 106: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 106

IBM Global Services

© Copyright IBM Corporation 2006

QuestionsQuestions

Page 107: Ale Idoc Edi

ABAP | Confidential | ALE For ABAPers .ppt | 04/10/23 Slide 107

IBM Global Services

© Copyright IBM Corporation 2006