Description of Our Good Old and Still Great R/3
Previous sections have discussed the use of this software system and who decides
to implement it: SAP R/3 or mySAP ERP controls business processes and manages
essential company information. Enterprises needing those services implement this
To manage the complex business needs of companies, the SAP product family offers
leading technology solutions:
Multitier client/server architecture. Based on middleware for supporting open
systems technology. Initially based on the Business Framework architecture, then the
Internet Business Framework, and now with the Integration platform of SAP Net Weaver,
SAP is open to a total integration with other components, applications, systems, or
Homogeneous user interface among applications.
Comprehensive development environment.
Total application integration.
Solution Sets for configuring the system.
Wide range of services, including hotline support, training, consulting, quality
checks, and so on.
Figure 1-10 shows the classical SAP R/3 components from a functional point of view,
before the SAP Web AS. The overall SAP R/3 system is represented by everything
included inside the ellipse.
The lower layer is made of the operating system, the physical database (whose software
is normally included in the SAP kit, although licenses can sometimes be negotiated with
the DB software vendor), and the network. The middleware layer, which is above it,
interfaces with the lower one and integrates the SAP R/3 applications on top of it. This
middle layer was known as the basis system and includes components such as the ABAP
development workbench, the system administration tools, batch job handling,
authorization and security management, and all cross-application modules. ABAP/4 is a
fourth-generation programming language that was used to develop all R/3 application
modules. When releases 4.0 and 4.5 were introduced and SAP's strategy
Began to focus on object orientation, it was decided to rename the programming language
to simply ABAP, abandoning the 4 in reference to fourth generation. Chapter 7 gives an
overview of the SAP Solutions development components and options, including ABAP.
Middleware are the layered software components that facilitate the development of
client/server applications that can be deployed in heterogeneous vendor platforms. The
basis system, also known as the kernel, is the SAP R/3 middleware. The SAP Web
Application Server uses exactly the same concept and components, with the inclusion of
an additional and native Internet layer, known as Internet Communication Manager or
ICM. The upper layer, the functional layer, contains the different business applications:
financial, human resources, sales and distribution, materials management, and so on. The
integration of all applications relies on the basis system.
SAP defines client/sewer also from a business solution point of view: a technology
concept that leverages computing power to link core business processes with software,
tying together various functions, such as financial services, human resources, sales and
distribution, logistics, and manufacturing.
A common way for SAP to illustrate the R/3 system was the one shown earlier in Figure
1-1, with the R/3 kernel system providing the necessary integration and infrastructure for
the R/3 applications.
The R/3 kernel makes use of standard communications and application program
interfaces to access the operating system, the database, and the network. This kernel layer
is located below the application logic and data layers of the system and operates
independently from the applications. This architecture allows users to change system
configuration and install new systems without interrupting or altering the applications
Multitier Client/Server Solutions
In general, client/server is a style of computing that distributes the workload of a
computer application across several cooperating computer programs.
This type of computing separates user-oriented, application, and data management tasks.
Client/server is mainly a software concept that includes a set of service providers and
service requesters. In client/server computing, individual software components act as
service providers, service requesters, or both. These software services communicate with
each other via predefined interfaces. With the emergence of the Web and Web standards
and the ability to have an Internet browser as user interface, together with the
development of the ITS, the classic three tiered client/server architecture became a
Major advantages of the client/server approach are as follows:
1. Flexible configuration. With the deployment of standard communication
interfaces, there are many possibilities for distributing and planning a client/server
installation: from a centralized configuration to a highly distributed system.
2. Workload distribution. Because application servers work in parallel and
communicate with the database, users can be evenly distributed based on their job
tasks. Also, there is the possibility of deploying dedicated application servers to
specific business areas.
3. High scalability. Client/server permits users to adapt the capacity of their
hardware according to the performance needs of their businesses, such as adding
additional application servers when there is an increase in number of users, when
additional modules start production, and when the database becomes larger. This
enables companies to protect software and hardware investments.
One of the widely used client/server configurations with SAP systems is the three-tiered
architecture (see Figure 1-12), which separates a system's computers into three function
groups: presentation, application, and database. Since client/server is a software
concept,it must be clear that an application server includes the software components that
make upthe provider services for the presentation, acting as a server, but also acting as
service requester of the database services.
With the three-tiered architecture, each group is set up to support the demands of its
Functions. The central server contains the database, widely known as the database
server. Application servers include the processing logic of the system, including services
such as spooling, dispatching user requests, and formatting data. The tasks related to
presentation of the data are handled by the presentation servers, which typically are
personal computers or workstations, enabling easy access to the system.
Communication among the three tiers or server types is accomplished with the use of
standard protocol services, such as the ones provided by TCP/IP or CPIC.
CPIC stands for Common Programming Interface Communication and includes standard
functions and services for program-to-program communication with the ABAP
programming language. Chapter 2 shows in greater detail the services, processes, and
components of the client/server architecture of SAP Systems, and in particular how all
this evolved into the SAP Web Application Server technology.
The key to SAP R/3 success was the strategy of making open solutions, in which the
applications can run on multiple operating systems, databases, and communication
technologies. This enables customers to remain independent of a single vendor if they
wish. The list of current SAP-supported systems can be found also on the SAP Service
Marketplace in their Platform link (currently in service.sap.com/platform, but watch for
updates). What basically makes systems open is the use of standard formats for data
exchange, communication interfaces, and program-to-program communication. SAP
extends the openness concept in several respects:
At the system level. Support for multiple hardware platforms and operating systems,
such as all types of UNIX from main system vendors, Microsoft Windows platforms,
AS/400, OS/390, and Linux. Support for a large number of graphical user interfaces
(GUIs), such as for all Windows flavors (currently only Windows 32 bits are supported),
Macintosh, Internet Browsers, JavaGUI, and so on.
At the database level. R/3 supports various relational database systems such as
Oracle, Informix, SAP-DB or mySQL (MaxDB), DB2, and Microsoft SQLServer.
Access to the data managed by SAP R/3 is possible using standard R/3 reports as well as
any other SQL standard tool: ODBC, SQL browsers, and so on. SAP has incorporated the
standard ANSI-SQL as the database manipulation language, which allows users and
programmers to store, view, and retrieve data to and from all different underlying
At the application level. The system is open to be enhanced and extended to meet
specific business requirements. This can be accomplished either using the ABAP
repository and development environment or currently all the facilities provided by the
tools and development environment enabled by SAP Net Weaver components. On the
foundations, SAP R/3 programming interface lets other SAP systems and external
programs invoke SAP function modules via RFCs (remote function calls) or RPCs
(remote procedure calls), using Business Application Program Interfaces (BAPIs), and all
new types of interfaces enabled by the Business Framework and
the Internet Business Framework (DCOM, Java Connector, Business Connector,etc.).
At the URL http://ifr.sap.com (SAP Interface Repository), there is a comprehensive
collection of all interface and interface types that can be used to access or exchange
information with SAP systems, using different methods, and classified by application
components and interface types.
At the desktop level. With the initial deployment of Microsoft OLE (Object Linking
and Embedding) technology, then with COM and now with .NET, SAP systems enables
desktop users to access SAP data and functions from many Windows client programs.
With the introduction of SAP R/3 release 4.0 and especially with 4.5 and 4.6, SAP
leveraged the concept of integration with PC programs, mainly with the technology
provided by ActiveX and Java.
At the communication protocol level. SAP can use the standard communication
protocols TCP/IP, SNA-LU6.2, CPIC, and HTTP for interprogram communications as
well as for network communication and data transfer. Since SAP Web Application Server
6.10, support for HTTP/HTTPS is native in the system.
At the external communication level.
Since release 3.0, SAP systems have included support for EDI (Electronic Data
Interchange) interfaces to automate the exchange of data (invoices, orders, etc.) between
SAP systems and other applications systems used by business partners.
It also uses MAPI (Messaging Application Program Interface) technology, supporting
standard X.400 and SMTP protocols. These standards allow R/3 users to communicate
with other mail systems and the Internet. With the SAP Web Application Server, SMTP
is now native in the system without the need to install or set up e-mail gateways or
additional connectors, and lets the SAP system act as an MTA (Message Transfer Agent).
Since release 3.1, with the incorporation of the BAPI technology, SAP has actively
supported the new electronic commerce technology with the deployment of the Internet,
which allows business transactions to happen between Internet users and SAP systems.
Many of the new interface types and data exchange standards are still based on BAPIs.
With the ALE (Application Link Enabled) technology, SAP allows communication
between distributed applications: between SAP systems and between SAP and external
Using development languages such as standard ANSI C, C++, Java, Delphi, Visual Basic,
and the newer development environments, developers can integrate external applications
with SAP systems, exchanging information on the level of business objects.
The SAP systems user interface is designed for ease of use and friendliness by all levels
of staff. The SAP graphical user interface, known as SAP GUI, acts as the presentation
server and is available in Windows and Macintosh platforms. They all look identical,
whatever underlying system they are running on. The SAP GUI includes all graphical
capabilities of modern Windows interfaces, with push buttons, menu bars, toolbars,
hypertext links, tabs trips, on-focus descriptions, and right-clicking options. The
graphical design and functionality is homogeneous across the entire system, which makes
training easier and more straightforward for all levels of SAP users.
Depending on which SAP application or processing tasks are to be run, screens may be
very simple or may contain multiple fields and graphical elements. Customers can also
customize and create new menus and screens with the help of the development
workbench. Chapter 4 contains all the information needed to learn how to use the system
and discusses the available icons, how to move around the system, and some very useful
In SAP R/3 releases 4.x and up, the new GUI was designed to be able to show several
types of information at the same time. There is also the possibility of transferring the
presentation components on demand from SAP to the workstations. This is possible
because of the enhancements in the architecture introduced using ActiveX under
Windows or JavaBeans.
As of the introduction of the ITS, with SAP GUI for HTML, and currently with the
possibilities enabled with Web Dynpro, the user interface is slowly switching to a
complete Web-based environment, which would ultimately make SAP users able to
deploy SAP systems through the SAP Enterprise Portal (the People collaboration layer of
SAP Net Weaver).
The data from the different SAP functional applications are shared and integrated,
building what is often known as an internal information highway. This integration can be
seen as an implicit applications workflow. One of the main benefits of the set of SAP
applications is their capacity for creating a perfect integration between the different
business processes of companies. It is that integration between applications that ensures
that all business and management information is available to all areas of a company.
An accompanying feature that makes application integration stand out is the capacity of
doing it in real time. This means that information is constantly updated, so when a
manager requests a report about the current balance the system provides instant
information about the status of the financial statements. This avoids the difficulty of
running end-of-period reports and programs from a traditional legacy system, which has
to search and incorporate needed data from other applications before the run. From the
point of view of the business processes, the integration of the R/3 application modules
used to be represented using the tools available within the R/3 Business Engineer, which
is no longer available in latest releases. At the level of data models, this integration can
be accessed using the available functions included in the Data Modeler.