Thursday, 23 May 2013

APPLICATION SERVER ARCHITECTURE

                  An application server is a set of executables that collectively interpret the ABAP/4 programs and manage the input and output for them.

                  If your ABAP/4 program requests information from the database, the application server will format the request and send it to the database server.

                  All requests that come in from presentation servers are directed first to the dispatcher.




Dispatcher:

  • The dispatcher is the link between the work processes and the users logged onto the application server.

  • The dispatcher writes the task 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.


Work process:

  • An application server contains work processes, which are components that can run an application
  • It handles one request at a time.
  • To perform any processing for a user’s request, a work process needs to address two special memory areas:
                     1.The user context -It is a memory area that contains information about the user. 
                     2. The program roll area- It 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:
    1.  The user’s current settings
    2.  The user’s authorizations
    3.  The names of the programs the user is currently running
  • When a user logs on, a it is allocated for that logon. When they log off, it is freed.


Understanding a 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 program’s execution, such as:
    1. The values of the variables
    2. The dynamic memory allocations
    3. 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.


Types of Work Processes:

  • There are seven types of work processes.
  •  Each handles a specific type of request.
  • The type of work processes and the types of requests that they handle are shown in Table.


WP Type
Request Type

D (Dialog)
·         Dialog requests
·         Deals with requests from an active user to execute dialog steps.
·         Responsible for user interaction in the SAP R/3 interface.
·         Sends user req to db and displays output of req to the user
V (Update)
·         Requests to update data in the database.
·         Responsible for consistency in asynchronous data changes.

B (Background)
·         Background jobs
·         It process programs that can be executed without user interaction ie in background at a specific time.
S (Spool)
·         Print spool requests for printing job.
·         It contains information about printer and the printing format.

E (Enqueue)
·         Logical lock requests.
·         It administers a lock table in the shared memory area.
·         It manages simultaneous database access my multiple application servers.
M (Message)
·         Routes messages between application servers within an R/3 system.
·         Used for Logon purpose and load balancing.
G (Gateway)
·         Funnels messages into and out of the R/3 system.
·         Used for transport of bigger amount of data between application servers as well as external (non SAP) systems that communicates with SAP.


Components of a Work Process:

  •  Each work process is composed of the following:
  1.  A task handler - All requests pass through the task handler, which then funnels the request to the appropriate part of the work process
  2. An ABAP/4 Processor - interprets and executes the ABAP/4 Programs.
  3. A screen interpreter - controls a large part of the user interaction. The R/3 Basis system contains a special language for programming screen flow logic. The screen processor executes the screen flow logic.
  4. A database interface - handles the job of communicating with the database.

Wednesday, 22 May 2013

SAP R/3 Architecture

                SAP R/3 is one of the main product of SAP,where R stands for Real Time and the number 3 relates to three tier application architecture(Data base,Application Server and Client).

                Most of the business in today's world runs on SAP R/3 system.About 80% of the companies implemented this software.SAP R/3 Software has been developed using ABAP/4 as a programming language.

                SAP based the architecture of R/3 on a three-tier client/server model.
        1. Presentation Server
        2. Application Server
        3. Database Server

 

Presentation Server:

  • The presentation server is actually a program named sapgui.exe. It is usually installed on a user’s workstation.

  • This is commonly known as the SAPGUI, or the user 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.

  • The output from these transactions appears as output fields, reports, tables and spread sheets.

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.

  • 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:

      1. Number of processes and their types
      2. Amount of memory each process may use
      3. Length of time a user is inactive before being automatically logged off

  • 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 executable 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.

  • 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.

Configuring the 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.

Monday, 20 May 2013

SAP

What is SAP?

  • SAP (Systems, Applications and Products) is a name of a company as well as the name of software itself.

  • SAP is the ERP (Enterprise Resource Planning) system that aims to integrate all the different modules (SD, MM, CO, HR etc) in the company.

  • The integration results in consistency of data throughout the system and the company as a whole.

What is ERP?

                ERP (Enterprise Resource Planning) is enterprise wide information system which consolidates information from various functions/departments of an organization.


Introduction to SAP the Company:

  • Five former IBM employees founded SAP in 1972 in Germany.

  • World's fourth largest software provider.

  • The vision was to develop standard application software for real-time business processing.

  • The first releases, called R1 and R2, were mainframe-only applications.

  • SAP started with a set of financial applications and then added logistics, manufacturing, and HR.

  • In the 1980s, they moved to a true 3-tiered client-server solution and by the early 1990s, R/3 was released to the market.


Introduction to SAP the Software

  • In 2000, SAP renamed their solution mySAP and released the latest version of SAP, ECC or Enterprise Core Component, and the most recent release is ECC 6.0.

  • SAP's current release strategy is to provide Enhancement Packs with additional functionality instead of releasing new versions of the software.

  • SAP's Enhancement Pack strategy eliminates major upgrades and allows customers to choose which enhancements to apply to their systems.


SAP Modules:

                SAP's solution includes a number of functional modules, which support transactions to execute key business processes, such as:
      1. Financial Accounting (FI)
      2. Financial Supply Chain Management (FSCM)
      3. Controlling (CO)
      4. Materials Management (MM)
      5. Sales and Distribution (SD)
      6. Logistics Execution (LE)
      7. Production Planning (PP)
      8. Quality Management (QM)
      9. Plant Maintenance (PM)
      10. Project System (PS)
      11. Human Resources (HR)