SAP NETWEAVER APPLICATION SERVER FUNDAMENTALS

Published on January 2017 | Categories: Documents | Downloads: 94 | Comments: 0 | Views: 316
of 20
Download PDF   Embed   Report

Comments

Content

SAP NETWEAVER APPLICATION SERVER FUNDAMENTALS

ERP
When you search for "ERP" on the web, the sheer amount of information that comes up can be
overwhelming—not to mention a little confusing. Every website seems to have its own definition of
ERP, and one ERP implementation can vary widely from the next. These differences, however,
underscore the flexibility that can make ERP such a powerful business tool.
To get a deeper understanding of how ERP solutions can transform your business, it helps to get a
better sense of what ERP actually is and how it works. Here's a brief introduction to ERP and why it
seems like everyone's talking about it.
ERP is an acronym for Enterprise Resource Planning, but even its full name doesn't shed much light
on what ERP is or what it does. For that, you need to take a step back and think about all of the
various processes that are essential to running a business, including inventory and order
management, accounting, human resources, customer relationship management (CRM), and beyond.
At its most basic level, ERP software integrates these various functions into one complete system to
streamline processes and information across the entire organization.
The central feature of all ERP systems is a shared database that supports multiple functions used by
different business units. In practice, this means that employees in different divisions—for example,
accounting and sales—can rely on the same information for their specific needs.
ERP software also offers some degree of synchronized reporting and automation. Instead of forcing
employees to maintain separate databases and spreadsheets that have to be manually merged to
generate reports, some ERP solutions allow staff to pull reports from one system. For instance, with
sales orders automatically flowing into the financial system without any manual re-keying, the order
management department can process orders more quickly and accurately, and the finance
department can close the books faster. Other common ERP features include a portal or dashboard to
enable employees to quickly understand the business' performance on key metrics.

A Brief History of ERP
The term ERP was coined in 1990 by Gartner1, but its roots date to the 1960s. Back then, the concept
applied to inventory management and control in the manufacturing sector. Software engineers
created programs to monitor inventory, reconcile balances, and report on status. By the 1970s, this
had evolved into Material Requirements Planning (MRP) systems for scheduling production processes.
In the 1980s, MRP grew to encompass more manufacturing processes, prompting many to call it MRPII or Manufacturing Resource Planning. By 1990, these systems had expanded beyond inventory
control and other operational processes to other back-office functions like accounting and human
resources, setting the stage for ERP as we've come to know it.
Today, ERP has expanded to encompass business intelligence (BI) while also handling "front-office"
functions such as sales force automation (SFA), marketing automation and ecommerce. With these
product advancements and the success stories coming out of these systems, companies in a broad
range of industries—from wholesale distribution to ecommerce—use ERP solutions.

Moreover, even though the "e" in ERP stands for "enterprise," high-growth and mid-size companies
are now rapidly adopting ERP systems. Software-as-a-Service (SaaS) solutions—also referred to as
"cloud computing"—have helped fuel this growth. Cloud-based solutions not only make ERP software
more affordable, they also make these systems easier to implement and manage. Perhaps even more
importantly, cloud ERP enables real-time reporting and BI, making them even valuable to executives
and staff seeking visibility into the business.
As a result, companies of all sizes and a wide range of industries are transitioning to cloud ERP
systems. In fact, Forrester predicts that SaaS-based ERP adoption will rise 21 percent annually
through 2015. When you stop to consider the benefits of ERP, it's easy to see why it's become so
popular and why its use will continue to grow so rapidly.

The Business Value of ERP
At its core, ERP helps employees do their jobs more efficiently by breaking down barriers between
business units. More specifically, an ERP solution:


Gives a global, real-time view of data that can enable companies to address concerns
proactively and drive improvements



Improves financial compliance with regulatory standards and reduces risk



Automates core business operations such as lead-to-cash, order-to-fulfillment, and procure-topay processes



Enhances customer service by providing one source for billing and relationship tracking.

When you add up these advantages, the value of ERP—particularly cloud ERP—is clear. With an ERP
solution, employees have access to accurate information that enables them to make better decisions
faster. Not only that, but ERP software helps to eliminate redundant processes and systems,
dramatically lowering the cost of doing business overall.

ERP Architecture
ERP applications are most commonly deployed in a distributed and often widely dispersed manner. While the servers may
be centralized, the clients are usually spread to multiple locations throughout the enterprise.
Generally there are three functional areas of responsibility that is distributed among the servers and the clients. First,
there is the database component - the central repository for all of the data that is transferred to and from the clients. Then,
of course, the clients - here raw data gets inputted, requests for information are submitted, and the data satisfying these
requests is presented. Lastly, we have the application component that acts as the intermediary between the client and the
database. Where these components physically reside and how the processes get distributed will vary somewhat from one
implementation to the next. The two most commonly implemented architectures are outlined below.
Two-tier Implementations
In typical two-tier architecture, the server handles both application and database duties. The clients are responsible for
presenting the data and passing user input back to the server. While there may be multiple servers and the clients may be
distributed across several types of local and wide area links, this distribution of processing responsibilities remains the
same.

Three-tier Client/Server Implementations
In three-tier architectures, the database and application functions are separated. This is very typical of large production
ERP deployments. In this scenario, satisfying client requests requires two or more network connections. Initially, the
client establishes communications with the application server. The application server then creates a second connection to
the database server.

SAP ERP[2] is enterprise resource planning software developed by the German company SAP SE. SAP ERP
incorporates the key business functions of an organization. The latest version (SAP ERP 6.0) was made
available in 2006. The most recent Enhancement Package (EHP7) for SAP ERP 6.0 was released in 2013.
Business Processes included in SAP ERP include Operations (Sales & Distribution, Materials Management,
Production Planning, Logistics Execution, and Quality Management) Financials (Financial Accounting,
Management Accounting, Financial Supply Chain Management) and Human Capital Management (Payroll, eRecruiting).[3]
Overview[edit]
SAP ERP is part of the applications in the SAP Business Suite (and SAP Business All
Development[edit]
SAP ERP was built based on the former SAP R/3 software. SAP R/3 through version 4.6c consisted of various
applications on top of SAP Basis, SAP's set ofmiddleware programs and tools. When SAP R/3 Enterprise was
launched in 2002, all applications were built on top of the SAP Web Application Server. Extension sets were
used to deliver new features and keep the core as stable as possible. The Web Application Server contained
all the capabilities of SAP Basis.
As a result of marketing changes and changes in the industry, new versions of SAP have been released. The
first edition of mySAP ERP was launched in 2003 and bundled previously separate products, including SAP
R/3 Enterprise, SAP Strategic Enterprise Management (SEM) and extension sets. The SAP Web Application
Server was wrapped into NetWeaver, which was also introduced in 2003.
A complete architecture change took place with the introduction of mySAP ERP edition in 2004. R/3 Enterprise
was replaced with the introduction of ERP Central Component (SAP ECC). The SAP Business Warehouse,
SAP Strategic Enterprise Management and Internet Transaction Server were also merged into SAP ECC,
allowing users to run them under one instance. Architectural changes were also made to support an enterprise
service architecture to transition customers to a services-oriented architecture.
Implementation[edit]
SAP ERP consists of several modules, including utilities for marketing and sales, field service, product design
and development, production and inventory control, human resources, finance and accounting. SAP ERP
collects and combines data from the separate modules to provide the company or organization with enterprise
resource planning.
An article in the IEEE Transaction on Engineering Management journal reports an industrial case in which
senior management successfully dealt with a troubled SAP R/3 implementation in an international fast moving
consumer goods (FMCG) company during 2001 and 2002.[4]

Deployment and maintenance costs[edit]
Effectively implemented SAP ERP systems can have cost benefits[citation needed]. Integration is the key in this
process. "Generally, a company's level of data integration is highest when the company uses one vendor to
supply all of its modules." An out-of-box software package has some level of integration but it depends on the
expertise of the company to install the system and how the package allows the users to integrate the different
modules.[5]
It is estimated that "for a Fortune 500 company, software, hardware, and consulting costs can easily exceed
$100 million (around $50 million to $500 million). Large companies can also spend $50 million to $100 million
on upgrades. Full implementation of all modules can take years," which also adds to the end price. Midsized
companies (fewer than 1,000 employees) are more likely to spend around $10 million to $20 million at most,
and small companies are not likely to have the need for a fully integrated SAP ERP system unless they have
the likelihood of becoming midsized and then the same data applies as would a midsized company.
[5]

Independent studies have shown that deployment and maintenance costs of a SAP solution can greatly vary

depending on the organization. For example, some point out that because of the rigid model imposed by SAP
tools, a lot of customization code to adapt to the business process may have to be developed and maintained.
[6]

Some others pointed out that a return on investment could only be obtained when there was both a sufficient

number of users and sufficient frequency of use.[7][8] Deploying SAP itself can also involve a lot of time and
resources.[9]
SAP Basis[edit]
After extensive developments in SAP, it is now divided into two subgroups stating Basis into one and Security
into other (previously Basis consultants used to work on both basis as well as Security issues) very difficult in
use
ERP advantages and disadvantages[edit]
Advantage


Allows easier global integration (barriers of currency exchange rates, language, and culture can be
bridged automatically)



Updates only need to be done once to be implemented company-wide



Provides real-time information, reducing the possibility of redundancy errors



May create a more efficient work environment for employees[5]



Vendors have past knowledge and expertise on how to best build and implement a system



User interface is completely customizable allowing end users to dictate the operational structure of the
product

Disadvantages


Locked into relationship by contract and manageability with vendor - a contract can hold a company to
the vendor until it expires and it can be unprofitable to switch vendors if switching costs are too high



Inflexibility - vendor packages may not fit a company's business model well and customization can be
expensive



Return on Investment may take too long to be profitable



Implementations have a risk of project failure[5]

The SAP NetWeaver Application Server is the central foundation for the entire SAP software stack. It also provides a
platform for other NetWeaver components (Portal, XI, and so on), as well as for ABAP and Java applications. The full
J2EE standard is supported. The SAP NetWeaver Application Server is the further development of the SAP Web
Application Server.

Design
The design of the SAP NetWeaver Application Server is aimed at providing an exceptionally high level of
robustness and maintainability for the applications running on it.
With VM Container technology SAP has achieved a technological foundation that allows Java applications to
be executed with a similar level of robustness as software developed in ABAP. The aim is to isolate
individual users from each other as securely as possible to avoid any unwanted restrictions. In order to
provide an optimal runtime environment for selected scenarios with especially high demands on a narrow
ABAP-Java coupling, in this release a Java VM can also run integrated in the ABAP work process.
For more information about this see Architecture of the VM Container.

Technical Components
An SAP system consists of several application server instances, as well as one or more databases.
In addition to whatever number of dialog instances users choose to execute, there is one central instance
that contains the message server and the enqueue server. It cannot process any dialog requests.

A dialog instance consists of the following components:
· The Internet Communication Manager (ICM) sets up the connection to the
Internet. It can process both server and client Web requests. It supports the
protocols HTTP, HTTPS, and SMTP. The SAP Web AS may be a Web server or a client
(see SAP Web Application Server: Web Server or Web Client)
· The dispatcher distributes the requests to the work processes. If all the processes
are occupied the requests are stored in the dispatcher queue.
· The Work Processes execute ABAP or Java programs.
· The SAP Gateway makes the RFC interface between the SAP instances available
(within an SAP System and beyond system boundaries).
· The Message Server exchanges messages and balances the load in the SAP
system.
· In the J2EE component of the SAP NetWeaver AS there are also components Java
Dispatcher, Server Process and Software Deployment Manager For more
information see Java Cluster Architecture.
The graphic below shows these components. To retain clarity a few communication
channels are not included in the graphic.

In the SAP system, these functions are provided by the RFC interface system. The RFC interface enables function calls
between two SAP systems, or between an SAP system and an external system.
The RFC interface system is made up of the following elements:


Calling interface for ABAP programs
Each ABAP program can call a remote function module using the command CALL
FUNCTION...DESTINATION. The parameter DESTINATION informs the SAP system that the called function
module runs in a different system to the calling system. RFC communication with the remote system
takes place as a part of the CALL FUNCTION command.
RFC function modules in an SAP system must be real function modules and must be registered
as remote enabled in the SAP system.
If the calling program and the called program are both ABAP programs, the RFC interface provides both
communication partners. The calling program can be any ABAP program. The called program must be a
function module that is registered as remote enabled.



Interfaces for calling non-ABAP programs
If either the calling program or the called partner is not an SAP program, the program in question must
be programmed in such a way that it can play the role of the other partner in RFC communication.
RFC-supported and GUI-supported interfaces can be used by external programs to call function modules
in SAP systems, and execute them in these systems. Likewise, ABAP programs can also use these
interfaces to use functions supplied by external programs.

Integration
There are the following installation options for the SAP NetWeaver AS:
· ABAP System (with integrated VM Container). In the graphic these are the components in the blue box
on the left. With this installation you can run ABAP programs and selected SAP Java applications.
· Java system. In the graphic these are the components in the green box on the right. With this
installation you can run J2EE applications but not any ABAP programs.



The architecture of SAP Web Application Server can be separated into 5 areas:

Presentation layer
In the presentation layer, the user interface can be developed with Java Server Pages (JSP), Business
Server Pages (BSP), or with Web Dynpro technology. The underlying business layer provides the business
content in Java or ABAP.
Business layer
The business layer consists of a J2EE certified run-time environment that processes the requests passed
from the Internet Communication Manager (ICM) and dynamically generates the responses. The business
logic can be written either in ABAP or in Java based on the J2EE standard. Developers can implement
business logic and persistence with Enterprise JavaBeans (EJB) using the J2EE environment. Developers
can also access the business objects of applications running in the ABAP environment to benefit from their
business logic and persistence.
Integration layer
The local integration engine is an integral part of SAP Web AS and allows instant connection to SAP
XI which is currently called as SAP PI. The local integration engine provides messaging services that
exchange messages between the components that are connected in SAP XI.
Connectivity layer
The Internet Communication Manager (ICM) dispatches user interface requests to the presentation layer
and provides a single framework for connectivity using various communication protocols. Currently, modules
are available for Hypertext Transfer Protocol (HTTP), HTTPS (extension of HTTP running under theSecure
Socket Layer (SSL)), Simple Mail Transfer Protocol (SMTP), Simple Object Access Protocol (SOAP),
and Fast Common Gateway Interface (FastCGI).
Persistence layer
The persistence layer supports database independence and scalable transaction handling. Business logic
can be developed completely independent of the underlying database and operating system. Database
independence is also made possible by support for open standards. The database interface ensures
optimized data access from within the ABAP environment through Open SQL. SAP propagates the
outstanding capabilities of Open SQL for ABAP to Open SQL for Java and offers a variety of
standard Application Programming Interfaces (APIs) to application programmers, such as SQLJ. Other
technologies, such asJava Data Objects (JDO) and Container-Managed Persistence (CMP) for EJB, or the
direct use of the Java Database Connectivity (JDBC) API, are also supported.

Work Process
Definition
An SAP application server has to process SAP requests from multiple front ends. The application server has
the use of a dispatcher, which gathers the requests and transfers them for processing to the work
processes. The work processes then execute the desired requests (for example, an ABAP program).

Use
Here are the following types of work processes:

Work Process Use
Type
Executes dialog programs (ABAP)
Dialog

Update

Asynchronous database changes (is controlled by a COMMIT WORK
statement in a dialog work process)
Executes time-dependent or event-controlled background jobs

Background

Enqueue

Executes locking operations (if SAP transactions have to synchronize
themselves)
Print formatting (to printer, file or database)

Spool

Several dialog work processes usually run on one application server. There are usually only one or two
other types of work processes.

Structure
A work process consists of a screen processor, the ABAP interpreter, the database interface and the task
handler that calls these programs.

Integration
The dispatcher is the central process of the application server. After it has been started, it generates the
work process. You can configure the number of different types of work processes that run on an application
server.

Work processes are part of the application server which can handle maximum one presentation
server request at a time. It contains a task handler, ABAP interpreter, screen interpreter and database
interface.

1.
2.
3.
4.

All the requests are passed through task handler.
Screen Interpreter is responsible for interpreting the screen flow logic contains in the requests.
ABAP interpreter is responsible for the interpretation of the processing logic of the program.
Database interface is responsible for all the connection, accessing the data and all other things
with database.
5. For every request, work process need to use following two special memory areas.
a. User Context (Contains the information about the user)
b. Roll Area (Contains the information about the program)
There are following seven types of work processes :




D – Dialog Work Process (To execute dialog steps)
V – Update Work processes (for database updates)
B – Background Work Processes (Processing the background Jobs without user





interaction)
S – Spool Work Processes (To print spool requests)
E – Enqueue Work processes (Dealing with lock table)
M – Message Work Processes (Dealing with routing the messages between



application servers)
G – Gateway Work processes (Dealing with messages into and from the SAP system)

Software Deployment Manager
Purpose
The Software Deployment Manager (SDM) is a tool with which you can manage and deploy software
packages (Software Deployment Archives and Software Component Archives) that you receive from SAP.

Features
The SDM consists of:
· SDM Server
· SDM GUI
· SDM Repository
SDM GUI connects to the SDM server through a SDM proprietary protocol.

SDM Server
Use - Executes the operations over SDUs.
Integration - It connects the SDM GUI user with the J2EE Engine, database and file system
resources.

Prerequisites -

The SDM Server must be started.

SDM Remote GUI Client
Use
The SDM Remote GUI Client (SDM GUI) is the deployment tool for J2EE-compatible applications on the J2EE
Engine.

SDM Repository
Use
Contains:
· Information about SDM-specific configurations
· Data about all currently deployed SDUs

Prerequisites
SDM Server must have been started.

Central Services
Definition
The Central Services run on one physical machine and constitute a Java instance.
They comprise the Message Service and the Enqueue Services.

Use
The Central Services form the basis of communication and synchronization for the Java cluster.
The Message Service keeps a list of the dispatchers and server processes of the Java cluster. It represents
the infrastructure for data exchange (small datasets only) between the participating nodes. The Message
Service also supplies information to the SAP Web Dispatcher about Load Balancing Between Many Java
Instances.
The Enqueue Service manages logical database locks, which are set by the executed application program
in a server process. The Enqueue Service also synchronizes data across the cluster.
The section Deployment of a New Application describes how the central components handle the
deployment of a new application.

Integration

The Central Services are always required when a Java cluster is installed. The Central Services instance has
its own system number.
When Central Services are running, further Java instances are started with the program JControl.

Central Services Instance
Central services form the basis of communication and synchronization for the AS Java cluster.
They are responsible for lock administration, message exchange, and load balancing within the
cluster.
Central services run on one physical machine and constitute a separate instance. This SAP
Central Services Instance (SCS) comprises the message server and the enqueue server.
Note
The central services are always required when an AS Java cluster is installed. The central services
instance has its own instance number.
The SAP start service (sapstartsrv(.exe)) starts the SCS instance first. When the central
services are running, the other Java instances are started.
Message Server
The message server keeps a list of all server processes in the AS Java cluster and provides
information about their availability to Internet Communication Manager (ICM). It also represents
the infrastructure for data exchange between the participating server processes.
The message server is responsible for the following tasks in the AS Java cluster:

Notification of events that arise in the cluster, for example when a server process is
started or stopped

Communication between different server processes

Forwarding of messages and requests to all participants

Preparation of logon information for the SAP Web Dispatcher

Exchange of cache information in the cluster
The message server is addressed through the Cluster Manager of one of the server processes in
the Java cluster, as shown in the figure below.

Message Server Connection
More information: Cluster Communication in AS Java: Architecture
Enqueue Server
The enqueue server manages logical locks. The enqueue server runs on the Central Services
instance of the Java cluster. It manages the lock table in the main memory and receives requests
for setting or releasing locks. It maps the logical locks to the database.
The enqueue server has the following tasks:

Internal synchronization within the AS Java cluster.

The applications can lock objects and release locks again. The enqueue server processes
these requests and manages the lock table with the existing locks.
What is ABAP/4
What is ABAP/4 ?

ABAP (Advanced Business Application Programming) is a programming language for developing applications
for the SAP R/3 system. ABAP is one of many application-specific fourth-generation languages (4GLs) first
developed in the 1980s. The most basic functions were written in ABAP. ABAP/4 is the language created by
SAP AG for implementation and customization of their R/3 system.
The ABAP programming language was originally used by developers to develop the SAP R/3 platform. ABAP
was one of the first languages to include the concept of Logical Databases (LDBs), which provides a high level
of abstraction from the basic database level.
It was also intended to be used by SAP customers to enhance SAP applications – customers can develop
custom reports and interfaces with ABAP programming. The language is fairly easy to learn for programmers
but it is not a tool for direct use by non-programmers. Good programming skills, including knowledge of

relational database design and preferably also of object-oriented concepts are required to create ABAP
programs.
From this blog onwards we are looking only for technical part i.e ABAP/4 in detail.

ABAP language Contains below mentioned topics
1.Data Dictionary Objects
Data Base Tables
Views
Structures
Data Elements
Domains
Search helps
Lock objects
Primary Key and Foreign Key
Table Maintenance Generator
2.Internal Tables
Internal Tables Introduction
Declaring Internal Table
Populating Internal Table
Processing Internal Table
Initializing Internal Tables
3.Moduralization Techniques
Sub-routines
Function Module
4. REPORTS
Classical
Interactive
Abap list viewer (ALV)
5. BDC - Batch Data Communication
Session method
Call Taransaction Method
LSMW
6. Module pool Programming
Screen painter
Menu painter
7. Forms
Scripts
Smartforms
8.Cross-Aplications
ALE & IDOCS
BAPI's
BADI’s

9.Miscellaneous Topics
Correction & Transport request (CTS)
Transport Organizer
Work Bench Request
Task Creation
Release Objects
SAP Memory & ABAP Memory
SD Flow
MM Flow

What is an Instance?
An SAP R/3 instance defines a group of resources such as

memory

work processes

dispatcher

gateway
usually for a single application or database server within an SAP R/3 client-server
environment.
Basically there are three types of instances:1.

Dialog instance

2.

Central Instance

3.

Database Instance

1

SAP System= Dialog Instance + Central Instance + Database Instance.

For one SAP system all three instances share the same directory.


Dialog Instance:- Dialog instance exists in the application layer.Its purpose is to
maintain load on the server.Dialog instance exists on different host.If number of dialog
instance increases hardware resources,dispatcher,workprocesses also increases so that
more number of users can login at a time.

Central Instance:- Central instance can also work as dialog instance.But the main
thing is that it contains Enqueue and message servers. All dialog instances communicate
with central instance before requesting database with message server. When an instance
is started, the dispatcher process attempts to establish a connection to the message
server so that it can announce the services it provides (DIA, BTC, SPO, UPD, etc.).Lock
table is managed in central instance by enqueue service.

Database Instance:- As normal database instance accepts requests from central
instance to fulfill the user's requests. As lock management system provided by enqueue
server it will provide service to users.

What is SID ?
Each R/3 installation (SAP system) of a database server and several app servers running the
application logic is uniquely identified by a single SID (SAP System Identification), SAPSID —
a three-character code such as C11, PRD, E56, etc.),
Logical System Names:When data is distributed between different systems, each system within a network has to be
clearly identifiable. The "logical system" deals with this issue.
A logical system is an application system in which the applications work together on a
common database. In SAP terms, the logical system is a client.
Since the logical system name is used to identify a system uniquely within the network, two
systems cannot have the same name if they are connected to each other as BW systems or
as source systems, or if there are plans to connect them in any way.
Example for production system logical system name might be:SID – PBG
SID Description - P=Production (type), B=BW (component), G=Germany (plant name)
Logical System namePBGCLNT100.This form is easy to understand.
CENTRAL INSTANCE: The SAP Central Instance (CI) is a standalone SAP Basis unit which provides services
used by clients connected to the SAP system. Among these services are the Message server and the Enqueue
server, which run only on the single SAP Central Instance. The Message server maintains a list of all available
resources in an SAP system, determines which instance a user logs on to during a client connect, and handles all
communication between SAP instances. The Enqueue server is used by SAP to administer the lock table in a
distributed SAP system. If the CI server hosting the Enqueue service fails, all SAP transaction locks that have
not yet been committed are lost. R/3 guarantees that no user can perform a transaction while the
Enqueue service is unavailable in order to guarantee database consistency. Placing the Enqueue and Message
services together on the CI is recommended by SAP since the Message service must always access the Enqueue
service for inter-process communication. These services provide critical SAP functions that, by existing only in
the SAP Central Instance, suffer from being a single point of failure in the SAP environment. Obviously, the CI,
which contains the Enqueue and Message services, needs to be restarted as quickly as possible following a
failure so that normal operations can resume.
APPLICATION SERVER: Application server or dialog instance is installed to reduce the load on CI (Central
Instance). Here Central Instance Has Message server and an enqueue work Process, Application Server or
dialog Server : Does not have message server but have work process to reduce the Load on CI

Start and Stop Process: Microsoft Windows
Start Process
1. Starting the SAP services
When you boot your Microsoft Windows system, the SAP service
(SAP<SID>_<Instance_no.>, such asSAPC11_00) is always automatically started. The

service evaluates entries from the Microsoft Windows start profile, copies
the <sapsid>adm user environment to the registry, and reads the required environment
variables from the registry.
2. Starting the SAP Processes
You can start the SAP processes with the Microsoft Management Console (MMC). To do this,
select an instance and choose Start in the context menu. For more information, see
Microsoft Management Console: Windows.
DCOM communication is set up with the SAP service and messages for starting the
appropriate SAP instance are sent to the service. The SAP service interprets the Microsoft
Windows start profile (see “Evaluating the Start Profile” below) and starts the processes of
which the instance consists. (The processes are started by the program sapstartsrv.exe.)
The message to start the desired instance can also be issued with the command line
program sapstart.exe orsapcontrol.exe
The following diagram illustrates the interaction of the individual processes during the start
process:

Evaluating the Start Profile
When you start an instance, the SAP service executes all commands in the Microsoft Windows
start profile that contain an Execute_ statement. The SAP service then starts the processes of
the SAP instance in the order in which the Start_Program_ statements are listed in the profile.
Shutdown Process
You stop the SAP system with the MMC or another utility program. The SAP service waits for a
stop message from the MMC or a command line program (such as sapsrvkill) and then stops the
SAP system. The service itself is not stopped.

GENERATION LANGUAGES

1st gen – Binary code e.g. – 0001110110110
The first generation program language is pure machine code, that is just ones and zeros, e.g.
. Programmers have to design their code by hand then transfer it to a

computer by using a punch card, punch tape or flicking switches. There is no need to translate the code and it will
run straight away. This may sound rather archaic, but there are benefits:
Code can be fast and efficient
Code can make use of specific processor features such as special registers

And of course drawbacks
Code cannot be ported to other systems and has to be rewritten
Code is difficult to edit and update

2nd gen – As you can imagine, writing in 1s and 0s all day will leave you prone to mistakes. Secondgeneration programming languages are a way of describing Assembly code which you may have already met.
By using codes resembling English, programming becomes much easier. The usage of these mnemonic codes such
as LDA for load and STA for store means the code is easier to read and write. To convert an assembly code
program into object code to run on a computer requires an Assembler and each line of assembly can be replaced
by the equivalent one line of object (machine) code:

Assembly Code

Object Code

000100110100

LDA A
ADD #5
STA A

-> Assembler ->

JMP #3

001000000101
001100110100
010000000011

Assembly code has similar benefits to writing in machine code; it is a one to one relationship after all. This means
that assembly code is often used when writing low level fast code for specific hardware. Until recently machine code
was used to program things such as mobile phones, but with the speed and performance of languages such
as C being very close to Assembly, and with C's ability to talk to processor registers, Assembly's use is declining.
As you can hopefully see there are benefits to using Second-Generation Languages over First-Generation, plus a
few other things that makes Assembly great:
Code can be fast and efficient
Code can make use of specific processor features such as special registers
As it is closer to plain English, it is easier to read and write when compared to machine code

And of course drawbacks
Code cannot be ported to other systems and has to be rewritten

3rd gen – Even though Assembly code is easier to read than machine code, it is still not straightforward to
perform loops and conditionals and writing large programs can be a slow process creating a mish-mash
of goto statements and jumps. Third-generation programming languages brought many programmer-friendly

features to code such as loops, conditionals, classes etc. This means that one line of third generation code can
produce many lines of object (machine) code, saving a lot of time when writing programs.
Imperative languages - code is executed line by line, in a programmer defined sequence

Third generation (High Level Languages) codes are imperative. Imperative means that code is executed line by line,
in sequence. For example:
1 dim x as integer
2 x = 3
3 dim y as integer
4 y = 5
5 x = x + y
6 console.writeline(x)

Would output: 8
Third generation languages can be platform independent, meaning that code written for one system will work on
another. To convert a 3rd generation program into object code requires a Compiler or an Interpreter.
To summarise:
Hardware independence, can be easily ported to other systems and processors
Time saving programmer friendly, one line of 3rd gen is the equivalent of many lines of 1st and 2nd gen

However
Code produced might not make the best use of processor specific features unlike 1st and 2nd gen

Advanced 3rd gen – Python, Ruby, Perl bcz they have few
properties of 4t GLs also
4th gen – Fourth-generation languages are designed to reduce programming effort and the time it takes to
develop software, resulting in a reduction in the cost of software development. They are not always successful in
this task, sometimes resulting in inelegant and hard to maintain code. Languages have been designed with a
specific purpose in mind and this might include languages to query databases (SQL), languages to make reports
(Oracle Reports) and languages to construct user interface (XUL). An example of 4th generation programming type
is the declarative language

--an example of a Structured Query Language (SQL) to select criminal details from a
database
SELECT name, height, DoB FROM criminals WHERE numScars = 7;

Definition - What does Fourth Generation (Programming) Language
(4GL) mean?

A fourth generation (programming) language (4GL) is a grouping of programming languages that attempt to get
closer than 3GLs to human language, form of thinking and conceptualization.
4GLs are designed to reduce the overall time, effort and cost of software development. The main domains and
families of 4GLs are: database queries, report generators, data manipulation, analysis and reporting, screen
painters and generators, GUI creators, mathematical optimization, web development and general purpose
languages. Also known as a 4th generation language, a domain specific language, or a high productivity
language.

Techopedia explains Fourth Generation (Programming) Language
(4GL)
4GLs are more programmer-friendly and enhance programming efficiency with usage of English-like words and
phrases, and when appropriate, the use of icons, graphical interfaces and symbolical representations. The key to
the realization of efficiency with 4GLs lies in an appropriate match between the tool and the application
domain. Additionally, 4GLs have widened the population of professionals able to engage in software
development.
Many 4GLs are associated with databases and data processing, allowing the efficient development of businessoriented systems with languages that closely match the way domain experts formulate business rules and
processing sequences. Many of such data-oriented 4GLs are based on the Structured Query Language (SQL),
invented by IBM and subsequently adopted by ANSI and ISO as the standard language for managing structured
data.
Most 4GLs contain the ability to add 3GL-level code to introduce specific system logic into the 4GL program.
The most ambitious 4GLs, also denoted as Fourth Generation Environments, attempt to produce entire systems
from a design made in CASE tools and the additional specification of data structures, screens, reports and some
specific logic.

5th gen – A fifth generation programming language (abbreviated as 5GL) is a programming language based
on solving problems using constraints given to the program, rather than using an algorithm written by a programmer.
Most constraint-based and logic programming languages and some declarative languages are fifth-generation
languages.
While fourth-generation programming languages are designed to build specific programs, fifth-generation languages
are designed to make the computer solve a given problem without the programmer. This way, the programmer only
needs to worry about what problems need to be solved and what conditions need to be met, without worrying about
how to implement a routine or algorithm to solve them. Fifth-generation languages are used mainly in artificial
intelligence research. Prolog,OPS5, and Mercury are examples of fifth-generation languages.
These types of languages were also built upon Lisp, many originating on the Lisp machine, such as ICAD. Then,
there are many frame languages, such as KL-ONE.
In the 1980s, fifth-generation languages were considered to be the way of the future, and some predicted that they
would replace all other languages for system development, with the exception of low-level languages. [citation needed] Most
notably, from 1982 to 1993 Japan[1][2] put much research and money into their fifth generation computer systems
project, hoping to design a massive computer network of machines using these tools.

However, as larger programs were built, the flaws of the approach became more apparent. It turns out that, given a
set of constraints defining a particular problem, deriving an efficient algorithm to solve it is a very difficult problem in
itself. This crucial step cannot yet be automated and still requires the insight of a human programmer.
PROLOG (acronym for PROgramming LOGic) is an example of a Logical Programming Language. It uses a
form of mathematical logic (predicate calculus) to solve queries on a programmer-given database of facts
and rules.



First Generation Language -- Assembly Language -- Coding in this language was
done in Binary codes 0 & 1.



Second Generation Language -- Object Oriented Programing. Coding is done using
the C, C++



Third Generation Language -- Event Driven Programing. Coding is done using the
FORTRAN, PASCAL, COBOL, C, C++, Java, C#, VC++, VB etc. JavaScript



Advanced Third Generation Language -- Python, Ruby, Perl.



Fourth Generation Language -- ABAP



Fifth Generation Language -- Prolog, OPS5, Mercury

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close