Upload
neeraj2811
View
34
Download
0
Embed Size (px)
Citation preview
SAP AG TAW10 0-1
SAP AG 2003
TAW10 Introduction to the ABAP Workbench (1/2)
SAP AG
TAW10 1/2 TAW10 1/2 ABAP Workbench FundamentalsABAP Workbench Fundamentals
n R/3 System n Release 4.6D or above n 2003/Q2 n Material number 5006 0990
SAP AG TAW10 0-2
SAP AG 2003
Copyright 2003 SAP AG. All rights reserved.
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice.
All rights reserved.
Copyright
Comments on trademarks: n Some software products marketed by SAP AG and its distributors contain proprietary software
components of other software vendors. n Microsoft, WINDOWS, NT, EXCEL, Word, PowerPoint and SQL Server are registered
trademarks of Microsoft Corporation. n IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390,
AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, Informix and Informix Dynamic ServerTM are trademarks of IBM Corporation in USA and/or other countries.
n ORACLE is a registered trademark of ORACLE Corporation. n UNIX, X/Open, OSF/1 and Motif are registered trademarks of the Open Group. n Citrix, the Citrix logo, ICA, Program Neighborhood, MetaFrame, WinFrame,
VideoFrame, MultiWin and other Citrix product names referenced herein are trademarks of Citrix Systems, Inc.
n HTML, DHTML, XML, XHTML are trademarks or registered trademarks of W3C, World Wide Web Consortium, Massachusetts Institute of Technology.
n JAVA is a registered trademark of Sun Microsystems, Inc. n JAVASCRIPT is a registered trademark of Sun Microsystems, Inc., used under license for
technology invented and implemented by Netscape. n MarketSet and Enterprise Buyer are jointly owned trademarks of SAP AG and Commerce One. n SAP, R/, mySAP, mySAP.com, xApps, xApp, and other SAP products and services mentioned
herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies.
SAP AG TAW10 0-3
SAP AG 2003
Development Consultant mySAP Technology ABAP Workbench
mySAP Technology- ABAP Workbench Concepts
TAW12 15 days Development consultantcertification mySAP Technology ABAP Workbench
TAW10 10 days
mySAP Technology -ABAP Workbench Fundamentals
SAP AG TAW10 0-4
SAP AG 2003
Course Prerequisites
Required
l Solid EDP basic knowledge
l Good programming experience in a different programming language
SAP AG TAW10 0-5
SAP AG 2003
Target group
??
Target group
Duration
l 10 days
l Development consultants and developers who are responsible for adapting and developing ABAP/ABAP Objects programs
SAP AG TAW10 0-6
SAP AG 2003
At the end of this course, you will be able to:
l Work with the ABAP Workbench tools
l Write your own simple ABAP programs
l Program object-oriented ABAP Objects
Course Goals
SAP AG TAW10 0-7
SAP AG 2003
Complex mySAP.com Technologies
Complex ABAP Workbench -Fundamentals
Complex ABAP Objects
Case Study
Course Content: mySAP Technology ABAP Workbench Fundamentals
Preface
n This SAP Consultant Education training course contains different individual courses (sections), each of which deals with a separate topic
n Each individual course (section) is divided into different units.
SAP AG TAW10 0-8
SAP AG 2003
Complex Programming Database Updates
Complex Solution Manager
Complex Enhancements and Modifications
Case Study
Complex ABAP Dictionary
Complex Techniques of List Processing
Complex Programming User Dialogs
Course Content: mySAP Technology ABAP Workbench Concepts
Preface
n This SAP Consultant Education training course contains different individual courses (sections), each of which deals with a separate topic
n Each individual course (section) is divided into different units.
SAP AG TAW10 1-1
SAP AG 2003
Complex: mySAP.com Technologies
SAP AG TAW10 1-2
SAP AG 2003
Course Content: mySAP.com Technologies
Unit mySAP.com
Unit Navigation
Unit Technical Structure of an SAP System
Unit Cross-System Concepts
SAP AG TAW10 2-1
SAP AG 2003
l System Overview
l Internet Technologies
l Interfaces
l SAP Service Marketplace
Contents:
mySAP.com
SAP AG TAW10 2-2
SAP AG 2003
mySAP.com (1)
System OverviewSystem OverviewSystem Overview
Internet TechnologiesInternet Technologies
InterfacesInterfaces
SAP Service MarketplaceSAP Service Marketplace
SAP AG TAW10 2-3
SAP AG 2003
Possibilities Offered by mySAP.com
Othersoftware
Field staff
R/3:HR
R/3:FI/CO
The Internet, or 'the rest of the world'
BWR/3:SD
APOCRM
Legacysoftware
Onlybrowserrequired
Customer
Your company
New business partner
Laptop orPDA (handheld)
Only a fraction of theintegration possibilities
is shown here...
Othersoftware
Business partnerTM
Marketplace
R/3
R/3
n mySAP.com provides the option of mapping internal business processes with employees and external business processes for partners, customers or suppliers using the Internet.
SAP AG TAW10 2-4
SAP AG 2003
SAP R/3 (Enterprise)
SAP R/3 (Enterprise)
browserbrowser
SAP GUISAP GUI
browserbrowser
SAP GUI for HTML
Classic users
ESS
ESS = Employee Self-Service
Middlewarecomponents(such as SAP ITS)
n SAP R/3 Enterprise provides a wide range of core business functions (as did its precursor, SAP R/3), including Financial Accounting and Human Resources Management.
n SAP R/3 Enterprise, which excellently complements all SAP solutions, can be used as an ERP backend system.
SAP AG TAW10 2-5
SAP AG 2003
mySAP CRM
CRM System ERP Backend
e.g. Internet selling
browserbrowser
SAP GUISAP GUI
Call Center
Mobile Services
LaptopLaptop
Middlewarecomponents
n Many companies now attach growing importance to generating and maintaining customer loyalty. This is why it is necessary to manage customer information efficiently.
n mySAP Customer Relationship Management (mySAP CRM) not only enables you to do this, it also enables you to optimize your customer relationships as a whole and throughout the life cycle from customer acquisition through sales processes and order fulfillment to customer service.
SAP AG TAW10 2-6
SAP AG 2003
mySAP E-Procurement
ERP Backend
SAP GUISAP GUI
Employeeswithin yourcompany EBP System
Catalog
Internet Marketplace
...
...
Not necessarily required
Middleware
n mySAP E-Procurement supports business-to-business procurement of both production materials and indirect materials (pencils, paper, etc.). You can make purchases on e-marketplaces, use electronic bid invitations or search for the best offers on the World Wide Web.
SAP AG TAW10 2-7
SAP AG 2003
mySAP BI
BW System
SEM SystemGUIGUI
Manager
...
Not necessarily required
ERP Backend
ERP Backend
n The mySAP Business Intelligence solution provides you with a variety of options for extracting, evaluating, storing and disseminating the data in your systems so you can make business or strategic decisions.
n mySAP BI components: - SAP Business Information Warehouse (SAP BW) - SAP Strategic Enterprise Management (SAP SEM)
SAP AG TAW10 2-8
SAP AG 2003
mySAP SCM
OtherERP BackendAPO System
BW System
SAP GUISAP GUI
GUI(Excel-basedfor example)
GUI(Excel-basedfor example)
Manager(person responsible)
Manager(planner)
ERP Backend
n mySAP Supply Chain Management (mySAP SCM) gives you the tools you need to manage your entire logistics chain, so you can control all intracompany and intercompany processes, from mapping the logistics chain to sourcing, and from requirements planning to sales.
n The Internet-enabled functions in mySAP Supply Chain Management allow you to control the logistics chain even beyond your company boundaries. This enables you to collaborate with your partners and customers, exchanging important information and reacting swiftly as the need arises.
n One of the central modules of mySAP SCM is the Advanced Planner & Optimizer (APO). APO includes the following components: Supply Chain Cockpit, Demand Planning, Supply Network Planning and Deployment, Production Planning and Detailed Scheduling and Global Available-to-Promise.
n By combining APO with the Business Information Warehouse, SAP customers can optimize performance and costs along the entire logistics chain.
SAP AG TAW10 2-9
SAP AG 2003
mySAP Enterprise Portal
ERP Backend
browserbrowser
browserbrowser
BrowserBrowser
Portal
Other sources of information or systems (such as the Internet)
OtherERP Backend
Employee
browserbrowser
n Possibilities offered by mySAP Enterprise Portal: - Simple, uniform access to different sources of information (single point of entry) - Easy access to different software components from various providers (for example, Baan, PeopleSoft, Oracle, and Siebel, alongside SAP) - Users need to log onto the portal once only to access all systems (Single Sign On) - Role-based access to functions - The portal can be personalized by adjusting it to personal needs - Secure access from anywhere
n mySAP Enterprise Portal can be used as an employee, customer and/or supplier portal, amongst others.
SAP AG TAW10 2-10
SAP AG 2003
mySAP.com (2)
System OverviewSystem Overview
Internet TechnologiesInternet TechnologiesInternet Technologies
InterfacesInterfaces
SAP Service MarketplaceSAP Service Marketplace
SAP AG TAW10 2-11
SAP AG 2003
SAP ITS, SAP Web AS: HTTP Communication
SAP Application Server
previously "SAP Basis")
SAP Web Application Server
HTTP request
HTTP
HTTP
RFCVarious
SAP systems
optional
Web server
SAP ITS
RFC/DIAG
n There are basically two ways of accessing an SAP component in dialog mode from the Internet: - Using the SAP Internet Transaction Server (SAP ITS) - Using the Internet Communication Manager (ICM) of the SAP Web Application Server (SAP Web AS)
SAP AG TAW10 2-12
SAP AG 2003
The SAP Internet Transaction Server
AGate
HTML page
Webbrowser
Webserver WGateHTTP CGI* TCP/IP
DIAG
RFC
HTMLBusiness Templates
Flow files
Common host
SAP ITS
Service files
CSSfiles
* NSAPI and ISAPI are also supported
SAPSystem
n The SAP ITS provides the following options: - Automatic conversion of SAP screens into HTML format - Use of screen-based IACs (Internet Application Components) that have been delivered with the R/3 System for years (the online store, for example) - Use of the SAP GUI for HTML, a 1:1 conversion of SAP screens into HTML
SAP AG TAW10 2-13
SAP AG 2003
The SAP Web Application Server
SAP Web Application Serveras of Rel. 6.10
SAP Application Server,up to (incl.) Rel. 4.6D
ICMMemory
pipes
DispatcherDispatcher
DBDB
Dispatcher
DBDB
WP WP WP WP WP WP
n The SAP Web AS is a further development of the classic SAP Basis technology. A new process has been added to the SAP kernel, the Internet Communication Manager (ICM).
n The ICM enables you to process directly queries that were placed from the Internet/Intranet via a browser.
n The Web browser and ICM communicate using Business Server Pages; these are HTML pages that also contain ABAP coding, for example, so that the HTML page can be filled with data at runtime.
n The SAP GUI for HTML cannot currently be used with the ICM (-> SAP ITS)
SAP AG TAW10 2-14
SAP AG 2003
mySAP.com (3)
System OverviewSystem Overview
Internet TechnologiesInternet Technologies
InterfacesInterfacesInterfaces
SAP Service MarketplaceSAP Service Marketplace
SAP AG TAW10 2-15
SAP AG 2003
Interfaces Technologies Used in SAP Systems
Open Interfaces
Open InterfacesOpen Interfaces
EDIEDI
TCP/IPTCP/IP LU6.2LU6.2
CPI-CCPI-C
RFCRFC
ALEALE
BAPIBAPI
OLEOLE
SMTPSMTP HTTPHTTP
n mySAP.com is an open system. It supports a variety of network communication protocols. Information can be exchanged between component systems and non-SAP systems.
n SAP supports the TCP/IP (Transmission Control Protocol/Internet Protocol) and SNA LU6.2 (System Network Architecture; Logical Unit 6.2) protocols. Communication in mySAP.com takes place using the standard TCP/IP protocol. LU6.2 was developed by IBM and is used to communicate with mainframe-based R/2 Systems.
n R/3 application programming supports CPI-C (Common Programming Interface Communication), RFC (Remote Function Call) and OLE Automation (Object Linking and Embedding) as communication interfaces. Other interfaces are based on this technology, such as communication via BAPIs (Business Application Programming Interfaces), EDI (Electronic Data Interchange) or an ALE (Application Link Enabling) distribution model.
n It is also possible to send and receive mails using SMTP (Simple Mail Transfer Protocol).
SAP AG TAW10 2-16
SAP AG 2003
Business Process Distribution Using ALE
Distributedbusiness processes
n Accountingn Central Controllingn Information systems:
n Inventoryn Purchasingn Sales
n Central purchasingn Reference system for
master data and tax data
n Sales, shipping and billing
n Purchasing of trading goods
n Inventory management
n Local Controlling
n Plant maintenancen Inventory
managementn Internal sales,
shipping and billingn Local purchasingn PP
n ALE is the business-controlled message exchange - Through synchronous and asynchronous communication - Using BAPI interfaces and IDoc data containers - Using consistent data (the applications do not use a central database, but are filled independently by regional databases with their own database) - Across loosely linked SAP applications.
SAP AG TAW10 2-17
SAP AG 2003
RFC Connection Options
RFC interface
ABAP program
SAP system
SAP system
RFC interface
External system
RFC interface
ABAP program External program
(SAP R/2 also possible)
n Remote Function Call (RFC) is a communications interface that is based on CPI-C, but which has more functions and is easer for application programmers to use. You can use R/3 and R/2 Systems as well as external applications as RFC communication partners. See also SAP Notes 13903 and 116051.
n RFC is the protocol for calling special subroutines over the network. These subroutines are labeled function modules. Function modules are comparable with C functions or PASCAL procedures. They have a defined interface via which data, tables and return codes can be exchanged. Function modules are managed in the R/3 System in their own function library, called the Function Builder.
SAP AG TAW10 2-18
SAP AG 2003
Remote Function Call in Detail
Calling system
...CALL FUNCTION XYDESTINATION DESTEXPORTING...IMPORTING...
...
System called
FUNCTION XY....
ENDFUNCTION.
RFC DESTINATIONR/2R/3DEST...
RFC interfaceRFC interfaceRFC interface
n Function modules remote calls across system borders are only different to local remote calls in that a special parameter (Destination) specifies the destination host on which the program is to be executed.
n There are three types of RFC call: - Synchronous RFC call: the calling program stops until the function module has been processed in the destination system and any results have been returned to the caller. Only then does the calling program continue processing. - Asynchronous RFC call: the calling program runs parallel to and independently of function module processing in the destination system. Programmers are responsible for handling result processing. In addition, the destination system must also be available at the time of the RFC call. - Transactional RFC call: several function modules can be grouped into one transaction. They are processed in the destination system within an LUW once only, and in the sequence in which they were called. In the case of an error, the calling system receives a confirmation that you can access using Transaction SM58. In the case of transactional RFC, the destination system does not have to be available at the time of the RFC call. In addition, you can configure the frequency and intervals of individual queries.
SAP AG TAW10 2-19
SAP AG 2003
mySAP.com (4)
System OverviewSystem Overview
Internet TechnologiesInternet Technologies
InterfacesInterfaces
SAP Service MarketplaceSAP Service MarketplaceSAP Service Marketplace
SAP AG TAW10 2-20
SAP AG 2003
service.sap.com the SAP Service Marketplace
Servicerequirements
CurrentOutput /messages?
Notesdatabase
Problemmessages?? ??
SAP SoftwareChangeRegistration
Corrections Training courseinformation
n The SAP Service Marketplace under http://service.sap.com is aimed at SAP customers and partners (unlike http://www.sap.com, which provides information on all SAP solutions and on SAP as a company for everyone).
n At the SAP Service Marketplace you can access various services, special information and additional offers.
n You must be registered as a user to use the SAP Service Marketplace. There is normally a contact person in each company who creates users for employees as required and sets authorizations.
n Access to the SAP Service Marketplace is free of charge (apart from the necessary Internet access).
SAP AG TAW10 2-21
SAP AG 2003
mySAP.com: Unit Summary
You are now able to
l Name some of the advantages that your company gains by using mySAP.com e-business solutions.
l Describe where SAP ITS and SAP Web AS can be used and how they work
l Name various interface technologies used by SAP systems
l Use the SAP Service Marketplace
SAP AG TAW10 3-1
SAP AG 2003
l Logon and Screen Design
l User Guide
l Getting Help
l User Settings
Contents:
Navigation
SAP AG TAW10 3-2
SAP AG 2003
Navigation (1)
Logon and Screen DesignLogon and Screen DesignLogon and Screen Design
User GuideUser Guide
Getting HelpGetting Help
User SettingsUser Settings
SAP AG TAW10 3-3
SAP AG 2003
The SAP Logon Program
SAP Logon 610
LanguageDEV [SPACE]
Sys.No. Messageserver00 twdf0670
SIDDEV SPACE
Group/Server Logon
Properties
Groups...
Server...
New...
Delete
n The SAP GUI program connects the front-end computer with a specific SAP System. Theoretically you can specify the SAP system required at command-line level when calling the SAP GUI program. In practice, you never need to do this. SAP provides another program for starting the SAP GUI: SAP Logon.
n When you call up the SAP Logon, it displays a list of SAP systems whose logon process can be started. This list is derived from a file on the front-end computer: saplogon.ini. This file is normally preconfigured centrally and made available to end users.
SAP AG TAW10 3-4
SAP AG 2003
The Logon Screen for an SAP System
Users System Help
SAP R/3
New password
DEV (1) (100) TWDF0670 OVR
client
User
Password
Language
Please call your user administrator on Tel. 1972 if you have problems logging on
100
DE
|
n SAP systems are client systems . You can use the client concept to control several separate enterprises in one system at the same time. The BW and KW components are exceptions since each uses one client only. Each user session only accesses data on the client that you selected when you logged on.
n A client is a self-contained organizational unit in the system. Each client has its own data environment and, therefore, its own user master and transaction data, assigned user master records and chart of accounts and specific Customizing parameters.
n So that you can log onto the system, you must have a user master record created for you for the corresponding client. For reasons of access protection, you must enter a password when you log onto the system. The system does not display the password that you enter (stars are displayed in place of the password).
n SAP systems are multilingual. You can use the Language field to select the logon language for the current session.
n Multiple logons are recorded as of Release 4.6. This is for reasons of both security and licensing. If the same user logs on more than once, then the system displays a warning message for each subsequent logon.
n You can add your own texts to the logon screen in different ways. For more information, see SAP Note 205487.
SAP AG TAW10 3-5
SAP AG 2003
SAP Easy Access
Office
Information Systemstools
SAP menuFavorites
Other menu
SAP Easy Access
Create role Assign users Documentation
Menu Edit Favorites Extras System Help
DEV (1) (100) TWDF0670 OVR
n The SAP Easy Access screen is the standard way to access the system. You navigate within the system using a clearly arranged tree structure.
n You can attach an image such as your company logo to the right side of the screen. This image can be assigned throughout the system and is valid for all clients. Given that you have authorization to do so, you can find a detailed description of the settings that are required to do this by choosing Extras --> Administration information. Please note that the graphic is stored in the system and transported to the front-end every time SAP Easy Access is called. Although it is transported in compressed form, the graphic should not exceed 20 KB. You can also prevent the graphic from being called by choosing the setting Low Speed Connection in the SAP Logon program (see SAP Note 161053), or by choosing Extras --> Settings in the SAP Easy Access screen. See also "User Settings".
SAP AG TAW10 3-6
SAP AG 2003
Screen Elements
DEV (1) (100) TWDF0670 OVR
Users Edit Goto System Help
Maintaining your user profile
UserLast changed by
ESCH
ESCH 05.07.2001 15 : 46 : 37 Status Saved
Address Defaults Parameters
StartMenu
Logon language
Output ControllerOutputDevice
Output immediatelyDelete after output
Decimal notation
Date format
1.234.567,89
1,234,567.89
1 234 567,89
DD.MM.YYYY
MM/DD/YYYY
MM-DD-YYYY
YYYY.MM.DD
YYYY/MM/DD
YYYY-MM-DD
Personal time zoneCET
CATTTest status
Input fieldsCheckboxes
Radio buttons
Title barStandard toolbar
Menu bar
Application toolbarCommand field
Tab page
Status bar
n Command field: you can start applications directly by entering their transaction code in the command field (this is hidden by default). You can find the transaction code for an application either in the SAP Easy Access menu tree (see "User Settings") or in the application itself under System -> Status.
n Menu bar: the menus shown here depend on which application you are in. These menus may also contain cascading menus.
n Standard toolbar: the icons in the standard toolbar are shown on every R/3 screen. If they are not available in an application, the pushbuttons that you cannot use on that screen are deactivated. If you position the cursor over an icon for a short time, the system displays quick info text with the name or function of the icon. If appropriate, you also see the corresponding function key setting. The application toolbar shows the icons available in the application you are currently in.
n Title bar: the title bar names the function that is available in the application you are currently in. n Checkboxes: checkboxes enable you to select several options from a group of fields at the same
time. n Radio buttons: radio buttons enable you to choose exactly one item from a selection. n Tab: arranges several information screens to improve clarity. n Status bar: the status bar displays information such as warnings and errors about the current system
status.
SAP AG TAW10 3-7
SAP AG 2003
Navigation (2)
Logon and Screen DesignLogon and Screen Design
User GuideUser GuideUser Guide
Getting HelpGetting Help
User SettingsUser Settings
SAP AG TAW10 3-8
SAP AG 2003
Favorites List and User Menu
Other menu Create role Assign users Documentation
Menu Edit Favorites Extras System Help
DEV (1) (100) TWDF0670 OVR
URL - SAP Service MarketplaceFavorites
SAP Easy Access
SM50 - Process OverviewSM04 - User List
Role SAP_BC_BASIS_ADMINSystem: Running OperationSystem Configuration
Performance AnalysisProblem Analysis
OverviewRZ20 - CCMS Monitoring
Details
Role-based menu
Favorites list
n Role: a role describes a number of activities in the system that it makes sense to define. These represent the scope of functions that users typically require at their work station.
n Roles (formerly "activity groups") must be set up using the Profile Generator so that SAP system users can work with user-specific or work station-related menus .
n Roles are also used to assign users with authorization for the activitie s defined in menus. Predefined user roles from all application areas are included in the standard system as of Release 4.6.
n When users are assigned roles, they can choose between the standard SAP menu and their user menus.
n In addition to their roles, end users can also use Favorites to personalize their access to the system. You can create your own Favorites list of the transactions, reports, files and Web addresses that you frequently use.
n You can create edits using the Favorites menu or simply using the mouse to "drag & drop" URLs or links to files to your personal favorites list.
SAP AG TAW10 3-9
SAP AG 2003
Navigation Options
Menu Edit Favorites Extras
SAP Easy Access
Other menu
FavoritesURL - SAP Service Marketplace
SM50 - Process Overview
SM04 - User ListRole SAP_BC_BASIS_ADMIN
System: Running Operation
System ConfigurationPerformance Analysis
Problem AnalysisOverview
RZ20 - CCMS Monitoring
Details
Create session
End session
User profile
Services
Utilities
List
Services for object
Object history
Own spool requests
Own jobs
Short message
Status...
Log off
System
Command field
SAP Easy Access and Favorites list
Menu
n You can call the following types of system functions: Using the mouse by selecting a
- menu entry - Favorites - an SAP Easy Access entry - using the keyboard (ALT + the underlined letter of the menu option required) - by entering a transaction code in the command field:
In SAP systems, each function (not each screen!) is assigned a transaction code. You can call the allocated transaction code from any system screen. For example, you can display the customer master data, enter "/n" and then enter the corresponding transaction code: "/nfd03". You can determine the transaction code by choosing Status in the System menu. Additional input options: - "/n" ends the current transaction. - "/i" deletes the current session - "/osm04" opens a new session and branches to the specified transaction (SM04).
SAP AG TAW10 3-10
SAP AG 2003
The System and Help Menus
Office
Information Systemstools
SAP menuFavorites
Other menu
SAP Easy Access
Create role Assign users Documentation
DEV (1) (100) TWDF0670 OVR
Help
Application help
SAP Library
Glossary
Release Notes
SAP Service Marketplace
Feedback
Settings...
Menu Edit Favorites Extras System
Create session
End session
User profile
Services
Utilities
List
Services for object
Object history
Own spool requests
Own jobs
Short message
Status...
Log off
n You can find the following options amongst others in the System menu option: Create/end session: creates and ends a session. System administrators can use parameter
rdisp/max_alt_modes to set the maximum number of sessions to a number between 2 and 6. User profile: contains user-specific settings. Choose Own data to use parameters IDs that fill
specific fields in the system (such as the company code field) with default values. List: important list functions, such as searching by character string, saving to PC files, printing and
so on. - Status: displays the most important user and system data - Logoff: ends the SAP R/3 session (with a request for confirmation)
n The menu option Help contains the following options, amongst others: - A context-sensitive Application Help - SAP Library call (see next page) - A Glossary
SAP AG TAW10 3-11
SAP AG 2003
Navigation (3)
Logon and Screen DesignLogon and Screen Design
User GuideUser Guide
Getting HelpGetting HelpGetting Help
User SettingsUser Settings
SAP AG TAW10 3-12
SAP AG 2003
F1 Help
Print parameter 2
Indicates whether spool requests are printed immediately.
Select this field to print your spool requests immediately.lassen.
Leave the field blank to retain spool requests in the spool system until they are released. To release these spool requests for printing, you can use System -> Services -> Output controller.
Performance Assistant
Output ControllerOutputDevice
Output immediately
Delete after output
Personal time zoneCET
CATTTest status
F1 help
Technical information
n You can choose the F1 key to display an explanation of fields, menus, functions and messages. n The F1 help also displays technical information on the relevant field. This information includes, for
example, the parameter ID that you need to set user-specific default values for input fields that are also linked to the parameter ID.
SAP AG TAW10 3-13
SAP AG 2003
F4 Help
Afrikaans
Arabic
Bulgarian
Czech
Danish
German
Greek
English
Spanish
Estonian
Finnish
French
Hebrew
Croatian
Hungarian
Indonesian
Language (2)38 Entries found
Restrictions
Langu... Language
AF
AR
BG
CS
DA
DE
EL
ENES
ET
FI
FR
HE
HR
HU
ID
Address Defaults
StartMenu
Logon language
Output Controller
OutputDevice
F4 help
n You can use F4 to display possible input values. You can also call up the F4 help for a field using the button immediately to the right of the selected field.
SAP AG TAW10 3-14
SAP AG 2003
The SAP Library
SAP Library
SAP Web Application Server, Release 6.10, June 2001
Copyright 2001 SAP AG. All rights reserved.
SAP Library
Getting Started
SAP Web Application Server
SAP Knowledge Management
Help on Help
Help on the Web
Copyright
Open All Close All
Previous Next Synchronize
AreaHide Tree
SAP Library Getting Started Release Notes
IMG Glossary Search Help on Help
Local intranet
n SAP Systems provide extensive online help. You can call this help from every screen in the system. You can call up help by choosing the Help menu, or by choosing the appropriate icon (yellow question mark).
n You can also access the SAP Library easily and quickly from the SAP Service Marketplace. You can find the SAP Help Portal under Knowledge and Training. You can display the help in HTML format and also perform a very efficient full text search in the library. If the SAP Library has been installed, you can also call this option within your company.
n You can also access the Help Portal directly at http://help.sap.com.
SAP AG TAW10 3-15
SAP AG 2003
Navigation (4)
Logon and Screen DesignLogon and Screen Design
User GuideUser Guide
Getting HelpGetting Help
User SettingsUser SettingsUser Settings
SAP AG TAW10 3-16
SAP AG 2003
Two of the Many Personalization Options
DEV (1) (100) TWDF0670 OVR
Set start transaction
Settings
Technical details
Display documentation Shift+F6
Ctrl+Shift+F10
Shift+F9
Shift+F7
Extras System Help
Settings
This is used to specify settings
Display favorites at end of list
Do not display menu, only display favorites
Do not display pictureDisplay technical names
OfficeInformation Systemstools
SAP menuFavorites
Other menu
SAP Easy Access
Menu Edit Favorites
Create role Assign users Documentation
Options ...
New Visual Design ...
Clipboard
Generate graphic
Create shortcut ...
Activate GuiXT
Default size
Hardcopy
Quick Cut and Paste
Spelling Check
Sapgui Help
About ...
A range of settings simplifies working with the system
n Choose Extras ->Settings to change the appearance of the initial screen, for example, by turning off the graphics display on the right side of the screen, or by displaying technical names (transaction codes) on the SAP Easy Access screen.
n When you choose Options, you have the option of activating Quick Cut and Paste. Under Options... you have the option of setting the reaction speed of the quick info text that is displayed when you position the cursor over an icon or pushbutton.
n You can set personal standard values by choosing System -> User Profile -> Own Data. You can do this on the tab pages Address, Defaults, and Parameters.
SAP AG TAW10 3-17
SAP AG 2003
Navigation: Unit Summary
You are now able to
l Log on to the system successfully
l Name and use elements of a SAP GUI screen
l Use F1 and F4 help
l Display the information in the online documentation
l Use the various options for personalizing the SAP system
SAP AG TAW10 3-18
Navigation - Exercises
Unit: Navigation
Topic: Basic Functions
At the conclusion of these exercises, you will be able to:
Log on to an SAP system
Identify transaction codes
Access SAP Library information
Use the F1 help to find field information
Use the F4 help to search for possible field values
As a new SAP system user, start to navigate in the system using menu paths and transaction codes, and use the various types of online help.
All menu paths in the exercises refer to the SAP standard menu.
1-1 Logging on the system
Select the corresponding system for this training course. Enter the client, user name, initial password, and the logon language specified by the instructor. When logging on for the first time, a window appears in which you must enter a new password twice. Note the
Client: _ _ _ User: _ _ _ _ _ _ _ _ Password: __________ Language: _ _.
1-2 What is the maximum number of parallel sessions (windows of the SAP system) can you open by choosing System Create session?
Number: __
1-3 What are the functions called that you access using the following SAP standard menu paths and what are the corresponding transaction codes?
1-3-1 Tools Administration Monitor System Monitoring User Overview
Function name: ___________________________________________
Transaction: _________________________________________________
SAP AG TAW10 3-19
1-3-2 Accounting Financial Accounting Accounts Receivable Master records Display
Select Customer 1000 in Company code 1000 to access the following screen.
Function name: ___________________________________________
Transaction: _________________________________________________
1-4 Help
1-4-1 On the SAP Easy Access initial screen, if you choose Application Help ("Help" menu), you branch to which area of the SAP Library?
_________________________________________________________
To answer the question below, you must call the transaction for displaying the customer master record.
1-4-2 Use the F1 help for the Customer field to answer the following question. What do you use the Customer field for? Summarize the business-relevant information here.
______________________________________________________
1-4-3 Use the F1 help for the Company code field. To which business area of the SAP Library does the system branch when you choose the Application Help icon at the top edge of the F1 help window?
______________________________________________________
1-4-4 Which icon at the upper edge of the F1 help window can you use to find the parameter ID for the Company code field? ______________________________________________________
SAP AG TAW10 3-20
1-4-5 Use the F4 help for the Customer field to find the number of customer "Becker ##". To do this, call the F4 help and use the search term "Becker*".
Hint: ## is your group number.
___________________________________________________
SAP AG TAW10 3-21
Unit: Navigation
Topic: User-Specific Settings
At the conclusion of these exercises, you will be able to:
Fill a field with default parameters
Make various user-specific settings
Maintain your favorites list
Define a user-specific start transaction
Start to define various user-specific settings.
Optional exercises are marked with an asterisk (*).
2-1 Define user parameters.
2-1-1 Assign a default value to the Company code field for your user.
Hint: Your instructor will specify the Company code value (such as "1000"). You can find a hint on default values in the notes on the "User Settings" page.
Parameter: ___ ___ ___
Parameter value: ___ ___ ___ ___
2-2 Define user-specific settings by choosing System --> User Profile --> Own Data.
2-2-1 Set your Logon Language to the language that you are using in the training course.
2-2-2 Define the Decimal Notation and the Date Format you require.
SAP AG TAW10 3-22
2-3 Maintain favorites
2-3-1 Create at least one new folder below the favorites folder.
2-3-2 Add two of your favorite transactions to this folder.
2-3-3 Add the Internet address http://www.sap.com below the title SAP Homepage.
2-4* Define a start transaction in the "Extras" menu.
2-4-1 Set a transaction as the start transaction. You must now log off and on again so that the system can update the changes.
Hint: You can also reset the start transaction to the standard value simply by deleting your entry.
SAP AG TAW10 3-23
Solutions
Unit: Navigation
Topic: Basic Functions
1-1 Log on to the system indicated by the instructor and change your password.
1-2 To create and end sessions, choose System Create session (or choose the corresponding icon) and System End session. Depending on the system setting, up to six sessions can be opened simultaneously during one user terminal session.
1-3 You can find the transaction code under System Status. These screens and transaction codes correspond to the menu paths:
1-3-1 SM04 for User List
1-3-2 FD03 for Customer Display: General Data
1-4 Help
1-4-1 The Getting Started unit is displayed with information about using SAP Easy Access.
1-4-2 Suggestion: The Customer field is used within an SAP system to identify a customer uniquely.
1-4-3 FI Accounts Receivable and Accounts Payable
1-4-4 Using the Technical Info icon you can find: Parameter ID: BUK
1-4-5 Customer## (## is your group number)
If you use the F4 help for the Customer field, a dialog box appears in which you can enter various search criteria.
The different tabs on the dialog box contain different search criteria. Use the Search term search criteria and enter the following data:
Criterion Name Value
Search term Becker*
If you perform the search using the Enter key, a list of possible hits is displayed, from which you can select the corresponding value.
SAP AG TAW10 3-24
Unit: Navigation
Topic: User-Specific Settings
2-1 Define user parameters
2-1-1 To define default values for a field, you need the parameter ID of the field concerned. To find this, you must first select a transaction that contains this field. Position the cursor on the corresponding field (just click on it with the mouse).
Choose F1 Technical Information Parameter ID to display the information you require. For the Company code field, the parameter is BUK.
Now enter this parameter into your user settings (System User Profile Own Data) in the Parameter tab and assign it the value that will be valid for the object in future. Then save your data.
2-2 Define user-specific settings
2-2-1 To set the logon language, go to the user profile (System User Profile Own Data) and then choose the Defaults tab. Enter the logon language you require in Logon Language.
2-2-2 See 2-2-1
2-3 Maintain favorites
2-3-1 To place favorites in a folder, you must first create a folder (functional areas): Favorites Insert folder with a name of your choice. You can create as many folders as you like. You can move folders using the mouse to drag & drop them.
2-3-2 To create favorites, select specific applications (transactions) in the menu tree of the SAP standard menu that you require as favorites (those applications that you use daily). You can add entries to your favorites list by selecting the application and choosing Favorites Add. You can subsequently move favorites into folders by choosing Favorites Move favorites. You can also move favorites using the mouse to drag & drop them.
2-3-3 You create Internet addresses by choosing Favorites Add Web address or file.
SAP AG TAW10 3-25
2-4 Define a start transaction
2-4-1 Extras Set start transaction
Enter a transaction and then choose Enter. The system message in the status bar displays that this transaction will be the start transaction the next time you log on. Hint: To reset this action, you must choose the menu path again and delete the transaction code you entered. The next time you log on to the system, the initial SAP Easy Access screen will be displayed again.
SAP AG TAW10 4-1
SAP AG 2003
l Data Structure
l System Kernel
Contents:
Technical Structure of an SAP System
SAP AG TAW10 4-2
SAP AG 2003
Technical Structure of an SAP System (1)
Data StructureData StructureData Structure
System KernelSystem Kernel
SAP AG TAW10 4-3
SAP AG 2001
mySAP.com System Data Structure
Client 100
Cross-Client Customizing
Development Classes
MMFI CO HR PPBasis SD ...
Repository Objects(For example: Table Definitions, Programs, Transactions, Function
Modules)
Application Data
(Orders, Invoices,...)
Client-SpecificCustomizing
(Company Codes, Plants, Stores, ...)
CustomerDevelopments
...U
ser
(Aut
horiz
atio
ns,
Mas
ter
Rec
ord
...)
Client-SpecificCustomizing
(Company Codes, Plants, Stores, ...)
Use
r(A
utho
rizat
ions
, M
aste
rRec
ords
...)Application
Data(Orders,
Invoices,...)
Client 200
n mySAP.com Systems contain different types of data. n Some data can only be accessed from one client, such as business application data (documents,
material masters, and so on), and most Customizing settings. Customizing is used to define a customers organizational structures, such as distribution channels, company codes, and so on, and to set customer-specific parameters for SAP transactions.
n The client-specific data is closely related. At input, application data is checked against the Customizing settings in the client. If inconsistencies are found, the input is rejected. This is why application data usually makes sense only in its own Customizing environment.
n In addition to the client-specific Customizing settings, there are other settings that are set once and are active for all clients. These cross-client Customizing settings include printer settings, for example.
n The Repository is also client-independent. It contains all ABAP Dictionary objects (tables, data elements, and domains) as well as all ABAP programs, menus, screens, and so on.
n Because they are cross-client, Repository objects developed in one client are the same in all other clients in the same system.
SAP AG TAW10 4-4
SAP AG 1999
Customizing
ASAP Roadmap
Customizing
. . .
. Customizing
CoCd. Company name
ViewView: : ChangeChange CompanyCompany CodeCode
New entries
Customizing
n In addition to the various data types in the SAP R/3 System, there are also different types of changes and adaptations in the SAP R/3 System, and in other mySAP.com component systems.
n As the SAP R/3 System is standard software, it must be adapted to the individual needs of each company that uses it. This tailoring process is called Customizing, which includes the client-specific and cross-client data shown in the slide. A small amount of Customizing may also be required after an SAP R/3 System upgrade.
n Customizing is not developed and tested in the same client in which it will be in production. This means that several clients are required during an SAP R/3 implementation. Customizing is executed and tested in one client. In a large installation, it may make sense to combine and test Customizing subprojects in another client. Production occurs in its own client.
SAP AG TAW10 4-5
SAP AG 1999
Changes to Repository Objects
Customer DevelopmentExtensionModifications
. . .
PRD
QAS
SAP Namespace Customer Namespace
Repository
DEV
n In contrast to Customizing, the Repository does not necessarily need to be changed or enhanced for a mySAP.com System implementation: Customers can add their own developments to the Repository. In addition, customers can add what are called customer enhancements, which are customer
objects added to existing objects in the SAP standard system. Customers add their enhancements using Customer Exits.
Modifications change SAP objects, such as reports and table definitions. The Repository delivered from SAP is not only enhanced, but changed as well. This is why the modifications may need to be adjusted to a new Repository installed during the next SAP R/3 upgrade. This adjustment may take some time.
n As Repository objects are cross-client, it is not possible to use a development system as a production environment. The danger of creating data inconsistencies would be too great.
n Therefore, if changes are to be made to the Repository, we recommend two, even better, three systems. The third SAP R/3 System can be used for testing and quality assurance.
n All customer developments take place in the customer namespace. This means that all objects created by customers have names within a certain namespace, for example beginning with Y or Z for ABAP programs.
SAP AG TAW10 4-6
SAP AG 2003
Technical Structure of an SAP System (2)
Data StructureData Structure
System KernelSystem KernelSystem Kernel
SAP AG TAW10 4-7
SAP AG 1999
ScreenProcessor
The System Kernel
Operating System and Hardware Platform
ABAPDictionary
Programming Interfaces
Applications
Co
mm
un
icat
ion
Inte
rfac
eC
om
mu
nic
atio
n In
terf
ace
Use
r In
terf
ace
Use
r In
terf
ace
Runtime EnvironmentRuntime Environment
ABAP Interpreter
n This unit introduces the central processes of mySAP.com Basis Technology. This includes an explanation of how a user request is sent to and processed by the application layer, and which process types are involved in processing the request. Data entered by the user is sent through the user interface (the SAP GUI) to the dispatcher, which coordinates further processing. The work processes use the same source code as the dispatcher and whose substructures such as the Screen Interpreter and the ABAP Interpreter are presented here. Another topic is data exchange with the database.
SAP AG TAW10 4-8
SAP AG 1999
Processing User Requests
Presentation
Application
Database
Communication
SAP GUI
DBDBDatabase Processes
Dispatcher
WorkProcess
Buffer
SAP GUI SAP GUI SAP GUI
WorkProcess
WorkProcess
n The dispatcher is the central process of the application server. The dispatcher manages, in association with the operating system, the resources for the applications written in ABAP. The main tasks of the dispatcher include distributing transaction load to the work processes, connecting to the presentation level, and organizing communication.
n User input is received by the SAP presentation program SAPGUI, converted into its own format and then sent to the dispatcher. The processing requests are then saved by the dispatcher in request queues and processed according to a first in-first-out principle.
n The dispatcher distributes the requests one after the other to available work processes. Data is actually processed in the work process, although the user, who creates the request using the SAP GUI, is not always assigned the same work process. There is no fixed assignment of work processes to users.
n Once the data has been processed, the processing result from the work process is sent via the dispatcher back to the SAP GUI. The SAP GUI interprets the received data and generates the output screen for the user with the help of the operating system on the front end computer.
n During initialization of the mySAP.com component system, the dispatcher executes the following actions among others: It reads the system profile parameters, starts work processes, and logs on to the message server (this service will be explained later).
SAP AG TAW10 4-9
SAP AG 1999
SAP GUI Types
SAP GUI for Windows
SAP GUI for Java
SAP GUI for HTML
Windows 32 Bit
Java Application
Browser-Based
n The presentation interface SAPGUI (GUI = Graphical User Interface) implements the platform-specific input and output functions of an SAP business application. The SAP GUI is primarily based on the Windows Style Guide and is available for several platforms providing the same functions for each. If you have learned to use the SAP GUI on one platform, with the exception of a few small platform-specific GUI attributes, you can use the system on another platform exactly the same as before.
n The presentation software implements the graphical user interface using the functions provided by the relevant presentation environment.
n As of SAP R/3 Release 4.6B you have a choice between the classic SAP GUI and a number of alternative access possibilities: SAP GUI for HTML SAP GUI for Java
SAP AG TAW10 4-10
SAP AG 1999
Presentation Layer
Presentation
Application
SAP GUIProcessTerminal
Server
Terminal Client
LAN / WAN Network
SAP GUIProcess
Windows PCJava
Environment
Workstation/PC
Dispatcher
SAP GUI
Windows PC andBrowser for
SAP GUI for HTML
n The data flow between the presentation level and the application level when using the SAP GUI for Windows consists not of prepared images, but of compact, logical information about control elements and user entries (DIAG Protocol). The amount of data that must be transferred for each screen change when using the SAP GUI for Windows is typically several kB. You can also connect application servers over Wide Area Networks (WANs). For more information, see SAP Note 161053.
n An Internet Transaction Server is used for the SAP GUI for HTML to turn the SAP GUI data flow from the dispatcher into HTML, and conversely. In this case, an HTML data flow is exchanged between the WGate of the ITS (see the Communications and Integrations Technology unit) and the Frontend. The primary advantage of the SAP GUI for HTML is the low installation cost for the Frontend; all you need is a browser.
n SAP GUI for Java receives the Standard DIAG Protocol (from the dispatcher) and places this on the Frontend in HTML or, if in use by Java Plug-Ins, in a graphical format, which can, for example, be displayed in a browser. In this case the installation costs for the Frontend are equally minimal. For more information, see SAP Note 146505.
n For information about implementation of the SAP GUI on a Windows Terminal Client, see SAP Note 138869.
SAP AG TAW10 4-11
SAP AG 1999
SAP Basis Database Layer
Native SQL
DB Data
Application Server Database Server
ABAP Interpreter
SELECT *FROM ...
EXEC SQL.SELECT ...END EXEC.
DB Data
Native SQL
OPEN SQL
Data
DBInterface
LocalBuffer
Data
Database
Native SQL
n Relational Database Management Systems (RDBMS) are generally used to manage large sets of data. An RDBMS saves data and relationships between data in the form of two-dimensional tables. These are known for their logical simplicity. The data, tables, and table relationships are defined in the database catalog (the data dictionary) of the database system.
n Within the ABAP programming language, you can use SAP OPEN SQL to access data in the database regardless of your database management system. The mySAP.com database interface converts Open SQL statements from ABAP statements into corresponding database statements. This means that the application programs that are written in ABAP do not depend on the database used. Furthermore, Native SQL commands can be used directly in ABAP.
n When interpreting Open SQL statements, the SAP database interface checks the syntax of these statements and ensures the optimal utilization of the local SAP buffers in the shared memory of the application server. Data that is frequently required by the applications is stored in these buffers so that the system does not have to access the database to read this data. In particular, all technical data, such as ABAP programs, screens, and ABAP Dictionary information, as well as a number of business administration parameters, usually remain unchanged in a running system and are therefore ideally suited to buffering. The same is true of business application data, which is almost exclusively accessed as read-only and can therefore be buffered.
SAP AG TAW10 4-12
SAP AG 1999
mySAP.com Processes
V2
DialogD
SAP Dispatcher
SpoolS
Background12
9
6
3
11 1
7 58 4
210
B
UpdateV1
Lock Administration
E Gateway Server
R/2 R/3
Message Server
Disp.
Disp.
Disp.
Disp.
MSMS
GWGW
n The operating system views the SAP runtime system as a group of parallel, cooperating processes. On each application server these processes include the dispatcher as well as work processes; the number of work processes depends on the available resources. Special work processes may be installed for dialog processing, update, background processing and spooling.
n In addition to these work process types (dialog processing (D), update (V: for the German "Verbuchung"), lock management (E), background processing (B), spool (S), the runtime system provides two additional services for internal and external communication (below are the restrictions on the number of work processes): The message server (MS or M) communicates between the distributed dispatchers within a
mySAP.com System and is therefore the prerequisite for scalability using several parallel-processing application servers. The gateway server (GW or G) allows communication between mySAP.com components such as
SAP R/3 and SAP R/2 and external application systems. There is only one gateway process for each dispatcher process. Dialog: Every dispatcher requires at least two dialog work processes Spool: At least one for each mySAP.com System (more than one allowed for each dispatcher) Update: At least one for each mySAP.com System (more than one allowed for each dispatcher) Background processing: At least two for each mySAP.com System (more than one allowed for
each dispatcher) Enqueue: Only one enqueue work process is needed for each system
SAP AG TAW10 4-13
SAP AG 1999
The Instance Concept
D-WP
Dispatcher
Instance (a) Instance (b)
"Central" Instance (c)
Dispatcher
. . .D-WPD-WP
. . .
. . .MSMS
Dispatcher
D-WP B-WP
V-WP E-WP B-WP S-WP
n An instance is an administrative unit that combines mySAP.com system components providing one or more services. The services offered by an instance are started or stopped together. You use a common instance profile to set parameters for all of the components of an instance.
n A central mySAP.com System consists of a single instance that provides all of the necessary services.
n Each instance has its own SAP buffer areas. n The example illustrates how a background processing server (a) and dialog server (b) are set up.
These instances, which provide specific services, generally run on separate servers, but can also run on the same server, if needed.
n The message server provides the application servers with a central message service for internal communication (for example: trigger update, request and remove locks, or trigger background requests).
n The dispatchers for the individual application servers communicate through the message server that is installed once in each mySAP.com System (it is configured in the system profile files).
n Presentation servers can also log on to an application server through the message server. This means that you can use the message server performance database for automatic load distribution (logon load balancing).
SAP AG TAW10 4-14
SAP AG 1999
The Dialog Work Process
Shared Memory
Request Queues
Frontend: SAP GUI
Dispatcher
Factory CalendarScreensABAP ProgramsTablesDictionary Objects...
Application Buffer
Roll FileUser Context
Roll Area
ScreenProcessor
ABAPProcessor
DatabaseInterface
TaskHandler
Inte
rnal
Mem
ory
Roll InRolloutBuffer Access
Work Process n
...
Work Process 1
LAN / WAN Network
n The following components on the application level are involved in processing a dialog request: The dispatcher as central control process Work process queues (administered by the dispatcher) for incoming requests. One of the diaog work processes Buffers in shared memory and also possibly the roll file
n The task handler coordinates activity within a dialog work process. It activates the screen processor or the the ABAP processor (which control the screen flow logic and process ABAP statements, respectively) and executes the roll-in and roll-out of the user context.
n The memory management system differentiates between main memory areas that are available exclusively to a work process, and memory areas that can be used by all work processes. The memory space used exclusively by a work process stores session-specific data that must be kept longer than the duration of a work step. This data is automatically made available to the process at the start of a dialog step (rolled-in) and saved at the end of the dialog step (rolled-out). This data characterizes users (user context), such as their authorizations, administration information and additional data for the ABAP and dialog processor. It also contains data collected by the system in the preceding dialog steps in the running transaction (see slide Work Process Multiplexing and SAP Transactions). There are also additional memory areas for all processes in the shared memory for the factory calendar, screen, table, program, and other buffers.
SAP AG TAW10 4-15
SAP AG 1999
Long-Running ABAP Programs
D-WP D-WP D-WP D-WP D-WP D-WPD-WPD-WP12
9
6
3
1 1 1
7 58 4
21 012
9
6
3
11 1
7 58 4
21012
9
6
3
1 1 1
7 58 4
21 012
9
6
3
1 1 1
7 58 4
21 012
9
6
3
11 1
7 58 4
21012
9
6
3
11 1
7 58 4
21012
9
6
3
11 1
7 58 4
210
Dialog Work Processes for Dialog Transactions
Two Users Are Blocking Seven Dialog Work Processes withLong-Running Transactions
Dispatcher
n Dialog work processes should not be loaded down with long-running dialog steps, as these work processes would then not be available to other users. The remaining dialog work processes would have to handle many more users, thus considerably increasing response times.
n This is the reason for the parameter rdisp/max_wprun_time (default setting: 300 seconds), which sets the maximum time a dialog step is allowed to remain in a dialog work process. If this time is exceeded by more than double, the dialog step is terminated and the started transaction terminates with an error. This allows the administrator to ensure that users execute long-running actions only in the background work processes, which are designed for these types of long-running actions.
SAP AG TAW10 4-16
SAP AG 1999
12
9
6
3
11 1
7 58 4
210
Job
Background Processing
DBDB
11
44
22
Dialog Server
. . . D-WP
Background Processing Server
. . .
XXX xxxx
XXX xxxx xxxx xxx xxx xx
UUU uuuu uuuu uuu uuu uuUU uuuu uuu u
Scheduling TableScheduling Table
Job1Job1 CC ...... ......
Background Scheduler(every 60 s)
DispatcherDispatcher
D-WP B-WPB-WPB-WP
33
n Background work processes are used for dialog-free execution of programs. They are used, for example, for periodic tasks such as reorganization or the automatic transfer of data from an external system to a mySAP.com component system.
n Background processing is scheduled in the form of jobs. Each job consists of one or more steps (ABAP reports, external programs or other operating system calls) that are processed sequentially. You can also set priorities (from "C" to "A") so that certain jobs are prioritized.
n Job processing is not generally triggered immediately (immediate start). Instead you specify a start date and time when you schedule the job. It may also be necessary to start jobs periodically, for example, system control jobs repeated on a fixed cycle. You can trigger a job start at the operating system level using the SAPEVT program.
n The background scheduler is responsible for automatically triggering the job at the specified time. The background scheduler is an ABAP program that regularly looks in the scheduling table for jobs to be executed and then ensures that they are executed (RDISP/BTCTIME, default 60 s).
SAP AG TAW10 4-17
SAP AG 1999
Printing in mySAP.com Systems
Printer serverLAN/WAN
Spool Server
. . .
Operating SystemSpool
TemSeTemSe
Database/File System
1B ...41 42 43 .... 0D 0A
1B ...41 42 43 .... 0D 0A
OperatingSystemSpool
Triggering of print process,for example from SAP GUI: Printing a List
ABC
XYZ
Dispatcher
ABC
XYZ
SpoolRequest
OutputRequest
S-WPD-WP
n Spooling refers to the buffered transfer of data to output devices such as printers, fax devices and so on. In distributed systems, networked administration is necessary for this output.
n The spool mechanism in mySAP.com Systems can supply output requests to printers and external spoolers both within a local network as well as over WANs. The spool mechanism works with the local spool system on each server.
n Spool requests are generated in dialog mode or during background processing and are then set in the spool database with details about the output device and the print format. The data itself is stored in the TEMporary Sequential(TemSe) object database.
n When data is to be printed, an output request is generated for a spool request. This output request is processed by a spool work process.
n Once the spool work process has formatted the data for output, it returns the output request to the operating system spool system.
n The operating system spooler takes over the queue management and ensures that the required data is passed on to the output device.
SAP AG TAW10 4-18
SAP AG 1999
Lock Administration in mySAP.com Systems
DBDB UU uuuu uuu uXXX xxxx xxxx xxx xxx xxUUU uuuu uuuu uuu uuu uu
Change Access At Most Read Access
D-WP E-WP B-WP D-WP
n The lock mechanisms present in the current rela tional database systems are not generally sufficient to handle business data objects (such as sales orders) that may affect several tables in the database. To coordinate several applications simultaneously accessing the same business object, the mySAP.com System provides its own lock management, controlled by the enqueue work process.
n In order for the system to execute lock requests, you must first define a lock object in the ABAP Dictionary. The lock object contains tables whose entries are to be locked. You can also have additional secondary tables using foreign key relationships (the name of a user-defined lock object must begin with "EY" or "EZ").
n You can specify the lock mode ("S": shared lock or "E": exclusive lock) for a lock object. An exclusive lock (mode "E") can only be set if no other user has set a lock ("E" or "S") on the data record. The same user can request additional "E" or "S" locks within a transaction.
n If a lock object is activated, the system generates an ENQUEUE and a DEQUEUE function module. These function modules have the names ENQUEUE_ and DEQUEUE_, and are used in ABAP coding to lock and unlock data.
SAP AG TAW10 4-19
SAP AG 1999
Requesting a Lock from the Enqueue WP
Call function'ENQUEUE_E...'
Enqueue Server
. . .. . .
Dialog Server
Lock table inmain memory
. . .
MSMS
D-WP
Dispatcher Dispatcher
E-WP
n When a lock is requested, the system checks to determine whether the requested lock conflicts with any entries in the lock table. If there are conflicts, the lock request is rejected. The application program can then inform the user that the requested operation cannot currently be executed.
n The locks (enqueues) are administered by the enqueue work process using the lock table. The lock table is stored in the main memory of the server where the enqueue work process is running. In the example shown above, the dialog work process and the enqueue work processes are not located on the same application server, they communicate through the message server.
n Locks set by an application program are either reset by the application program itself, or using a special update program (second part of the SAP Logical Unit of Work). Locks, which are inherited in this way by an update work process, are also written to a file at operating system level. In transaction SM12, the locks held by the update program are colored blue, while the locks held in the dialog work process are colored black.
SAP AG TAW10 4-20
SAP AG 1999
Work Process Multiplexing and SAP Transactions
DialogWP 0
DialogWP 1
DialogWP 2
PBO100
PAI100
PBO105
PAI110
PAI105
PBO110
PBOPAI
User Chooses:Save / Cancel
Screen105
Screen100
Screen110
PAIPBO PBOPAI
Screen
n Business transactions are processing units with related functions; these transactions execute consistent database changes meaningful for the business. Typical examples are credit and debit postings, which only make sense together, or creating an order and reserving the material concerned.
n Accordingly, an SAP transaction is implemented as a series of consistent, connected dialog steps. A user dialog step is represented by a screen (or a dynpro, which is a dynamic program = mask and flow logic).
n SAP transactions are not necessarily executed within one single dialog work process. In fact, the individual dialog steps of a transaction can be processed by various dialog work processes (work process multiplexing, which only exists for dialog work processes). Using asynchronous update, the dialog part of the transaction and the associated database update can also be run in different work process types or even on different servers.
n From the systems point of view, a dialog step begins with the processing of a piece of data entered by the user (Process after Input (PAI) and the preparation and sending of the next screen template (Process before Output (PBO); after this, the screen that has been filled out by the user is once again accepted, and in turn the input data contained in the received screen is analyzed and processed. System and user dialog steps are processed alternately. The two parts of the dialog step from the systems point of view are called PBO and PAI.
SAP AG TAW10 4-21
SAP AG 2003
Technical Structure of an SAP System: Summary
You are now able to
l Describe the data structure of SAP systems
l Name various types of SAP GUI
l Represent the basic structure of a mySAP.com system
l Explain the relationships between the processes on the different client/server layers in SAP Systems (for example, R/3)
SAP AG TAW10 5-1
SAP AG 2003
l Organizational units and master data
l Transactions and documents
l Workflow
Contents:
Cross-System Concepts
SAP AG TAW10 5-2
SAP AG 2003
Enterprise Structure: Terminology
Company Subsidiary
Factory
Warehouses
Enterprise Client
CompanyCode
Plant
StorageLocations
SalesOrganization
DivisionDepartment Division Business Area
SalesOrganization
SAPSAP
n The structure of an enterprise is mapped to SAP applications by organizational units. Organizational units summarize specific corporate functions.
n Organizational units can belong to a single application (a sales organization can belong to Sales and Distribution, for example) or they be assigned to several applications (a factory can be assigned to Materials Management and Production Planning, for example).
SAP AG TAW10 5-3
SAP AG 2003
Enterprise Structures: Tiers
Germany U.S.A.
Client
CompanyCode
Plant
StorageLocation
SAP
Hamburg 1000 Dresden 1200
Ides Holding
Berlin 1100
000300020001
n The client is the superior element of all organizational units. A client corresponds to a group with several subsidiaries. All company data in an R/3 installation are differentiated at least by client, but usually also by deeper organizational structures.
n Flexible organizational elements in the R/3 System mean you also have the option of mapping complex enterprise structures. Many organizational units are used to represent the legal and organizational structure of an enterprise from different points of view.
n The various enterprise areas are joined by linking the organizational units together and the structure of the total enterprise is represented in the R/3 System.
SAP AG TAW10 5-4
SAP AG 2003
Master Data: Customer Master
Client
CompanyCode
Sales Area
StorageLocation
Customer Master Record
NameAddress
Language...
Sales/ShippingBilling Parameter
Partner
Payment ParametersG/L Account
Dunning.
Financial Accounting Financial Accounting DataData
Sales DataSales Data
General DataGeneral Data
n Master data are data records that remain in the database for a long period of time. Master data include customers, suppliers, materials, accounts and so on.
n Master data are created centrally (for all applications) . n Master data have an organizational aspect. They are assigned to organizational units. A customer
master record can be assigned to the following organizational units: company code, sales organization, distribution channel and division.
n Master data can be used for all modules. For example, customer master data have common data for accounting and sales.
SAP AG TAW10 5-5
SAP AG 2003
Master Data: Material Master
SalesOrganization
DistributionChannel
Client
Plant
StorageLocation
Material Master Record
Delivering PlantControl TypesSales Unit...
Material NumberShort Text,Volume, WeightBasic Unit of Measure...
ValuationForecastPlanning ParametersPurchasing Parameters...
Requirements Planning ParametersInventory ManagementPhysical Inventory...
n The material master is the central source for a company to display material-specific data. It is used by all components of the SAP logistics system.
n The data in the material master can be used by all areas such as purchasing, inventory management, materials planning, invoice verification and so on.
SAP AG TAW10 5-6
SAP AG 2003
Material Master: Database Conversion
MARA
MARC
MAKT MARM MVKE MLAN
MLGN
MARD
MLGT
MEAN MBEW
MAPRMVER
n The individual tables contain the following data: MARA General data MAKT Short texts MARM Conversion factors MVKE Sales data for each sales organization MLAN Sales data for each country MEAN EAN data MBEW Valuation data MARC Material data for each plant MLGN Material data for each LVS warehouse MLGT Material data for each LVS storage type MARD Material data for each storage location MVER Consumption data MAPR Forecast data (indicators)
SAP AG TAW10 5-7
SAP AG 2003
Transaction: Using Master Data andOrganizational Units
Customer: 1000
Item
10
20
Material
HD-1300
P-103
Quantity
1
2Material
Master Record
Sales Document
Customer Master Record
CompanyCode
Division
SalesOrganization
Distribution Channel
n When a customer order is created, the transport agreements, terms of delivery and payment and so on agreed with the business partner must be considered. So that you don't have to enter this information for each activity connected with the business partner, the data that are relevant for the activity are copied from the business partner's material master.
n The information stored in the material master record (price per unit of measure, stock per storage location and so on) are processed in the order entry. This principle applies to processing the data from any master record involved in the activity.
n The relevant organization units must be assigned when a transaction is executed. This ensures that the assignments to the company structure are retained in the document that is created, in addition to the information stored for the customer and the material.
n A document is created for each transaction that is executed in the R/3 System. n The document that is created from a transaction implicitly contains all of the default features for the
master data and organizational units.
SAP AG TAW10 5-8
SAP AG 2003
Message Type
Message type
Printer Telefax E-mail EDIOnline
(screen output)
Immediately(creating orders)
On request(printing activity)
With next selection runor at a specified time
(scheduling)
Invoice Invoice Invoice
Messages
n Whenever you save a query, an order, an outline agreement, a inquiry confirmation, a delivery note and so on, an output format is created from the document concerned. This output format is a message (message type). The message is then placed in the message queue, from where it can be released for printing, output via EDI and so on as required. The message is released either manually or automatically using a message control program.
n You can use the various send media to output individual messages during processing, provided that the corresponding message types and send media were assigned in Customizing. For each document type, you can define when and how the messages are sent.
n The message control can be stored as a default value in the business partner's master record.
SAP AG TAW10 5-9
SAP AG 2003
SAP Business Workflow
Workflow completed
DecisionDecision
DecisionLeave form
created
SupervisorSupervisor
Leave form processed
Dates not approved
Form changed
Form rejected
Dates approved
EmployeeEmployee
Dates approved
n The SAP Business Workflow is a tool that you can use to optimize the flow of business transactions. It can execute consecutive work steps automatically, or coordinate the flow of information.
n Workflows control processes according to a predefined model and are particularly suitable for organizations that are structured and based on the principle of division of labor.
n Workflow brings the "right" work in the "right" sequence to the "right" persons at the "right" time. This can be done using an automated mail or a workflow item.
SAP AG TAW10 5-10
SAP AG 2003
System-Wide Concepts: Unit Summary
You are now able to
l Name the main elements in a business scenario
l Describe the link between the main elements in a business scenario
SAP AG TAW10 6-1
SAP AG 2003
Complex: ABAP Workbench Fundamentals
SAP AG TAW10 6-2
SAP AG 2003
Course Content: ABAP Workbench Fundamentals (1)
Unit ABAP Program Process
Unit Introduction to the ABAP Workbench
Unit Introduction to the ABAP Dictionary
Unit Basic ABAP Language Elements
Unit Data Retrieval
Unit Program-internal Modularization with Subroutines
Unit The ABAP Runtime System
Unit User Dialog List
SAP AG TAW10 6-3
SAP AG 2003
Course Contents: ABAP Workbench Fundamentals (2)
Unit User Dialog Selection Screen
Unit User Dialog Screen
Unit Global Modularization
Unit Calling Programs and Transferring Data
Appendix
SAP AG TAW10 6-4
SAP AG 2001
In this course, you will develop severalprograms designed to assist travel agencies.Some of their typical needs include:
l Determining flight connections on specific datesl Processing bookings for specific flightsl Evaluating additional flight information, such as
l Pricel Capacity
Departure city
Departure airport
Destination airport
Destination city
Main Business Scenario
SAP AG TAW10 6-5
SAP AG 2001
Important Database Tables for the Flight DataModel
SCARRSCARR CARRID:CARRNAME:CURRCODE:
Airline IDAirline nameLocal currency of airline
SPFLISPFLI CARRID:CONNID:COUNTRYFR: CITYFROM:AIRPFROM:COUNTRYTO:CITYTO:AIRPTO:
Airline IDFlight connection IDCountry key for departure cityDeparture cityDeparture airportCountry key for arrival cityDestination cityDestination airport
SFLIGHTSFLIGHT CARRID:CONNID:FLDATE:PRICE:CURRENCY:SEATSMAX:SEATSOCC:
Airline IDFlight connection IDFlight datePriceCurrencyMaximum number of seats on flightCurrent number of occupied seats on flight
You will refer to this information as you do the exercises throughout this course.
SAP AG TAW10 7-1
SAP AG 2003
l System Architecture and ABAP Program
l Example Program with Selection Screen and List
Contents:
ABAP Program Process
SAP AG TAW10 7-2
SAP AG 2001
l Describe the architecture of the R/3 System
l Describe how to execute a simple dialog program using the ABAP runtime system
At the conclusion of this unit, you will be able to:
Program Flow of an ABAP Program: Unit Objectives
SAP AG TAW10 7-3
SAP AG 2003
System Architecture and ABAP Program
System Architecture and ABAP ProgramSystem Architecture and ABAP Program
Example Program with Selection Screen and ListExample Program with Selection Screen and List
SAP AG TAW10 7-4
SAP AG 2001
Client/Server Architecture
PresentationServerLayer
ApplicationServerLayer
Database
Dispatcher
WorkProcess
SAPGUI SAPGUI SAPGUI SAPGUI SAPGUI SAPGUI
WorkProcess
WorkProcess
WorkProcess
Dispatcher
WorkProcess
WorkProcess
WorkProcess
WorkProcess
n The R/3 System has a modular software architecture that follows software-oriented client/server principles.
n The R/3 System allocates the presentation, application logic, and data storage to different computers. This serves as the basis for the scalability of the R/3 System.
n The lowest level is the database level. Here data is managed with a relational database management system (RDBMS). In addition to application data, the database contains the programs and the metadata that the R/3 System requires for self-management.
n ABAP programs (both the applications provided by SAP and the ones you develop yourself) run at the application server level. The ABAP programs read data from the database level, process the data, and possibly store data there.
n The presentation server level contains the user interface through which each user can access the program, enter new data, and display the results of a work process.
n The technical distribution of software is independent of its physical location on the hardware. All levels can be installed vertically (on top of each other on one computer) or each level can be installed on a separate computer. The presentation and application servers can be divided horizontally among any number of computers. The horizontal distribution of database components, however, depends on the type of database installed.
SAP AG TAW10 7-5
SAP AG 2001
Excerpt for an ABAP Program
PresentationServerLayer
ApplicationServerLayer
Database
Work Process
ABAP Program
n This graphic can be simplified for most topics discussed during this course. The interaction between a single user and a single ABAP program will be of primary interest to us during this course.
n The exact processes involved in user dispatching on an application server are secondary to understanding how to write an ABAP program. Therefore, we will work with a simplified graphic that does not explicitly show the dispatcher and the work process. Certain slides will, however, include these details whenever they are relevant to ABAP programming.
n ABAP programs are processed on the application server. The design of user dialogs and database dialogs is, therefore, of particular importance when writing application programs.
SAP AG TAW10 7-6
SAP AG 2001
BlackBlack BoxBox
View for the User
PresentationServerLayer
ApplicationServerLayer
Database
Selection Screen ListScreen
n Most users are only interested in how a business transaction flows and how to enter data into and display data from a transaction. The technical aspects of programming are less interesting. The user does not need to know the precise flow of the ABAP program on the application server. To the average user, the SAP system is like a "black box."
n Technically speaking, there are three different types of screens: dynamic screens or dynpros, selection screens, and lists. Each type of screen provides different services. The developers task is to select for each user dialog exactly those types that are most suitable for the accomplishment of the tasks concerned. For this reason, developers should have precise knowledge of the technical aspects.
SAP AG TAW10 7-7
SAP AG 2001
Interaction Between Server Layers
ProgramStart
ABAP Runtime System
ABAP Program
ABAPProcessingBlock
ABAPProcessingBlock
DatabaseTable
Time
n Once the user performs a user action (selecting Enter, a function key, a menu function or a pushbutton, for example), control is passed from the presentation server to the application server.
n Only certain parts of the ABAP program are processed.
n If a further user dialog is triggered from within the ABAP program, the system transmits the screen and passes control once again to the presentation server.
SAP AG TAW10 7-8
SAP AG 2003
Example Program with Selection Screen and List
System Architecture and ABAP ProgramSystem Architecture and ABAP Program
Example Program with Selection Screen and ListExample Program with Selection Screen and List
SAP AG TAW10 7-9