BC619 ALE Technology
BC619
0
0.2
SAP AG 2002
Copyright 2002 SAP AG. All rights reserved.
No part of this publication may be reproduced or transmitted in
any form or for any purpose without the express permission of
SAP AG. The information contained herein may be changed
without prior notice.
All rights reserved.
Copyright
Trademarks:
Some software products marketed by SAP AG and its distributors contain proprietary software
components of other software vendors.
Microsoft®, WINDOWS®, NT®, EXCEL®, Word®, PowerPoint® and SQL Server® are registered
trademarks of Microsoft Corporation.
IBM®, DB2®, OS/2®, DB2/6000®, Parallel Sysplex®, MVS/ESA®, RS/6000®, AIX®, S/390®, AS/400®,
OS/390®, and OS/400® are registered trademarks of IBM Corporation.
ORACLE® is a registered trademark of ORACLE Corporation.
INFORMIX®-OnLine for SAP and INFORMIX® Dynamic ServerTM are registered trademarks of
Informix Software Incorporated.
UNIX®, X/Open®, OSF/1®, and Motif® are registered trademarks of the Open Group.
HTML, DHTML, XML, XHTML are trademarks or registered trademarks of W3C®, World Wide
Web Consortium, Massachusetts Institute of Technology.
JAVA® is a registered trademark of Sun Microsystems, Inc.
JAVASCRIPT® is a registered trademark of Sun Microsystems, Inc., used under license for
technology invented and implemented by Netscape.
SAP, SAP Logo, R/2, RIVA, R/3, ABAP, SAP ArchiveLink, SAP Business Workflow, WebFlow,
SAP EarlyWatch, BAPI, SAPPHIRE, Management Cockpit, mySAP.com Logo and mySAP.com are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other products mentioned are trademarks or registered trademarks of their respective companies.
0.3
SAP AG 1999
ALE Technology - Course Environment
Integration Technologies for Business Solutions BC095 3 days
Level 2
Level 3
Business Framework: Overview CA150 2 days Data Transfer BC420 5 days Programming with BAPIs in Visual BasicCA925 5 days Programming with BAPIs in C++ CA927 5 days Application Link Enabling (ALE) BC619 3 days EDI Interface CA210 4 days Interface programming Data exchange Interface Programming in ABAP BC415 2 days Programming with BAPIs in JAVA CA926 5 days SAP IDoc Interface (Development)
BC621 1 day SAP IDoc Interface
(Standard)
0.4
0.5
1
SAP AG 1999Course Overview
Course Goal
Course Objectives
Overview of Contents
Contents:
1.2
SAP AG 1999
Course Overview Diagram
Course Overview
ALE Components
IDoc Services
System Security
Tips and Tricks
Tools
Performance
Administration
Enhancements
Special Functions
Business Processes
and Business Objects
Communication
and Networks
Information Sources
1.3
SAP AG 1999
Example of Application Integration:
Sales (SD, FI)
Inquiry Quotation Order Delivery Billing document Debit memo Credit memoIncoming customer inquiry/ Ammended customer inquiry outgoing customer quotation Incoming customer order/ Ammended customer order outgoing order confirmation
Incoming cust. sched. agrmt/ Ammended cust. sched. agrmt outgoing delivery note
outgoing invoice Shipping
Sales
Billing
outgoing rebate credit memo
outgoing reminder (dunning notice)
1.4
2
SAP AG 1999
Business Processes in Companies
Distributed Business Processes
SAP R/3 Business Objects
IDocs and Message Types
BAPIs
ALE Integration Technology
ALE Business Processes
Contents:
Business Processes and Business Objects
2.2
SAP AG 1999
Understand the relationship between business
processes and business data objects
Identify the advantages and disadvantages of
distributing business processes
Understand IDocs, messages types and BAPIs
Understand the purpose of ALE
At the conclusion of this unit, you will be able to:
Business Processes and Business Objects: Unit
Objectives
2.3
SAP AG 1999
Customizing: Overview and Basic Settings:
Unit Objectives
Understanding of logic and order when
customizing ArchiveLink scenarios
Definition of content repositories and activation
of individual document types for a content
repository
2.4
SAP AG 1999
Business processes, tasks and work steps
R/3 business objects are used for structuring business data
Workflow supports business processes
An integrated ERP System such as SAP R/3 automatically fulfils
the requirements for shared data access and a workflow
controlled process.
Business Processes in the Company
Business processes, business objects and Workflow
In all companies business processes consist of a sequence of work steps in which individual tasks are
completed.
When the individual tasks are processed, usually existing data is accessed or new business data is
created, for example, customer addresses, bank details, purchase orders. The person processing the data must have authorization to access shared data.
In R/3 Systems business data is structured in business objects.
The processing of business processes must be supported by appropriate workflow functions. The
processor of the subsequent task must be notified and if there is an error situation, the correct work steps must be started.
An integrated ERP System such as SAP R/3 automatically fulfils the requirements for shared data
2.5
SAP AG 1999
Regional installation Country-wide installation local system business objects
Distributed Business Processes
Distributed Business Processes
For various reasons it is practical to decentralize business applications for ensuring simultaneous
data consistency.
You must ensure that the distributed applications can access shared data. The semantics of this data
must be synchronized - updated data must be available in each business environment.
To be able to distribute business processes application data must also be distributed. Business
objects are used to distribute this data.
2.6
SAP AG 1999
Customizing: Overview
Basic Customizing - Definition of communication
- Definition of content repositories - Assignment of business objects to content repositories
- Definition of communication - Definition of content repositories - Assignment of business objects to content repositories
Scenario Customizing
Storing print lists
Application Customizing
Front end Customizing
Store for later
entry/assignment Store with bar code Assign then store
Entry-program ?
Entry-program ? Display program?Display program?
Storing outgoing image documents
FI
FI SDSD MMMM QMQM PMPM PPPP HRHR DMSDMS ADKADK
The increasing globalization of markets has led to the increasing separation of organizational units.
Work steps need to be carried out locally but also be part of a distributed business process.
When enterprises are bought or sold business fields must be quickly integrated or deleted.
Business processes are not restricted to one enterprise only. More and more customers and suppliers
are being included in business processes. In the Internet age business processes are taking place between companies. A process confined to company boundaries is therefore now unusual.
Autonomous units (e.g. local production plants, sales units) in an enterprise do not want to be
dependent on a centrally administered system. There may be several reasons for this:
When structuring a process, flexibility and individuality is very important.
The technical infrastructure for communicating with a central system is not sufficiently developed
in all regions for enterprises that operate globally.
2.7
Business Object
Business objects are defined by object types in the BOR (Business Object Repository). Methods (functions executed on objects), attributes, and key fields are defined for a business object here. A business object is a concrete form of an object type. For e xample, the incoming R/3 invoice with document number 4711, company code 0001, fiscal year 2000 is a concrete form of the object type BKPF (accounting documents). Communication between SAP application components and SAP ArchiveLink is by business objects, which means if a concrete business object calls an SAP ArchiveLink function, it transfers the object type, and the data keys of the business object to SAP ArchiveLink. The call for the function "Display document" for the business object above is: "Displa y document BKPF 0001 4711 2000".
Systems that map core processes in logistics (production, plant maintenance, warehouse management
system, shipping) have to be available 24 hours every day. The costs of such a high level of system availability should be kept limited to systems providing this core functionality.
2.8
SAP AG 1999
Distributed applications arise due to:
Load distribution
mySAP.com components (New Dimension Applications)
Failure risks
Use of existing systems
Reasons for Distributed Applications III
Limited system resources (in particular the DB server) make it necessary to distribute the workload
across several systems. Keep in mind that the primary function of ALE is not in handling
performance bottle necks. With efficient distribution ALE scenarios can reduce the system load in operative systems (e.g. consolidating nested application data for reporting).
2.9
SAP AG 1999
R/3 is an integrated, business application software.
This integration enables:
Application master data to be shared
To model processes as one unit and to control all their dependencies centrally
To update and monitor quantity and value flows synchronously
What Distinguishes an Integrated ERP System?
Control of the external content server is determined in the content repository definition. Because
HTTP is used for control, the SAP system has to register on the HTTP content server with a
certificate. This process takes place in the content server administration (transaction CSADMIN) of the SAP Knowledge Provider (Kpro).
2.10
SAP AG 1999
Does the function scope of the individual applications meet my
requirements?
How complex and consistent are distributed systems?
Are the participating departments prepared to support the
required harmonization and standardization at all business and
technical levels?
Global versus local standards
Free space of the decentralized organizational units
How high are the operating costs of a distributed environment?
Hardware and software Additional employees Training costs
2.11
SAP AG 1999
Identify the business process
Identify the reasons
Analyze the organizational structure of the company
Identify the business objects
Organizational Prerequisites
Analysis of the company organizational structure
Identify the organizational units
Global organizational units: business areas, company codes
2.12
SAP AG 1999 Business-Objekt Objekt
A
business object
Is the technical representation of a business object in the real world, for example, a purchase order
Encapsulates business logic
Enables access only via defined interfaces (BAPIs)
Hides internal details, so that the implementation is independent from the external environment.
Is stored and managed in the Business Object Repository (BOR)
SAP R/3 Business Objects
SAP R/3 Business Objects
Definition:
Technical representation of a real world business object
: Customer, vendor, business partner, G/L accountPurchase order, purchase requisition Material, class
Business processes are modeled using a business object flow.
Encapsulates business logic
Enables access only via defined interfaces (BAPIs, IDoc updating function modules). Complex
data structures are assigned to a business object: message type, business APIs.
Hides internal details so that the implementation can be changed externally.
2.13
Implementation Guide (IMG): Basis Components --> Basis Services-->SAP ArchiveLink -->Basic Settings -->Maintain Links (Transaction OAC3)
Structure of SAP R/3 Business Objects
So that SAP business objects can be encapsulated, they are created as entities with different layers.
At the heart of an SAP business object is the core that contains the object data.
The second layer is the integrity layer and represents the business logic of the object. It includes the
business rules to ensure consistent embedding in the environment and the constraints for values and applications that can refer to the business object. .
The third layer - the interface layer describes the implementation and structure of the SAP business
object and defines the object interface to the external environment.
The fourth layer of a business object is the access layer. This layer defines the technologies that can
be used for the external access to the object data e.g. COM/DCOM (Component Object Model/Distributed Component Object Model).
2.14
SAP AG 1999 Accounting Accounts Charts of accounts ... Sales and Distribution Sales organization Customer enquiry Sales order
Controlling
Cost accounting area Cost type Reconciliation ledger ... Materials Management Purchasing organization Purchase requisition Purchase order Framework order ...
Examples of Business Objects
Each business object belongs to a specific object class depending on its characteristics and its type.
These object classes are called object types. For example, all the employees of a company belong to the object type “employee”.
2.15
SAP AG 1999
Collection of all business objects (BO)
Business
Workflow
ArchiveLink
Access &
interfaces
Modeling
BAPI BAPI BAPI BAPI BO BO BAPI BAPI BO BO BAPI BAPI BAPI BAPIBOBO BO BO BO BO BO BO BO BOBOBO BO BO BO BOBOR
Business Object Repository (BOR)
All business objects are defined in the Business Object Repository (BOR) within SAP.
The BOR contains two categories of object types:
Business object types
Interface types
BOR objects are processed by the Business Object Builder. The path in the SAP menu is Tools
ABAP Workbench Development Business Object Builder.
2.16
SAP AG 1999
Business Object Repository Browser
The BOR Browser is called from the Business Object Builder. Choose the pushbutton Business
2.17
SAP AG 1999
Bar code scenarios as very simple introductory
scenarios with no effect on processes and
organization using the example:
Invoice receipt processing (FI) with the scenario
"Late Storing with Bar Codes"
Storing with Bar Codes: Business Scenario
2.18
SAP AG 1999
RFC
-enabled function modules
Batch input
-enabled transactions
Application interfaces for
IDoc
s
Business Application Programming Interfaces (
BAPI
s)
Available as of R/3 4.0A
Called synchronously via RFC
Called asynchronously via ALE interface
2.19
SAP AG 1999
An IDoc is a container for the data of a business object or
technical R/3 object
Each IDoc has a
message type
. This indicates the type of
business object or the business function of the data.
Message types have processing rules in the receiving system.
An IDoc contains the data in a segment hierarchy. The
IDoc type
describes
the technical structure of the IDoc.
IDoc types have versions.
IDocs
Technical R/3 objects for IDocs with a message type exist, for example, audit data (ALEAUD) and
distribution group (CONDA2)
An IDoc has different characteristics: database table, text, HTML file, XML datastream, RFC call
parameters.
2.20
SAP AG 1999
IDoc type information: basic type, extension, IDoc type, message type, sender and reciver information. Technical information: release, serialization information, creation date and time
Components of an IDoc
E1HDR xxxxxxxx E1SEG1 E1SEG2 E1SEG3 E1SUB1 E1SUB2 E1SEGM4 E1SEGM5 xxxxxxxxxxxxxxx xxxx xxxx xxxxxxx xxxxxxxxxxxxxxx xxxx xxxx E1SUB3 xxxxxxxx “For processing" 16:22:34 “Successfully processed" 16:22:42 Control record Data recordsStatus records in database
Structure of the data records
(IDoc type)
Header segment Header segment Subsegment 1 Subsegment 1 Subsegment 2 Subsegment 2 Segment 4 Segment 4 Segment 5 Segment 5 Curr. No. 4Curr. No. 4 Transfer No. 3Transfer No. 3 Curr. No. 5
Curr. No. 5 Transfer No. 3Transfer No. 3
Curr. No. 6
Curr. No. 6 Transfer No. 1Transfer No. 1 Curr. No. 7
Curr. No. 7 Transfer No. 1Transfer No. 1
Hierarchy level 2 Hierarchy level 3 Hierarchy level 4 Hierarchy level 3
Structure of an IDoc
mandatorymandatory Curr. No. 1Curr. No. 1Transfer No. 0Transfer No. 0
Segment 1
Segment 1
Segment 3
Segment 3
mandatory
mandatory Curr. No. 2Curr. No. 2Transfer No. 1Transfer No. 1 optional
optional Curr. No. 3Curr. No. 3Transfer No. 1Transfer No. 1
Status records are data records assigned locally to an IDoc - they not part of an IDoc . They are not
2.21
Storing with bar codes consists of two independent steps that are linked together by SAP ArchiveLink.
An example of an IDoc type is MATMAS03
Short description: master material
Release 4.6A
First predecessor MATMAS01
Predecessor MATMAS02
Whether the storing with bar codes is "late" or "early" depends on which step is performed first.
2.22
Using this scenario, it is possible to link several incoming documents with the same SAP business object within one linkage run. This means that the same bar code number must be attached to all those incoming documents. It is normally only used in this pa rticular case.
Message types specify the semantics of application data. The message type is usually based on an
EDIFACT message type.
2.23
SAP AG 1999
BAPIs
Are
methods of business objects
Are managed in the Business Object Repository
Are stable and release-independent
Have an open interface
Applications support maintenance and further development
through change management
Business Application Programming Interfaces
Change Management
Compatible changes are parameter extensions
With incompatible changes new BAPIs must be created: Object.Create -> Object.Create1
2.24
SAP AG 1999
Why Use BAPIs?
BAPIs:
Are used to separate R/3 components and their responsibilities
Are the basis of distributed ALE business processes that use both synchronous and asynchronous communication
Open up the R/3 System to desktop applications in C, Visual Basic and Java
Have a link to the object model COM/DCOM
Support the R/3 Internet connection using the SAP Business Connector
Provide a simple programming model for customers' and partners' own developments
2.25
SAP AG 1999
GetList
Gets a list of key fields of objects that meet specific selection criteria (search function)
GetDetail
,GetStatus
Gets details (attributes) of an object with a fully specified key
Create,
CreateMultiple
Generates instances of R/3 business objects
Replicate, SaveReplica, SaveReplicaMultiple
Used to replicate ALE data
Change, ChangeMultiple
Changes instances of R/3 business objects
Delete, ExistenceCheck
Deletes instances and checks for the existence of instances in R/3
Check, Post
Used in accounting for checking and posting
Typical Methods
2.26
BAPIs are defined as methods of SAP business objects in the Business Object Repository (BOR) and
implemented as function modules in R/3.
Object-oriented access:
Object-oriented access to BAPIs in the BOR can be implemented using various programming platforms, e.g. Windows NT, Win9x, DCOM/COM
RFC access:
You can execute direct RFC calls to the function module that forms the basis of the BAPI, either using ABAP or from external development platforms, e.g. by using RFC Class Libraries of C/C++.
2.27
SAP AG 1999
BAPIs in the Business Object Browser
Example: business object BUS2012 - purchase order
2.28
SAP AG 1999
BAPI Explorer
2.29
SAP AG 1999
PP (prod. planning) Inventory
management
Sales, shipping and
billing (internal) Purchasing (local) PM (Plant Maintenance) SOP (local) Accounting Controlling (central) SOP (central) Information systems: Inventory Purchasing Sales Purchasing (central) Reference system for
master and control data
Semantic
Synchronization
Sales, shipping and
billing Purchasing of trading goods Inventory management Controlling (local)
ALE Integration Technology
ALE was originally used to distribute business processes by forwarding the required data and
triggering a workflow in the external system.
The focus was on a company's internal distribution scenarios: department-to-department
Using the stable IDoc interface ALE enables business processes that go beyond company boundaries:
business-to-business.
ALE is independent of the communication layer and can implement business processes over the
Internet.
2.30
SAP AG 1999
Purpose of ALE
Supports data consistency and data availability in distributed
business processes
Provides an infrastructure for coupling systems loosely through
asynchronous
messaging using
IDocs
or coupling systems
narrowly through
synchronous
BAPI
calls
Enables distribution between systems with different release
versions
Enables R/3 to communicate with non-SAP systems and R/2
Provides functions for administration, monitoring and
development
Predefined ALE business processes cover important business
2.31
SAP AG 1999
ALE Business Processes
Distribution of master data
Distribution of transaction data
ALE business processes distribute master data and transaction data.
HR Personnel Management Settings
Implementation Guide (IMG): Personnel Management--> Personnel Administration--> Tools-->
Optical Archiving
2.32
SAP AG 1999
Manual Storing
Storing an image document relating to an existing business object
This is an enhancement rather than a business scenario
Ad hoc cases
The image document is manually assigned to the business object
Store and assignment in SAP - transaction OAWD SAP Easy Access: Office--> Business Documents--> Documents --> Move--> Scenario "Assign then store"
Outbound function module for the IDoc interface
MASTER_IDOC_DISTRIBUTE
Outbound function modules for asynchronous BAPI calls
ALE_<BO>_<METHOD>
Inbound function modules for IDoc via tRFC
INBOUND_IDOC_PROCESS (3.x)
IDOC_INBOUND_ASYNCHRONOUS (ab 4.x)
Inbound function modules for updating message types
IDOC_INPUT_MSGTYPE
Inbound function modules for updating asynchronous BAPIs
2.33
The application object type should provide a correctly implemented business object method, EXISTENCECHECK. If not, then you cannot check the existence of the entered business object key.
Messaging systems are used increasingly, especially in heterogeneous integrated system networks
(R/3 Systems, R/2 Systems, and non-SAP Systems) with a number of permanent interfaces between systems running on different platforms. Data containers (messages) can be consistently exchanged between the systems in near real-time, using a service that can be maintained centrally. Certified products can be found under:
http://www.sap.com/csp -> Complementary Products -> ALE Message Handling.
Interfaces for EDI messages are built into the R/3 application components. It is important to note that
SAP does not supply or sell EDI conversion/communication software (EDI subsystem), but provides an open, common interface to such systems (CA-EDI). EDI subsystems assume responsibility for all EDI-oriented tasks, such as data convertion, communication, partner profile administration and monitoring of processing. Certified products can be found under:
http://www.sap.com/csp -> Complementary Products -> EDI Subsystems.
The ALE concept involves using external converters to connect non-SAP Systems to the R/3 System.
External converters are generic format conversion programs. The ALE converter enhances the interface concept in EDI subsystems by offering customer-defined assignments. They recognize the format of any interface structure of a non-SAP System and not just standard EDIFACT or ANSI-X12 formats.
Certified products can be found under:
http://www.sap.com/csp -> Complementary Products -> ALE Converters.
2.34
SAP AG 1999
Message Conversion Between ERP Systems
SAP System R/3 SAP System R/3 IDoc Converter EDI Subsystem EDI SAP System R/3 ? ERP System EDI Subsystem IDoc ALE Converter ALE Converter SAP System R/3 ERP System Without conversion IDoc ?
Different conversion methods are possible
Which conversion method is used depends on the
relationship between the partners
If both partners use SAP R/3 Systems and trust each other, the pure use of SAP IDocs for
communication is possible without conversion.
ALE converters can be used for internal communication and for communication between enterprises.
An assignment step is all that is required. ALE converters are used in external enterprise communication if there is a high level of trust between the partners or if one partner is very dependent on the other.
2.35
SAP AG 1999
Understand the relationship between business
processes and business data objects
Identify the advantages and disadvantages of
distributing business processes
Understand IDocs, messages types and BAPIs
Understand the purpose of ALE
You are now able to:
Business Processes and Business Objects: Unit
Summary
2.36Business Processes and Business Objects: Exercises
Unit: Business Processes and Business Objects
Topic: Interface Adviser
At the conclusion of these exercises, you will be able to:
Understand the structure of the “Interface Adviser”
Understand the content of the “Interface Adviser”
You want to gain an overview of existing SAP integration
scenarios and available technologies for your interface planning
phase.
1-1
Log on to SAPNet with the user data (ID and password) given to you by your
instructor:
http://sapnet.sap.com/int-adviser
1-1-1 Work through the section ‘Introduction’.
1-2
Become familiar with the structure of the “Interface Adviser”.
1-2-1 Where is the core scenario “Sales and Distribution processing standalone”?
1-2-2 How many variants are explained in detail?
1-2-3 What master data is distributed in variant 4?
1-3
Which basis technology requirements are mentioned for communication with the
R/3-System 3.11 via RFC for external platforms?
Exercises
Unit: Business Processes and Business Objects
Topic: Business Object Repository
At the conclusion of this exercise, you will be able to:
Navigate through the application hierarchy of the business objects in
the Business Object Repository.
You want to know where you can find business objects in the R/3 System,
and where you can call up information about your attributes, interfaces,
and so on.
1-1
Open the Business Object Repository Browser for all object types in order to
display existing objects in the R/3 System.
1-1-1 Expand the hierarchy node of any hierarchy.
1-1-2 What do the colors of the objects and the STOP indicator signify?
1-1-3 Display details for the business object ‘sales order (BUS2032)’.
1-2
Use the Business Object Builder in order to identify the object with the technical
name BUS1001.
1-2-1 What is the key field for this object ?
Unit: Business Processes and Business Objects
Topic: Business Application Programming Interface
At the conclusion of this exercise, you will be able to:
Find BAPIs directly in the R/3 System, and understand the connection
between the definition in the BOR and the actual implementation of
the function module.
You want to know where you can find the external interfaces for business
objects in the R/3 System, and where you can call up further details about
their parameters.
2-1
Use the BAPI Explorer to display business objects with BAPIs.
2-1-1 What do the different symbols mean?
2-1-2 Which business objects in the application ‘project system’ have BAPIs?
2-1-3 Which key field is defined for the business object ‘Network’?
2-1-4 Which BAPIs does the business object ‘Network’ provide?
2-2
Display the documentation for the business object ‘Network’.
2-2-1 Display the documentation for the BAPI ‘Getlist’.
2-2-2 Which function module does the BAPI ‘GetList’ of ‘Network’ implement?
2-3
Use the alphabetical display to display further information about the business object
‘Applicant’.
Unit: Business Processes and Business Objects
Topic: Open BAPI Network
At the conclusion of this exercise, you will be able to:
Find further information and products in SAPNet concerning
development support for BAPIs.
You want to know how to make a start in developing external access, and
how SAP supports you in this.
3-1
Visit the Open BAPI Network in SAPNet. Log on using either your own user data
or the user data given to you by your instructor.
3-1-1 Open the BAPI section.
3-1-2 Open the COM section.
3-1-3 Open the Java section.
2.37Business Processes and Business Objects: Solutions
Unit: Business Processes and Business Objects
Topic: Interface Adviser
1.1
SAPNet access to
http://service.sap.com/int-adviser.
Use your SAPNet user ID and password.
1-1-1 Select Introduction
Read me
Basics
How to use
1-2
The interface consists of four sections:
1.) Data transfer
2.) Scenarios
3.) Objects
4.) Technology
1-2-1 You can find the core scenario “Sales and Distribution processing
(standalone)” under
Scenarios
Core processes
Sales and Distribution
1-2-2 Seven different variants are explained in detail for this core process.
1) No availability check is available in R/3
2) Availability check in R/3 performed against the inventory at delivery
3) Availability check in R/3 performed against the inventory at delivery of
planned outflows from R/3 sales orders to the external system
4) Scheduling the sales orders in the external system
5) Scheduling the sales orders against quotas
6) Availability check in R/3 against preplanning
7) ATP checks in R/3 against reservations
1-2-3 Variant 4
Master data
Material and customer master data must be distributed.
1-3
Return to the homepage of the Interface Adviser and choose technology. In the
section ‘Interfaces’ there is a link to the availability checklist of the basic
technologies.
Field name
Values
R/3 Release
3.1I
Solutions
Unit: Business Processes and Business Objects
Topic: Business Object Repository
1-1
Tools
Business Framework
BAPI development
Business Object Builder
(SWO1)
Button: Business Object Repository (SWO3)
1-1-1 Expand the node under any application (for example, Real Estate
Management, Sales and Distribution) and expand the subnodes.
1-1-2 Utilities
Legends
STOP indicator: obsolete (please do not use this object type any more)
1-1-3 The sales order ‘SalesOrder (BUS2032)’ is located in the hierarchy under
‘Sales and Distribution’
‘Sales’.
Display the details of the business object ‘SalesOrder’ by double clicking on
it.
1.1
Alternative route to the solution in 1-1:
Tools
ABAP Workbench
Development
Business Object Builder
1.2
Enter BUS1001 => the text material is displayed
Display the details of the business object ‘Material’ by double clicking on it.
The MatNr (material number) is displayed as the key field.
Unit: Business Processes and Business Objects
Topic: Business Application Programming Interface
2-1
Tools
Business Framework
BAPI Explorer
Select the tab ‘multi-level’ in left-hand section of the screen.
2-1-1 Goto
Display legend
2-1-2 Expand the node ‘project system’.
You will see three business objects: ProjectDefinition, Network, and
WorkBreakdownStruct.
2-1-3 Expand the node ‘Network’.
Only the key field ‘Number : Network Plan Number’ is defined for this
business object.
2-1-4 The business object ‘Network’ provides five BAPIs: ExistenceCheck,
Getdetail, Getinfo, Getlist, and Maintain.
2-2
Select the node ‘Network’ in the left-hand section of the screen and choose the tab
‘Documentation’ in the right-hand section of the screen.
2-2-1 Repeat this step for the BAPI ‘Getlist’. Select the node ‘Getlist’ in the
left-hand section of the screen and choose the tab ‘Documentation’ in the
right-hand section of the screen.
2-2-2 Select the node ‘Getlist’ in the left-hand section of the screen and choose the
tab ‘Detail’ in the right-hand section of the screen. This BAPI is
implemented via the function module BAPI_NETWORK_GETLIST.
2-3
Choose the tab ‘Alphabetical’ in the left-hand section of the screen.
2-3-1 Only one instance-independent method is defined for the business object
‘Applicant’:
Unit: Business Processes and Business Objects
Topic: Open BAPI Network
3-1
http://service.sap.com/bapi
3-1-1 Become familiar with the BAPI concept; check which BAPIs are available,
or become a member. You can also find up-to-date BAPI information in the
‘BAPI’ section.
3-1-2 The COM section contains information and software relating to COM-based
technologies, utilities, documentation, and links to SAP partner sites. On
these sites you can find more information and software relating to COM.
3-1-3 You can find SAP products and partner products for both Java and BAPIs in
the Java section.
2.38
SAP AG 1999
Why computer networks are used
How systems communicate with each other
Which Internet services and protocols are
important
Which functions and products SAP provides for
network communication
At the conclusion of this unit, you will be able to
understand:
Communication and Networks:Unit Objectives
2.39
SAP AG 1999
Course Overview Diagram
Course Overview
ALE Components
IDoc Services
System Security
Tips and Tricks
Tools
Performance
Administration
Enhancements
Special Functions
Communication and
Networks
Information Sources
Business Processes
2.40
SAP AG 1999
Technical Reasons:
Resource sharing
Reliability and assurance against
breakdown
Hardware costs
Scaling of processing performance
Communication
Reasons for Networking Computers
Reasons for networking
Computer networks are the technical prerequisite for implementing distributed business processes.
The purpose of computer networks are to:
Share data, equipment and system performance over long distances
Guarantee high reliability and availability by providing hardware replacement capacity
Reduce costs since small computers have a considerably higher cost/performance relation than
large computers.
Hardware performance can be scaled up (adjustment to the demand for computer power) by
adding more computers to the network.
Provides communication across the globe.
All the above reasons bring considerable savings in costs.n. The reasons are similar to the business
and technical reasons for distributing business processes.
2.41
SAP AG 1999
TCP/IP
Transmission Control Protocol/Internet Protocol
Supports the communication of applications in a networked environment
Combination of two protocols of layers 3 and 4 in OSI
reference model for networks ("IP Stack")
IP sends data in packets
TCP assures data integrity: fragmentation, sequence, avoidance of data loss
A 1978 protocol from the US Defence Ministry established this as the communications standard
TCP/IP communicates data using data packets. As data packets can reach the receiver via any route,
2.42
SAP AG 1999
Internet Protocol (IP)
Internet Protocol (IP)
Responsible for routing data between sender and receiver IP sends data in packets Contains information about the
fragmentation and restoration of data
IP routers can suppress data packets if system is overloaded and reduce the transmission frequency
Missing packets are resent with retransmit requests
2.43
SAP AG 1999
Address format
32 bit length
Four decimal digits between 0-255 Dotted decimal format "199.12.1.1"
Divided into network addresses and host addresses
Special addresses
0.0.0.0 local network router 127.0.0.1 local computer
255.255.255.255 broadcast to all computers in the local network
Domain Name System
Hides the technical address behind a readable name
IP Addresses
IP Address
All network layer protocols have a specific address format. The 32 bit IP addresses of the TCP/IP
protocol have the form "199.12.1.1". This format is also called dotted decimal. Each of its four parts corresponds to a decimal number between 0-255 and represents 8 bits.
Part of the IP address identifies the network, the remaining part the individual computer or host
within the network.
2.44
SAP AG 1999
IP Address Classes
Address classes
A: 7 bit network, 25 bit host for a total of 16.777.214 computers 1.0.0.1 to 126.255.255.254
A: 14 bit network, 24 bit hosts for total of 65.534 computers 128.1.0.1 to 191.254.255.254
A: 21 bit network, 8 bit hosts for total of 65.534 computers 192.00.1.1 to 223.255.254.254
D and E: multicast and experimental usage
IP Address Classes
As the whole IP address is only 32 bits long and networks have different numbers of computers,
several address classes are created. Address classes assign different numbers of bits to the network component and the host component of the IP address.
2.45
SAP AG 1999
Transmission Control Protocol (TCP)
Transmission Control Protocol (TCP)
Reliable stream service: guarantees error free communication
between programs with no data loss nor duplication and with data in correct sequence.
The data is received by the program as a stream of bytes. The real packet, packet size, and packet sequence remains hidden.
TCP uses a 16 bit port number to identify the process on the receiving computer that will process the data packet.
Protocol of the communication-oriented transport layer (layer 4). Part of the packet-oriented Internet
2.46
SAP AG 1999
TCP Ports
Service
Port
Protocol
Ping echo 7 TCP FTP data 20 TCP FTP control 21 TCP telnet 23 TCP SMTP 25 TCP http 80 TCP pop-3 110 TCP TCP Ports
TCP uses a 16 bit port number to identify the process on the receiving computer that will process the
data packet. Port numbers below 512 are assigned to specified services in Request for Comments (RFCs) and are called "well known ports". Ports under 1024 should only be used by system processes (root user under UNIX).
2.47
SAP AG 1999
R/3 Interfaces
Communication layer protocols used in R/3
DIAG SAPGUI protocol
RFC
IDoc dispatch
Synchronous BAPI call FTP File Transfer Protocol
EDI file interface
Batch Input SMTP
EDI Internet interface (email outbox)
SAP Office Default settings contain document types and concrete employee assignments for these document
types (to be customized).
SAP provides a range of programming interfaces to integrate external applications into the SAP System. With these interfaces you can write client/server applications that communicate with SAP Systems. Your external application can function either as the client or as the server to the SAP System (sometimes even as both).
DIAG
With the GUI interface to R/3 you can write a client program that accesses the datastream exchanged between the R/3 application server and its SAPgui.
With the GUI interface your external client program can provide an alternative interface to the standard SAPgui. This can either be a graphical or non graphical interface (e.g. language controlled or Web-based).
Programming using the GUI interface also enables your client program to monitor or record a user dialog with SAPgui images.
RFC
The protocol of the SAP Remote Function Call (RFC) enables you to call ABAP function modules from external applications. An external application that uses the RFC interface, can function as a server or as a client to an SAP System. Calling an RFC function in an SAP System from an external program is the same in principle as calling an RFC function from another SAP System (from ABAP).
BAPI
SAP business objects provide an object-oriented view of SAP data structures and functions. The Business API (BAPI) is an interface through which you can call the methods of these SAP business objects.
IDoc
The interface Intermediate Document (IDoc) is an SAP standard format for exchanging data between SAP Systems or between an SAP-System and an external application. An IDoc defines an SAP standard data container (template) for sending or receiving data from an SAP System.
File interface (FTP)
2.48
SAP AG 1999
ALE uses R/3 Basis functions for asynchronous communication
using IDocs
The Basis functions carry out the following tasks:
Write IDocs to the database Check syntax of IDoc type
Communicate low-level with output devices and R/3 port types
IDoc Communication
2.49
SAP AG 1999
Partner Profiles
Partner profiles control the communication of asynchronous
IDocs in
outbound processing
and
inbound processing
Different partner types are used in IDoc outbound processing,
e.g. logical system, customer, vendor.
The partner type for ALE communications is the
logical system
(LS)
Partner profiles are client-dependent
Partner profiles are client-dependent
Partner profiles with the partner type logical system only exist for systems to which the current client
2.50
SAP AG 1999
Defining Partner Profiles
2.51
SAP AG 1999
R/3 Ports
R/3 ports define the device interface and its technical parameters
for IDoc outbound processing
The port type defines the output medium
Transactional RFC for ALE business processes File
CPI-C connection to R/2
Internet (email attachment in MIME format)
ABAP-PSS (programming interface/function module) XML (XML file format)
2.52
SAP AG 1999
Defining the R/3 Ports
Parameters for R/3 Ports
Version:
If you want to communicate using IDocs with SAP Systems of earlier Releases (2.1 to 3.1) or with external systems (e.g. EDI sub-systems), you have to specify the release version in the port description in your system. Then the correct IDoc record types can be sent in outbound processing.
You use the port version to set the release version of the system you want to communicate with. This
means:
2.53
SAP AG 1999
RFC Destinations
The RFC destination contains the access settings for the target
system of a Remote Function Call
Connection types for RFC destinations
R/2 connections
R/3 connections used by ALE Internal connections
Logical destinations
TCP/IP-Verbindungen, für Business Connector Anbindung Connections using ABAP drivers
R/2 connectionsType 2 entries connect to R/2 Systems. If you create an entry of type 2, you only
have to specify the host name; all communication information is already saved in the background information table of the SAP gateway host. If you want you can specify logon details.
R/3 connectionsType 3 entries connect to R/3 Systems. If you create an entry of type 3, you have to
specify the host name and the communication service. If you want you can specify logon details. As of R/3 Release 3.0 you can choose to specify a load adjustment.
Internal connectionsType 1 entries connect to R/3 Systems that are connected to the same database as
the current system. These entries are predefined and cannot be changed. The entry names correspond to the names in the SAP message server (transaction SM51).
2.54
SAP AG 1999
Maintaining RFC Destinations
Logical destinations
Instead of specifying a system connection, entries of type L refer to a physical destination. A type
L destination can refer to further type L destinations. A type L entry uses information from the reference entry and adds its own information to this. The reference entry usually contains host information while the type L entry contains the logon information. You can also enter a specific user name, password, logon language or client.
A type L entry can refer to other entries of type L.
TCP/IP connections
Destinations of type T are connections to external programs which the RFC Library uses to receive
RFCs. The activation type can either be start or registration.
If you choose start you have to enter the host name and the path name of the program you want to
start.
If you choose registration, you have to enter a registered RFC program. With an SAP gateway you
can register an RFC server program under this ID and then wait for RFC calls from other SAP Systems.
ABAP drivers
Entries of type X specify systems in which device drivers have been especially installed in ABAP.
If you create an entry of type X, you have to specify the host name and the ABAP device driver.
2.55
SAP AG 1999
ALE Communication Settings
Partner profiles, ports and RFC destinations are independent of
each other
To avoid inconsistencies ALE enables partner profiles and ports
for existing RFC destinations and connections to be generated in
the distribution model
For each logical system an RFC destination of the
same name
(in
upper case)
must be defined
The standard settings can be changed later
With automatic generation you can change default settings for parameters of partner profiles and R/3
2.56
2.57Communication and Networks Exercises
Unit: Communication and Networks
Topic: Communication Parameters
At the conclusion of these exercises, you will be able to:
Find the physical definitions that are necessary for
communication between different systems.
You would like to set up communication between R/3 systems.
1. Check the assignment of clients 810 and 811 to the logical system names SALES and
PRODUCTION.
Client 810:_______________
Client 811:_______________
2. RFC destination
On the system SALES:
Use the implementation guide (IMG) to view the RFC destination for the system ‘SALES’.
Target computer: _______________
User:
_______________
3. Ports
4. Partner Profiles
On the SALES system:
Generate a partner profile for the logical system ‘SUBSYS_##’.
Set the following outbound partner profile for the partner ‘SUBSYS_##’:
Message type:
MATMAS
Output mode:
Transfer IDOC immediately
Receiver port:
‘CONVERTER’
Recipient of notifications:
Type:
US
ID:
<Your user name>
Set the following inbound partner profile for the partner ‘SUBSYS_##’:
Message type:
MATFET
Processing:
Trigger immediately
Process code:
MATF
Recipient of notifications:
Type:
US
ID:
<Your user name>
2.58Communication and Networks: Solutions
Unit: Communication and Networks
Topic: Communication Parameters
Exercise 1: check assignment
Use the Implementation Guide (IMG):
Tools
Accelerated SAP
Customizing
Project Management
SAP Reference
IMG
Start setting up the logical systems:
Basis components
Distribution (ALE)
Sending and Receiving Systems
Logical
systems
Assign Client to Logical System
Double click on the corresponding client number:
Client 810: SALES
Client 811: PRODUCTION
Exercise 2: RFC destination
Start maintenance of the RFC destination:
Basis Components
Distribution (ALE)
Sending and Receiving Systems
Systems
in Network
Define Target Systems for RFC Calls
Choose R/3 connections.
Double click on the destination ‘IDES_Sales’.
The target computer and the user are displayed on the screen.
Exercise 3: Ports
Start the maintenance of ports in the IMG:
Basis Components
Distribution (ALE)
Sending and Receiving Systems
Systems
in Network
Asynchronous Processing
Assigning Ports
Define Port
Exercise 4: Partner profiles
Start maintenance of partner profiles in the IMG:
Basis components
Distribution (ALE)
Modelling and Implementing Business
Processes
Partner Profiles and Time of Processing
Maintain Partner Profile
Manually
Generate the partner profile ‘SUBSYS_##’:
Partner number:
SUBSYS_##
Partner type:
LS
Postprocessing of authorised users:
Type US
ID
<Your user name>
Save the entries.
Setting the outbound partner profile
Under Outbound parameters, choose
New Entries.
Message type:
MATMAS
Receiving port: ‘Converter’
Output mode:
Transfer IDOC immediately
IDOC type:
MATMAS01
Postprocessing of authorised users:
Type US
ID
<Your user name>
Save the entries.
Setting the inbound partner profile
Choose F3 back.
Under inbound parameter:
Choose New Entries.
Message type:
MATFET
Processing:
Trigger immediately
Process code
MATF
Postprocessing of authorised users:
Type US
ID
<Your user name>
Save the entries.
3
Implementation Guide (IMG): Basis -> Basis Services -> SAP ArchiveLink -> Business Workflow Settings -> Call Workflow Wizard
3.2
SAP AG 1999
Name the ALE components and identify their
functions
At the conclusion of this unit, you will be able to:
3.3
SAP AG 1999
Course Overview Diagram
Course Overview
ALE Components
IDoc Services
System Security
Tips and Tricks
Tools
Performance
Administration
Enhancements
Special Functions
Business Processes
and Business Objects
Communication and
Networks
Information Sources
3.4
SAP AG 1999
Principles of ALE
Replication of business objects for supporting
distributed business processes
Data is represented the same in all participating R/3
Systems
Supports asynchronous and synchronous
communication
3.5
SAP AG 1999ALE
Distribution Model Distribution Model Tools ToolsApplication interface for asynchronous BAPI calls
Application interface for asynchronous BAPI calls
Shared Master Data Tool
Shared Master Data Tool
Overview of ALE Components
Application Interface for IDocs
Application Interface for IDocs