ABAP is not a module instead it is a feature used for designing custom reports and functionalities. ABAP stands for Advanced Business Application Programming and it is a high level programming used in SAP. Currently it can be used with JAVA and it is also the language of the SAP application server. It is the part of Net Weaver platform and its syntax resembles COBOL.
Features of ABAP Module
1. It is a part of SAP Basis component and its environment includes syntax checking, runtime system, code generation. It is based on the technological platform which can support all the SAP applications.
2. There are three levels of authentication Usernames and Password, SAP Logon tickets and Secure Network communication.
3. The normal way for completing transactions is by using the CALL TANSACTION or LEAVE TO TANSACTION method, where transaction means executing the ABAP program.
4. There are two different types of ABAP programs which are found in SAP it includes Reports and module pools. Reports are not static reports instead reports can be generated with a selection of parameters, and the program can be used to modify data as well. Module pools are complex patterns which are used for interaction of the user with a collection of screens and the screen displays the actual images.
5. The non executable programs are INCLUDE (the file can get included during the generation of a unit. It can be a subdivide of a large program), Subroutine pools (it contains a number of ABAP Subroutines and blocks of code which are invoked with PERFORMS and enclosed with FORM / END FORM statements), Functions (Function, End Functions are used to write programs), Objects classes and Interfaces (these are JAVA classes used to add attribute or features to a methods) and Types pools (Type pools can be constants and certain data types).
6. ABAP includes a Workbench which has the Editor, Dictionary, Menu painter, Screen painter, Function builder and Class builder.
7. Dictionary: The Dictionary contains the Metadata of the system and it has the reference to the tables and it includes the table, views related to the table data types and other objects. The dictionary can be used by the developers to display and manage the metadata.
a. Tables: The relational database structure is defined through tables and some tables are called transparent tables, but there are two types of non transparent tables which are pooled and clustered structures and it contains the primary keys and related information. The example of a clustered data is the header such as one used as the header of a sales document.
b. Indexes: Indexing is important for the table data to speed up the transactions, because indexes store the data in a way to enable easy searching. The data can have primary and secondary keys and other additional indexes.
c. Views: It provides quick access to the data found in many tables and it is used for certain selection conditions. The views can directly access data from a number of tables and depict in the needed format.
d. Structures: The structures can be in the form of C or C ++ language and it contains a number of fields.
e. Data Elements, Domains, search helps and Lock objects are various other dictionary objects.