Vous êtes sur la page 1sur 17

INTRODUCTION Enterprise Resource Planning (ERP) System implementation is both an art and science that consists of planning, implementation,

and ongoing maintenance. This methodology is designed to automate the drudgery of implementation and provide organized approaches to problem solving by listing, diagramming, and documenting all steps. Structured methodologies help to standardize and systemize ERP implementation and maintenance by approaching them as an engineering discipline rather than as whims of individual software developers. It is essential to understand structured methodologies in the implementation of ERP systems. The basic steps of structured methodologies are: Project Definition and Requirement Analysis. Defining the terms of reference, determining user needs and system constraints, generating a functional specification and a logical model for the best solutions. External Design. Detailing the design for a selected solution, including diagrams relating all programs, subroutines, and data flow. Internal Design. Building, testing, installing, and tuning software. Pre-implementation. Evaluation and acceptance Implementation. Implementing systems. Post-implementation. Evaluation of controls and debugging.

When an organization purchases an ERP system, the intent is that the purchased ERP system provides specific functions and benefits. These functions and benefits need to be articulated to ensure that the ERP system performs as desired. This process is called conducting a feasibility analysis. The purpose of the feasibility study is to provide:
An analysis of the objectives, requirements, and system concepts. An evaluation of different approaches for reasonably achieving the objectives. Identification of a proposed approach. The feasibility analysis normally covers: Current working practices. These are examined in depth, revealing areas in the business where there is duplication of effort, or where procedures instituted in the distant past are carried out even though there is no longer any need for them. Channels of information. These are examined because the feasibility study is concerned primarily with the input and output information of each internal system. Such a study ignores departmental boundaries and prejudices. When the true information patterns within a business are exposed, it is often possible to reorganize resources so that all relevant data is captured at the point where it can be used for decision. Alternative approaches. Alternative methods of handling or presenting the data should be considered. Cost factors. These must be clearly identified and show definite cost savings or related benefits. Existing costs must be examined and used as a basis for comparison. Since this presentation is likely to be related to the information structure rather than to the departmental organization, the new approach may suggest possible improvements that were hidden under the existing system. Supporting services offered. The training and the systems and programming assistance that will be available during the installation period. Range compatibility. If the workload expands, can the configuration be increased in power without extensive reprogramming?

ERP SYSTEM ARCHITECTURE ERP systems should produce accurate, complete, and authorized information that is supportable and timely. In a computing environment, this is accomplished by a combination of controls in the ERP System, and controls in the environment in which the ERP system operates, including its operating system. Controls are divided into general and application controls. General controls can be further divided into management and environmental controls. Management controls deal with organizations, policies, procedures, planning, and so on. Environmental controls are the operational controls administered through the computer center/computer operations group and the built-in operating system controls. ERP System Architecture

The ERP market During the last 3-4 years the ERP market witnessed considerable growth rates driven mainly by the Y2K crisis. ERP companies including SAP, PeopleSoft, Oracle and Baan etc have recorded consistent growth in revenues, which were well above the 20% mark. However, recent trends in the industry indicate a slowdown in the traditional ERP market. The slowdown has been attributed to the Y2K crisis, which is round the corner and the stagnant world economy. Growth rates which were as high as 40% per annum is expected to slowdown considerably to around 15-20%. However, the market is also witnessing new avenues like the emergence of SMEs (Small and Medium Enterprises turnover of $50mn to $500mn) as a major ERP spender with significant demand for module specific implementation. As the Fortune 500 market for product license revenue becomes saturated, larger ERP firms are shifting their focus to the middle market. Also, other areas like Supply Chain Management (SCM), Customer Relationship Management (CRM), extended ERP and Web enabled ERP are catching attention. During the year 1998 the total ERP market is estimated to be around $17.5bn by IDC a growth rate of around 26%yoy. The ERP market is widely spread with the top ten players accounting for almost 48% of the total market the rest of the market is accounted for by the small and regional players. However, the top end of the market is captured by a few players. SAP, the market leader, accounts for 17% of the total market (1998). Other major players include Baan, Oralce, PeopleSoft etc. The top 10 $ bn SAP People Soft Oracle McKesson J D Edwards Misys BaaN GEAC JBA System Software Associates Others Total Source IDC Figures include 1998 license and maintenance revenues Total market 2.95 1.00 0.92 0.85 0.62 0.49 0.48 0.46 0.37 0.24 9.12 17.50 % Share 16.86 5.71 5.26 4.86 3.54 2.80 2.74 2.63 2.11 1.37 52.11 100.00

What is SAP R3? We know that SAP R/3 is software, it particular it is client-server software. This means that the groups/layers that make up a R/3 System are designed to run simultaneously across several separate computer systems. When you install Microsoft Excel on your PC, each component of Excel (printing components, graphing components, word processing components, and etc.) is stored, managed, and processed via the hardware of your PC. When a company installs SAPs software each component (or "layer in R/3s case) is stored, managed, and processed via the hardware of separate and specialized computer systems. Each of the various layers is capable of calling upon the specialty of any of the other installed layers in order to complete a given task. Those components/layers that are requesting services are called clients, those components/layers that are providing services are called servers. Thus the term - client/server.

What Is ABAP? ABAP stands for Advanced Business Application Programming. ABAP is a programming language that was developed by SAP for developing commercial applications in SAP environment. The development process of ABAP went through the following evolutionary stages: In early days (1970s) ABAP stood for Allgemeiner Berichts -Aufbereitungs Prozessor (Generic Report Generation Processor). That time ABAP was implemented as a macro assembler under R/2 and exclusively used for creating reports. In mid 1980s, ABAP had become an interpreted language and was powerful enough to be used to create business application programs, in particular to program dialog-controlled transactions. In early 1990s, the SAP R/3 system was born and ABAP become ABAP/4, that ABAP 4GL th (4 Generation Programming Language). It now formed the technical and software basis of the entire SAP System. Apart from system core which is written in C, all SAP application modules, R/3 Basis System and the development environment were now created in ABAP/4. At the end of 1990s, ABAP is extended with object oriented programming constructs and from this point on, the language was known as ABAP Objects. In the beginning of 2000s ABAP programs were made Unicode-Compatible in order to support the internationalization of the SAP System. With SAP technology platform under the name SAP NetWeaver, ABAP become the programming interface of the SAP NetWeaver Application Server ABAP (AS ABAP).

Packages Packages are used to organize development objects (programs, tables, screens, BAPIs, function modules, types, and so on) and handle their connection to the ABAP software logistics (Change and Transport System). All objects that can be changed using ABAP Workbench (Repository Objects) are part of package. Every AS ABAP contains a predefined package named $TMP. $TMP package is used for local practice and test programs. Every package starting with $ character is considered local and cant be transported to other SAP system. Change and Transport System (CTS) The SAP NetWeaver repository is the central place where development components in the ABAP Workbench are stored. These components include all of the: process models, data models, business object models, business objects, and all data and their relationships. The repository also includes the ABAP Dictionary. The CTS is the central tool for managing changes to repository objects that you make in the ABAP Workbench. The CTS records all changes in transport/change requests. When you have finished your work in ABAP Workbench, or have reached a certain stage, you can release the request. The change request is then used to copy the changes from this client to other clients or systems. This automatic procedure is known as a transport. Transports of changes by the CTS allow you to develop in one environment, test your development work in a test environment, and then, if the tests are successful, use it productively. This makes sure that productive operations are not placed at risk by faulty settings or program errors. CTS enable you to define transport layer as an attribute of a package. The transport layer refers to the transport path a package should take in a system landscape. The usual landscape has a least three layers: The transport layer by itself does not transport anything. You need a transport/change request to get something transported.

ABAP Workbench Tools


As an ABAP guy you would spend most of your time on the ABAP workbench. So its important for you to know about the tools of ABAP workbench. The ABAP Workbench is a collection of tools used to develop, test and run ABAP programs. It is a Programming environment GUI in SAP to develop different business applications using ABAP language. ABAP Workbench Tools - Quick Guide Tool Information Object Navigator Transaction SE80; Used to navigate around the workbench. ABAP Editor Transaction SE38; Here you can create or modify ABAP code and other implementations Function Builder Transaction SE37; use to create, test, and administer function modules. Class Builder Transaction SE24; for building Class objects Screen Painter Transaction SE51; use to design and manage screens and their elements used as Programming interfaces. Menu Painter Transaction SE41; for developing the Custom User Accessible menus on your screen interfaces Message Transaction SE91; for creating standard output messages used within your Maintenance program ABAP Dictionary Transaction SE11; used to create and manage data definitions (tables, structures, views) without redundancies. Object Navigator Object Navigator is the central point of entry into ABAP workbench as you can access any object of SAP system through it. In SAP all the Development objects are properly arranged together in an object list under some category such as packages, global class, programs etc. The transaction code to Open Object navigator is SE80.

Components of Object Navigator Interface

We can choose browsers from Object Navigation area list. The various browsers are:MIME Repository- Multipurpose Internet Mail Exchange Files Repository- It displays all the directories with the MIME files which were imported into current system.

Repository Browser - It displays repository objects (Please note that all ABAP programs are Objects to SAP) in the form of object list which are organized by selection categories like programs, packages, classes etc. This is the default displayed browser by object navigator. Repository Information System- Unlike Repository browser it displays all the available objects from information system without any search category. Tag Browser displays all the TAGs for web-apps. Transport Organizer- It displays the Transport request sent to it by user based on the request or task number. Test Repository- Displays results of the test cases after testing repository objects. Object Navigator facilitates users to perform the following tasks: 1. 2. 3. 4. 5. Select a browser and navigate in the object list. Use the tools for development objects. Navigate from one window to another window. Perform syntax checks in the integrated window. Open an object in a new session using an Additional dialog box.

ABAP Editor SAP has provided Transaction SE38 for ABAP editor. All the reports and includes and other programs are created/edited using this transaction. ABAPers spend most of their time in the ABAP editor. Function Builder Transaction SE37 is used for accessing function modules. Through this we can access all the SAP standard function modules and we can also create our own 'Z' function modules. Class Builder Similarly to the function Builder is the class builder which is used for ABAP objects programming. We can access all the SAP standard classes and can as well create our classes using class builder. Transaction code SE24 is used for this purpose. Screen Painter Screen Painter is mainly used for either creating forms or Dialog Programs. Screen Painter provides us with various tools like Text I/P O/P, box, table wizards etc which could be used to create our own GUI screens for programs. Screen painter is accessible via transaction code SE51. Menu Painter Menu Painter is used to design the user interfaces for the programs. Using Menu Painter we can customize the user menu. By default the SAP provides the user with all the available options for all the 'Z' programs we create. Now to change this or limit the user options we create our pf_status using transaction SE41 (Menu Painter) ans set the same PF_STATUS in our program. Message Maintenance Messages helps SAP system to communicate with the user. Messages of types Information-I, Error-E, Warning-W, Success-S could be displayed using message classes. To create a message class could be done at transaction- SE91. Then we could use the message class in our reports/Programs. ABAP Dictionary ABAP Dictionary is one of the important tools of ABAP Workbench. It is used to create and manage data definitions without redundancies. ABAP Dictionary always provides the updated information of an object to all the system components. The presence and role of ABAP Dictionary ensures that data stored in an SAP system is consistent and secure. ABAP dictionary could be accessed via transaction SE11.

Function Group

Function group can be defined it as collection of Function modules. This Function groups are presents in the Packages where we can create in the SE38. So,that all packages are consists in the Function Groups.All function groups are consists Function Modules. Function groups act as containers for function modules that logically belong together. You create function groups and function modules in the ABAP Workbench using the Function Builder.

Create Function Group Go to SE37. Create a function group to hold In SE37, navigate to Goto>> Function Groups >> Create Group. all our function modules.

Function Modules
Function modules are procedures that are defined in special ABAP programs only, so-called function groups, but can be called from all ABAP programs. Function groups act as containers for function modules that logically belong together. You create function groups and function modules in the ABAP Workbench using the Function Builder. Function modules allow you to encapsulate and reuse global functions in the SAP System. They are managed in a central function library. The SAP System contains several predefined functions modules that can be called from any ABAP program. Function modules also play an important role during updating and in interaction between different SAP systems, or between SAP systems and remote systems through remote communications. A program module that has a clearly defined interface and can be used in several programs. The function module library manages all function modules and provides search facilities in the development environment.

Use of function module in ABAP programs.

Acronym ABAP ALD ALE ALV APO AS ASAP ASCII AUnit BAdI BAPI BDC BEx BI BOM BOR BSP BTE BW CRM CTS CUA DDIC DDL DML eCATT ECC EDI EP ERP FS GUI HCM HR IDES IDoc IMG IS

Definition Advanced Business Application Programming Adobe LiveCycle Designer Adobe software for creating programmable PDF forms, embedded in SAP transactions Application Link Enabling SAP List Viewer The old name was ABAP List Viewer Advanced Planner and Optimizer Application Server Accelerated SAP Methodology for Implementation American Standard Code for Information Interchange ABAP Unit Business Add In Business Application Programming Interface Batch Data Communication Also known as BTCI Business Explorer Business Intelligence Bill of Material Business Object Repository Business Server Page Business Transaction Events Business Warehouse Old name of BI Customer Relationship Management Correction and Transport system Central User Administration Data Dictionary Data Definition Language Data Manipulation Language Extended CATT Enterprise Core Component Electronic Data Interchange Enterprise Portal Enterprise Resource Planning Functional Specifications Graphical User Interface Human Capital Management Human Resources Internet Demonstration and Evaluation System Intermediate Document Implementation Guide Industry specifications (or, Industry specific)

ISO ITS JAS LDB LSMW LUW MDM NW NWA NWDI NWDS OSS PAI PBO PI POH POV R/2 R/3 RFC SAP B1 SAP TMS WAS WD WD4A WD4J WF XI

International Organization for Standardization Internet Transaction Server Java Application Server Logical Database Legacy System Migration Workbench Logical Unit Of Work Master Data Management NetWeaver Netweaver Administrator NetWeaver Development Infrastructure NetWeaver Developer Studio Online Support System Process After Input Process Before Output Process Integration Process on Help Request Process on Value Request Real Time 2 Tier Real Time 3 Tier Remote Function Call SAP Business One Systems, Applications and Products in Data Processing Transport Management System Web Application Server Web Dynpro Web Dynpro for ABAP Web Dynpro for Java WorkFlow Exchange Infrastructure

The message type


E W I A S X Error Warning Information abnormal termination success Exit

SAP SD Process Flow


1. Inquiry (VA11) 2. Quotation / Contracts / Scheduling Agreements (VA21) 3. Sales Order (VA01) 4. Delivery a) Create Delivery (VL01N) b) Picking (LT03) c) Picking Confirmation (LT12) d) Packing (Optional in VL02N) e) Post Goods issue (VL02N) 5. Billing(=Invoice) (VF01) 6. Post Incoming Payment (F-28) Explanation Inquiry - - Customer enquires about the Products, services that were sold by a company. Quotation - Company Gives a Quotation for the products and Services to a Customer Sales Order - Customer gives a Purchase order to the company agaionst which a Sales order will beraised to Customer in SAP.Enquiry, Quotation, Sales Order are differentiated based on Doc.Type(VBTYP field) in VBAK,VBAPTables( for Enquiry VBTYP = A, for Quotation 'B' & for Order it is 'C'.) Delivery - (Picking, Packing, Post Goods Issue and Shipment)Company sends the material after picking it from warehouse and Packing it in a Handling Unit(box)and Issues the goods Billing - Also company bills to the customer for this billingAccounting doc is created. Functional Tcodes Create Material Customer Inquiry Quotation Sales Order Delivery Goods Issue Shipping Billing Document INVOICE MM01 XD01 VA11 VA21 VA01 VL01N VL02N VT01N VF01 VF21 VT02N VF02 VF22 VT03N VF03 VF23 VF04/VF05 Change MM02 XD02 VA12 VA22 VA02 VL02N Display MM03 XD03 VA13 VA23 VA03 VL03N VA15 VA25 VA05 VL04/ List/Report Tables MARA, MAKT, MARC KNA1, KNB1 VBAK, VBAP (VBTYP=A) VBAK, VBAP (VBTYP=B) VBAK, VBAP, VBUK, VBUP, VBFA, (VBTYP=C) LIKP, LIPS, VBUK, VBUP, VBFA MKPF, MSEG VTTK, VTTP VBRK, VBRP, VBUK, VBUP, VBFA VBRK, VBRP, BKPF, BSEG those deliveries, And in FI against

SAMPLE RESUME Your Name E-mail ID: Mobile No.:

SAP ABAP Technical Consultant Career Objective: Seeking for an environment where I can implement my knowledge to its optimum level as well as learn simultaneously, and to benefit the society while proving myself as a vital asset to the organization. Technical Skills: ERP Languages Database Operating System Packages Awareness

: SAP R/3 ECC 6.0 : ABAP/4, Core Java, C, C+,PHP(Core),CSS,HTML,DHTML : MySql, Oracle : DOS, Windows XP, 7 : Office XP, Office 2007, Photoshop, Flash : Hardware & Networking with its applications

SAP ABAP/4 Skills: Reporting: Knowledge of ABAP Reporting: ALV, Interactive, Classical. Data Dictionary: worked on Data Dictionary objects (Tables, Structures, Views, Type-Pools, Search Helps, Lock objects, Data elements and Domains). Modularization Techniques: Subroutines, Function Modules, Modules, Macros, Includes. Dialog Programming: Interfaces to custom data repositories and reference tables using Screen Painter, Flow Logic - with PBO, PAI and Transaction Codes, Screen and Menu Painter. SMARTFORMS: SMARTFORMS, SMARTSTYLES. Developer Tools: using ABAP/4 ABAP/4 debugger (Classic/New), Runtime Analysis, Code Inspector, Extended program check, Performance Tuning, SQVI. BDC: Knowledge on Batch Processing Environment of transferring data from Legacy System to R/3 System. Enhancement: basic knowledge of BADIs, UserExits. Distribution Technologies: knowledge on RFC, ALE, IDOCS and BAPI. Academic Qualifications: EXAM/DEGREE YEAR MBA B.E. (IT) 12th M.P. Board 10th M.P. Board Training:SAP ABAP/4 2 Month

UNIVERSITY / BOARD

%AGE

Career Graph, Indore

(From

to

Personal Skills: Comprehensive problem solving abilities. Personal Profile: Father Name : Date of Birth : Gender : Nationality : Indian Passport No. : Language known : Hobbies : Permanent Address : Declaration: I hereby declare that above information is correct to the best of my knowledge and belief.

Place:_________

your name

ABAP Quick Reference Guide For Commands APPEND Appends a line or multiple lines to the end of an index table. Syntax: APPEND <line>|LINES OF <jtab> TO <itab> [ASSIGNING <FS> | REFERENCE INTO <dref>]. ASSIGN Assigns a field to a field symbol. Syntax: TO <FS> ASSIGN <f> [INCREMENT <n>]

Syntax:

CLEAR <f>.

COLLECT Aggregates lines and then adds them to an internal table. Syntax: COLLECT <line> INTO <itab> [ASSIGNING <FS> | REFERENCE INTO <dref>]. COMMIT Closes a SAP LUW. Syntax: COMMIT WORK [AND WAIT] CONCATENATE Concatenates (chains) several strings to a string. Syntax: CONCATENATE <c1>... <cn> INTO <c> [ SEPARATED BY <s> ] [IN MODE]. Syntax: BYTE MODE|IN CHARACTER

AT for event blocks Event keywords for defining event blocks for screen events. Syntax: AT SELECTION-SCREEN... AT LINE-SELECTION. AT USER-COMMAND. AT PFn. AT for group change Change of group when processing loops of extracts and internal tables. Syntax: AT NEW <f>. AT END OF <f>. AT FIRST. AT LAST. AT <fg>. BREAK-POINT Calls the Debugger. Syntax: BREAK-POINT. <func> CALL FUNCTION Calls the function modules. Syntax: CALL FUNCTION [EXPORTING ... fi = a i... ] [IMPORTING ... fi = a i... ] [CHANGING ... fi = a i... ] [TABLES ... fi = a i... ] [EXCEPTIONS... ei = r i... ] [DESTINATION <dest>] [IN UPDATE TASK] CALL SCREEN Calls a screen sequence. Syntax: CALL SCREEN <scr> [STARTING AT <X1> <Y1>] [ENDING AT <X2> <Y2>]. CALL TRANSACTION Call a transaction. Syntax: CALL TRANSACTION <tcod> [AND SKIP FIRST SCREEN] [USING <itab>]. CASE Conditional branch. Syntax: CASE <f>. loop or CHECK Conditionally leaves a processing block. Syntax: CHECK <logexp>.

CONDENSE Removes spaces from a string CONDENSE <c> [NO-GAPS]. <c>... VALUE CONSTANTS Declares constant data objects. Syntax: CONSTANTS [<val> | IS INITIAL]... CONTINUE Ends a loop pass. Syntax: Syntax: <ctrl_type>. CONTINUE. CONTROLS <ctrl> TYPE CONTROLS Defines a control.

DATA with Reference to Known Data Types Declares variables with a previously-declared data type Syntax: DATA <f>... [TYPE <type>|LIKE <obj>]... [VALUE <val>]. DATA: BEGIN OF <structure>, ... <fi>..., ... END OF <structure>. DEFINE Defines a macro. Syntax: DEFINE <macro>. DELETE for Database Table Entries Deletes entries from database tables. Syntax: DELETE WHERE <cond>. FROM <dbtab>

DELETE <dbtab> FROM <wa>. DELETE <dbtab> FROM TABLE <itab>. DELETE for Lines from an Internal Table Deletes lines from internal tables of any type. Syntax: DELETE TABLE <itab> FROM <wa>. DELETE TABLE <itab> WITH TABLE KEY <k1> = <f 1>... <k n> = <f

CLEAR Sets a variable to its initial value.

n>. DELETE <itab> WHERE <cond>. DELETE ADJACENT ENTRIES FROM <itab> DUPLICATE

Syntax: Syntax: Syntax: <form>]. Syntax:

ENDSELECT. ENDWHILE. EXEC SQL [PERFORMING

ENDWHILE Closes a WHILE loop. EXEC SQL Introduces a Native SQL statement.

[COMPARING... ]. DELETE for Lines from Index Tables Deletes entries from index tables. Syntax: DELETE <itab> [INDEX <idx>]. DELETE <itab> [FROM <n1>] [TO <n 2>] [WHERE <cond>]. DESCRIBE TABLE Describes the attributes of an internal table. Syntax: DESCRIBE TABLE [LINES <l>] [OCCURS<n>] [KIND <k>]. DO Introduces a loop. Syntax: DO [<n> TIMES] [VARYING <f> FROM <f1> NEXT <f2>]. ELSE Introduces a statement block in an IF control structure. Syntax: ELSE. ELSEIF Introduces a statement block in an IF control structure. Syntax: ELSEIF <logexp>. END-OF-DEFINITION Closes a macro definition. Syntax: END-OF-DEFINITION. END-OF-PAGE Event keywords for defining event blocks for list events. Syntax: END-OF-PAGE. END-OF-SELECTION Event defining event blocks for keywords for

EXIT Leaves a loop or processing block. EXIT. FIELD-SYMBOLS Declares field symbols. Syntax: FIELD-SYMBOLS <FS> [<type>|STRUCTURE <s> DEFAULT <wa>]. FORM Defines a subroutine. Syntax: FORM <subr> [USING [VALUE(]<pi>[)] [TYPE <t>|LIKE <f>]... ] ...

[CHANGING... [VALUE(]<pi>[)] [TYPE <t>|LIKE <f>]... ]. FORMAT Sets formatting options for list output. Syntax: FORMAT... [ON|OFF]... FREE Release space in memory. Syntax: Syntax: FREE <itab>. FUNCTION <func>. FUNCTION Defines a function module. GET PARAMETER Gets an SPA/GPA parameters Syntax: GET PARAMETER ID <pid> FIELD <f>. HIDE Stores information about list lines. Syntax: Syntax: HIDE <f>. IF <logexp>. IF Conditional branch.Introduces a new branch. INCLUDE Inserts an include program in another program. Syntax: INCLUDE <incl>. INCLUDE TYPE|STRUCTURE Includes a structure within another. Syntax: INCLUDE TYPE <t>|STRUCTURE <s> [AS <name> INITIALIZATION Event keywords for defining event blocks for reporting events. Syntax: INITIALIZATION. <optioni>

reporting events. Syntax: END-OF-SELECTION. ENDAT Closes a statement block in control level processing. Syntax: ENDAT. ENDCASE Closes a CASE control structure. Syntax: Syntax: Syntax: Syntax: Syntax: Syntax: Syntax: Syntax: ENDCASE. ENDDO. ENDFORM. ENDFUNCTION. ENDIF. ENDLOOP. ENDMODULE. ENDON. ENDDO Closes a DO loop. ENDFORM Closes a subroutine. ENDFUNCTION Closes a function module. ENDIF Closes an IF control structure. ENDLOOP Closes a LOOP. ENDMODULE Closes a dialog module. ENDON Closes a conditional statement block. ENDSELECT Closes a SELECT loop.

INSERT for Database Tables Inserts entries from database tables. Syntax: INSERT <dbtab> FROM <wa>. INSERT <dbtab> FROM TABLE <itab> [ACCEPTING DUPLICATE KEYS]. INSERT for any Internal Table Inserts lines from internal tables of any type. Syntax: INSERT <line>|LINES OF <jtab> [FROM <n1>] [TO <n 2>] INTO TABLE <itab> INSERT for Index Tables Inserts entries in index tables.

Syntax: INSERT <line>|LINES OF <jtab> [FROM <n1>] [TO <n 2>] INTO <itab> [INDEX <idx>] LEAVE for Screens Leaves a screen. Syntax: LEAVE for program. Syntax: LEAVE SCREEN. LEAVE TO SCREEN <scr>. Programs Leaves an ABAP

Syntax: TITLE]

NEW-PAGE

[NO-TITLE|WITH-

[NO-HEADING|WITH-HEADING] [LINE-COUNT] [PRINT ON|OFF]. ON CHANGE Introduces a new branch. Syntax: OR <f2>...]. ON CHANGE OF <f> [OR <f1> [LINE-SIZE]

LEAVE [PROGRAM].

LEAVE TO TRANSACTION <tcod> [AND SKIP FIRST SCREEN]. LOOP THROUGH internal tables Starts a loop through an extract dataset. Syntax: LOOP AT <itab> INTO <wa> WHERE <logexp>. LOOP AT <itab> TRANSPORTING NO FIELDS WHERE <logexp>. LOOP Through Screen Fields Starts a loop through the table SCREEN. Syntax: LOOP AT SCREEN... MESSAGE Displays a message. Syntax: MESSAGE <xnnn> <f1>... <f4>] [RAISING <except>]. MESSAGE NUMBER <nnn>. ID <mid> TYPE [WITH <x>

PARAMETERS Declares parameters for a selection screen. Syntax: PARAMETERS <p>[(<length>)] [TYPE <type>|LIKE <obj>] [DECIMALS <d>] [MEMORY ID <pid>] [OBLIGATORY] [VALUE CHECK] [AS CHECKBOX] [RADIOBUTTON GROUP <radi>] [NO-DISPLAY] [MODIF ID <key>]. PERFORM Calls a subroutine. Syntax: PERFORM <subr> | <subr>(<prog>) [IF FOUND] |(<fsubr>)[IN PROGRAM (<fprog>)][IF FOUND] [USING ... <pi>... ] [CHANGING... <pi>... ] PROGRAM Introduces a program. Syntax: Syntax: PROGRAM <prog>... RANGES <rangetab> FOR <f>. RANGES Declares a RANGES table. READ for any Internal Table Reads a line of an internal table. Syntax: READ TABLE <itab> FROM <wa> |WITH TABLE KEY <k1> = <f1>... <kn> = <fn> |WITH KEY = <f> |WITH KEY <k1> = <f1>... <kn> = <fn> [TRANSPORTING <f1> <f2>... |ALL FIELDS|NO FIELDS] REFRESH Initializes an internal table. Syntax: Syntax: <mid>] REFRESH <itab>. REPORT <rep> [MESSAGE-ID [NO STANDARD PAGE HEADING] [LINE-SIZE <col>] [LINE-COUNT <n>(<m>)] [DEFINING DATABASE <ldb>]. ROLLBACK Undoes the changes in a SAP LUW. REPORT Introduces a program. [DEFAULT <f>] [LOWER CASE]

MESSAGE <xnnn>(<mid>). MESSAGE <msg> TYPE <x> MODIFY for Database Tables Inserts or changes lines in database tables. Syntax: MODIFY <dbtab> FROM <wa>. MODIFY <dbtab> FROM TABLE <itab>. MODIFY for any Internal Table Changes the content of lines in internal tables of any type. Syntax: MODIFY TABLE <itab> FROM <wa> [TRANSPORTING <f1> <f MODIFY <itab> FROM <wa> TRANSPORTING <f1> <f 2>...WHERE <logexp>. MODIFY SCREEN Changes the SCREEN table. Syntax: Syntax: |[INPUT]. Syntax: MODIFY SCREEN... MODULE <mod> OUTPUT MODULE Introduces a dialog module.

MOVE Assigns values. MOVE <f1> TO <f2>. MOVE-CORRESPONDING Assigns values between identically-named components of structures. Syntax: MOVE-CORRESPONDING <struc1> TO <struc2>. NEW-LINE Inserts a line break in a list. Syntax: NEW-LINE SCROLLING|SCROLLING]. NEW-PAGE Inserts a page break in a list. [NO-

Syntax: Syntax:

ROLLBACK WORK. SELECT <result> INTO <target> FROM <source> [WHERE <condition>]

SELECT Reads data from the database.

Syntax: <f>

SELECT-OPTIONS <sel> FOR <g> [to <h>] [OPTION

[DEFAULT <op>] SIGN <s>]

[MEMORY ID <pid>] [LOWER CASE] [NO-DISPLAY] [MODIF ID <key>] [NO-EXTENSION] [NO INTERVALS] [NO DATABASE SELECTION]. SELECTION-SCREEN for Selection Screen Formatting Formats selection screens Syntax: SELECTION-SCREEN [<n>]. SKIP [OBLIGATORY]

GROUP BY <fields>] [HAVING <cond>] [ORDER BY <fields>]. SELECT clause

Defines the structure of the selection. Syntax: SELECT [SINGLE]|[DISTINCT] * | <si> [AS <a i>]... <agg>( [DISTINCT] <s j>) [AS <a j>]... INTO clause Defines the target area into which the selection from the SELECT clause is written. Syntax: ... INTO [CORRESPONDING FIELDS OF] <wa> | INTO|APPENDING [CORRESPONDING FIELDS OF] TABLE <itab> [PACKAGE SIZE <n>] | INTO (<f1>, <f 2>,...) FROM clause The FROM clause determines the database tables from which the data specified in the SELECT clause is read. Syntax: ... FROM [<tab> [INNER]|LEFT [OUTER] JOIN] <dbtab> [AS <alias>] [ON <cond>] [CLIENT SPECIFIED] [BYPASSING BUFFER] [UP TO <n> ROWS] WHERE clause Restricts the number of lines selected. Syntax: ... [FOR ALL ENTRIES <itab>] WHERE <cond> GROUP BY clause Groups lines in the selection. Syntax: ... GROUP BY <s1> <s 2> HAVING clause Restricts the number of line groups selected. Syntax: ... HAVING <cond> ORDER BY clause Sorts the lines of the selection. Syntax: ... ORDER BY PRIMARY KEY |... <si> [ASCENDING|DESCENDING]... SELECT-OPTIONS Declares selection criteria for a selection screen. IN

SELECTION-SCREEN COMMENT [/]<pos(len)> <comm> [FOR FIELD <f>] [MODIF ID <key>]. SELECTION-SCREEN BEGIN OF LINE. ... SELECTION-SCREEN END OF LINE. SELECTION-SCREEN BLOCK <block> [NO INTERVALS]. ... SELECTION-SCREEN END OF BLOCK <block>. SET PARAMETER Sets an SPA/GPA parameters Syntax: SET PARAMETER ID <pid> FIELD <f>. SET PF-STATUS Sets the GUI status Syntax: SET PF-STATUS [EXCLUDING <f>|<itab>] SET SCREEN Sets the next screen. Syntax: SET SCREEN <scr>. SET TITLEBAR Sets the screen title. Syntax: Syntax: SET TITLEBAR <tit>. SHIFT <c> [BY <n> PLACES] <itab> TEXT] SHIFT Shifts strings. SORT for Internal Tables Sorts internal tables. Syntax: SORT [ASCENDING|DESCENDING] [STABLE] [AS <stat> BEGIN OF

[WITH FRAME [TITLE <titel>]]

... BY <fi> [ASCENDING|DESCENDING] [AS TEXT]... SPLIT Splits a string. Syntax: SPLIT <c> AT <del> INTO <c1>... <cn> INTO TABLE <itab> [IN MODE]. BYTE MODE|IN CHARACTER

START-OF-SELECTION Event keywords for defining event blocks for reporting events. Syntax: START-OF-SELECTION. STOP Leaves a reporting event. Syntax: Syntax: STOP. TABLES <dbtab>. TABLES Declares an interface work area. TOP-OF-PAGE Event keywords for defining event blocks for list events. Syntax: TOP-OF-PAGE [DURING LINESELECTION]. TRANSLATE Converts characters to strings. Syntax: TRANSLATE <c> UPPER|LOWER CASE|USING <r>. TYPE-POOL Introduces a type group. Syntax: TYPE-POOL <tpool>. TO

WRITE TO Assigns string values. Syntax: [<format>]. WRITE <f1> TO <f2>

Development Transaction Codes


ICON Display Icons SE11 ABAP Dictionary SE12 ABAP/4 Dictionary Display SE13 Maintain Technical Settings SE14 Utilities for Dictionary Tables SE15 ABAP/4 Repository Info System SE17 General Table Display SE18 Business Add-Ins: Definitions SE19 Business Add-Ins: Implementations SE24 Class Builder SE30 ABAP Objects Runtime Analysis SE32 ABAP Text Element Maintenance SE36 Logical databases SE37 ABAP Function Modules SE38 ABAP Editor SE39 Split screen Editor: Pgm Compare SE41 Menu Painter SE51 Screen Painter SE71 to SE78 SAPscript SE80 Object Navigator SE84 R/3 Repository Information System SE91 Message Maintenance SE93 Maintain Transaction Codes SMARTFORMS SAP Smart Forms SMARTFORM_CODE SAP Smart Forms: Target coding SMARTFORM_TRACE SAP Smart Forms: Trace SMARTSTYLES SAP Smart Styles

TYPE-POOLS Declares the types and constants of a type group to a program. Syntax: TYPE-POOLS <tpool>. TYPES for Single Field Types Defines a single field type. Syntax: TYPES <t>[(<length>)] [TYPE <type>|LIKE <obj>] [DECIMALS <dec>]. TYPES for Complex Types Defines complex types. Syntax: TYPES: BEGIN OF <structure>, ... <ti>..., ... END OF <structure>. ULINE Places horizontal lines in the display list. Syntax: Syntax: <f> ULINE [AT [/][<pos>][(<len>)]]. UPDATE <dbtab> SET <si> = |<si> = <s i> + <f> |<si> = <s i> - <f> [WHERE <cond>]. UPDATE <dbtab> FROM <wa>. UPDATE <dbtab> FROM TABLE <itab>. WHEN Introduces a statement block in a CASE control structure. Syntax: WHEN <f1> [OR <f 2> OR...] | OTHERS. WHILE Introduces a loop. Syntax: WHILE <logexp> [VARY <f> FROM <f1> NEXT <f2>]. WRITE Displays lists. Syntax: <f> [AS WRITE [AT [/][<pos>][(<len>)]] CHECKBOX|SYMBOL|ICON|LINE] [QUICKINFO <g>]. [<format>] UPDATE Changes entries in database tables.

Frequent General Transaction Categories


AL BD CO DB FB IW OL OS PA RZ System Monitoring EDI & ALE Production Planning Database Vendors Plant Maintenance Config Related Operating System Monitor HR CCMS Monitoring

SA SE SM SO SP ST SU SW VA WE

System Administration Development System Maintenance SAPOffice Spool Performance and Tuning Security Workflow Sales EDI

MSGV1 Message variable MSGV2 Message variable MSGV3 Message variable MSGV4 Message variable OPSYS System: Operating system PAGNO Runtime: Current page in list PDEST Print: Output device REPID Program: Name of ABAP/4 program SAPRL System: SAP Release STEPL Number of LOOP line at screen step SUBRC Return value after specific ABAP/4 statements SYSID System: SAP System ID TABIX Runtime: Current line of an itab TCODE Session: Current transaction code TFILL Current number of entries in itab TIMLO Local time for user TITLE Title of ABAP/4 program TLENG Line width of an internal table UCOMM Command field function entry ULINE Constant: Underline (---------...) UNAME Session: SAP user from SAP logon UZEIT System: Time VLINE Constant: Vertical bar

Useful System fields


ABCDE Constant: Alphabet (A,B,C,...) BATCH Background active (X) CPAGE Current page number CPROG Runtime: Main program CUCOL Cursor position (column) CUROW Cursor position (line) DATAR Flag: Data received DATLO Local date for user DATUM System: Date DBCNT Number of elements in edited dataset with DB operations DBNAM Logical database for ABAP/4 program DBSYS System: Database system DYNNR Number of current screen FDPOS Location of a string HOST Host INDEX Number of loop passes LANGU SAP logon language key LILLI Number of current list line LINCT Number of list lines LINNO Current line for list creation LINSZ Line size of list LISEL Interact.: Selected line LISTI Number of current list line LSIND Number of secondary list MANDT Client number from SAP logon MSGID Message ID MSGLI Interact.: Message line (line 23) MSGNO Message number MSGTY Message type (E,I.W,...)