490 likes | 815 Views
ABAP Programming. Introduction to the ABAP Workbench. Objectives. to introduce the ABAP integrated development environment the two main ABAP application types reporting dialog programming. Order of Presentation. Purpose and Function of the ABAP Workbench Workbench Tools:
E N D
ABAP Programming Introduction to the ABAP Workbench
Objectives • to introduce • the ABAP integrated development environment • the two main ABAP application types • reporting • dialog programming
Order of Presentation • Purpose and Function of the ABAP Workbench • Workbench Tools: • Object Navigator (Repository Browser) • The ABAP Language • The Repository Information System • Test and Analysis Tools • Menu & Screen Painter • The Data Modeler • ABAP Query • The Workbench Organizer • The Class Builder
ABAP WorkbenchPurpose & Function • SAP’s Integrated Graphical Programming Development Environment: • Used to create/change ABAP application programs • Each ABAP application program is either a report or a transaction: • Reports are applications that retrieve and display information from database with little or no user interaction • Transactions accepts inputs/data from users and then perform one or more relevant actions, usually involving updating databases
ABAP WorkbenchPurpose & Function • The Workbench can be used to • write ABAP code • design dialogs/screens with a graphical editor • create menus with a menu editor • debug an application • test an application for efficiency • control access to objects under development • create new or access predefined database information
ABAP WorkbenchPurpose & Function • Comprises the following tools • The Object Navigator (aka Repository Browser) • the ABAP Language • the Screen and Menu Painters • the Repository Information System • the Data Modeler • various test and analysis tools • the ABAP Query • the Workbench Organizer
ABAP Workbench Architecture Transport System Screen Painter ABAP Editor Reporting R/3 Repository ABAP Dictionary Function Modules ABAP Organizer Data Modeler Menu Painter ABAP Processor Debugging Trace Test Tuning
The Workbench Screen • All R/3 screens have a similar ‘look and feel’ • screens consist of • screen titlebar • menu bar • standard toolbar • application toolbar • screen body • message line
Menubar Standard toolbar Screen title-bar Application toolbar Client Server Message line
The Object Navigator (The Repository Browser) • central tool for organizing and managing your personal development objects • used to navigate through development object lists • where development objects are the components used to construct an application • automatically calls other workbench tools • if you create a new data definition the browser calls the Data Dictionary, and then returns to the browser after the definition is created
The ABAP Language • Advanced Business Application Programming • developed by SAP for the interactive development of application programs • 4th Generation Language (with some OO features) • main uses for ABAP programs include • creation of new reports • development of new user dialog programs (transactions) • customisation of R/3 to meet individual client needs
Reporting • uses ABAP Open SQL to extract data from the R/3 database • Open SQL is a subset of ANSI SQL • report consists of a [selection screen] and a list screen • selection screen allows the user to enter selection criteria • list screen displays the report data
Report Selection Screen List Screen ABAP Open SQL R/3 Database
Dialog Programming • Dialog Programs (Transactions) are used for both reading and changing the database • Main Components of a Dialog Program are • screen & menus • processing logic defined in an ABAP program (module pool) • for each screen, interaction and control flow from one module to another is defined in DYNPRO • data structures defined in the ABAP dictionary
Development Environment ABAP Dictionary Screen Painter Menu Painter ABAP Runtime Environment Dialog Processor ABAP Processor
Dialog Programming - Overview Transaction Code Module Pool 0100 0200 0300 Screen Flow Logic
DIALOG Communication ABAP PROCESS BEFORE OUTPUT. MODULE INITIALISE. PROCESS AFTER INPUT. MODULE READ-ITAB. MODULE .... MODULE INITIALISE Clear ITAB. ENDMODULE. MODULE READ-ITAB. Select * From ITAB Where... ENDMODULE. MODULE...... : : ENDMODULE. 1 2 3 4
Graphical Screen Painter Currently Edited Field Graphical Elements Toolbar
The Repository Information System • The Repository Information System is used to search for objects in the R/3 system and provides • list of all objects X with attribute/s Y • the Where Used List which gives a list of every place that object X is used throughout the R/3 system • information about foreign key relationships between tables • display of data (all records in table X with attribute Y)
Test and Analysis Tools • ABAP Editor • syntax checker • tests for coding and syntactical correctness • provides automatic ‘correct’ facility • in case of an error, provides a detailed (although sometimes obscure) reason for the error • extended syntax check • searches out situations that might possibly result in a runtime error (eg, inconsistent interface parameters) • warns about use of literals instead of text elements
Test and Analysis Tools • Debugger • finds logic errors • provides ability to • stop the program anywhere during runtime • continue statement by statement • skip over subroutines • check or change the contents of variables and internal tables on the fly
Test and Analysis Tools • Runtime analysis • used to determine the performance, (absolute and relative) of the various parts of an ABAP program • can provide statistics on the efficiency of • code • database accesses • R/3 system itself
The Data Modeler • graphical tool that utilises E-R modelling • tightly coupled to the data dictionary • possible to click on an object in the model (ie, an entity), and retrieve related data from the dictionary, (ie table - structure, contents) • create the data model and the dictionary can create the table automatically
ABAP Query • Automated report generator • user not required to know ABAP language • can generate • basic lists, statistics, ranked lists • To define a report • enter individual texts, such as titles • select the fields and options which determine the report layout • assign a particular sequence by numbering the fields. • The system generates each query in the form of an ABAP program.
Workbench Organizer • records and controls changes to objects • ABAP Programs, Dictionary Objects, Screens, User Interface Definitions, … • provides assistance for organizing development projects • by allowing you to distribute project work for individual developers or teams among different change requests
Workbench Organizer • interface to the Transport mechanism • movement of applications from development test production environments • prevents parallel, uncoordinated changes to the same object, (version control) • even when many copies of the object exist in several, connected SAP systems
Summary & Conclusion • this lecture provided an overview of the tools that comprise the ABAP Development Workbench • of these the editor /syntax checker/debugger is the combination that we will use most frequently • it is essential that you be able to use the tools to • navigate around the workbench • find,execute,change development objects
Related Reading • OnLine Help • R/3 Library ... Basis Components ... ABAP Workbench • BC ABAP User’s Guide • ABAP Basics • Overview of the Components of Application Programs • ABAP Workbench Tools
Recommended ABAP Texts • ABAP/4: Programming the SAP R/3 System, Bernd Matzke • Developing SAP’s R/3 applications with ABAP/4, Rudiger Kretschmer, and Wolfgang Weiss • Introduction to ABAP/4 Programming for SAP, Revised and Expanded Edition by Gareth M. De Bruyn, Robert Lyfareff