You are on page 1of 6

SAP NetWeaver Overview

SAP NetWeaver allows both ABAP and Java to exist and function within the same system. You will notice
similar functions on both the ABAP and Java stacks in the figure. Similar functions are performed by the
dispatcher and the Java dispatcher to connect a work process to a consumer or user of the process. The
ABAP Work Processes and the Java Server Work Processes perform processing and database access.
On the ABAP side, the gateway communicates with external servers, and (as mentioned previously) the
ICM processes all HTTP requests. The Software Deployment Manager (SDM) is a standard tool used to
install J2EE components on the Java application server.

Components of SAP NetWeaver Application Server with the ABAP and Java Stacks

ABAP Messaging Channels

ABAP messaging channels are a method of communication between ABAP pro-grams, via messages
that can be used from SP02. ABAP messaging channels enable a new type of communication between
AS ABAP programs, which goes beyond the limits of an application server. Messages can be exchanged
between any AS ABAP programs, including communication between different user sessions and
application services. Data objects with specific data types are allowed as messages. Messages that can
be sent and received are: _ Text strings _ Byte strings _ Content that can be serialized in accordance
with fixed protocols. Helper classes are available for serializations and deserializations. ABAP messaging
channels are implemented as repository objects that can be accessed in sender and receiver programs
via an interface-based and class-based application programming interface (API). Any data object can be
sent by being serialized by the sender and deserialized by the receiver. Possible formats include XML or
JSON in strings or SAP’s own Push Channel Protocol.
ABAP Push Channels

ABAP push channels can be used only from SP05 and enable bidirectional communication with the
Internet for ABAP programs using the WebSocket protocol. Unlike HTTP, the WebSocket protocol, based
on TCP, makes push communication possible. Under the traditional pull principle, each response of a
server requires a preceding client request; under the push principle, however, it is enough to have an
open connection between client and server, which is used by the server to pass information as soon as it
becomes available. This protocol reduces the number of connections between client and server. ABAP
push channels can be used to make as ABAP into a WebSocket server for WebSocket clients.

SAP NetWeaver Architecture

The evolution of the technical platform into SAP NetWeaver provides several different ways to install and
use the SAP NetWeaver platform. The installation options for SAP NetWeaver Application Server are as
follows:

1. SAP NetWeaver Application Server ABAP System


2. SAP NetWeaver Application Server Java System
3. SAP NetWeaver Application Server ABAP + Java System

Different SAP NetWeaver components require the SAP NetWeaver Application Server to be run with
certain stacks configured. SAP PI, for example, requires both the ABAP and Java stacks. Depending on
the use of the server, it is possible to use just ABAP or just Java.

Kernel and Administration Services

The kernel and administration services component is a runtime environment for all ABAP applications that
is hardware independent, operating system independent, and database independent. The kernel and
administrative services is another way of looking at the SAP NetWeaver system. The tasks of the kernel
and administration services component are as follows:

Running Applications: All ABAP applications run on software processes (virtual machines) within this
component.

User and Process Administration: This component is responsible for the tasks that usually belong to an
operating system. Users log onto the SAP NetWeaver Application Server and run ABAP applications
within it; they do not have direct contact with the actual operating system of the host. AS ABAP is the only
user of the host operating system.

Database Access: Each ABAP Application Server is linked to a database system consisting of a database
management system (DBMS) and the database itself. The ABAP applications do not communicate
directly with the database. Instead, they use administration services.

Communication: ABAP applications can communicate both with other SAP systems and with external
systems. It is also possible to access ABAP applications from external systems using a Business
Application Programming Interface (BAPI) or a Remote Function Call (RFC). The services required for
communication are all part of the kernel and administration services component.

Control and administration of AS ABAP: This component contains programs that allow you to monitor and
control the SAP NetWeaver Application Server while it is running and to change its run-time parameters.
Software-Oriented View

An SAP system is a multitier client–server system. The individual software components are arranged in
tiers and function (depending on their position) as clients for the components below them or servers for
the components above them. The classic configuration of an SAP system contains the following three
software layers:

Database layer

The database layer, which is accessed by the SAP NetWeaver Application Server, consists of a central
database system. This central database system is made up of the database management system and the
database itself. The database contains the master data and transaction data for your ABAP application
programs. It also contains the control and customizing data for the application and the SAP NetWeaver
Application Server and the ABAP application programs themselves. The development objects (programs,
screen definitions, menus, function modules, and so on) are all stored in a special part of the database
known as the Repository. These objects are therefore also referred to as repository objects. The ABAP
Workbench allows you to work with these objects.

Components of SAP NetWeaver Application Server


Application layer

The software components of the application layer of AS ABAP consist of one or more ABAP application
servers and a message server. Each application server contains a set of services used to run the SAP
NetWeaver Application Server. Theoretically, you only need one application server to run an SAP
NetWeaver Application Server. In reality, the services are normally distributed across more than one
application server. This means that not all application servers provide the full range of services. The
message server allows for communication between the application servers. It passes requests between
one application server and another within an SAP NetWeaver Application Server. It also contains
information about application server groups and the current load balancing within them. When a user logs
on to the system, this information is used to choose an appropriate server.

Presentation layer

This layer is the interface between the SAP system and its users. It is possible to use its software
components (referred to as the SAP GUI in this layer) for entering and displaying data. Another option is
through a web browser that can also be used in the presentation layer. The presentation layer sends the
user’s input to the application server and receives data for display from it. While an SAP GUI component
is running, it remains linked to a user’s terminal session in the AS ABAP.

**The structure of an ABAP application server**

The number of work processes and their types are determined at the startup of the AS ABAP; each ABAP
application server also contains a dispatcher, a gateway, and shared memory. Let’s dissect each of
these.
Work process

Work processes are components that execute an application. For a dialog work process, each work
process executes one dialog step (for the definition of a dialog step see the upcoming Important
Terminology section). Each work process is linked to a memory area that contains the context of the
executing application. This context contains the data for the application. After the work process completes
the dialog step, the link to the user and the program con-text is removed, which frees it for another user.

Dispatcher

The dispatcher provides the link between the work process and the user logged onto the application
server (or more accurately, the user’s SAP GUIs or web browser). It receives requests from an SAP GUI
or web browser and directs the requests to a free work process. Once the work process completes the
dialog step, the resulting screen output is returned to the appropriate user before the link is released.

Gateway

The gateway is the interface for the communication protocols of AS ABAP (RFC and CPI/C). Its purpose
is to communicate internally with other ABAP application servers within this system, externally with other
SAP systems, or externally with non-SAP systems.

Note: In an ABAP application server, all work processes use a common main memory area called shared
memory to save contexts or to locally buffer constant data. Resources that work processes share or
use—for example, programs and buffered table contents—are placed in shared memory.

Structure of a Work Process

Components of a Work Process


The actual processing logic of an application program is written in ABAP. The ABAP processor within the
work process executes the processing logic of the application program and communicates with the
database interface. The screen processor tells the ABAP processor which module of the screen flow logic
should be processed next. The following services are provided by the database interface:

1. Establishing and terminating connections between the work process and the database.
2. Accessing the database tables.
3. Accessing repository objects.
4. Accessing catalog information (ABAP Dictionary).
5. Controlling transactions (commit and rollback handling).
6. Handling table buffer administration on the ABAP application server.

There are two different ways of accessing SAP database tables: Native SQL and Open SQL using ABAP.
Open SQL statements are a subset of standard SQL that is fully integrated in ABAP. These statements
allow you to access data irrespective of the database system. Open SQL consists of the Data
Manipulation Language (DML) part of standard SQL. It therefore allows you to read (SELECT) and
change (INSERT, MODIFY, UPDATE, and DELETE) data. The tasks of the Data Definition Language
(DDL) and Data Control Language (DCL) parts of standard SQL are performed in the AS ABAP by the
ABAP Dictionary and the authorization system. These provide a unified range of functions, regardless of
database, and contain functions beyond those offered by the various database systems.

Components of the Database Interface

**Note: A repository object is one of the components (program, screen definitions, menus, function
modules, and so on) stored in a special part of the database known as the Repository.

You might also like