SAP DEVELOPMENT BASICS Bohuslav Tesar
TRAINING OVERVIEW Amazing life of ABAP developer ;) SAP introduction ABAP basics ABAP Reporting
AMAZING LIFE OF ABAP DEVELOPER ;)
SAP SYSTEM
SAP MODULES
SYSTEM ARCHITECTURE
SYSTEM LANDSCAPE
SAP USER INTERFACE / TRANSACTION
ROLE BASED MENU (TECHNICAL NAMES)
SAP DEVELOPMENT - ABAP Advanced Business Application Programming For SAP enhancement, reports, interfaces Customizing vs. programming
ARCHITECTURE OF ABAP RUN
SE80 – ABAP WORKBENCH
CREATION OF PACKAGE
CREATION OF PROGRAM
BEGINNING OF ABAP, BASIC COMMANDS Basic rules: Every command lines end with ‘.’ After finishing of program you should make a check of CODE e.g. CTRL+F2 Then you have to activate the report e.g. CTRL+F3 You can run the report by F8. Commands: Write e.g. Write ‘Hello world’. Skip. Uline. Use F1 to see possible parameters for each command
EXERCISE 1 1. Create package ‘zts_bas_XX.’ 2. Create report ‘zts_hello_world_xx’ 3. Report should display message ‘Hello world’. 4. Write more lines of code 5. Change color 6. Make some separation lines
BASIC ELEMENTS IN ABAP Data types Definition of Data objects Basic commands in ABAP Debugging
STANDARD TYPES IN ABAP Predefined types Final / complete D, date, format YYYYMMD, length 8 T, time, format HHMMSS, length 6 I, integer, length 4 bytes F, float, length 8 STRING, string with floating length XSTRING, hexadecimal string with floating length
STANDARD TYPES IN ABAP Predefined types Final / complete C, string of characters N, Numeric string X, hexadecimal string P, number with decimals
DATA DEFINITION
EXERCISE 2 1. Create report ‘zts_bc_xx’ 2. Prepare some two numbers, which will be initially filled 3. Practice some calculation operation with this two numbers 4. Create string and concatenate string / substrings
PARAMETERS – USER INPUTS
EXERCISE 3 1. Create simple calculator
ABAP BASIC COMMANDS - BRANCHES
ABAP BASIC COMMANDS - LOOPS
OTHER DATA OBJECTS Constants CONSTANTS Defined type Parameter Value is obligatory Text symbols Multilanguage, translation Own repository object
LOCAL DATA TYPES IN ABAP
ABAP DICTIONARY – GLOBAL DATA TYPES
DATA TYPE DEFINITION
DATA DEFINITION
ABAP RUNTIME
ABAP BASIC COMMANDS
ABAP BASIC COMMANDS – DIALOG MESSAGES
ABAP DEBUGGING - BREAK POINT
ABAP DEBUGGING - /H
ABAP DEBUGGING - WATCH POINT
COMPLEX DATA OBJECTS Definition of structure a using of structure Definition of internal table a working with internal table Analyze of complex data objects in debugger
STRUCTURES DEFINITION Global type Local type
STRUCTURE – GLOBAL DEFINITION
STRUCTURE – USE
STRUCTURE – LOCAL DEFINITION
COPY OF STRUCTURE CONTENT
STRUCTURE EXAMPLE
DEFINITION AN USING OF INTERNAL TABLE Basic attributes Type of line Key Type of table Standard Sorted Hashed
ATTRIBUTES OF INTERNAL TABLE
TYPES OF INTERNAL TABLE
INTERNAL TABLE GLOBAL DEFINITION
INTERNAL TABLES – LOCAL DEFINITION
INTERNAL TABLES – INDEPENDENT DEFINITION
INTERNAL TABLES – POSSIBLE DEFINITION
INTERNAL TABLE – DEFINITION STRUCTURE OF DATA OBJECTS
INTERNAL TABLES - OPERATION
INTERNAL TABLES – OPERATION – MULTIPLE RECORDS
INTERNAL TABLES – OPERATION - EXAMPLE
INTERNAL TABLE -LOOP
INTERNAL TABLE –LOOP WITH CONDITION
INTERNAL TABLE – LOOP WITH KEY
SORTING AND CLEARING OF INTERNAL TABLES
INTERNAL TABLE - COLLECT
INTERNAL TABLE WITH / WITHOUT HEADER LINE
DATABASE TABLES AND DATA DICTIONARY
DATA MODEL EXAMPLE
FIELD OF TABLE
TECHNICAL STRUCTURE OF TABLE
TABLE IN DATA DICTIONARY
USING OBJECTS OF DATA DICTIONARY
TRANSPARENT TABLE – IN SAP
HELP A SEARCH HELP
RETRIEVING DATA FROM TRANSPARENT TABLES
SELECT FROM TABLE
SELECT SINGLE RECORD
SELECT SINGLE 2 ND EXAMPLE
SELECT – ENDSELECT (SELECT IN THE LOOP)
SELECT AS FETCH ARRAY – NO STATEMENT ENDSELECT
SELECT CLIENT SPECIFIC
INTERACTIVE SELECT WITH USER PARAMETER
READING MULTIPLE DATA TABLES
JOIN TABLES CONDITION
JOIN TABLES EXAMPLE
CHANGE ACCESS TO DATABASE
MODULARIZATION TECHNIQUES Processing blocks that are called from ABAP programs: Subroutines (local modularization) Function modules (global modularization) Methods (Object oriented can be local or global )
SUBROUTINES – LOCAL MODULARIZATION
SUBROUTINES – PARAMETERS LOCAL AND GLOBAL USING VALUE(par1) - Call by value CHANGING VALUE(par1) - Call by value and result CHANGING, USING par1 - Call by reference
SUBROUTINES – PARAMETERS LOCAL AND GLOBAL
FUNCTION MODULES (GLOBAL MODULARIZATION) Generally stored in SAP function library Function modules are organized in function groups
FUNCTION MODULES - INTERFACE
FUNCTION MODULE USING IN PROGRAM
FUNCTION MODULE DEFINITION
FUNCTION MODULE – CALL IN REPORT
FUNCTION MODULE – CALL IN REPORT, EXCEPTION
FUNCTION MODULE - CREATION Create function group Create function module BAPI
INCLUDE
AUTHORIZATION CHECK
AUTHORIZATION CHECK - PROGRAM
STANDARD SYSTEM MONITORING
EVENT IN ABAP
EVENT EXAMPLE
EVENTS IN MORE DETAIL
AT LINE-SELECTION EXAMPLE
LOOP AT SCREEN
AT SLECTION SCREEN
AT SELECTION-SCREEN ON HELP-REQUEST FOR
TRANSACTION - LIST SE80 – Abap workbench SE37 – Function builder BAPI – transaction for BAPI overview SE38 / SA38 – report execution SE11 – DATA DICTIONARY SE10 – Transport management
TRANSPORTING AND PRINCIPALS