Вы находитесь на странице: 1из 34

SAP introduction

What is SAP
SAP stands for System, Applications and Products in
Data Processing. It is the largest business software
company in the world and also the largest Enterprise
Resource Planning (ERP Software) solution software
provider.

SAPs main products are SAP ERP (formerly known as SAP


R/3) and SAP Business Objects software. SAP software has
three-tier application architecture: database, application
server and client SAPgui (presentation layer).As per the
reports there are over 100,600 SAP installations at more
than 41,200 companies in more than 120 countries.R/3
architecture was replaced with the introduction of ERP
Central Component (ECC ).

SAPs Business Suite contains


five enterprise applications.
SAP ERP
Customer Relationship Management
(CRM)
Product Life-cycle Management (PLM)
Supply Chain Management (SCM)
Supplier Relationship Management
(SRM).

Modules in SAP
SAP Technical Module ABAP
ABAP stands for Advanced Business
Application Programming and its a high level
programming language used in SAP for the
development and other customization
processes. Normally a transaction code is
used for executing an ABAP program. For
example we can use the transaction code
VA01 for creating a sales order.
Now follow the tutorial link to learn more
about ABAP programming, syntax and
various tools like LSMW,Bdc, Smartforms,
Sapscripts etc.

SAP Functional Modules


In the first section we have already read about various functional modules in
SAP.A single person dont need to learn about all the modules. Its depends on
his role and experience. Now follow the links to learn more about each module.
SAP FI Module
SAP HR Module
SAP MM Module
SAP PM Module
SAP PP Module
SAP PS Module
SAP QM Module
SAP SD Module
SAP Treasury
Warehouse Management
Logistics
CO ( Controlling Module )
SAP ( Cross Application )

Advantages

With more than 300 products and 2000 components, SAP covers
most of the areas of a business.
Low implementation time than developing a new one for a company.
All the functional modules are covered and integrating with each
other.
Advanced analytical features for vast reports and critical decision
making.
High security and different roles for the user.
It support multiple languages and Fiscal years.
Companies can save their time and cost for running their entire
processes.
Different types of Operating System and database are supported.
It is widely used by the companies, in most of the countries.
There is a lot of SAP implementation companies and professionals
available to work.
New features are adding according to the market and new
technology.

Full form ofSAP: System Application and products in data


processing
Full form ofABAP: Advanced Business Application
Programming
Full form ofLSMW: Legacy System Migration Workbench
Full form ofBDC: Batch Data Communication
Full form ofALE: Application Link Enabling
Full form ofIDoc: Intermediate Document
Full form ofEDI: Electronic Data Interchange
Full form ofRFC: Remote Function Call
Full form ofBAPI: Business Application Programming Interface
Full form ofBADI: Business Add-ins
Full form ofALV: ABAP ( SAP ) List Viewer
HRModule : Human Resource Module
MMModule : Material Management Module
PMModule : Plant Maintenance Module
PPModule : Production Planning Module
PS: Project Systems
QM: Quality Management
WM: Warehouse Management

SAP based the architecture of


R/3 on a three-tier client/server
model
Presentation Server
Application Server
Database Server

Presentation Server
The presentation server is actually a program
named sapgui.exe. It is usually installed on a
users workstation. To start it, the user doubleclicks on an icon on the desktop or chooses a
menu path. When started, the presentation
server displays the R/3 menus within a window.
This window is commonly known as the SAPGUI,
or the user interface (or simply, the interface).
The interface accepts input from the user in the
form of keystrokes, mouse-clicks, and function
keys, and sends these requests to the application
server to be processed. The application server
sends the results back to the SAPGUI which then
formats the output for display to the user.

Application server
An application server is a set of executables
that collectively interpret the ABAP/4
programs and manage the input and output
for them. When an application server is
started, these executables all start at the
same time. When an application server is
stopped, they all shut down together. The
number of processes that start up when you
bring up the application server is defined in
a single configuration file called the
application server profile.

Each application server has a profile that specifies its


characteristics when it starts up and while it is running.
For example, an application sever profile specifies:
Number of processes and their types
Amount of memory each process may use
Length of time a user is inactive before being
automatically logged off
The application server exists to interpret ABAP/4
programs, and they only run there-the programs do not
run on the presentation server. An ABAP/4 program can
start an executable on the presentation server, but an
ABAP/4 program cannot execute there.
If your ABAP/4 program requests information from the
database, the application server will format the request
and send it to the database server

Database server
The database server is a set of executables
that accept database requests from the
application server. These requests are passed
on to the RDBMS (Relation Database
Management System). The RDBMS sends the
data back to the database server, which then
passes the information back to the application
server. The application server in turn passes
that information to your ABAP/4 program.
There is usually a separate computer
dedicated to house the database server, and
the RDBMS may run on that computer also, or
may be installed on its own computer.

Configuring servers

In a three-tier client/server configuration, the presentation


servers, applications servers, and database server all run on
separate machines. This is the most common configuration
for large systems, and is common in production.
In the distribution presentation configuration, the application
and database servers are combined on one computer and the
presentation servers run separately. This is used for smaller
systems, and is often seen on a development system.
In the two-tier client/server configuration, the presentation
and application servers are combined and the database
server is separate. This configuration is used in conjunction
with other application servers. It is used for a batch server
when the batch is segregated from the online servers. A
SAPGUI is installed on it to provide local control.
When all servers are combined onto a single machine, you
have a central configuration. This is rarely seen because it
describes a standalone R/3 system with only a single user.

Defining R/3 system


The simplest definition of an R/3 system is one database.
In one R/3 system, there is only one database. To expand
the definition, R/3 is considered to be all of the components
attached to that one database. One R/3 system is
composed of one database server accessing a single
database, one or more application servers, and one or more
presentation servers. By definition, it is all of the
components attached to one database. If you have one
database, you have one system. If you have one system,
you have one database. During an implementation, there is
usually one system (or one database) assigned to
development, one or more systems designated for testing,
and one assigned to production.
The term R/3 system landscape denotes a description of the
number of systems within an SAP installation and how they
are designated, such as development, test, or production.

Defining R/3 instance


When you hear someone say the word instance,
most of the time, that person will be referring
to an application server. The term instance is
synonymous with application server.
The term central instance refers to the
database server. If an application server and
database server both reside on the same
machine, the term central instance refers to the
computer on which both reside.
In the most general terms, an instance is a
server. It is a set of R/3 processes providing
services to the R/3 system.

Application Server
Architecture
All requests that come in from presentation
servers are directed first to the dispatcher. The
dispatcher writes them first to the dispatcher
queue. The dispatcher pulls the requests from the
queue on a first-in, first-out basis. Each request is
then allocated to the first available work process.
A work process handles one request at a time.
To perform any processing for a users request, a
work process needs to address two special
memory areas: the user context and the program
roll area. The user context is a memory area that
contains information about the user, and the roll
area is a memory area that contains information
about the programs execution.

Understanding a User
Context
A user context is memory that is allocated to
contain the characteristics of a user that is
logged on the R/3 system. It holds information
needed by R/3 about the user, such as:
The users current settings
The users authorizations
The names of the programs the user is
currently running
When a user logs on, a user context is allocated
for that logon. When they log off, it is freed. It is
used during program processing, and its
importance is described further in the following
sections.

Understanding roll area


A roll area is memory that is allocated by a
work process for an instance of a program. It
holds information needed by R/3 about the
programs execution, such as:
The values of the variables
The dynamic memory allocations
The current program pointer
Each time a user starts a program, a roll area is
created for that instance of the program. If two
users run the same program at the same time,
two roll areas will exist-one for each user. The
roll area is freed when the program ends

Understanding Dialog step


A dialog step is used by Basis consultants as the
unit of measure for system response time.
A dialog step is the processing needed to get from
one screen to the next. It includes all processing
that occurs after the user issues a request, up to
and including the processing needed to display the
next screen. For example, when the user clicks the
Enter key on the Change Vendor: Initial Screen, he
initiates a dialog step and the hourglass appears,
preventing further input. Thesapmf02kprogram
retrieves the vendor information and displays it on
the Change Vendor: Address screen, and the
hourglass disappears. This marks the end of the
dialog step and the user is now able to make
another request.

There are four ways the user can


initiate a dialog step. From the SAPGUI:
Press Enter.
Press a function key.
Click on a button on the screen.
Choose a menu item.
It is important for an ABAP/4
programmer to know about dialog steps
because they form a discrete unit of
processing for an ABAP/4 program.

Understanding Roll-In/RollOut Processing


An ABAP/4 program only occupies a work process for one
dialog step. At the beginning of the dialog step, the roll
area and user context are rolled in to the work process.
At the end of the dialog step, they are rolled out.
During the roll-in, pointers to the roll area and user
context are populated in the work process. This enables
the work process to access the data in those areas and
so perform processing for that user and that program.
Processing continues until the program sends a screen to
the user. At that time, both areas are rolled out. Roll-out
invalidates the pointers and disassociates these areas
from the work process. That work process is now free to
perform processing for other requests. The program is
now only occupying memory, and not consuming any
CPU. The user is looking at the screen that was sent, and
will soon send another request.

When the next request is sent from the user to continue


processing, the dispatcher allocates that request to the
first available work process. It can be the same or a
different work process. The user context and roll area for
that program are again rolled in to the work process, and
processing resumes from the point at which it was left off.
Processing continues until the next screen is shown, or
until the program terminates. If another screen is sent, the
areas are again rolled out. When the program terminates,
the roll area is freed. The user context remains allocated
until the user logs off.
In a system with many users running many programs, only
a few of those programs will be active in work processes
at any one time. When they are not occupying a work
process, they are rolled out to extended memory and only
occupy RAM. This conserves CPU and enables the R/3
system to achieve high transaction throughput.

Discovering How the Data


Is Sent to the Presentation
Server
The messages exchanged between the
presentation server and the application
server are in an SAP proprietary format. The
SAPGUI accepts the screen information sent
from the application server and formats it
appropriately for the platform it is running
on. This enables different end-user
hardware platforms to connect to a single
application server. For example, an OS/2 PC
and a Windows PC can both connect to the
same application server at the same time.

Understanding the
Components of a Work
Process
Each work process is composed of
the following:
A task handler
An ABAP/4 interpreter
A screen interpreter
A database interfac

All requests pass through the task handler,


which then funnels the request to the
appropriate part of the work process.
The interpreters interpret the ABAP/4 code.
Notice that there are two interpreters: the
ABAP/4 interpreter and the screen interpreter.
There are actually two dialects of ABAP/4.
One is the full-blown ABAP/4 data processing
language and the other is a very specialized
screen processing language. Each is
processed by its own interpreter.
The database interface handles the job of
communicating with the database.

Type of work processes


WP Type

Request Type

D (Dialog)

Dialog requests

V (Update)

Requests
to
update data in the
database

B (Background)

Background jobs

S (Spool)

Print
requests

spool

E (Enqueue)

Logical
requests

lock

M (Message)

Routes messages
between
application
servers within an
R/3 system

G (Gateway)

Funnels messages
into and out of the
R/3 system

Logon client
The term logon client has nothing to
do with Client/Server-it is completely
different.
The number entered here by the user
corresponds to a set of rows within
each client-dependent table within
the database.

Client-Dependent and
Client-Independent Tables
There are two types of tables in an R/3 database: clientdependent and client-independent. A table is clientdependent if the first field is of typeCLNT. The length will
always be 3, and by convention, this field is always
namedmandt. If the first field is not of typeCLNT, the
table is client-independent.
This program selects rows from tablelfa1and writes
outlfa1-lifnr. When this program is run, only two rows are
selected: only those wheremandtequals800. This
happens automatically because the first field in the table
is of typeCLNT. There are five rows in the table, but the
program writes out only those rows
wheremandtequals800. If the user were to log on to
client700and run the same program, three rows of data
would be found and written out. If the user were to log
on to client900, only one row of data would be found.

The logon client mechanism divides


the rows within a client-dependant
table into distinct groups. To access a
different set of data, the user logs on
and specifies a different client
number.

Example
For example, assume two typical, asocial programmers are
working on an enhancement to the billing system. Jim is
modifying the update transaction and Jane is creating a new
report to go with Jims modifications.
Jane sets up data for her test run, executes her report and
obtains output. Jim works in the next cubicle, but due to his
antisocial tendencies is blissfully unaware that his transaction
uses the same tables as Janes report. He runs his transaction
and updates the data. Jim got what he wanted, but Jane then
modifies her code and runs her program again. Her output differs
from the last run, and the differences many not result from her
changes, but rather they may result from Jims changes. What we
have here is a failure to communicate.
If the tables used by Jim and Janes programs were clientdependent, they could each log in to separate clients, set up
independent sets of data, and test their programs without ever
talking to each other. They could perform all of their testing in
the comfort of their cubicles and in isolation from their
coworkers.

To make their tables client-dependant, they only needmandtas


the first field and the R/3 system will take care of the rest. When
records are added to the table, the system automatically moves
the current logon client into themandtfield when the record is
send to the database. Their Open SQLselectstatements will only
return rows where the client number in the table is equal to the
their current logon client number. The Open SQL database
statementsinsert,update,modify, anddeletealso provide
automatic client handling.
If the tables involved are all client-dependent, there can be more
than one group of testers working at a time in one test system.
Two teams of testers can test divergent functionality in the same
set of programs at the same time provided they log on to
different logon clients. The updates done by one team will not
change the data belonging to the other team.
A training client could also exist on the test system. The students
could log on to one client and the testers could log on to another.
Both would run the same set of programs, but the programs
would access independent sets of data.

SAP FUNCTIONAL MODULES


( SOLUTIONS ) OVERVIEW
A company has different functions right? It will have a
sales department , marketing department, HR
department, accounting section etc etc. You all know all
these section handles different functions of a company
and all are integrated with each other. For example HR
department linked with financial ( accounting ) team for
salary and other related things. Sales and Distribution
need to link with material storage ( stores ) to check
the balance stock and all. Different areas ( functions) of
a company but all are interlinked for running as a single
unit of company.
In SAP software all these functions are divided as
Modules. SAP MM Module deals with material
management sections , SAP SD module deal with Sales
& Distribution etc. Now I am sure that you got the
picture.

SAP now are moving away from describing their


system as a set of modules, and now are using
the term solutions, which is much better. Now
let us look into an overview about the complete
list of Modules ( Solutions ) in SAP.
Financials
Human Resources
Customer Relationship Management
Supplier Relationship Management
Product Lifecycle Management
Supply Chain Management
Business Intelligence

SAP consultant
Those who are working with SAP software is
called SAP consultant in general. There are
different types of job roles in SAP, from
marketing to programming and development.
Here is the name of some SAP consultants
according to their role
SAP Business Consultant
SAP Sales consultant
SAP Functional Consultant
SAP Developer consultant ( ABAP consultant )
SAP Basis consultant

Вам также может понравиться