Additional Info
Interpolation to SAP ABAP :
ABAP is the acronym for Advanced Business Application Programming. ABAP is a programming language designed and used by SAP for the development of application programs, including Reports, Screens, Interfaces & Data conversions. All of the SAP applications and even parts of its basic system were developed in ABAP. ABAP is an event-driven programming language. User actions and system events manage the execution of an application. Advanced Business Application Programming / 4GL (ABAP/4, generally regarded as ABAP) is SAP’s exclusive language. More than 80% of SAP R/3 is developed employing ABAP. The ABAP Program code is “generated” into Byte-code at a particular time of Activation of the program and is prepared by the ABAP Processor which is part of the Kernel and Basis Services at the time of execution. Any ABAP Program, because it needs the BASIS modules, can run only within an SAP environment.
Many characteristics of the programming language and ABAP editor environment resemble the COBOL / IBM Mainframe environment although much of it has been scaled down somewhat to give the language a modern look. The language is case-insensitive and each account terminates with a period. ABAP programs are event-driven to an extent through the event handling capabilities are not similar to full-fledged object-oriented languages such as Java or even Visual Basic. ABAP objects or classes can be described and implemented using the “Class Builder” for use in report and dialog programs.
SAP ABAP Components :
- Screens: Contain the screen layout and associated flow logic. You usually create the layout of a screen using the Screen Painter However, there are specific kinds of screens, called selection screens and lists, whose layout and flow logic are designed exclusively using ABAP statements.
- Interface: includes all of the entries in the menus, the standard toolbar, the application toolbar, and function key settings. It includes titles and statuses. A status is a group of function key settings and menus. Text elements can be language-specific. They can be interpreted either directly from the text element maintenance tool or using a special translation tool.
- Documentation: It is also language-specific. Always record documentation from the user’s point of view. If you want to document the programming techniques you have already used, use comments in the program code alternatively.
- Variants: enable you to predefine the values of input fields on the selection screen of a program.
- Reporting: Report programs provide lists and can be classified as conventional reports and interactive reports. Conventional reports do not permit interaction by the user; therefore; the basic list contains extensive information that the user must often sort through to find the relevant data. Interactive reports allow for interaction (and drill-down) with the user; therefore the user can produce secondary, detailed lists off of the basic list by choosing the relevant data and requesting more information. ALV Reports also allows interaction by the user, it can display a large amount of data at one short in the form of an excel sheet.
Structure of SAP ABAP :
ABAP is a programming language driven by events, and as such is suited to processing user dialogs. The source code of an ABAP application consists of two parts:
ABAPDeclarations: Declarations constitute the statements for global data types and objects, selection screens, and (in ABAP Objects) local classes and interfaces within the program.
ABAPEvent Blocks: Event blocks are proposed by an event keyword. They are not concluded explicitly but end when the next processing block starts.
ABAPDialog Modules and Procedures: Dialog modules and procedures are presented and concluded using keywords. The contents of all processing blocks make the processing logic. When you generate the program, these parts are arranged to form the load version. This is defined as run time. A Program is a set of structured ABAP statements. It can be an Executable program or a Dialog Program.A Report is normally an ABAP Program that outputs a list. Some people relate to the List as the Report and the ABAP report as a report program. A Module Pool is a non-executable program that contains “modules” that control dialog processing. A List is commonly an output of an ABAP Report program. There are Programs of other varieties such as “Include” (a non-executable block of code that can be included in the main program), Subroutine Pool, a functioning pool that contains a group of related functions, and so on. The editor joins a character-based text entry capability with graphical icons and menu options to execute many of the functions necessary to build complex ABAP applications. The ABAP development environment provides a wide variety of tools required by the programmer for developing and testing applications. The online debugging tool gives the programmer the capability to designate watch variables. These variables once collected can be viewed as their values change from statement to statement while the program executes. The programmer can even modify their values to simulate different processing scenarios.
The ABAP program editor presents many functions through the use of graphical pushbuttons. Among these functions are:
- Toggle from display mode to edit mode.
- Syntax check –with limited auto-correction.
- Activation –activates the program.
- Execution- Executes the program.
- Where used list - to discover the tables, statements, data elements employed in the programs.
ABAP Programming Execution :
The individual processing blocks are described in a predetermined sequence at runtime, regardless of the position in which they occur in the program. Once a processing block has been described, the statements within it are processed sequentially.
Event block :
If the system program or a user triggers an event for which a similar event block has been written in the processing logic, that event block is processed. The program flow is regulated either by the system or the user.
Modularization unit :
When the system finds a modularization unit call within a processing block, it requests the corresponding processing block. In this case, the program flow is managed by the programmer. An ABAP program is composed of a series of individual ABAP statement. Each statement must end with a period. Keywords are always the first word in a statement. Words must be divided by at least one blank. ABAP statements can be ordered and extended over several lines.
ABAP Program Structure :
ABAP programs must begin with either the PROGRAM or REPORT statement. This statement is composed automatically when the program is created through the Repository Browser.
The REPORT statement is practiced for ABAP reports programs. The PROGRAM statement is done for general ABAP programs( for example, module pool programs). All global data declarations must be grouped at the beginning of the program in a declaration section. The statement section can contain various processing blocks. This subject is dealt with in the remaining chapters of this course.
Chaining Statements in ABAP :
- To avoid repeating keywords, ABAP allows you to “chain” statements together if these statements begin with the same keyword.
- The keyword is followed by a colon.
- Each chained statement component is divided by a comma.
- Blanks can be inserted before and after the separators (which may be colons, commas, or periods).
Comments :
- By placing an asterisk(*) in column 1, the complete line is designated as a comment line.
- By installing a double quotation mark(“) within a line the remainder of the line is considered a comment.
ABAP Program Attributes :
Create, maintain, and execute programs from the Repository Browser. The program attributes must be controlled before proceeding. ABAP programs must be allocated to a development class or, if applicable, identified as a local, private object. (This is a condition of SAPs Correction and Transport System.) The application, class, and type attributes are used for the management of ABAP programs. The application, title, status, and type attributes are used for the management of ABAP programs. The application, title, status, and type attributes are required. Other attributes are optional requirements. F1 and F4 are help keys that allow you to search for the significance of the attributes or a list of allowed input values. The ABAP editor’s Execute function is applied to start an ABAP program right from the editor. An ABAP module pool program is performed by applying transaction codes. ABAP stands for Advanced Business Application Programming and it is the programming language created by software company SAP to promote their various enterprise software program solutions that are applied in various business processes and departments. An ABAP developer's duties consist of designing various SAP modules with the aid of the ABAP programming language and tweaking it as per the client's requirements. The numerous aspects of the software development cycle such as planning, coding, implementation, testing, and support have to be performed by the developers. With the rising reliance on SAP solutions by most corporate agencies, the part played by an SAP ABAP developer cannot be emphasized enough as they implement the ideas put forward by analysts and consultants within a fully functioning enterprise software program.
Responsibilities of an SAP ABAP Developer :
Besides coding and developing an SAP module with the help of the programming language, ABAP developers perform several other tasks, some of which are given below :
Recognizing the demands and requirements of the clients by coordinating with their delegates and seeking transparency on every minute detail to provide the best possible solution. Consulting with specialists from different departments and those working on particular SAP modules such as SAP FI/CO, MM, HR, and BW to ensure a consistent experience for the various users on the client's side. Rewriting the code practicing the ABAP programming language based on the blueprint presented by the clients and performing regular tests on the usability of the code. Assuring that all programs are completed in the schedule as per the client's guidelines and allocating appropriate resources to achieve this. Rendering technical support to the end-users in the formation of troubleshooting guidelines and modifications to the system after it has been presented. Teaching the end-users and client representatives is also conducted at this stage of the SAP ABAP software life cycle. To stay modernized with the latest technological advancement and changes in the world of SAP development and adapting to these changes by self-training and research work.
SAP ABAP Developer Skill Sets :
Extended prior experience in the field of ABAP programming and SAP modules is an essential skill set required for any person to pursue a career as an ABAP developer. They must have good analytical and problem-solving skills to carry out their daily functions effectively. In-depth knowledge of SAP systems such as FICO, MM, and HR is also required for ABAP developers. Previous experience in object-oriented programming, ABAP lists, and other similar fields is also essential for jobs in this field. To communicate with many people such as clients, users, and other developers, they must hold excellent oral and written communication skills as well as good interpersonal abilities. They must have the ability to work well in a team-based environment as well as on their own since the organizational structure of ABAP developers differs from one company to another. Most ABAP developers operate in an office-based environment with excellent working conditions. They work in a 40-hour schedule with overtime hours whenever required by the client or the management. There may be a lot of psychological pressure through the time of project deadlines and reporting as deadlines are expected to be met at all costs.
SAP ABAP Certification Career Advancement :
They can move to the status of a senior ABAP developer based on good performance and experience in the organization. Advancement to managerial positions is also probable if the individual possesses the required qualifications and meets the criteria for the job opening. Thus, an ABAP developer's responsibilities include the various tasks associated with developing SAP modules and enterprise solutions for business organizations with the help of the ABAP programming language.