+ All Categories
Home > Documents > Print 00

Print 00

Date post: 01-Mar-2018
Category:
Upload: permata
View: 214 times
Download: 0 times
Share this document with a friend
34
7/25/2019 Print 00 http://slidepdf.com/reader/full/print-00 1/34  © SAP AG TABC40 4.0A ABAP Workbench 0-1  SAP AG R TABC40 TABC40 Application Development Application Development ABAP ABAP  Workbench Workbench n System R/3 Application Development ABAP Workbench n Release 4.0A n June, 1999 n 50027284
Transcript
Page 1: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 134

copy SAP AG TABC40 40A ABAP Workbench 0-1

983209 SAP AG

R

TABC40TABC40

Application DevelopmentApplication Development

ABAPABAP WorkbenchWorkbench

n

System R3 Application Development ABAP Workbenchn Release 40A

n June 1999

n 50027284

7252019 Print 00

httpslidepdfcomreaderfullprint-00 234

copy SAP AG TABC40 40A ABAP Workbench 0-2

983209 SAP AG

R

Copyright

Copyright 1998 SAP AG All rights reserved

Neither this training manual nor any part thereof may

be copied or reproduced in any form or by any means

or translated into another language without the prior

consent of SAP AG The information contained in this

document is subject to change and supplement

without prior notice

All rights reserved

Trademarksbull SAP and the SAP logo are registered trademarks of SAP AG

bull MS-DOS and EXCEL are registered trademarks of Microsoft

bull OS2 CICS MVS ACFVTAM VSE AIX OS400 and AS400 are registered trademarks of

IBM

bull X Window System is a registered trademark of MIT University

bull SINIX UTM and BS2000 are registered trademarks of Siemens

bull UNIX is a registered trademark of ATampT

bull HP-UX is a registered trademark of Hewlett Packard

bull DECnet DECstation DECsystem VAXstation and VMS are registered trademarks of DEC

bull Ethernet is a registered trademark of the Xerox Corporation

bull ORACLE SQLnet SQL+ PROC are registered trademarks of the ORACLE Corporation

bull INFORMIX-OnLine and INFORMIX-ESQLC are registered trademarks of the INFORMIX

Corporation

7252019 Print 00

httpslidepdfcomreaderfullprint-00 334

copy SAP AG TABC40 40A ABAP Workbench 0-3

983209 SAP AG

R

Week overview

Week 3 Transaction Programming

Week 4 Interfaces for Data Transfer

Enhancements andModifications

Week 1 Basis Technology - Overview

ABAP Workbench Basics

Week 2 ABAP Dictionary

Techniques of List Processing

7252019 Print 00

httpslidepdfcomreaderfullprint-00 434

copy SAP AG TABC40 40A ABAP Workbench 0-4

983209 SAP AG

R

R3 Integration Model

R3R3ClientServer

ABAP

ClientServer

ABAP

COControlling

COControlling

AAAsset

Accounting

AAAsset

Accounting

PSProjectSystem

PSProjectSystem

WFWorkflow

WFWorkflow

ISIndustry

Solutions

ISIndustry

Solutions

MMMaterials

Mgmt

MMMaterials

Mgmt

HRHuman

Resources

HRHuman

Resources

SDSales amp

Distribution

SDSales amp

Distribution

PPProduction

Planning

PPProduction

Planning

QMQualityMgmt

QMQualityMgmt

FIFinancial

Accounting

FIFinancial

Accounting

PMPlant

Maintenance

PMPlant

Maintenance

bull The SAP R3 System continues to set new standards for universal standard software Based on progressive development techniques the SAP R3 System allows comprehensive integration of

business administration and data processing

bull The SAP R3 System components are characterized by comprehensive business functions with the

most modern technology The integration of the applications ensures that all the functions are

directly available in the system and thus in the enterprise

7252019 Print 00

httpslidepdfcomreaderfullprint-00 534

copy SAP AG TABC40 40A ABAP Workbench 0-5

TABC40 40 Application Development - ABAP Workbench

Preface Unit 0

CopyrightWeek Overview

The R3 Integration Model

B a s i s ndash T e c h n o l o g y ndash Overview

Basis Technology - Overview Unit 1

Content

Basis System and the System Environment

Basis System - Objectives

R3 Integration Diagram

R3 in the Business Framework

Business Framework Components

R3 as an Open System

Client Server - Scalability of the R3 System

Client Server Principles

R3 System Client Server Configurations

Three-Tier Hierarchy

R3 Basis Middleware

R3 Basis System Overview

System Platforms for the R3 SystemBasis System - Summary

Navigation Unit 2

Objectives

Logging On

Clients in the R3 System

R3 Menu Structure

Screen

Selecting Functions

Field Help

R3 Online HelpSystem Functions - Services

System Functions - User Profile

Favorites List

Session Manager

Navigation - Summary

Exercise for Unit NavigationSolutions to Unit Navigation

System Kernel Unit 3

System Kernel - Objectives

R3 Presentation InterfaceRelational Database Management Systems

R3 Database Interface

7252019 Print 00

httpslidepdfcomreaderfullprint-00 634

copy SAP AG TABC40 40A ABAP Workbench 0-6

Processing User Requests

Dialog Work Processes

R3 Application Services

SAP Transactions and Screens

LUW (Logical Unit of Work)

Requesting a Lock SAP Lock Objects

Writing Log Records

Updating Log Records

Removing Locks

Background Processing

Workload Balancing

R3 Printer Services

R3 Instance

System Kernel - Summary

Exercise for Unit System Kernel Solutions to Unit System Kernel

Administration and Remote Services Unit 4

Administration - Objectives

Security Aspects in the R3 System

The Authorization Concept

The Profile Generator

System Administration

System Administration Terminations

R3 Computing Center Management System

Workload Alert Monitor

R3 Service amp Support Virtual Infrastructure

SAP Remote ServicesR3 Online Service System (OSS)

Administration - Summary

Exercise for Unit AdministrationSolutions to Unit Administration

A B A P W o r k b e n c h B a s i c s

ABAP Workbench Basics Unit 5

ContentABAP Workbench Overview

Objectives

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

ABAP

R3 Repository and Repository Objects

ABAP Workbench Tools

Repository Browser

Repository Browser Object ListTransporting Repository Objects

Development Projects in the WBO

7252019 Print 00

httpslidepdfcomreaderfullprint-00 734

copy SAP AG TABC40 40A ABAP Workbench 0-7

Finishing Projects

Creating Development Classes

Assigning Change Requests

Programs with User and Database Dialog

Overview Creating Programs

Program AttributesImportant Editor Functions

Global Role of the ABAP Dictionary

1 User Dialog Selection Screens

1 User Dialog Selection Screen II

2 User Dialog Screens

Creating Screens

Database Dialog Open SQL

3 User Dialog Messages

4 User Dialog Lists

General ABAP Syntax

General ABAP Syntax and Chained Statements

Comments

ABAP Program Operations

Summary

Exercises for Unit ABAP Workbench Solutions for Unit ABAP Workbench

ABAP Dictionary Contents Unit 6

ABAP Dictionary Objectives

Data Modeling

Flight Data Model for ABAP Training Courses

Data Model

Realization in the ABAP DictionaryIntegration into ABAP Workbench (Active)

Basic Dictionary Objects

Dual Level Domain Concept

Transparent Tables

Creating Transparent Tables

Structures

Creating Structures

ABAP Dictionary Views

Advanced Techniques Search Help

ABAP Dictionary Summary

Exercises for Unit ABAP Dictionary Solutions for Unit ABAP Dictionary

ABAP Open SQL - Contents Unit 7

ABAP Open SQL Unit Objectives

The R3 ClientServer Architecture

The Database Interface

Open SQL Statements Overview

SELECT Statement Overview

Using the SELECT Statement for a Single Line

Using the SELECT Statement for Several Lines

Using the SELECT Statement for an Internal TableWHERE Clauses

ABAP Open SQL Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 834

copy SAP AG TABC40 40A ABAP Workbench 0-8

Exercises for Unit ABAP Open SQL Solutions for Unit ABAP Open SQL

ABAP Data and Statements Contents Unit 8

Objectives

The R3 ClientServer ArchitectureThe ABAP Type Concept

Defining Data Objects Overview

Data Types

Predefined Data Types

Elementary Data Objects

Structures

Internal Tables

Referring to ABAP Dictionary Objects

Type Groups in the ABAP Dictionary

PARAMETERS and TABLES

Literals and Constants

Text Symbols

Summary of Declarative Statements

Initializing Data Objects

Assigning Values

Assigning Values Field for Field

Type Conversion

Conversion Rules for Elementary Types

Conversion Rules for Structure Types

Calculating Values

Sub-fields

Calculating Dates

Control Statements OverviewLogical Expressions

Case Distinctions

DO and WHILE Loops

CHECK and EXIT

Summary

Summary (2)

Exercises for Unit ABAP Data and Statements Solutions for Unit ABAP Data and Statements

Test Tools Contents Unit 9

Test Tools Unit ObjectivesTest Tools

Debugging

Important Debugging Functions I

Important Debugging Functions II

Debugger Overview

Breakpoints

Advanced Techniques Runtime Analysis

Advanced Techniques SQL Trace

Advanced Techniques Computer Aided Test Tool

Summary

Internal Tables Contents Unit 10

Internal Tables Objectives

7252019 Print 00

httpslidepdfcomreaderfullprint-00 934

copy SAP AG TABC40 40A ABAP Workbench 0-9

The R3 ClientServer Architecture

Internal Tables

Dynamic Table Expansion

Table Attributes Line Type

Keys

Data Access QuantitiesData Access Types

Table Types

Internal Table Work Areas

Defining Internal Tables

Filling Internal Tables

Array Fetch

Sorting an Internal Table

Loop Processing in Internal Tables

Accessing Individual Internal Table Entries

Changing an Internal Table with the Index

Changing an Internal Table with Keys

Deleting an Internal Table

Internal Tables withwithout Header Lines

Control Level Processing

Internal Tables Summary 1

Internal Tables Summary 2

Exercises for Unit Internal Tables Solutions for Unit Internal Tables

Modularization and Program Structure Unit 11

Objectives

Modularization and Program Structure

Structure of an ABAP ProgramStructure of Earlier Programs from the Course

Processing Block Types

Modularization and Program Structure

Event Blocks

Events in Executable Programs (Type 1)

Syntax Event Blocks

Modularization and Program Structure

Subroutines

Defining Subroutines

Defining the Interface

Data VisibilityCalling Subroutines

Calling Subroutines Syntax

Interface Parameters Structures

Interface Parameters Internal Tables

Modularization and Program Structure

Function Modules as Processing Blocks

Calling Function Modules

Creating a Function Group

Creating a Function Module

Elements of a Function Module

Interface Import ParametersException Handling

Function Module Source Code

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 2: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 234

copy SAP AG TABC40 40A ABAP Workbench 0-2

983209 SAP AG

R

Copyright

Copyright 1998 SAP AG All rights reserved

Neither this training manual nor any part thereof may

be copied or reproduced in any form or by any means

or translated into another language without the prior

consent of SAP AG The information contained in this

document is subject to change and supplement

without prior notice

All rights reserved

Trademarksbull SAP and the SAP logo are registered trademarks of SAP AG

bull MS-DOS and EXCEL are registered trademarks of Microsoft

bull OS2 CICS MVS ACFVTAM VSE AIX OS400 and AS400 are registered trademarks of

IBM

bull X Window System is a registered trademark of MIT University

bull SINIX UTM and BS2000 are registered trademarks of Siemens

bull UNIX is a registered trademark of ATampT

bull HP-UX is a registered trademark of Hewlett Packard

bull DECnet DECstation DECsystem VAXstation and VMS are registered trademarks of DEC

bull Ethernet is a registered trademark of the Xerox Corporation

bull ORACLE SQLnet SQL+ PROC are registered trademarks of the ORACLE Corporation

bull INFORMIX-OnLine and INFORMIX-ESQLC are registered trademarks of the INFORMIX

Corporation

7252019 Print 00

httpslidepdfcomreaderfullprint-00 334

copy SAP AG TABC40 40A ABAP Workbench 0-3

983209 SAP AG

R

Week overview

Week 3 Transaction Programming

Week 4 Interfaces for Data Transfer

Enhancements andModifications

Week 1 Basis Technology - Overview

ABAP Workbench Basics

Week 2 ABAP Dictionary

Techniques of List Processing

7252019 Print 00

httpslidepdfcomreaderfullprint-00 434

copy SAP AG TABC40 40A ABAP Workbench 0-4

983209 SAP AG

R

R3 Integration Model

R3R3ClientServer

ABAP

ClientServer

ABAP

COControlling

COControlling

AAAsset

Accounting

AAAsset

Accounting

PSProjectSystem

PSProjectSystem

WFWorkflow

WFWorkflow

ISIndustry

Solutions

ISIndustry

Solutions

MMMaterials

Mgmt

MMMaterials

Mgmt

HRHuman

Resources

HRHuman

Resources

SDSales amp

Distribution

SDSales amp

Distribution

PPProduction

Planning

PPProduction

Planning

QMQualityMgmt

QMQualityMgmt

FIFinancial

Accounting

FIFinancial

Accounting

PMPlant

Maintenance

PMPlant

Maintenance

bull The SAP R3 System continues to set new standards for universal standard software Based on progressive development techniques the SAP R3 System allows comprehensive integration of

business administration and data processing

bull The SAP R3 System components are characterized by comprehensive business functions with the

most modern technology The integration of the applications ensures that all the functions are

directly available in the system and thus in the enterprise

7252019 Print 00

httpslidepdfcomreaderfullprint-00 534

copy SAP AG TABC40 40A ABAP Workbench 0-5

TABC40 40 Application Development - ABAP Workbench

Preface Unit 0

CopyrightWeek Overview

The R3 Integration Model

B a s i s ndash T e c h n o l o g y ndash Overview

Basis Technology - Overview Unit 1

Content

Basis System and the System Environment

Basis System - Objectives

R3 Integration Diagram

R3 in the Business Framework

Business Framework Components

R3 as an Open System

Client Server - Scalability of the R3 System

Client Server Principles

R3 System Client Server Configurations

Three-Tier Hierarchy

R3 Basis Middleware

R3 Basis System Overview

System Platforms for the R3 SystemBasis System - Summary

Navigation Unit 2

Objectives

Logging On

Clients in the R3 System

R3 Menu Structure

Screen

Selecting Functions

Field Help

R3 Online HelpSystem Functions - Services

System Functions - User Profile

Favorites List

Session Manager

Navigation - Summary

Exercise for Unit NavigationSolutions to Unit Navigation

System Kernel Unit 3

System Kernel - Objectives

R3 Presentation InterfaceRelational Database Management Systems

R3 Database Interface

7252019 Print 00

httpslidepdfcomreaderfullprint-00 634

copy SAP AG TABC40 40A ABAP Workbench 0-6

Processing User Requests

Dialog Work Processes

R3 Application Services

SAP Transactions and Screens

LUW (Logical Unit of Work)

Requesting a Lock SAP Lock Objects

Writing Log Records

Updating Log Records

Removing Locks

Background Processing

Workload Balancing

R3 Printer Services

R3 Instance

System Kernel - Summary

Exercise for Unit System Kernel Solutions to Unit System Kernel

Administration and Remote Services Unit 4

Administration - Objectives

Security Aspects in the R3 System

The Authorization Concept

The Profile Generator

System Administration

System Administration Terminations

R3 Computing Center Management System

Workload Alert Monitor

R3 Service amp Support Virtual Infrastructure

SAP Remote ServicesR3 Online Service System (OSS)

Administration - Summary

Exercise for Unit AdministrationSolutions to Unit Administration

A B A P W o r k b e n c h B a s i c s

ABAP Workbench Basics Unit 5

ContentABAP Workbench Overview

Objectives

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

ABAP

R3 Repository and Repository Objects

ABAP Workbench Tools

Repository Browser

Repository Browser Object ListTransporting Repository Objects

Development Projects in the WBO

7252019 Print 00

httpslidepdfcomreaderfullprint-00 734

copy SAP AG TABC40 40A ABAP Workbench 0-7

Finishing Projects

Creating Development Classes

Assigning Change Requests

Programs with User and Database Dialog

Overview Creating Programs

Program AttributesImportant Editor Functions

Global Role of the ABAP Dictionary

1 User Dialog Selection Screens

1 User Dialog Selection Screen II

2 User Dialog Screens

Creating Screens

Database Dialog Open SQL

3 User Dialog Messages

4 User Dialog Lists

General ABAP Syntax

General ABAP Syntax and Chained Statements

Comments

ABAP Program Operations

Summary

Exercises for Unit ABAP Workbench Solutions for Unit ABAP Workbench

ABAP Dictionary Contents Unit 6

ABAP Dictionary Objectives

Data Modeling

Flight Data Model for ABAP Training Courses

Data Model

Realization in the ABAP DictionaryIntegration into ABAP Workbench (Active)

Basic Dictionary Objects

Dual Level Domain Concept

Transparent Tables

Creating Transparent Tables

Structures

Creating Structures

ABAP Dictionary Views

Advanced Techniques Search Help

ABAP Dictionary Summary

Exercises for Unit ABAP Dictionary Solutions for Unit ABAP Dictionary

ABAP Open SQL - Contents Unit 7

ABAP Open SQL Unit Objectives

The R3 ClientServer Architecture

The Database Interface

Open SQL Statements Overview

SELECT Statement Overview

Using the SELECT Statement for a Single Line

Using the SELECT Statement for Several Lines

Using the SELECT Statement for an Internal TableWHERE Clauses

ABAP Open SQL Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 834

copy SAP AG TABC40 40A ABAP Workbench 0-8

Exercises for Unit ABAP Open SQL Solutions for Unit ABAP Open SQL

ABAP Data and Statements Contents Unit 8

Objectives

The R3 ClientServer ArchitectureThe ABAP Type Concept

Defining Data Objects Overview

Data Types

Predefined Data Types

Elementary Data Objects

Structures

Internal Tables

Referring to ABAP Dictionary Objects

Type Groups in the ABAP Dictionary

PARAMETERS and TABLES

Literals and Constants

Text Symbols

Summary of Declarative Statements

Initializing Data Objects

Assigning Values

Assigning Values Field for Field

Type Conversion

Conversion Rules for Elementary Types

Conversion Rules for Structure Types

Calculating Values

Sub-fields

Calculating Dates

Control Statements OverviewLogical Expressions

Case Distinctions

DO and WHILE Loops

CHECK and EXIT

Summary

Summary (2)

Exercises for Unit ABAP Data and Statements Solutions for Unit ABAP Data and Statements

Test Tools Contents Unit 9

Test Tools Unit ObjectivesTest Tools

Debugging

Important Debugging Functions I

Important Debugging Functions II

Debugger Overview

Breakpoints

Advanced Techniques Runtime Analysis

Advanced Techniques SQL Trace

Advanced Techniques Computer Aided Test Tool

Summary

Internal Tables Contents Unit 10

Internal Tables Objectives

7252019 Print 00

httpslidepdfcomreaderfullprint-00 934

copy SAP AG TABC40 40A ABAP Workbench 0-9

The R3 ClientServer Architecture

Internal Tables

Dynamic Table Expansion

Table Attributes Line Type

Keys

Data Access QuantitiesData Access Types

Table Types

Internal Table Work Areas

Defining Internal Tables

Filling Internal Tables

Array Fetch

Sorting an Internal Table

Loop Processing in Internal Tables

Accessing Individual Internal Table Entries

Changing an Internal Table with the Index

Changing an Internal Table with Keys

Deleting an Internal Table

Internal Tables withwithout Header Lines

Control Level Processing

Internal Tables Summary 1

Internal Tables Summary 2

Exercises for Unit Internal Tables Solutions for Unit Internal Tables

Modularization and Program Structure Unit 11

Objectives

Modularization and Program Structure

Structure of an ABAP ProgramStructure of Earlier Programs from the Course

Processing Block Types

Modularization and Program Structure

Event Blocks

Events in Executable Programs (Type 1)

Syntax Event Blocks

Modularization and Program Structure

Subroutines

Defining Subroutines

Defining the Interface

Data VisibilityCalling Subroutines

Calling Subroutines Syntax

Interface Parameters Structures

Interface Parameters Internal Tables

Modularization and Program Structure

Function Modules as Processing Blocks

Calling Function Modules

Creating a Function Group

Creating a Function Module

Elements of a Function Module

Interface Import ParametersException Handling

Function Module Source Code

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 3: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 334

copy SAP AG TABC40 40A ABAP Workbench 0-3

983209 SAP AG

R

Week overview

Week 3 Transaction Programming

Week 4 Interfaces for Data Transfer

Enhancements andModifications

Week 1 Basis Technology - Overview

ABAP Workbench Basics

Week 2 ABAP Dictionary

Techniques of List Processing

7252019 Print 00

httpslidepdfcomreaderfullprint-00 434

copy SAP AG TABC40 40A ABAP Workbench 0-4

983209 SAP AG

R

R3 Integration Model

R3R3ClientServer

ABAP

ClientServer

ABAP

COControlling

COControlling

AAAsset

Accounting

AAAsset

Accounting

PSProjectSystem

PSProjectSystem

WFWorkflow

WFWorkflow

ISIndustry

Solutions

ISIndustry

Solutions

MMMaterials

Mgmt

MMMaterials

Mgmt

HRHuman

Resources

HRHuman

Resources

SDSales amp

Distribution

SDSales amp

Distribution

PPProduction

Planning

PPProduction

Planning

QMQualityMgmt

QMQualityMgmt

FIFinancial

Accounting

FIFinancial

Accounting

PMPlant

Maintenance

PMPlant

Maintenance

bull The SAP R3 System continues to set new standards for universal standard software Based on progressive development techniques the SAP R3 System allows comprehensive integration of

business administration and data processing

bull The SAP R3 System components are characterized by comprehensive business functions with the

most modern technology The integration of the applications ensures that all the functions are

directly available in the system and thus in the enterprise

7252019 Print 00

httpslidepdfcomreaderfullprint-00 534

copy SAP AG TABC40 40A ABAP Workbench 0-5

TABC40 40 Application Development - ABAP Workbench

Preface Unit 0

CopyrightWeek Overview

The R3 Integration Model

B a s i s ndash T e c h n o l o g y ndash Overview

Basis Technology - Overview Unit 1

Content

Basis System and the System Environment

Basis System - Objectives

R3 Integration Diagram

R3 in the Business Framework

Business Framework Components

R3 as an Open System

Client Server - Scalability of the R3 System

Client Server Principles

R3 System Client Server Configurations

Three-Tier Hierarchy

R3 Basis Middleware

R3 Basis System Overview

System Platforms for the R3 SystemBasis System - Summary

Navigation Unit 2

Objectives

Logging On

Clients in the R3 System

R3 Menu Structure

Screen

Selecting Functions

Field Help

R3 Online HelpSystem Functions - Services

System Functions - User Profile

Favorites List

Session Manager

Navigation - Summary

Exercise for Unit NavigationSolutions to Unit Navigation

System Kernel Unit 3

System Kernel - Objectives

R3 Presentation InterfaceRelational Database Management Systems

R3 Database Interface

7252019 Print 00

httpslidepdfcomreaderfullprint-00 634

copy SAP AG TABC40 40A ABAP Workbench 0-6

Processing User Requests

Dialog Work Processes

R3 Application Services

SAP Transactions and Screens

LUW (Logical Unit of Work)

Requesting a Lock SAP Lock Objects

Writing Log Records

Updating Log Records

Removing Locks

Background Processing

Workload Balancing

R3 Printer Services

R3 Instance

System Kernel - Summary

Exercise for Unit System Kernel Solutions to Unit System Kernel

Administration and Remote Services Unit 4

Administration - Objectives

Security Aspects in the R3 System

The Authorization Concept

The Profile Generator

System Administration

System Administration Terminations

R3 Computing Center Management System

Workload Alert Monitor

R3 Service amp Support Virtual Infrastructure

SAP Remote ServicesR3 Online Service System (OSS)

Administration - Summary

Exercise for Unit AdministrationSolutions to Unit Administration

A B A P W o r k b e n c h B a s i c s

ABAP Workbench Basics Unit 5

ContentABAP Workbench Overview

Objectives

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

ABAP

R3 Repository and Repository Objects

ABAP Workbench Tools

Repository Browser

Repository Browser Object ListTransporting Repository Objects

Development Projects in the WBO

7252019 Print 00

httpslidepdfcomreaderfullprint-00 734

copy SAP AG TABC40 40A ABAP Workbench 0-7

Finishing Projects

Creating Development Classes

Assigning Change Requests

Programs with User and Database Dialog

Overview Creating Programs

Program AttributesImportant Editor Functions

Global Role of the ABAP Dictionary

1 User Dialog Selection Screens

1 User Dialog Selection Screen II

2 User Dialog Screens

Creating Screens

Database Dialog Open SQL

3 User Dialog Messages

4 User Dialog Lists

General ABAP Syntax

General ABAP Syntax and Chained Statements

Comments

ABAP Program Operations

Summary

Exercises for Unit ABAP Workbench Solutions for Unit ABAP Workbench

ABAP Dictionary Contents Unit 6

ABAP Dictionary Objectives

Data Modeling

Flight Data Model for ABAP Training Courses

Data Model

Realization in the ABAP DictionaryIntegration into ABAP Workbench (Active)

Basic Dictionary Objects

Dual Level Domain Concept

Transparent Tables

Creating Transparent Tables

Structures

Creating Structures

ABAP Dictionary Views

Advanced Techniques Search Help

ABAP Dictionary Summary

Exercises for Unit ABAP Dictionary Solutions for Unit ABAP Dictionary

ABAP Open SQL - Contents Unit 7

ABAP Open SQL Unit Objectives

The R3 ClientServer Architecture

The Database Interface

Open SQL Statements Overview

SELECT Statement Overview

Using the SELECT Statement for a Single Line

Using the SELECT Statement for Several Lines

Using the SELECT Statement for an Internal TableWHERE Clauses

ABAP Open SQL Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 834

copy SAP AG TABC40 40A ABAP Workbench 0-8

Exercises for Unit ABAP Open SQL Solutions for Unit ABAP Open SQL

ABAP Data and Statements Contents Unit 8

Objectives

The R3 ClientServer ArchitectureThe ABAP Type Concept

Defining Data Objects Overview

Data Types

Predefined Data Types

Elementary Data Objects

Structures

Internal Tables

Referring to ABAP Dictionary Objects

Type Groups in the ABAP Dictionary

PARAMETERS and TABLES

Literals and Constants

Text Symbols

Summary of Declarative Statements

Initializing Data Objects

Assigning Values

Assigning Values Field for Field

Type Conversion

Conversion Rules for Elementary Types

Conversion Rules for Structure Types

Calculating Values

Sub-fields

Calculating Dates

Control Statements OverviewLogical Expressions

Case Distinctions

DO and WHILE Loops

CHECK and EXIT

Summary

Summary (2)

Exercises for Unit ABAP Data and Statements Solutions for Unit ABAP Data and Statements

Test Tools Contents Unit 9

Test Tools Unit ObjectivesTest Tools

Debugging

Important Debugging Functions I

Important Debugging Functions II

Debugger Overview

Breakpoints

Advanced Techniques Runtime Analysis

Advanced Techniques SQL Trace

Advanced Techniques Computer Aided Test Tool

Summary

Internal Tables Contents Unit 10

Internal Tables Objectives

7252019 Print 00

httpslidepdfcomreaderfullprint-00 934

copy SAP AG TABC40 40A ABAP Workbench 0-9

The R3 ClientServer Architecture

Internal Tables

Dynamic Table Expansion

Table Attributes Line Type

Keys

Data Access QuantitiesData Access Types

Table Types

Internal Table Work Areas

Defining Internal Tables

Filling Internal Tables

Array Fetch

Sorting an Internal Table

Loop Processing in Internal Tables

Accessing Individual Internal Table Entries

Changing an Internal Table with the Index

Changing an Internal Table with Keys

Deleting an Internal Table

Internal Tables withwithout Header Lines

Control Level Processing

Internal Tables Summary 1

Internal Tables Summary 2

Exercises for Unit Internal Tables Solutions for Unit Internal Tables

Modularization and Program Structure Unit 11

Objectives

Modularization and Program Structure

Structure of an ABAP ProgramStructure of Earlier Programs from the Course

Processing Block Types

Modularization and Program Structure

Event Blocks

Events in Executable Programs (Type 1)

Syntax Event Blocks

Modularization and Program Structure

Subroutines

Defining Subroutines

Defining the Interface

Data VisibilityCalling Subroutines

Calling Subroutines Syntax

Interface Parameters Structures

Interface Parameters Internal Tables

Modularization and Program Structure

Function Modules as Processing Blocks

Calling Function Modules

Creating a Function Group

Creating a Function Module

Elements of a Function Module

Interface Import ParametersException Handling

Function Module Source Code

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 4: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 434

copy SAP AG TABC40 40A ABAP Workbench 0-4

983209 SAP AG

R

R3 Integration Model

R3R3ClientServer

ABAP

ClientServer

ABAP

COControlling

COControlling

AAAsset

Accounting

AAAsset

Accounting

PSProjectSystem

PSProjectSystem

WFWorkflow

WFWorkflow

ISIndustry

Solutions

ISIndustry

Solutions

MMMaterials

Mgmt

MMMaterials

Mgmt

HRHuman

Resources

HRHuman

Resources

SDSales amp

Distribution

SDSales amp

Distribution

PPProduction

Planning

PPProduction

Planning

QMQualityMgmt

QMQualityMgmt

FIFinancial

Accounting

FIFinancial

Accounting

PMPlant

Maintenance

PMPlant

Maintenance

bull The SAP R3 System continues to set new standards for universal standard software Based on progressive development techniques the SAP R3 System allows comprehensive integration of

business administration and data processing

bull The SAP R3 System components are characterized by comprehensive business functions with the

most modern technology The integration of the applications ensures that all the functions are

directly available in the system and thus in the enterprise

7252019 Print 00

httpslidepdfcomreaderfullprint-00 534

copy SAP AG TABC40 40A ABAP Workbench 0-5

TABC40 40 Application Development - ABAP Workbench

Preface Unit 0

CopyrightWeek Overview

The R3 Integration Model

B a s i s ndash T e c h n o l o g y ndash Overview

Basis Technology - Overview Unit 1

Content

Basis System and the System Environment

Basis System - Objectives

R3 Integration Diagram

R3 in the Business Framework

Business Framework Components

R3 as an Open System

Client Server - Scalability of the R3 System

Client Server Principles

R3 System Client Server Configurations

Three-Tier Hierarchy

R3 Basis Middleware

R3 Basis System Overview

System Platforms for the R3 SystemBasis System - Summary

Navigation Unit 2

Objectives

Logging On

Clients in the R3 System

R3 Menu Structure

Screen

Selecting Functions

Field Help

R3 Online HelpSystem Functions - Services

System Functions - User Profile

Favorites List

Session Manager

Navigation - Summary

Exercise for Unit NavigationSolutions to Unit Navigation

System Kernel Unit 3

System Kernel - Objectives

R3 Presentation InterfaceRelational Database Management Systems

R3 Database Interface

7252019 Print 00

httpslidepdfcomreaderfullprint-00 634

copy SAP AG TABC40 40A ABAP Workbench 0-6

Processing User Requests

Dialog Work Processes

R3 Application Services

SAP Transactions and Screens

LUW (Logical Unit of Work)

Requesting a Lock SAP Lock Objects

Writing Log Records

Updating Log Records

Removing Locks

Background Processing

Workload Balancing

R3 Printer Services

R3 Instance

System Kernel - Summary

Exercise for Unit System Kernel Solutions to Unit System Kernel

Administration and Remote Services Unit 4

Administration - Objectives

Security Aspects in the R3 System

The Authorization Concept

The Profile Generator

System Administration

System Administration Terminations

R3 Computing Center Management System

Workload Alert Monitor

R3 Service amp Support Virtual Infrastructure

SAP Remote ServicesR3 Online Service System (OSS)

Administration - Summary

Exercise for Unit AdministrationSolutions to Unit Administration

A B A P W o r k b e n c h B a s i c s

ABAP Workbench Basics Unit 5

ContentABAP Workbench Overview

Objectives

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

ABAP

R3 Repository and Repository Objects

ABAP Workbench Tools

Repository Browser

Repository Browser Object ListTransporting Repository Objects

Development Projects in the WBO

7252019 Print 00

httpslidepdfcomreaderfullprint-00 734

copy SAP AG TABC40 40A ABAP Workbench 0-7

Finishing Projects

Creating Development Classes

Assigning Change Requests

Programs with User and Database Dialog

Overview Creating Programs

Program AttributesImportant Editor Functions

Global Role of the ABAP Dictionary

1 User Dialog Selection Screens

1 User Dialog Selection Screen II

2 User Dialog Screens

Creating Screens

Database Dialog Open SQL

3 User Dialog Messages

4 User Dialog Lists

General ABAP Syntax

General ABAP Syntax and Chained Statements

Comments

ABAP Program Operations

Summary

Exercises for Unit ABAP Workbench Solutions for Unit ABAP Workbench

ABAP Dictionary Contents Unit 6

ABAP Dictionary Objectives

Data Modeling

Flight Data Model for ABAP Training Courses

Data Model

Realization in the ABAP DictionaryIntegration into ABAP Workbench (Active)

Basic Dictionary Objects

Dual Level Domain Concept

Transparent Tables

Creating Transparent Tables

Structures

Creating Structures

ABAP Dictionary Views

Advanced Techniques Search Help

ABAP Dictionary Summary

Exercises for Unit ABAP Dictionary Solutions for Unit ABAP Dictionary

ABAP Open SQL - Contents Unit 7

ABAP Open SQL Unit Objectives

The R3 ClientServer Architecture

The Database Interface

Open SQL Statements Overview

SELECT Statement Overview

Using the SELECT Statement for a Single Line

Using the SELECT Statement for Several Lines

Using the SELECT Statement for an Internal TableWHERE Clauses

ABAP Open SQL Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 834

copy SAP AG TABC40 40A ABAP Workbench 0-8

Exercises for Unit ABAP Open SQL Solutions for Unit ABAP Open SQL

ABAP Data and Statements Contents Unit 8

Objectives

The R3 ClientServer ArchitectureThe ABAP Type Concept

Defining Data Objects Overview

Data Types

Predefined Data Types

Elementary Data Objects

Structures

Internal Tables

Referring to ABAP Dictionary Objects

Type Groups in the ABAP Dictionary

PARAMETERS and TABLES

Literals and Constants

Text Symbols

Summary of Declarative Statements

Initializing Data Objects

Assigning Values

Assigning Values Field for Field

Type Conversion

Conversion Rules for Elementary Types

Conversion Rules for Structure Types

Calculating Values

Sub-fields

Calculating Dates

Control Statements OverviewLogical Expressions

Case Distinctions

DO and WHILE Loops

CHECK and EXIT

Summary

Summary (2)

Exercises for Unit ABAP Data and Statements Solutions for Unit ABAP Data and Statements

Test Tools Contents Unit 9

Test Tools Unit ObjectivesTest Tools

Debugging

Important Debugging Functions I

Important Debugging Functions II

Debugger Overview

Breakpoints

Advanced Techniques Runtime Analysis

Advanced Techniques SQL Trace

Advanced Techniques Computer Aided Test Tool

Summary

Internal Tables Contents Unit 10

Internal Tables Objectives

7252019 Print 00

httpslidepdfcomreaderfullprint-00 934

copy SAP AG TABC40 40A ABAP Workbench 0-9

The R3 ClientServer Architecture

Internal Tables

Dynamic Table Expansion

Table Attributes Line Type

Keys

Data Access QuantitiesData Access Types

Table Types

Internal Table Work Areas

Defining Internal Tables

Filling Internal Tables

Array Fetch

Sorting an Internal Table

Loop Processing in Internal Tables

Accessing Individual Internal Table Entries

Changing an Internal Table with the Index

Changing an Internal Table with Keys

Deleting an Internal Table

Internal Tables withwithout Header Lines

Control Level Processing

Internal Tables Summary 1

Internal Tables Summary 2

Exercises for Unit Internal Tables Solutions for Unit Internal Tables

Modularization and Program Structure Unit 11

Objectives

Modularization and Program Structure

Structure of an ABAP ProgramStructure of Earlier Programs from the Course

Processing Block Types

Modularization and Program Structure

Event Blocks

Events in Executable Programs (Type 1)

Syntax Event Blocks

Modularization and Program Structure

Subroutines

Defining Subroutines

Defining the Interface

Data VisibilityCalling Subroutines

Calling Subroutines Syntax

Interface Parameters Structures

Interface Parameters Internal Tables

Modularization and Program Structure

Function Modules as Processing Blocks

Calling Function Modules

Creating a Function Group

Creating a Function Module

Elements of a Function Module

Interface Import ParametersException Handling

Function Module Source Code

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 5: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 534

copy SAP AG TABC40 40A ABAP Workbench 0-5

TABC40 40 Application Development - ABAP Workbench

Preface Unit 0

CopyrightWeek Overview

The R3 Integration Model

B a s i s ndash T e c h n o l o g y ndash Overview

Basis Technology - Overview Unit 1

Content

Basis System and the System Environment

Basis System - Objectives

R3 Integration Diagram

R3 in the Business Framework

Business Framework Components

R3 as an Open System

Client Server - Scalability of the R3 System

Client Server Principles

R3 System Client Server Configurations

Three-Tier Hierarchy

R3 Basis Middleware

R3 Basis System Overview

System Platforms for the R3 SystemBasis System - Summary

Navigation Unit 2

Objectives

Logging On

Clients in the R3 System

R3 Menu Structure

Screen

Selecting Functions

Field Help

R3 Online HelpSystem Functions - Services

System Functions - User Profile

Favorites List

Session Manager

Navigation - Summary

Exercise for Unit NavigationSolutions to Unit Navigation

System Kernel Unit 3

System Kernel - Objectives

R3 Presentation InterfaceRelational Database Management Systems

R3 Database Interface

7252019 Print 00

httpslidepdfcomreaderfullprint-00 634

copy SAP AG TABC40 40A ABAP Workbench 0-6

Processing User Requests

Dialog Work Processes

R3 Application Services

SAP Transactions and Screens

LUW (Logical Unit of Work)

Requesting a Lock SAP Lock Objects

Writing Log Records

Updating Log Records

Removing Locks

Background Processing

Workload Balancing

R3 Printer Services

R3 Instance

System Kernel - Summary

Exercise for Unit System Kernel Solutions to Unit System Kernel

Administration and Remote Services Unit 4

Administration - Objectives

Security Aspects in the R3 System

The Authorization Concept

The Profile Generator

System Administration

System Administration Terminations

R3 Computing Center Management System

Workload Alert Monitor

R3 Service amp Support Virtual Infrastructure

SAP Remote ServicesR3 Online Service System (OSS)

Administration - Summary

Exercise for Unit AdministrationSolutions to Unit Administration

A B A P W o r k b e n c h B a s i c s

ABAP Workbench Basics Unit 5

ContentABAP Workbench Overview

Objectives

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

ABAP

R3 Repository and Repository Objects

ABAP Workbench Tools

Repository Browser

Repository Browser Object ListTransporting Repository Objects

Development Projects in the WBO

7252019 Print 00

httpslidepdfcomreaderfullprint-00 734

copy SAP AG TABC40 40A ABAP Workbench 0-7

Finishing Projects

Creating Development Classes

Assigning Change Requests

Programs with User and Database Dialog

Overview Creating Programs

Program AttributesImportant Editor Functions

Global Role of the ABAP Dictionary

1 User Dialog Selection Screens

1 User Dialog Selection Screen II

2 User Dialog Screens

Creating Screens

Database Dialog Open SQL

3 User Dialog Messages

4 User Dialog Lists

General ABAP Syntax

General ABAP Syntax and Chained Statements

Comments

ABAP Program Operations

Summary

Exercises for Unit ABAP Workbench Solutions for Unit ABAP Workbench

ABAP Dictionary Contents Unit 6

ABAP Dictionary Objectives

Data Modeling

Flight Data Model for ABAP Training Courses

Data Model

Realization in the ABAP DictionaryIntegration into ABAP Workbench (Active)

Basic Dictionary Objects

Dual Level Domain Concept

Transparent Tables

Creating Transparent Tables

Structures

Creating Structures

ABAP Dictionary Views

Advanced Techniques Search Help

ABAP Dictionary Summary

Exercises for Unit ABAP Dictionary Solutions for Unit ABAP Dictionary

ABAP Open SQL - Contents Unit 7

ABAP Open SQL Unit Objectives

The R3 ClientServer Architecture

The Database Interface

Open SQL Statements Overview

SELECT Statement Overview

Using the SELECT Statement for a Single Line

Using the SELECT Statement for Several Lines

Using the SELECT Statement for an Internal TableWHERE Clauses

ABAP Open SQL Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 834

copy SAP AG TABC40 40A ABAP Workbench 0-8

Exercises for Unit ABAP Open SQL Solutions for Unit ABAP Open SQL

ABAP Data and Statements Contents Unit 8

Objectives

The R3 ClientServer ArchitectureThe ABAP Type Concept

Defining Data Objects Overview

Data Types

Predefined Data Types

Elementary Data Objects

Structures

Internal Tables

Referring to ABAP Dictionary Objects

Type Groups in the ABAP Dictionary

PARAMETERS and TABLES

Literals and Constants

Text Symbols

Summary of Declarative Statements

Initializing Data Objects

Assigning Values

Assigning Values Field for Field

Type Conversion

Conversion Rules for Elementary Types

Conversion Rules for Structure Types

Calculating Values

Sub-fields

Calculating Dates

Control Statements OverviewLogical Expressions

Case Distinctions

DO and WHILE Loops

CHECK and EXIT

Summary

Summary (2)

Exercises for Unit ABAP Data and Statements Solutions for Unit ABAP Data and Statements

Test Tools Contents Unit 9

Test Tools Unit ObjectivesTest Tools

Debugging

Important Debugging Functions I

Important Debugging Functions II

Debugger Overview

Breakpoints

Advanced Techniques Runtime Analysis

Advanced Techniques SQL Trace

Advanced Techniques Computer Aided Test Tool

Summary

Internal Tables Contents Unit 10

Internal Tables Objectives

7252019 Print 00

httpslidepdfcomreaderfullprint-00 934

copy SAP AG TABC40 40A ABAP Workbench 0-9

The R3 ClientServer Architecture

Internal Tables

Dynamic Table Expansion

Table Attributes Line Type

Keys

Data Access QuantitiesData Access Types

Table Types

Internal Table Work Areas

Defining Internal Tables

Filling Internal Tables

Array Fetch

Sorting an Internal Table

Loop Processing in Internal Tables

Accessing Individual Internal Table Entries

Changing an Internal Table with the Index

Changing an Internal Table with Keys

Deleting an Internal Table

Internal Tables withwithout Header Lines

Control Level Processing

Internal Tables Summary 1

Internal Tables Summary 2

Exercises for Unit Internal Tables Solutions for Unit Internal Tables

Modularization and Program Structure Unit 11

Objectives

Modularization and Program Structure

Structure of an ABAP ProgramStructure of Earlier Programs from the Course

Processing Block Types

Modularization and Program Structure

Event Blocks

Events in Executable Programs (Type 1)

Syntax Event Blocks

Modularization and Program Structure

Subroutines

Defining Subroutines

Defining the Interface

Data VisibilityCalling Subroutines

Calling Subroutines Syntax

Interface Parameters Structures

Interface Parameters Internal Tables

Modularization and Program Structure

Function Modules as Processing Blocks

Calling Function Modules

Creating a Function Group

Creating a Function Module

Elements of a Function Module

Interface Import ParametersException Handling

Function Module Source Code

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 6: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 634

copy SAP AG TABC40 40A ABAP Workbench 0-6

Processing User Requests

Dialog Work Processes

R3 Application Services

SAP Transactions and Screens

LUW (Logical Unit of Work)

Requesting a Lock SAP Lock Objects

Writing Log Records

Updating Log Records

Removing Locks

Background Processing

Workload Balancing

R3 Printer Services

R3 Instance

System Kernel - Summary

Exercise for Unit System Kernel Solutions to Unit System Kernel

Administration and Remote Services Unit 4

Administration - Objectives

Security Aspects in the R3 System

The Authorization Concept

The Profile Generator

System Administration

System Administration Terminations

R3 Computing Center Management System

Workload Alert Monitor

R3 Service amp Support Virtual Infrastructure

SAP Remote ServicesR3 Online Service System (OSS)

Administration - Summary

Exercise for Unit AdministrationSolutions to Unit Administration

A B A P W o r k b e n c h B a s i c s

ABAP Workbench Basics Unit 5

ContentABAP Workbench Overview

Objectives

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

R3 ClientServer Architecture

ABAP

R3 Repository and Repository Objects

ABAP Workbench Tools

Repository Browser

Repository Browser Object ListTransporting Repository Objects

Development Projects in the WBO

7252019 Print 00

httpslidepdfcomreaderfullprint-00 734

copy SAP AG TABC40 40A ABAP Workbench 0-7

Finishing Projects

Creating Development Classes

Assigning Change Requests

Programs with User and Database Dialog

Overview Creating Programs

Program AttributesImportant Editor Functions

Global Role of the ABAP Dictionary

1 User Dialog Selection Screens

1 User Dialog Selection Screen II

2 User Dialog Screens

Creating Screens

Database Dialog Open SQL

3 User Dialog Messages

4 User Dialog Lists

General ABAP Syntax

General ABAP Syntax and Chained Statements

Comments

ABAP Program Operations

Summary

Exercises for Unit ABAP Workbench Solutions for Unit ABAP Workbench

ABAP Dictionary Contents Unit 6

ABAP Dictionary Objectives

Data Modeling

Flight Data Model for ABAP Training Courses

Data Model

Realization in the ABAP DictionaryIntegration into ABAP Workbench (Active)

Basic Dictionary Objects

Dual Level Domain Concept

Transparent Tables

Creating Transparent Tables

Structures

Creating Structures

ABAP Dictionary Views

Advanced Techniques Search Help

ABAP Dictionary Summary

Exercises for Unit ABAP Dictionary Solutions for Unit ABAP Dictionary

ABAP Open SQL - Contents Unit 7

ABAP Open SQL Unit Objectives

The R3 ClientServer Architecture

The Database Interface

Open SQL Statements Overview

SELECT Statement Overview

Using the SELECT Statement for a Single Line

Using the SELECT Statement for Several Lines

Using the SELECT Statement for an Internal TableWHERE Clauses

ABAP Open SQL Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 834

copy SAP AG TABC40 40A ABAP Workbench 0-8

Exercises for Unit ABAP Open SQL Solutions for Unit ABAP Open SQL

ABAP Data and Statements Contents Unit 8

Objectives

The R3 ClientServer ArchitectureThe ABAP Type Concept

Defining Data Objects Overview

Data Types

Predefined Data Types

Elementary Data Objects

Structures

Internal Tables

Referring to ABAP Dictionary Objects

Type Groups in the ABAP Dictionary

PARAMETERS and TABLES

Literals and Constants

Text Symbols

Summary of Declarative Statements

Initializing Data Objects

Assigning Values

Assigning Values Field for Field

Type Conversion

Conversion Rules for Elementary Types

Conversion Rules for Structure Types

Calculating Values

Sub-fields

Calculating Dates

Control Statements OverviewLogical Expressions

Case Distinctions

DO and WHILE Loops

CHECK and EXIT

Summary

Summary (2)

Exercises for Unit ABAP Data and Statements Solutions for Unit ABAP Data and Statements

Test Tools Contents Unit 9

Test Tools Unit ObjectivesTest Tools

Debugging

Important Debugging Functions I

Important Debugging Functions II

Debugger Overview

Breakpoints

Advanced Techniques Runtime Analysis

Advanced Techniques SQL Trace

Advanced Techniques Computer Aided Test Tool

Summary

Internal Tables Contents Unit 10

Internal Tables Objectives

7252019 Print 00

httpslidepdfcomreaderfullprint-00 934

copy SAP AG TABC40 40A ABAP Workbench 0-9

The R3 ClientServer Architecture

Internal Tables

Dynamic Table Expansion

Table Attributes Line Type

Keys

Data Access QuantitiesData Access Types

Table Types

Internal Table Work Areas

Defining Internal Tables

Filling Internal Tables

Array Fetch

Sorting an Internal Table

Loop Processing in Internal Tables

Accessing Individual Internal Table Entries

Changing an Internal Table with the Index

Changing an Internal Table with Keys

Deleting an Internal Table

Internal Tables withwithout Header Lines

Control Level Processing

Internal Tables Summary 1

Internal Tables Summary 2

Exercises for Unit Internal Tables Solutions for Unit Internal Tables

Modularization and Program Structure Unit 11

Objectives

Modularization and Program Structure

Structure of an ABAP ProgramStructure of Earlier Programs from the Course

Processing Block Types

Modularization and Program Structure

Event Blocks

Events in Executable Programs (Type 1)

Syntax Event Blocks

Modularization and Program Structure

Subroutines

Defining Subroutines

Defining the Interface

Data VisibilityCalling Subroutines

Calling Subroutines Syntax

Interface Parameters Structures

Interface Parameters Internal Tables

Modularization and Program Structure

Function Modules as Processing Blocks

Calling Function Modules

Creating a Function Group

Creating a Function Module

Elements of a Function Module

Interface Import ParametersException Handling

Function Module Source Code

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 7: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 734

copy SAP AG TABC40 40A ABAP Workbench 0-7

Finishing Projects

Creating Development Classes

Assigning Change Requests

Programs with User and Database Dialog

Overview Creating Programs

Program AttributesImportant Editor Functions

Global Role of the ABAP Dictionary

1 User Dialog Selection Screens

1 User Dialog Selection Screen II

2 User Dialog Screens

Creating Screens

Database Dialog Open SQL

3 User Dialog Messages

4 User Dialog Lists

General ABAP Syntax

General ABAP Syntax and Chained Statements

Comments

ABAP Program Operations

Summary

Exercises for Unit ABAP Workbench Solutions for Unit ABAP Workbench

ABAP Dictionary Contents Unit 6

ABAP Dictionary Objectives

Data Modeling

Flight Data Model for ABAP Training Courses

Data Model

Realization in the ABAP DictionaryIntegration into ABAP Workbench (Active)

Basic Dictionary Objects

Dual Level Domain Concept

Transparent Tables

Creating Transparent Tables

Structures

Creating Structures

ABAP Dictionary Views

Advanced Techniques Search Help

ABAP Dictionary Summary

Exercises for Unit ABAP Dictionary Solutions for Unit ABAP Dictionary

ABAP Open SQL - Contents Unit 7

ABAP Open SQL Unit Objectives

The R3 ClientServer Architecture

The Database Interface

Open SQL Statements Overview

SELECT Statement Overview

Using the SELECT Statement for a Single Line

Using the SELECT Statement for Several Lines

Using the SELECT Statement for an Internal TableWHERE Clauses

ABAP Open SQL Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 834

copy SAP AG TABC40 40A ABAP Workbench 0-8

Exercises for Unit ABAP Open SQL Solutions for Unit ABAP Open SQL

ABAP Data and Statements Contents Unit 8

Objectives

The R3 ClientServer ArchitectureThe ABAP Type Concept

Defining Data Objects Overview

Data Types

Predefined Data Types

Elementary Data Objects

Structures

Internal Tables

Referring to ABAP Dictionary Objects

Type Groups in the ABAP Dictionary

PARAMETERS and TABLES

Literals and Constants

Text Symbols

Summary of Declarative Statements

Initializing Data Objects

Assigning Values

Assigning Values Field for Field

Type Conversion

Conversion Rules for Elementary Types

Conversion Rules for Structure Types

Calculating Values

Sub-fields

Calculating Dates

Control Statements OverviewLogical Expressions

Case Distinctions

DO and WHILE Loops

CHECK and EXIT

Summary

Summary (2)

Exercises for Unit ABAP Data and Statements Solutions for Unit ABAP Data and Statements

Test Tools Contents Unit 9

Test Tools Unit ObjectivesTest Tools

Debugging

Important Debugging Functions I

Important Debugging Functions II

Debugger Overview

Breakpoints

Advanced Techniques Runtime Analysis

Advanced Techniques SQL Trace

Advanced Techniques Computer Aided Test Tool

Summary

Internal Tables Contents Unit 10

Internal Tables Objectives

7252019 Print 00

httpslidepdfcomreaderfullprint-00 934

copy SAP AG TABC40 40A ABAP Workbench 0-9

The R3 ClientServer Architecture

Internal Tables

Dynamic Table Expansion

Table Attributes Line Type

Keys

Data Access QuantitiesData Access Types

Table Types

Internal Table Work Areas

Defining Internal Tables

Filling Internal Tables

Array Fetch

Sorting an Internal Table

Loop Processing in Internal Tables

Accessing Individual Internal Table Entries

Changing an Internal Table with the Index

Changing an Internal Table with Keys

Deleting an Internal Table

Internal Tables withwithout Header Lines

Control Level Processing

Internal Tables Summary 1

Internal Tables Summary 2

Exercises for Unit Internal Tables Solutions for Unit Internal Tables

Modularization and Program Structure Unit 11

Objectives

Modularization and Program Structure

Structure of an ABAP ProgramStructure of Earlier Programs from the Course

Processing Block Types

Modularization and Program Structure

Event Blocks

Events in Executable Programs (Type 1)

Syntax Event Blocks

Modularization and Program Structure

Subroutines

Defining Subroutines

Defining the Interface

Data VisibilityCalling Subroutines

Calling Subroutines Syntax

Interface Parameters Structures

Interface Parameters Internal Tables

Modularization and Program Structure

Function Modules as Processing Blocks

Calling Function Modules

Creating a Function Group

Creating a Function Module

Elements of a Function Module

Interface Import ParametersException Handling

Function Module Source Code

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 8: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 834

copy SAP AG TABC40 40A ABAP Workbench 0-8

Exercises for Unit ABAP Open SQL Solutions for Unit ABAP Open SQL

ABAP Data and Statements Contents Unit 8

Objectives

The R3 ClientServer ArchitectureThe ABAP Type Concept

Defining Data Objects Overview

Data Types

Predefined Data Types

Elementary Data Objects

Structures

Internal Tables

Referring to ABAP Dictionary Objects

Type Groups in the ABAP Dictionary

PARAMETERS and TABLES

Literals and Constants

Text Symbols

Summary of Declarative Statements

Initializing Data Objects

Assigning Values

Assigning Values Field for Field

Type Conversion

Conversion Rules for Elementary Types

Conversion Rules for Structure Types

Calculating Values

Sub-fields

Calculating Dates

Control Statements OverviewLogical Expressions

Case Distinctions

DO and WHILE Loops

CHECK and EXIT

Summary

Summary (2)

Exercises for Unit ABAP Data and Statements Solutions for Unit ABAP Data and Statements

Test Tools Contents Unit 9

Test Tools Unit ObjectivesTest Tools

Debugging

Important Debugging Functions I

Important Debugging Functions II

Debugger Overview

Breakpoints

Advanced Techniques Runtime Analysis

Advanced Techniques SQL Trace

Advanced Techniques Computer Aided Test Tool

Summary

Internal Tables Contents Unit 10

Internal Tables Objectives

7252019 Print 00

httpslidepdfcomreaderfullprint-00 934

copy SAP AG TABC40 40A ABAP Workbench 0-9

The R3 ClientServer Architecture

Internal Tables

Dynamic Table Expansion

Table Attributes Line Type

Keys

Data Access QuantitiesData Access Types

Table Types

Internal Table Work Areas

Defining Internal Tables

Filling Internal Tables

Array Fetch

Sorting an Internal Table

Loop Processing in Internal Tables

Accessing Individual Internal Table Entries

Changing an Internal Table with the Index

Changing an Internal Table with Keys

Deleting an Internal Table

Internal Tables withwithout Header Lines

Control Level Processing

Internal Tables Summary 1

Internal Tables Summary 2

Exercises for Unit Internal Tables Solutions for Unit Internal Tables

Modularization and Program Structure Unit 11

Objectives

Modularization and Program Structure

Structure of an ABAP ProgramStructure of Earlier Programs from the Course

Processing Block Types

Modularization and Program Structure

Event Blocks

Events in Executable Programs (Type 1)

Syntax Event Blocks

Modularization and Program Structure

Subroutines

Defining Subroutines

Defining the Interface

Data VisibilityCalling Subroutines

Calling Subroutines Syntax

Interface Parameters Structures

Interface Parameters Internal Tables

Modularization and Program Structure

Function Modules as Processing Blocks

Calling Function Modules

Creating a Function Group

Creating a Function Module

Elements of a Function Module

Interface Import ParametersException Handling

Function Module Source Code

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 9: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 934

copy SAP AG TABC40 40A ABAP Workbench 0-9

The R3 ClientServer Architecture

Internal Tables

Dynamic Table Expansion

Table Attributes Line Type

Keys

Data Access QuantitiesData Access Types

Table Types

Internal Table Work Areas

Defining Internal Tables

Filling Internal Tables

Array Fetch

Sorting an Internal Table

Loop Processing in Internal Tables

Accessing Individual Internal Table Entries

Changing an Internal Table with the Index

Changing an Internal Table with Keys

Deleting an Internal Table

Internal Tables withwithout Header Lines

Control Level Processing

Internal Tables Summary 1

Internal Tables Summary 2

Exercises for Unit Internal Tables Solutions for Unit Internal Tables

Modularization and Program Structure Unit 11

Objectives

Modularization and Program Structure

Structure of an ABAP ProgramStructure of Earlier Programs from the Course

Processing Block Types

Modularization and Program Structure

Event Blocks

Events in Executable Programs (Type 1)

Syntax Event Blocks

Modularization and Program Structure

Subroutines

Defining Subroutines

Defining the Interface

Data VisibilityCalling Subroutines

Calling Subroutines Syntax

Interface Parameters Structures

Interface Parameters Internal Tables

Modularization and Program Structure

Function Modules as Processing Blocks

Calling Function Modules

Creating a Function Group

Creating a Function Module

Elements of a Function Module

Interface Import ParametersException Handling

Function Module Source Code

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 10: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1034

copy SAP AG TABC40 40A ABAP Workbench 0-10

Documentation and Testing

Calling Function Modules

Catching Exceptions

Central Role of Function Modules

Modularization and Program Structure

Includes Type I ProgramsTOP Includes

Standard Includes for Function Groups

Function Modules Summary

Exercises for Unit Modularization and Structure Solutions for Unit Modularization and Program Structure

Dialogs Contents Unit 12

Dialogs Unit Objectives

Dialogs

The R3 ClientServer Architecture

Overview

User Dialogs

Dialogs - Lists

Lists

List Operations

Page Headers

Multilingual Capability

ColorsIconsSymbols in Lists

Lists in Executable Programs

Details Lists

Example A Simple Details List

Syntax A Simple Details List

Details List ExampleHIDE Areas

Line Selection

Line Selection Syntax

Advanced Techniques Lists as Input Tools and Details Lists

Dialogs - Selection Screens

Selection Screens

The Selection Screen

Entering Selections

Search Help

Variants

Selection TextsRecap PARAMETERS

Using Parameters in the SELECT Statement

SELECT-OPTIONS

Using Select-Options in the SELECT Statement

Standard Selection Screens in Executable Programs

Standard Selection Screen Processing

Additional Input Checks

AT SELECTION-SCREEN

Example User-defined Selection Screens

User-defined Selection Screens

Syntax Defining and Calling Selection ScreensDialogs - User Messages

User Messages Overview

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 11: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1134

copy SAP AG TABC40 40A ABAP Workbench 0-11

Syntax MESSAGE Statements

Dialog Message Types

Dialogs - Screens

Screens Strengths

Using Screens

Screens an ExampleParts of a Screen

Step 1 Creating a Screen

Creating a Screen Screen Attributes

Layout and Field Attributes 1

Layout and Field Attributes 2

Field Attributes The Field List

Check Tables

Step 2 Displaying Data

Screen Interfaces

Screen Processing Logic PBO and PAI

Screen Processing Blocks

PBO and PAI Processing Logic

Data Transport between Screens and Programs

Flow Logic

Step 3 Defining Pushbuttons

Defining Function Codes

Assigning a Field Name to the OK_CODE Field

Program Logic

Static Screen Sequencing

Dynamic Screen Sequencing

Database Updates

Advanced Techniques Screens

Dialogs - InterfacesOverview Interface Objects

Example Program Interface

Basic Interface Elements

Statuses Interface Views

Creating GUI Statuses for Lists

Creating Statuses Key Settings

Creating Statuses Menu Bars

Example Program Interface

Creating GUI Titles for a Screen

Creating GUI Statuses for a Screen

Title and StatusSummary Interfaces

Summary

Exercises for Unit Dialogs Solutions for Unit Dialogs

Authorization Checks Contents Unit 13

Objectives

Basic Authorization Concepts

Authorization Cehcks in Programs

AUTHORITY-CHECK Syntax

SummaryAuthorization Checks Summary

Exercises for Unit Authorization Checks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 12: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1234

copy SAP AG TABC40 40A ABAP Workbench 0-12

Solutions for Unit Authorization Checks

Software Logistics and Software Modifications Contents Unit 14

Software Logistics and Software Modifications Unit Object

Software Logistics and Software Modification

Workbench Organizer and Transport SystemManaging Development Projects in the WBO

Completing a Project

Functions of a Change Request

Local Objects

Originals and Copies

SAP Objects as Copies

Task Attributes

Changing Customer Copies

Changing SAP Copies (Modifications)

Software Logistics and Software Modification

Change Levels

Functional Enhancements

Enhancing User Dialogs

Enhancements Examples

Registering Developers in the SSCR

Software Logistics and Software Modification Summary

Software Logistics and Software Modifications Summary (II)

Exercises for Unit Software Logistics and Modification

Appendix Unit 15

Repository-Infosystem

Objectives

R3 Repository and Repository-ObjectsTypical Information System Requests

The Repository Information System

The SAP Application Hierarchy

Summary

Summary 2

Foreign Data Transfer

External Data Transfer

R3 Communication Interfaces I

R3 Communication Interfaces II

Termination Conditions 2

Advanced Techniques Dynamic Screen SequencingAdvanced Techniques Update

Appendix 1

Appendix 2

A B A P D i c t i o n a r y

ABAP Dictionary Unit 16

Content

IntroductionObjectives

Functions of the ABAP Dictionary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 13: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1334

copy SAP AG TABC40 40A ABAP Workbench 0-13

Linking to the ABAP Workbench (Active)

Access from ABAP Program

Summary

Tables in the ABAP Dictionary Unit 17

Objectives-Tables in the ABAP DictionaryTables and Fields

Basic Objects of the ABAP Dictionary

Two-Level Domain Concept Example

Transparent Tables

Structures

Technical Settings

Data Class

Size Category

Buffering Tables

Logging

Consistency between ABAP Dictionary and DB

Summary - Tables in the ABAP Dictionary

Exercises on Unit Tables in the ABAP Dictionary nSolutions to Unit Tables in the ABAP Dictionary

Performance during Table Access Unit 18

Objectives - Performance during Table Access

Indexes

Primary Index

Secondary Indexes

Data Access using the Buffer

Table Buffering

Full BufferingGeneric Buffering

Single-Record Buffering

Buffer Synchronization 1

Buffer Synchronization 2

Buffer Synchronization 3

Buffer Synchronization 4

Buffer Synchronization 5

Buffer Synchronization 6

Summary - Performance during Table Access

Exercises on Unit Performance during Table Access

Solutions to Unit Performance during Table Access

Relationships between Tables in the ABAP Dictionary Unit 19

Objectives - Relationships between Tables in the ABAP Dict

Definition of a Foreign Key

Foreign Key Fields Check Fields

Inserting a Data Record

Violation of the Foreign Key Check

Foreign Key Definitions in the Check Field

Requirements for the Field Assignment

Domains Value Tables Fixed Values

Check Table not Equal to Value TableField Assignment is not Unique

Semantic Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 14: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1434

copy SAP AG TABC40 40A ABAP Workbench 0-14

Text Tables

Generic and Constant Foreign Keys

INCLUDE

Summary (1)

Summary (2)

Exercises on Unit Relationships between Tables nnSolutions to Unit Relationships between Tables m

R3 Repository Info System as seen by ABAP Dictionary Unit 20

Objectives - R3 Repository Information System

Typical Queries Made of the Information System

Selection Options

Functions

Summary (1) - R3 Repository Information System

Exercises on Unit The R3 Repository Information SystemSolutions to Unit The R3 Repository Information System

Changes to Tables Unit 21

Objectives - Changes to Tables

Active and Revised Versions

Runtime Objects

Handling Dependent Objects

Changing Database Tables

How is the Structure Adjusted

Conversion Process 1

Conversion Process 2

Conversion Process 3

Conversion Process 4

Conversion Process 5What to Do when a Conversion Terminates

Append Structures 1

Append Structures 2

Append Structures 3

Summary Changes to Tables

Exercises on Unit Changes to TablesSolutions to Unit Changes to Tables m

Views Unit 22

Objectives - Views

Why do you Need ViewsStructure of a View - Starting Situation

Structure of a View - Join Condition

Structure of a View - Field Selection (Projection)

Structure of a View - Selection Condition

How are Tables Linked to Views

Structure of the View

Data Selection with Views

Database Views

Buffering Database Views

Includes in Database Views

Maintenance ViewsInner and Outer Joins

Summary - Views

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 15: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1534

copy SAP AG TABC40 40A ABAP Workbench 0-15

Exercises on Unit Views mmSolutions to Unit Views

Search Helps Unit 23

Objectives - Search Helps

R3 Standard Function Input HelpDescription of an Input Help

Interface of a Search Help

Description of the Dialog Behavior

Selection Method of a Serach Help

View as Selection Method

Performance of the Input Help

Input Help from the Data Element

Check Table Help

Attaching a Search Help to a Field

Input Help from Dictionary or Screen

Overview Mechanisms for the Input Help

Alternative Search Paths

Collective Search Helps and Elementary Search Helps

Further Options for Search Helps

Non-Standard Search Help Exit

Migration of Existing Input Helps

Summary - Search Helps

Exercises on Unit Search Helps nSolutions to Unit Search Helps nn

Appendix Unit 24

Important Menu Paths and Transactions

Decision Tree for Buffering TablesAppendix

T e c h n i q u e s o f L i s t P r o c e s s i n g

Techniques of List Processing Unit 25

Contents 12

Contents 22

Introduction

Course GoalsCourse Objectives

Course Overview Diagram

Business Scenario

Demo Programs Templates and Solutions

Overview of Exercises

Finding and Executing Programs Unit 26

Objectives

How to Find Existing Programs

SAP Anwendungshierarchie

The Repository Information SystemReport Trees Organization

Finding Report Trees

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 16: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1634

copy SAP AG TABC40 40A ABAP Workbench 0-16

Summary

Creating Lists with ABAP Query Unit 27

Objectives

Creating Lists with ABAP Query

Programs and ABAP QueryABAP Query Organization

Creating Queries

Creating Lists with ABAP Query

Defining Queries

Choosing a Query Area and a Functional Area

Choosing Fields

Assigning Short Descriptions

Defining Local Fields

Basic Lists

Lists with Control Levels

Statistics

Ranked Lists

Interactive Functions - Single-Line Lists

Interactive Functions - Multiple-Line Lists

Saving Lists

Summary

Creating Lists with ABAP Query

Outputting Data to Lists Unit 28

Objectives

List Design Options

Generating a List

Setting the List FormatModifying and Suppressing Headers

Open Page Design TOP-OF-PAGE

Setting Fixed Lead Columns

The FORMAT Statement

Outputting Lines

The WRITE Statement General Syntax

The WRITE Statement Icons and Symbols

The WRITE Statement Checkboxes

Additional Statements for Output Design

Multilingual List Elements

System Fields and List GenerationStandard Functions in Lists

Summary Lists

Exercises for Outputting Data to Lists Solutions for Outputting Data to Lists

Selection Screens Unit 29

Objectives

Selection Screen Overivew

Declaration of Fields with PARAMETERS

Selections with SELECT-OPTIONS

Selection Options and Multiple SelectionsSyntax of the SELECT-OPTIONS Statement

Designing the Selection Screen I

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 17: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1734

copy SAP AG TABC40 40A ABAP Workbench 0-17

Designing the Selection Screen II

Initializing the Selection Screen

General Help and Possible Entries Help (F1 and F4)

Input Checks AT SELECTION-SCREEN

CALL SELECTION-SCREEN I

CALL SELECTION-SCREEN IISelektionsbild Varianten I

Selection Screen Variants II

Summary

Exercises for Selection Screens Solutions for Selection Screens

Logical Databases Unit 30

Objectives

Generating Lists

Advantages of a Logical Database

Logical Databases Overview

LDB F1S Nodes

Sample Program for a Logical Database

LDB Sub-Objects Structure

LDB Sub-Objects Selections

Selection Screen for the Logical Database

Logical Database Dynamic Selections

LDB Sub-Objects Database Programs

Interaction Between LDBs and Programs

Events in Logical Databases

Program Flow and Termination Alternatives

Checking Internal Program Selections I

Checking Internal Program Selections IISummary

Exercises for Logical Databases Solutions for Logical Databases

Programming Data Retrieval Unit 31

Objectives

Programming Data Retrieval

Reading Multiple Database Tables

Reading Multiple Database Tables I

Reading Multiple Database Tables IIa

Reading Multiple Database Tables IIbReading Multiple Database Tables III

Reading Multiple Database Tables IV

Summary

Exercises for Programming Data Retrieval Solutions for Programming Data Retrieval

ABAP Query Administration Unit 32

Objectives

ABAP Query Administration

Maintaining User Groups

Authorizations and ABAP QueryABAP Query Administration

Defining Functional Areas

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 18: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1834

copy SAP AG TABC40 40A ABAP Workbench 0-18

Overview Creating Functional Areas

Example Defining a Functional Area

Defining Functional Areas

Allocating Fields

Additional Information

Allocating Additional TablesAllocating Additional Fields

Selection Options

Allocating ABAP Statements

Summary

Exercises for ABAP Query Administration

Data Formatting and Control Level Processing Unit 33

Unit Objectives Control Level Processing

Data Formatting and Control Level Processing

Motivation

Control Level Processing

Data Formatting and Control Level Processing

Creating an Internal Table

Filling an Internal Table

Sorting and Editing an Internal Table

Control Level Processing for Internal Tables

Control Level Processing Schema for Internal Tables

Data Formatting and Control Level Processing

Generating an Extract Steps

Example Generating an Extract

Sorting and Processing an Extract

Example Control Level Processing

Schema for Control Level Processing of ExtractsData Formatting and Control Level Processing

Comparing Internal Tables and Extracts

Summary Control Level Processing

Exercises for Data Formatting and Control Level Processing Solutions for Data Formatting and Control Level Processing

Storing Lists and Background Processing Unit 34

Objectives

Storing Lists and Background Processing

Saving Lists Possibilities

Saving Lists in SAPofficeSaving Lists as PC Files

Saving Lists in a Report Tree

Customizing Report Trees

Functions in Report Trees

Storing Lists and Background Processing

Options for Printing a List

Print Parameters

Program-Controlled Printing

Program-Controlled Printing with GET_PRINT_PARAMETERS

Storing Lists and Background Processing

Background Processing PhasesDefining Steps

Defining Start Times and Releasing Jobs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 19: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 1934

copy SAP AG TABC40 40A ABAP Workbench 0-19

Summary

Exercises for Storing Lists and Background Processing Solutions for Storing Lists and Background Processing

Interactive Lists Basics Unit 35

Unit Objectives Interactive ListsInteractive Lists Basics

User Interactions with Lists

Navigating Between Lists

Events Overview

Flow Control in Detail Lists

Creating Detail Lists I

Creating Detail Lists II

Interactive Lists Basics

Questions

HIDE Areas

HIDE Technique Line Selection

Data Buffering in a List System

Valid Line Selection

Field Selection

Interactive Lists Basics

Page Headers in Detail Lists

Interactive Lists Basics

Creating Lists in Modal Dialog Boxes

Summary Interactive Lists

Exercises for Interactive Lists Solutions for Interactive Lists

Creating User Interfaces Unit 36Objectives User Interfaces

User Interfaces Overview

Status Technical View I

Status Technical View II

Creating a GUI Status

Creating a GUI Status Assigning F Keys I

Creating a GUI Status Assigning F Keys II

Creating a GUI Status Menu Bars

Activating Title and Status

Event AT USER-COMMAND

Summary User Interfaces

Special Techniques for Interactive Lists Unit 37

Objectives

Scrolling in Lists

Reading Lists

Modifying Lists

List Navigation

Interactive List Messages

System Fields in Interactive Lists

Summary

Exercises for Creating User Interfaces Solutions for Creating User Interfaces

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 20: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2034

copy SAP AG TABC40 40A ABAP Workbench 0-20

Linking Programs Unit 38

Objectives

Linking Programs

Data Visibility

Data Transfer Using SAP Memory

SETGET ParametersSUBMIT Statement Syntax

Example SUBMIT WITH

Datatransfer Using ABAP Memory

Returning from a Called Program

Summary

Exercises for Linking Programs Solutions for Linking Programs

Lists on the Internet Unit 39

Unit Objectives Special Application

Lists on the Internet

Motivation

The World Wide Web

HTTP Hypertext Transport Protocol

URL Uniform Resource Locator

HTML Hypertext Markup Language

R3 ClientServer Architecture

R3 ClientServer Architecture with ITS

Lists on the Internet

Web Reporting - Overview

Web Reporting Flow

Creating a List Using a URL

Parameters for WWW_GET_REPORTInteractive Lists

Access Authorization

Creating HTML Hyperlinks in Lists

Lists on the Internet

Web Reporting Browser

Releasing Report Trees for the Internet

Summary Special Application

Appendix Unit 40

Menu Data

T r a n s a c t i o n P ro g r a m m i n g

Transaction Programming Unit 41

Content

Introduction Contents

Couse Goal

Course Objectives

Overview Diagram

Main Business Scenario

About the Course Material

Basic Transaction Programming Unit 42

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 21: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2134

copy SAP AG TABC40 40A ABAP Workbench 0-21

Objectives - Basics

Components of a Transaction

Writing a Transaction Process

Analyzing the Problem

User Dialogs in the R3 System

Advantages of ScreensComponents of a Screen

Static Screen Sequence

Creating a Screen Attributes

Creating a Screen Layout

Creating a Screen Field List

Writing the Flow Logic

Communictaion Between Screen and ABAP Program

Creating a Transaction Code

Summary Basic Dialog Programming

Screen Objects - List Unit 43

Screen Objects - Objectives

Screen Objects

Screen Objects General Attributes

Attributes of Screen Objects (Key)

Dynamically Modifiable Static Attributes

The System Table SCREEN

Modifying Attributes Dynamically Example

Object Attributes Modification Group

Modifying Attributes Dynamically Program

Screen Objects - Screen

Screen Object Screen

Defining and Managing ScreensScreen Attributes

Dynamic Next Screen Overview

Setting the Next Screen Dynamically

Inserting a Sequence of Screens Dynamically

Calling a Dialog Box Dynamically

Window Coordinates

Setting the Cursor Position Dynamically

Screen Objects - Title Bar

Screen Object Title Bar

Creating and Using Title Bars

Screen Objects - Text FieldScreen Object Text Field

Text Fields Attributes

Creating Text Fields

Hiding Texts Dynamically

Dynamically Modifiable Attributes Text Field

Dynamic Screen Modifications Program

Screen Objects - InputOutput Field

Screen Object InputOutput Field

InputOutput Fields Attributes

Creating InputOutput Fields

InputOutput Fields Automatic Field ChecksInputOutput Fields Default Values in SAP Memory

Defining SETGET Parameter Attributes

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 22: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2234

copy SAP AG TABC40 40A ABAP Workbench 0-22

Programming Field Input Checks with an Error Dialog

Checking Groups of Fields

Controlling Error Dialogs

Dialog Message Categories

The FIELD Statement and Data Transport

Calling Modules Conditionally (1)Calling Modules Conditionally (2)

Screen Objects Status icon

Screen Objects Status Icons

Status Icons Attributes

Creating Status Icon Fields

Filling Status Icon Fields

Group Box

Screen Objects Group Boxes

Group Boxes Attributes

Screen Objects Radio Buttons

Screen Objects Radio Buttons and Checkboxes

Radio ButtonsCheckboxes Attributes

Creating a Radio Button Group

Creating a Checkbox

Screen Objects - Pushbutton

Screen Objects Pushbuttons

Pushbuttons Attributes

Creating Pushbuttons

Pushbuttons with Function Type E

Screen Objects - Subscreen

Screen Objects Subscreen (1)

Screen Objects Subscreen (2)

Subscreen AttributesCreating a Subscreen Area

Calling a Subscreen

Subscreens from External Programs

Subscreens Encapsulation in Function Groups

Subscreens in Function Groups Call Sequence

Subscreens in Function Groups Data Transport

Screen Objects - Tabstrip Control

Screen Object Tabstrip Control

Tabstrip Elements

Tab Page Technical View

Tabstrip Controls AttributesCreating a Tabstrip Control

Creating a Tabstrip Control Tabstrip Area

Creating a Tabstip Control Tab Title

Creating a Tabstrip Control Subscreens

Scrolling Locally in a Tabstrip Control

Scrolling Locally in a Tabstrip Control Coding

Scrolling in a Tabstrip Control

Scrolling in a Tabstrip Control Coding

Screen Objects - Table Control

Screen Object Table Control

ABAP Table Control (Functions)Table Control Table Settings

Actions in Table Controls

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 23: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2334

copy SAP AG TABC40 40A ABAP Workbench 0-23

Creating Table Control Elements

Table Control Attributes

Creating a Table Control

Creating a Table Control Table Control Area

Creating a Table Control TC Fields (1)

Create Table Control TC Fields (2) Section ColumnTable Control Attributes at Runtime

Table Control Attributes (Structure)

Table Control Elements - Processing

Processing a Table Control (Principle 1)

Filling a Table Control

Changing the Contents of a Table Control

Table Control Applications (Principle)

Filling a Table Control Coding

Changing the Contents of a Table Control 4 Coding

Table Controls Field Transport in the PBO

Table Controls Field Transport in the PAI

Table Control Elements Further Techniques

Changing a Table Control

Changing the Attributes of a Table Control (1)

Changing the Attributes of a Table Control (2)

Table Control Modifying Field Attributes Temporarily

Sorting a Table Control (Example)

Scrolling Page by Page in a Table Control (Example)

Table Control Cursor Position (Example)

Screen Objects - GUI Status

Screen Object GUI Status

Status Technical View (1)

Status Technical View (2)Attributes of Functions

Function Key Settings

Menus and Menu Bars Attributes

Status Attributes

Standard Toolbar Functions and their Reserved function Keys

Creating a Status

Navigation - Targets

Navigation - Dialogs

Screen Objects - List

Screen Objects Lists

Displaying a List Within a TransactionLists in a Modal Dialog Box

Screen Objects - Selection Screen

Screen Object Selection Screen

Entering Value Ranges

Defining and Calling a Selection Screen

Summary Screen Objects

Uumlbung zu Kapitel Screen Objects Solutions Screen Objects Unit

Programming Database Changes Unit 44

Unit ObjectivesProgramming Database Changes

Statements for Database Dialogs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 24: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2434

copy SAP AG TABC40 40A ABAP Workbench 0-24

SAP LUW

Database LUW

SAP R3 System 3-tier Architecture

System Architecture Implicit DB COMMIT

Objective Bundling the DB Changes in an SAP LUW

Programming Database ChangesBundling Techniques Overview

Bunding Using Delayed Inline Changes

Bundling Using Subroutines

Update Bundling Principle

Update Bundling Principle

Update Bundling Principle

Update Bundline Principle

Update Bundling Principle

Update Techniques

Update Function modules

V1 and V2 Update Function Modules

Logging Records for Update

Deleting Update Entries Rollback in the Dialog Program

Rollback in the Update Program

Asynchronous Update

What Happens in a Commit Work

Comparison of Bundling Techniques

Programming Database Updates

Why Set Locks

Database Locks

SAP Locking Concept

Setting Logical Locks

SAP Lock ObjectsENQUEUE and DEQUEUE Function Modules

Calling the Function Modules

The Lock Table

Validity of Locks Scope = 2

Programming Database Updates

SAP Authorization Concept

Authorization Checks

User Master Record Authorizations

Authorization Checks for Transactions

Summary

Exercises Programming Database Updates Unit Solutions Programming Database Updates Unit

Complex Transactions Unit 45

Unit Objectives

Complex Transactions

Synchronous Calls Overview

Calling a Report Program

Calling a Transaction

Encapsulating Dialogs in Function Modules

Synchronous Program Calls Main Memory Contents

Complex TransactionsAsynchronous Calls

Calling Programs Asynchronously

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 25: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2534

copy SAP AG TABC40 40A ABAP Workbench 0-25

Complex Transactions

Passing Data Overview

Passing Data Using the Interface of ABAP Programs

The WITH Addition in the SUBMIT Statement

Memory Areas Logical Model

ABAP MemoryPassing Parameters using the SAP Memory

Passing Parameters (SAP Memory)

Complex Transactions

Synchronous Program Calls SAP LUWs

Asynchronous Program Calls SAP LUWs

Program Calls Visible Data and LUWs

Complex Transactions

RFC Scenario R3 - R3

Enabling Function Modules for RFC

RFC Using ABAP Function Modules

Program Context of a Remote Function

RFC Calls System Exceptions

Complex Transactions

Remote Function Call Overview

Process Diagram Synchronous RFC

Process Diagram Asynchronous RFC

Process Diagram Transactional RFC

Transactional RFC (tRFC) Introduction

tRFC Properties

Complex Transactions

Lock Entries for Local Program Calls

Lock Entries for RFC Calls

Summary Exercises Complex Transactions Unit Solutions Complex Transactions Unit

Static Attributes in the Screen Painter Unit 46

Screen Attributes (1)

Screen Attributes (2)

General Attributes

Dictionary Attributes

Program Attributes

Display Attributes

Special Attributes for Subscreens and Tabstrip ControlsSpecial Attributes for Table Controls

Database Updates Further Information Unit 47

Objectives

Database Updates Further Information

Asynchronous Update

Synchronous Update

Local Update

SAP LUW Timescale of Updates

Database Updates Further Information

V1 and V2 Update Function ModulesV1 Update

V2 Update

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 26: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2634

copy SAP AG TABC40 40A ABAP Workbench 0-26

Database Updates Further Information

Validity of Locks Scope = 1

Validity of Locks Scope = 2

Validity of Locks Scope = 3

ENQUEUE Function Modules Interface Parameters

Summary

Complex Transactions Further Information Unit 48

CALL TRANSACTION lsquoTA01rsquo and SUBMIT lsquoREP01rsquo AND RETURN

Implicit End of a Program or LEAVE PROGRAM

LEAVE TO TRANSACTION lsquoTA01rsquo

SUBMIT lsquoREP01rsquo

CALL FUNCTION lsquoFUNC1rsquoPERFORM form1 IN PROGRAM program

Help Functions Unit 49

Overview Standard F1 and F4 Functions

The Search Help Concept

Dialog for an Immediate Hit List

Dialog with Preselection

Dialog for Selecting a Search Help

Search Help Concepts

Search Helps

Defining the Dialog Fields

Defining the Data Selection

Collective Search Helps

Search Help Concepts

Linking Search Helps to Screen Fields

Search Help Concepts

Programmed Help Functions OverviewProgrammed F1 and F4 Help

The POH and POV Events Process

Function Modules for Data Transport

Field Transport to and from the Screen

Determining the Contents of Screen Fields ( POV POH )

Placing Values in Screen Fields ( POV )

Special F1 Functions

Displaying Input Values for a Table Field (POV)

Search Help Concepts

Overview Input Help Mechanisms

Migrating Existing Input Help

Assigning Number Range Numbers Unit 50

Objectives

Overview

Number Range Objects

Number Range Intervals

Sub-objects

Assigning Internal Numbers

Checking External Numbers

Number Range Information

Accessing Table NRIV 1 Without a Buffer Accessing Table NRIV 2 Without a Buffer

Buffering Number Ranges

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 27: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2734

copy SAP AG TABC40 40A ABAP Workbench 0-27

Using Function Groups to Administer Number Ranges

Summary 1

Summary 2

Creating Change Documents Unit 51

ObjectivesOverview

Change Document Structure

Change Relevance

Change Document Objects

Generating Update Programs

INCLUDE Program Structure

Application Program

Change Document Objects and Internal Tables

Reading Change Documents

Using Function Groups to Edit Change Documents

Summary (1)

Summary (2)

Appendix Unit 52

Documentation ReferencesGlossary Index

I n t e r f a c e s f o r D a t a T r a n s f e r

Interfaces for Data Transfer Unit 53

Content

Data Transfer

Objectives

Data Transfer

Transferring Data Into the R3 System

Direct Data Transfer

Data Transfer Using Interfaces

Data Transfer Workbench

Data Analysis

Data Transfer

Analyzing the SAP Transaction

Assigning DataFormat Conversion

Transferring Legacy Data into the R3 System

Data Transfer Methods

Knowledge Tools

Summary

Exercises for Unit Data Transfer

Data Analysis and Formatting Unit 54

Data Analysis - Objectives

Data Analysis and Formatting

Standard Transfer Interfaces for Standard Transfer

Standard Transfer - Tasks

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 28: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2834

copy SAP AG TABC40 40A ABAP Workbench 0-28

IMG Documentation

Data Transfer Workbench (DTW)

Documentation in the DTW

Data Analysis and Formatting

Record Layout Types

FB01 Record Layout StructureSample Data for Record Layouts

Generating Test Data in the DTW

Data Analysis and Formatting

Translating Data

Translating Data in the Legacy System

Generating SAP Structures in the DTW

Translating Data in the R3 System

Translating Data Types

Translating Data for Transaction FB01

Translating Data - Example

Translating Data Using EXCEL

Data Analysis and Formatting

Initializing Record Layouts

Initializing Record Layouts - Example

Filling Record Layouts

Structure of Transaction FB01

Mapping Data in Transaction FB01

Filling Record Layout BGR00 - Example

Data Analysis and Formatting

Additional Tasks

Converting Data

Converting Legacy System R3 System Data

Structure of a Conversion ProgramData Analysis - Summary

Exercises for Unit Data AnalysisSolutions to Unit Data Analysis

Files in the R3 System Unit 55

Objectives

Files in the R3 System

R3 Client Server Architecture

Transferring Files

Files in the R3 System

Processing FilesOpening Files

Opening Files - Options

Binary Mode and Text Mode

Transferring Data Records

Reading Data Records

Closing Deleting a Sequential File

Filling Record Layouts for Transaction FB01 (1)

Filling Record Layouts for Transaction FB01 (2)

Sequential Files - Summary

Files in the R3 System

DOWNLOAD and UPLOADFunction Module rsquoDOWNLOADrsquo

Example Program DOWNLOAD

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 29: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 2934

copy SAP AG TABC40 40A ABAP Workbench 0-29

Function Module rsquoUPLOADrsquo

Example Program UPLOAD

Summary

Exercises for Unit Files in the R3 SystemSolutions to Unit Files in the R3 System

Data Transfer Workbench Unit 56

Data Transfer - Objectives

Data Transfer Workbench

Preparing the Data Transfer

Testing and Executing the Data Transfer

Direct Input Management

Scheduling Direct Input

Summary

Exercises for Unit Data Transfer WorkbenchSolutions to Unit Data Transfer Workbench

Batch Input Sessions Unit 57

Objectives

Batch Input Sessions

Batch Input Processing

Batch Input Program

Format of a Batch Input Session

Creating Batch Input Sessions

Function Modules for Batch Input Programs

Structure of the BDC Table

Batch Input Processing

Batch Input Sessions

Batch Input Monitor - FunctionsSession Status

Processing Modes

Entering Data into Screens

Batch Input Processing

Session Statistics

Session Log

Summary

Exercises for Unit Batch Input SessionsSolutions to Unit Batch Input Sessions

Data Transfer Programs Unit 58Objectives

Data Transfer Programs

Customer Transfer Programs

Customer Transfer Program - Tasks

Data Transfer Programs

Batch Input Program Elements

Defining BDC Tables

Structure of the BDC Table

Determining Field Names

Determining Field Names with the Screen Painter

Structure DefinitionFunction Modules for a Batch Input Program

Function Module BDC_OPEN_GROUP

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 30: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3034

copy SAP AG TABC40 40A ABAP Workbench 0-30

Function Module BDC_INSERT

Function Module BDC_CLOSE_GROUP

Structure of a Batch Input Program

Batch Input Program - Overview (I)

Batch Input Program - Overview (II)

Subroutine generate_bdc_dataProgram BDCRECXX (I)

Program BDCRECXX (II)

Program BDCRECXX (III)

Data Transfer Programs

Batch Input Recorder

Batch Input Recording

Recording the First Screen

Recording the Second Screen

Additional Screens Saving

Ending the Recording

Generating Sessions and Programs

Generating Batch Input Sessions

Structure of the Generated Program

Enhancing the Generated Program

Data Transfer Programs

Overview

Call Transaction Program

CALL TRANSACTION Statement (I)

CALL TRANSACTION Statement (II)

CALL TRANSACTION Statement (III)

Displaying the Messtab

Technical Implementation

Return Codes and System FieldsSystem Field Message Output

Generating Sessions When Errors Occur

Summary

Overview

Structure of a Data Transfer Program

Summary

Exercises for Unit Data Transfer ProgramSolutions to Unit Data Transfer Program

Additional Techniques Unit 59

ObjectivesAdditional Techniques - Overview

Changing Customers - Payment Transactions

Step Loop Field Names

Structure of the BDC Table

Filling BDC Tables in ABAP

Additional Techniques

Overview - Special Fields

Setting the Cursor in the Batch Input Session

Setting the Cursor in the ABAP Program

Additional Techniques

Successful Transaction EndAdditional Techniques

Processing Batch Input Sessions

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 31: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3134

copy SAP AG TABC40 40A ABAP Workbench 0-31

Batch Input Flow

Additional Techniques

Program RSBDCSUB

Batch Input Authorizations

Service Programs

Summary Exercises for Unit Additional TechniquesSolutions for Unit Additional Techniques

Tips amp Tricks Unit 60

Tips and Tricks - Objectives

OSS Notes

Parallel Processing

Resetting Rollback Segments

Additional Tips and Information

Summary

Appendix Unit 61

Job Structure

Scheduling Jobs

Job Distribution

SAP-LUW Chronological Update

Update Principles

Asynchronous Update

Synchronous Update

Local Update

E n h a n c e m e n t s a n d M o d i f i c a t i o n s

Enhancements and Modifications Unit 62

Content

Introduction Contents

Course Overview Diagram

Main Business Scenario

Modifications Unit 63

Objectives

Modifications

What are modifications

Modifications and Upgrades

Modifications

Copying SAP Objects

Making Changes to SAP Copies (Modifications)

Registering Modifications in SSCR

Carrying Out a Registered Modification

Versions

Naming Conventions for Repository Objects

Modifications

Modifications Critical Success Factors (1)

Modifications Critical Success Factors (2)Modifications Critical Success Factors (3)

Documenting Modifications in Programs

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 32: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3234

copy SAP AG TABC40 40A ABAP Workbench 0-32

Modification Logs An Example

Modifications

Modification Adjustment SPDD and SPAU

Modification Adjustment Objects

Transaction SPAU (Process After Upgrade)

Transporting Adjustments between SystemsThe amount of work necessary at upgrade increases

Modifications Critical Repository Objects

Avoiding Adjustments

Modifications

User Exits

User Exits An Example

Using User Exits

Summary

Exercises for Unit Modifications

Enhancements to Dictionary Elements Unit 64

Objectives

Enhancements to Dictionary Elements

Table Enhancements Overview

Append Structures

Append Structures at Upgrade

Customizing Includes

Enhancements to Dictionary Elements

Global Enhancements

Field Exits

Global and Local Field Exits

Creating Field Exits

Enhancements to Dictionary ElementsText Enhancements

Editing Text Enhancements

Keywords

Keyword Change Requirements

Keyword Changes and Release Upgrades

Restoring SAP Keywords

Enhanced Documentation for Data Elements

Customer Documentation

Summary Text Enhancements

Summary

Exercises for Unit Enhancements to Dictionary Elements Solutions for Unit Enhancements to Dictionary Elements

Enhancements using Customer Exits Unit 65

Objectives

Enhancements using Customer Exits

SAP Application Enhancements

Customer Enhancement Projects

SAP Enhancements and Customer Enhancement Projects

Enhancements using Customer Exits

The SAP Enhancement Creation Procedure

Implementing Enhancements in Customer SystemsCreating Customer Enhancement Projects

Assigning SAP Enhancements to Customer Projects

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 33: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3334

copy SAP AG TABC40 40A ABAP Workbench 0-33

Editing Components

Activating Enhancement Projects

Transporting Projects

Summary Enhancement Management

Enhancements using Customer Exits

Function Module ExitsCalling and Creating Function Modules

Assigning SAP Enhancements to Customer Projects

Organization of an X Function Group

Customer Source Code

Global Data SAP and the Customer

Subroutines Modules SAP and the Customer

Customer Screens

Customer Screens Modules

Summary Function Module Exits

Enhancements using Customer Exits

Menu Exits

Menu Exit Requirements

Assigning SAP Enhancements to Customer Projects

Menu Exits and Function Module Exits

Summary Menu Exits

Enhancements using Customer Exits

Screen Exits

Subscreens in the R3 System

Calling Subscreens

Defining Screen Exits

Calling Customer Subscreens

Transporting Data to Subscreens

Transporting Data from SubscreensEditing Subscreens (1)

Editing Subscreens (2)

Summary Screen Exits

Summary

Exercises for Unit Enhancements using Customer Exits Solutions for Unit Enhancements using Customer Exits

Business Transaction Events Unit 66

Objectives

Business Transaction Events (BTE)

BTE Possible Scenarios (1)BTE Possible Scenarios (2)

Publish amp Subscribe vs Process Interfaces

Business Transaction Events SAP and the Customer

Finding Business Transaction Events

Creating a Publish amp Subscribe Interface

Differences between Customer Exits and BTEs

Summary

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434

Page 34: Print 00

7252019 Print 00

httpslidepdfcomreaderfullprint-00 3434


Recommended