Part 1:
- Explain SAP ABAP 3-tier architecture?
The Presentation layer consists of any input device that can be used to control SAP system. This could be a web browser, a mobile device and so on. All the central processing takes place in Application server. The Application server is not just one system in itself, but it can be multiple instances of the processing system. The server communicates with the Database layer that is usually kept on a separate server, mainly for performance reasons and also for security. Communication happens between each layer of the system, from the Presentation layer to the Database and then back up the chain.
- What do you understand by work area and internal tables in ABAP? Why do we use it?
They are temporary memory areas that are used to store the data at run-time. Internal tables and work areas represents the instances of database tables.
- What is use of transparent table in ABAP? How it is different from Pool tables?
Transparent table has one to one relation with the table in the database however Pool table has many to one relationship with database tables.
- Explain the use of insert and append statement in SAP ABAP?
Append statement is used to add a record at the end of internal table in work area.
Insert statement is used to add a record at specified location.
- How memory management happens for internal tables and work areas in ABAP?
8KB memory is allocated to internal table and work areas and it increases dynamically.
- Why do we use TYPES statement in ABAP programming?
TYPES is used to pass user defined structure in an ABAP program.
- What is the use of message command in a report? What are the different message types?
MESSAGE command displays messages defined by a message ID specified in the REPORT statement at the beginning of the program. The message ID is a 2 character code that defines which set of 1,000 messages the program will access when the MESSAGE command is used.
Message | Type | Consequences |
E | Error | The message appears and the application halts at its current point. If the program is running in background mode, the job is canceled and the message is recorded in the job log. |
W | Warning | The message appears and the user must press Enter for the application to continue. In background mode, the message is recorded in the job log. |
I | Information | A pop-up window opens with the message text and the user must press Enter to continue. In background mode, the message is recorded in the job log. |
A | Abend | This message class cancels the transaction that the user is currently using. |
S | Success | This provides an informational message at the bottom of the screen. The information displayed is positive in nature and it is just meant for user feedback. The message does not impede the program in any way. |
X | Abort | This message aborts the program and generates an ABAP short dump. |
- What is the use of lock objects?
Lock Object is a feature offered by ABAP Dictionary that is used to synchronize access to the same data by more than one program. Data records are accessed with the help of specific programs. Lock objects are used in SAP to avoid the inconsistency when data is inserted into or changed in the database. Tables whose data records are to be locked must be defined in a Lock Object, along with their key fields.
- What is lock mechanism? How do we create lock objects in ABAP?
Following are the two main functions accomplished with the lock mechanism −
A program can communicate with other programs about data records that it is just reading or changing.
A program can prevent itself from reading data that has just been changed by another program.
A lock request is first generated by the program. Then this request goes to the Enqueue server and the lock is created in the lock table. The Enqueue server sets the lock and the program is finally ready to access data.
Go to transaction SE11 to create lock objects.
- Why do we use logical blocks in ABAP program?
In SAP ABAP environment, modularization involves the organization of programs into modular units, also known as logical blocks. It reduces redundancy and increases program readability even as you are creating it and subsequently during the maintenance cycle. Modularization also enables reusability of the same code again.
- What are the different types of ABAP reports in SAP?
There are 7 ABAP report types in SAP and are available in reports attributes screen.
- Executable program
- Interface pool
- Function groups
- Include
- Class pool
- Module pool
- Subroutine pool
- What is a subroutine?
A subroutine is a reusable section of code. It is a modularization unit within the program where a function is encapsulated in the form of source code. You page out a part of a program to a subroutine to get a better overview of the main program, and to use the corresponding sequence of statements many times.
- What is the different between template and a table?
You can define table as dynamic and template as static.
- What are the data classes in ABAP?
Below data classes exists in ABAP programming as per data type −
- Master data: It is the data which is slowly changed.
- Transaction data: It is the data which is often changed.
- Organization data: It is a customizing data which is entered in the system when the system is configured and is then rarely changed.
- System data: It is the data which R/3 system needs for itself.
- Which function modules can be used to transfer the data using BDC programming?
- BDC_OPEN_GROUP
- BDC_INSERT
- BDC_CLOSE_GROUP
- What is the use of ABAP data dictionary?
ABAP data dictionary defines logical structures of the objects in application development and also tells mapping to the underlying relational database in tables/views.
- What is the different between ABAP and OOABAP? Why do we use OOABAP?
OOABAP involves object oritented programming concepts. ABAP is used to develop traditional programs in R/3, while OOABAP is used to develop smart forms, BADI’s, etc.
- What are the different ABAP editors? What is the used of different editors in ABAP?
In SE38 − This allows you to create programs and view online reports and basically to perform all the development of objects in this editor.
In SE80 − It supports additional features such as creating packages, function group, module pool, classes, and programs.
- What is pretty printer?
It is used to format ABAP code.
- Explain the difference between cluster tables and Pool table?
The data of several cluster tables is stored together in a single table cluster in the database. A cluster table is thus known only in the ABAP Dictionary, not in the database.
The data of several pooled tables are stored together as a table pool in the database.
- What is smart forms in SAP?
SAP Smart Forms tool can be used to print and send documents. This tool is useful in developing forms, PDF files, e-mails and documents for the Internet. The tool provides an interface to build and maintain the layout and logic of a form. SAP also delivers a selection of forms for business processes such as those used in Customer Relationship Management (CRM), Sales and Distribution (SD), Financial Accounting (FI) and Human Resources (HR).
The tool allows you to modify forms by using simple graphical tools instead of using any programming tool. It means that a user with no programming knowledge can configure these forms with data for a business process effortlessly.
- What is match code? How it is different from database index?
Match code objects can be built on cluster tables, transparent tables and pooled tables however a Database Index contains fields only from one table.
- What is Change and Transport management system in SAP?
The Change and Transport System (CTS) is a tool that helps you to organize development projects in ABAP Workbench and in Customizing, and then transport the changes between SAP Systems and clients in your system landscape.
- What is SAP memory and ABAP memory?
SAP memory is a global memory whereas ABAP memory is local memory.
- What is Web Dynpro and why it is used?
Web Dynpro (WD) for ABAP is the SAP standard user interface technology developed by SAP AG. It can be used in the development of web-based applications in the SAP ABAP environment that utilizes SAP development tools and concepts. It provides a front-end web user interface to connect directly to backend SAP R/3 systems to access data and functions for reporting.
Web Dynpro for ABAP consists of a run-time environment and a graphical development environment with specific development tools that are integrated in the ABAP Workbench (transaction: SE80).
- What are the benefits of using Web Dynpro?
The use of graphical tools significantly reduces the implementation effort.
Reuse and better maintainability by using components.
The layout and navigation is easily changed using the Web Dynpro tools.
User interface accessibility is supported.
Full integration in the ABAP development environment.
- In an ABAP program, to leave a program that you call?
LEAVE PROGRAM
- What are data dictionary objects?
- TABLES
- VIEWS
- DATA
- TYPES DOMAINS
- TYPE GROUPS
- SEARCH HELPS
- LOCK OBJECTS
- Where do you find data dictionary in SAP menu tree?
With SAP GUI open, you will be able find Data Dictionary in the SAP menu tree. This is done via the Tools menu. Open the ABAP Workbench and click the ‘Development’ folder, where the ABAP Dictionary can be found and double clicked. Alternatively, use the transaction code SE11.
To create a transparent table, which data dictionary object is selected?
Database table.
To avoid writing duplicate write statement and to save time what can be done?
You can use concept of chaining statements
- When you declare a variable in an ABAP program, what are the key points you should consider?
They must begin with a letter.
Can be a maximum size of 30 characters.
Cannot include + , : or ( ) in the name.
Cannot use a reserved word.
- You want to insert an integer field containing value 1 to a character field, how this can be done?
Conversion rules are predefined logic that determine how the contents of the source field can be entered into a target field. If one attempts to insert an integer field containing the value of 1 to a character string. The built in conversion rules will determine exactly how this should be done without any syntax or runtime errors.
- What is the use of data type C?
Data type C variables are used for holding alphanumeric characters, with a minimum of 1 character and a maximum of 65,535 characters. By default, these are aligned to the left.
- What is the use of CONDENSE statement in ABAP programming?
CONDENSE statement is used to remove blank characters.
- What is the use of breakpoints table in ABAP programming?
This breakpoint table can be very useful when one is in a large program with many break points set. It allows one to review the breakpoint and allows for the removal of breakpoints which are no longer desired.
- What is ABAP Web Dynpro? Why it is used?
Web Dynpro is standard SAP UI technology that allows you to develop web applications using graphical tools and development environment integrated with ABAP workbench. Using graphical tools reduce the implementation effort and you can better reuse and maintain components in ABAP workbench.
- How do you access ABAP Web Dynpro workbench? What is object list and its component?
To access Web Dynpro runtime environment and graphical tools in ABAP workbench, you can use Transaction code: SE80
Object list contains −
- Dynpro Component
- Controller
- Interface
- View
- Web Dynpro application
- What are the benefits of using Web Dynpro?
You can easily maintain and reuse components for development.
Less implementation time as use of graphical tools.
You can easily change layout and navigation using graphical tools.
Easy structure changes.
With use of data binding, you can use automatic data transport.
Ease of integration in ABAP environment.
- What is MVC programming model in Web Dynpro?
Web Dynpro applications are based on MVC model, whereas −
Model
This allows the access to back end data in a Web Dynpro application.
View
This is used to ensure the representation of data in a web browser.
Controller
This is used to control communication between Model and view where it takes input from users and get the processes data from model and displays the data in browser.
- What is a view in Web Dynpro component?
Each Web Dynpro application contains at least one view and it is used to define layout of a user interface. Each view consists of multiple user element and a controller and context.
The controller is used to process user request and processing of data and context contains data to which elements of view are bound.
- What is the use of inbound and outbound plug in Dynpro component?
The inbound and outbound plugs are part of view controller and inbound plug defines the starting point of view and outbound plug tells the subsequent view to be called.
- Why do we use window in Web Dynpro application development?
In Web Dynpro, window is used to use multiple views or view sets. A view can only be displayed when it is embed in a view and a window always contain one or more views which are connected by navigation links.
- Why do we use events and actions in Web Dynpro?
You can create events to enable communication between controllers. You can allow one controller to trigger events in different controller. All events that you create in component controller they are available in component.
- What is the URL of Web Dynpro application? How it is generated?
In a Web Dynpro application, url is automatically generate. You can find the URL of application in Properties tab. URL structure can be of two types −
SAP namespace
<schema>://<host>.<domain>.<extension>:<port>/sap/bc/webdynpro/<namespace>/<application name>
Custom namespace
<schema>://<host>.<domain>.<extension>:<port>/abc/klm/xyz/<namespace>/webdynpro/<application name>
- How do you manage different object versions in a Web Dynpro application?
You can use version management to manage older version of an object, compare versions or you can also reset them. In version management, you can store different versions of ABAP development objects.
In an ABAP workbench, you can compare different versions of −
- Views
- Windows
- Controllers
- Can we store a version of abject without releasing it?
Yes
- What is the use of messages in Web Dynpro?
In ABAP Workbench, you can also create and show messages that contain information for end users of Dynpro application. These messages are displayed on the screen. These are user interactive messages that displays important information about Web Dynpro application.
- What are the different scenarios that can be used to create interactive forms in Web Dynpro?
- Interactive Scenario
- Print Scenario
- Offline Scenario
- Using digital signature
- What is SAP list viewer in Web Dynpro application development?
SAP List viewer is used to add ALV component and provides a flexible environment to display lists and tabular structure. A standard output consist of header, tool bar and an output table and user can make the settings to add column display, aggregations, sorting options using additional dialog boxes.
Part 2:
1) What is ABAP?
The term ABAP stands for Advanced Business Application Programming. It is a high-level programming language created by the German software company SAP SE. It is currently positioned together with Java as the programming language for the SAP NetWeaver Application Server which is part of the SAP NetWeaver platform for building business applications.
It is one of the many application-specific languages of the fourth generation and was developed in the 1980s.
2) Describe the SAP R/3?
It is a 3 tier architecture consisting of 3 layers.
21.7M
457
Java Try Catch
- Presentation
- Application
- Database
It’s a client-server architecture. The term R stands for Real-time system, and 3 represents the 3-tier architecture.
3) How many ways can a SAP system be accessed?
Users can access a SAP system in two ways.
- Through SAP GUI
- Through a Web browser
This is called a front-end. User can install only the front-end, not the application databases server. Front-end accept the user’s requests to the database server and application servers.
4) What are the Pooled and Cluster Tables?
Pooled tables and clusters tables are special table types in the ABAP Dictionary. We can store the data from several different tables into a table pool or table cluster. Tables assigned to a table pool or table cluster denoted as pooled tables or cluster tables.
We should use a table pool, especially for storing internal control information. The control information can be screen sequences, program parameters, temporary data, and continuous texts such as documentation.
Commercial relevance data is stored in transparent tables.
5) What is the Major difference between pool tables and transparent tables?
The major difference between the pool tables and the transparent tables is that the pool tables have many to one relationship with the database table, on the other hand, the transparent tables have one to one relationship with the same.
6) Explain Data Dictionary in ABAP?
The ABAP Dictionary is used to create and manage data definitions (metadata). The ABAP Dictionary allows the essential description of all the data used in the system without redundancies. New or updated information is automatically provided for all the system components. This ensures data integrity, data security, and data consistency.
The ABAP Dictionary supports the definition of user-defined data elements, structures, and table types. You can create the related objects (tables or views) in the basic relational database using these data definitions. The ABAP Dictionary describes the logical structure of the objects which is used in application development. These objects show the connectivity with the underlying relational database in tables or views.
The ABAP Dictionary also supports some standard functions for editing fields on the screen like assigning input help to a screen field.
7) Explain some essential objects in ABAP Dictionary?
Some essential object types in the ABAP Dictionary are as follows.
Tables
Tables are defined independently in the ABAP Dictionary of the database.
Views
Views are rational views of more than one table. The view structure is defined in the ABAP Dictionary. An overlook of the database can be created from this structure.
Types
The type structure can be defined globally in ABAP programs. Changes to a type are activated automatically in all the programs using the type.
Lock objects
Lock objects are used to synchronize access to similar data by the various user.
Domains
The Domain can combine the different fields having the same technical type. A domain defines the value range of all table fields and structure modules that refer to this domain.
8) Define Structure in ABAP Data Dictionary?
The structure is a data object that is made up of components of various data type stored respectively in the memory. Structures are Just like a user-defined data type. It is like a table for the Data Dictionary and can be addressed from ABAP programs. The structure holds data at runtime.
9) What are the internal tables and Work Area?
Internal tables and work areas are temporary memory areas which are used to store data at run-time. These are the instances of database tables and Internal tables. Work Area is a standard data type object. These tables exist only during the execution of the program. It is used to perform table operations on subsets of database tables to re-organize the contents of database tables according to users need.
10) What is ITS? What are the merits of ITS?
ITS stands for Internet Transaction Server. It creates an interface between the HTTP server and R/3 system to convert screen provided data by the R/3 system into HTML documents and vice versa.
Merits of ITS
- A comprehensive web transaction can be developed and tested in the R/3 system.
- It acts on all transaction components, including those used by the ITS outside.
- The advantage of automatic language processing in the R/3 system that we can utilize the language-dependent HTML documents at runtime.
11) What is SAP Script? Describe its components.
SAP script is a text-processing system of the SAP System’s itself. It is much like other leading text-processing systems. It is used to print preformatted text in respective forms.
SAP scripts is a SAP tool used for word processing. SAP Script has the following components:
Standard text
It is similar to standard normal documents.
Layout sets
Layout set consists of the following components:
- Format Components of Sap Scripts are Windows and pages, Paragraph formats, Character.
- Forms in the R/3 system.
- Every layout set contains a Header, paragraph, and character string in ABAP/4 program.
12) What is a foreign key relationship?
A foreign key relationship can be defined between tables and should be explicitly defined at the field level. Foreign keys are used to make sure the consistency of data. The entered data must be checked against existing data to ensure the contradiction. The Cardinality must be specified while defining a foreign key relationship. Cardinality represents how many dependent records and referenced records are possible.
13) Mention the various databases integrities.
The different types of database integrities are as follows.
- Semantic Integrity
- Primary Key Integrity
- Relational Integrity
- Value Set Integrity
- Operational Integrity
- Foreign Key Integrity
14) Differentiate between ABAP memory and SAP memory.
The ABAP memory is treated as a memory area in which the ABAP program is availed in the internal section. Data is stored in the program calls. These program calls allow the data to be passed from one program calls to another.
It is possible to pass the data from one session to another by the SAP Memory. All the sessions of SAP GUI have suspected to the memory area known as SAP Memory. Data transfer from one session of the programming system to another session is effortless.
15) Explain BADI in ABAP.
The term BADI stands for Business Add-In. It is a new SAP Object Oriented enhancement technique. BADI is used to implement our business functionality to the existing SAP standard functionality.
BADI’s are available in SAP R/3 from the system release version 4.6c
BADI follows the Object-Oriented approach to reuse the enhancement technique. We can use a BADI many times.
16) What are the two statements which are required in an ABAP program to output an icon using a write statement?
There are two statements which are required in the ABAP program:
INCLUDE:
Include Statement is a required statement for the program.
WRITE:
The syntax of the Write Statement is given below:
- WRITE AS ICON
17) How to insert a line into ABAP internal tables?
We can insert line or lines to ABAP internal tables using the INSERT statement . To insert a line, first put the values which we want to insert in a work area then use the INSERT statement to insert the values in the work area to the internal table.
The syntax for inserting a line into an internal table:
- INSERT <work area> INTO TABLE <internal table>.
- OR
- INSERT <work area> INTO <internal table> INDEX <index>.
18) What is Web Dynpro for ABAP?
Web Dynpro (WD) is a SAP web interface model for ABAP. It is used to develop web application in SAP. It provides a front-end user interface to connect directly to backend SAP R/3. It accesses data and function for reporting.
19) What do you mean by BDC (Batch Data Communications) programming?
BDC is an automatic procedure to forward massive or external data into the SAP system. Queue file is the essential component of the transfer. Queue files receive the data through batch input programs and groups that are affiliated into ‘sessions.’
20) Describe the data classes?
The data classes can be classified into the following classes.
Master Data:
The data in the master class rarely change.
Transaction Data:
In the Transaction class, the data can be changed frequently.
Organization Data:
In Organize Data class, the data is a customized data and is entered into the system when the system is configured. It is rarely changed.
System Data:
The R/3 system itself uses this data.
21) What are the different types of LUWs?
A LUW (Logical Unit of Work) is an attached sequence of database operations which must be executed either entirely or not at all. Thus, it constitutes a unit for the database system.
There are two types of LUW are:
DB LUW
A database LUW is a method used by the database to ensure data consistency. It is an attached sequence of database operations that ends with a database commit. If a database LUW has been successfully executed, the database will be in a consistent state. If a database LUW contains an error, then all of the database affected by this error. This makes the database as it was during the startup database.
SAP LUW
It is a logical unit consisting of dialog steps. The changes of these steps are written to the database in a single database LUW is called an SAP LUW. A SAP LUW can span several dialog steps. It can be executed using a series of different work processes.
22) Mention some important events in ABAP programming.
Below are some important events in ABAP programming:
LOAD-OF-PROGRAM
This is the first event to be called before any of the other ABAP code is processed.
INITIALIZATION
It is called after the ABAP selection screen code has been processed. This event is used to initialize input fields of the selection screen or change the default values of these.
AT SELECTION-SCREEN OUTPUT
This event is called just before the selection screen is displayed. It can be used to manipulate the actual selection screen attributes using the loop at screen functionality. This event allows functionality like hiding fields, grey them out, so they are output only or make them intensified, etc.
TOP-OF-PAGE
This event is called when a new page is started with an ABAP list. It is used to display a header for the list.
TOP-OF-PAGE During LINE_SELECTION
This event is also activated while creating detailed lists.
END-OF-PAGE
This event is displayed at the end of each page.
23) What are the Differences between Macro and Subroutine?
Macros are only used in the program in which they are defined. The definition of macros can be expanded at compilation/generation.
Subroutines (FORM) can be called from any program, whether they are defined in or other programs.
A MACRO is an abbreviation for some lines of code that are used more than one time or two. It is a local subroutine.
Since debugging the MACRO is not possible, so we prevent the use of them. Use a FORM, if the subroutine is used as local only. For external use, use a FUNCTION.
24) Specify the types of Data Dictionary Objects.
There are various types of objects that are used in the SAP Data Dictionary space. A list of such objects is as follows.
- Tables
- Views
- Domain
- Data Element
- Type Groups
- Search Helps/Math Code Objects
- Lock Objects
- Structures
- Table Types
25) Differentiate Database Index and Match Code.
Database Index contains fields from only one table on the other hand; Match Code Objects can be built on cluster tables, transparent tables, and pooled tables.
26) Why do we use events and actions in Web Dynpro?
In Web Dynpro, events can be created to establish a connection between controllers. With the connection, one controller can be allowed to trigger events in other controllers. All events are organized in component controllers and available in particular components.
27) What is a Subroutine?
The subroutine is a reusable section of code. It is a customized unit within ABAP programs where functions are encapsulated in the form of their source code. A part of a program can be called out to a subroutine for getting a better overview of the main program.
28) Difference between user exit and BADIs?
User exit is used for single implementation, and it is a procedural approach. In the case of BADIs, they are used for multiple implementations and object-oriented approaches.
Here multiple implementations mean Reusability of the object.
29) What are some Control break events in ABAP?
Some control break events are as follows.
AT-FIRST:
This event is used to execute the statements before records are processed.
AT-LAST:
This event is used to execute the statements after all records are processed.
AT-NEW:
This event is used to execute the statement before the collection of records are processed.
AT-END:
This event is used to execute the statements after processing of a group of records.
30) What does an extract statement do in the ABAP program?
An extract dataset contains a sequence of records. These records may have different structures.
A record type is a format of all records with the same structure. The first extract statement creates the extract dataset and adds the first extract record to it.
Part 3:
1) What is SAP ABAP?
SAP is a type of software known as ERP (Enterprise Resource Planning) that large company use to manage their day to day affairs. ABAP (Advanced Business Application Programming) is the coding language for SAP to develop RICEFW objects. (Reports, Interfaces, Extensions, Forms and Workflows).
2) What do you mean by an ABAP data dictionary?
To describe the logical structures of the objects that are used in application development ABAP 4 data dictionary is used. It is also used to show the underlying relational database in tables.
3) Explain the difference between pool tables and transparent tables?
Transparent tables: It has one to one relation with the table in the database. Its structure corresponds to single database field.
Pooled tables: It has many to one relation with the table in the database. Pooled tables are stored at the database level.
12M
115
- a) Basic List: For simple reports
- b) Statistics: For Percentage, Average etc.
- c) Ranked List : For analytical reports
4) What do you mean by BDC (Batch Data Communications) programming?
It is an automatic procedure to transfer large or external data into SAP system. ‘Queue file’ is the central component of the transfer, which receives the data through batch input programs and groups that are associated into ‘sessions’.
5) Describe the data classes?
The data classes are classified into following classes
Master Data: The data in this class seldom change
Transaction Data: The data can be changed often in this class
Organization Data: This data is a customized data and is entered in the system when the system is configured. It is rarely changed.
System Data: This data is used by R/3 system itself
6) What are the internal tables?
Internal table exists only when the program is run. It is used for performing table calculations on subset of database tables and also for re-organizing the content of database tables as per the users need.
7) List down the functional modules used in sequence in BDC?
There are 3 functional modules which are used in sequence to perform data transfer successfully using BDC programming. They are
- a) BDC_OPEN_GROUP
- b) BDC_INSERT
- c) BDC_CLOSE_GROUP
8) What is a foreign key relationship?
To ensure the consistency of data, foreign keys are used. The relationship established between the tables and must be explicitly defined at field level. Data entered should be checked against the existing data to ensure that there is no contradiction. Cardinality has to be specified while defining foreign key relationship.
9) In ABAP what are the differences between table and structure in data dictionary?
The difference between structure and table is
- a) Data can be stored physically in Table, but a structure cannot
- b) Structure does not have primary key but table can have
- c) Table can have the technical attribute but the structure does not have
10) What is Smart Forms?
Smart forms allow you to create forms using a graphical design tool.
11) What are the components of SAP scripts?
For SAP, SAP scripts are a word processing tool. It has a function like standard text and layout sets. Its layout set consists of: Windows and pages, Character formats, Paragraph formats etc.
12) How to create ‘table cluster’?
- a) In ABAP dictionary, select object type Table, enter a table name and choose create
- b) A field maintenance screen for the table is displayed. Table type Transparent table, set it as a default
- c) Make the necessary entries in the short description and delivery classified on the Attributes page. Then define the fields of the table.
- d) Proceed as when creating a transparent table. Now save your entries
- e) Now choose EXTRASàChange table category
- f) When a dialogue box appears you have to select the table type ‘Pooled table’ or ‘Cluster table’
- g) After selecting the table, return to the field maintenance screen for the table. Field pool or cluster name is displayed on the Attributes tab page in addition to the standard fields.
- h) Now enter the name of the table cluster or table pool to which you want to assign the cluster table.
13) How can you format the data before write statement in the report?
By using the loop event the reports output can be formatted
- a) .at first
- b) .at new
- c) .at last
14) Explain the difference between Template and Table?
The difference between the table and template is that, table is a dynamic and template is a static.
15) Mention what is ALV programming in ABAP? When is this grid used in ABAP?
ALV stands for Application List Viewer. To enhance the output of the report, SAP provides a set of ALV function modules which can be used, and it also improves the functionality and readability of any report output. It is an efficient tool used for arranging the columns in a report output.
16) When do we use End-of-selection?
End of the selection event is mostly used when we are writing HR-ABAP code. In the HR-ABAP code, data is retrieved in the start of selection event and printing on the list and all will be done at the end of the selection event.
17) Mention the difference between ABAP and OOABAP? In what situation do you use OOABAP?
ABAP is used to develop traditional programs in R/3, while OOABAP is used to develop BSP/ PCUI applications and also anything that an involved object oriented like BADI’s and SmartForms etc.
18) What is table buffer? Which type of tables used this buffer?
Over here, buffer means memory area, table buffer means the table information is available on the application server. When you call data from database table, it will come from application server. Transparent tables and pool tables are buffered, while cluster table cannot be buffered.
19) What is the use of ‘pretty printer’?
To format the ABAP code ‘pretty printer’ is used.
20) What is the difference between ‘Type’ and ‘Like’?
‘Type’: You assign data type directly to the data object while declaring.
‘Like’: You assign the data type of another object to the declaring data object.
‘Type’ refers the existing data type while ‘Like’ refers to the existing data object.
21) What are the different ABAP/4 editors? What are the differences?
The 2 editors are SE38 and SE80 and both have the ABAP editor in place. In SE38 , you can create programs and view online reports and basically do all the development of objects in this editor. In SE80, there are additional features such as creating packages, function group, module pool, classes, programs and BSP applications.
22) Explain the difference between dialog program and a report?
A report is an executable program; dialog is a module pool program. It has to be executed via a transaction only. Dialog programming is used for customizations of screens.
23) What is lock object?
To synchronize access of several users using same data Lock objects are used.
24) How data is stored in cluster table?
A cluster table contains data from multiple DDIC tables. It stores data as name value pair.
25) How can you debug a script form?
To debug a script form, you have to follow
SE71–>give the form name->utilities->activate debugger
26) What are different types of data dictionary objects?
The different types of data dictionary objects are:
- a) Tables
- b) Views
- c) Domain
- d) Data Element
- e) Type Groups
- f) Search Helps/Matchcode Objects
- g) Lock Objects
- h) Structures
- i) Table Types
27) What are the ways you can do the tuning? What are the major steps will you use for these?
Tunning can be done in three ways disk i/o, SQL tunning and memory tunning. Before tunning, you have to get the status of your database using oracle utility called statpack and tkprof .
28) In the ‘select’ statement what is ‘group by’?
To fetch the data from the table by the specified field Group by Clause is used.
29) What is dispatcher?
A control agent referred as SAP dispatcher, manages resources for the R/3 applications.
30) Mention what are the two methods of modifying SAP standard tables?
There are two methods for modifying SAP standard tables
- a) Append structures
- b) Customizing includes
31) What is the difference between a ‘Database index’ and a ‘Match code’?
‘Database Index’ contains fields from one table while ‘Match Code’ contain fields from several tables. Match code objects can be built on cluster tables, transparent tables and pooled tables.
32) Explain the benefits of modularization technique?
By using modularization techniques, you can avoid redundancy if the program contains the same or similar blocks of statements or it is required to process the same function several times. By modularizing the ABAP/4 programs, we make them easy to read and improve their structure. Modularized programs are also easier to maintain and update.
33) How can you create callable modules of program code within one ABAP/4 program?
- a) By defining Macros
- b) By creating include programs in the library.
34) What are different types of parameters? How can you distinguish between different kinds of parameters?
The different types of parameters are
- a) Formal Parameters: It is defined during the definition of subroutine with the ‘FORM’ statement
- b) Actual Parameters: It is specified during the call of a subroutine with the ‘PERFORM’ statement
You can distinguish different kind of parameters by their functionality. Input parameters are used to pass data to subroutines, while output parameters are used to pass data from subroutines.
35) What are the different databases Integrities?
- a) Semantic Integrity
- b) Relational Integrity
- c) Primary Key Integrity
- d) Value Set Integrity
- e) Foreign Key Integrity
- f) Operational Integrity
Part 4:
- What is SAP ABAP?
SAP(Systems, Applications, and Products in data processing) is an ERP(Enterprise Resource Planning) type of software that is used to manage the daily affairs of a large company. Advanced Business Application Programming or ABAP is the fourth-generation programming language and is used to allow the mass-processing of data in SAP business applications. It is possible to build enterprise applications for a larger business and financial institution with the help of the SAP ABAP platform. So, SAP ABAP will protect from organizational data breaches and security threats to information leakage.
SAP ABAP is suitable for integrated applications that a company will use to collect, manage, store, and interpret data from various functional areas. It will act as a single data source and share data within all the units of an organization. It helps the customers for running their business with greater accuracy.
- What is meant by data dictionary in ABAP?
- ABAP data dictionary represents metadata(i.e. data about data) that is present inside the SAP database in addition to the metadata maintained by the database. Data dictionary allows the necessary description of all the data without redundancies that are used in the system. New or updated information will be provided automatically for all the system components. This ensures data security, data consistency, and data integrity.
- It is used to describe the logical structures of certain objects that can be used in the development of the ABAP/4 application and it can also display the underlying relational database in tables.
- The data dictionary is useful in creating and managing data definitions as well as in creating Tables, Domains, Views, Data Elements, and Types. Also, it supports a few standard functions for editing screen fields like assigning input help to the field of a screen.
- Differentiate between transparent and pool tables.
Transparent Table | Pool Table |
It has one to one relation with the database table | It has many to one relationship with the database table |
It contains only a single table | It contains a large number of small tables |
Stores master data | Stores customizing data or system data |
A secondary index can be created | A secondary index cannot be created |
Can be accessed using Open and Native SQL | Can be accessed only using Open SQL |
The database table will have the same name, the same number of fields, and the same field names | The database table will have a different name, different number of fields, and different field names |
- What is Web Dynpro for ABAP?
Web Dynpro(WD) is an SAP standard user interface technology for ABAP and is used for developing the web-based application in SAP using the development concepts and techniques of SAP. It provides a front-end web user interface for connection with backend SAP R/3 systems to access data and also for reporting. It has a graphical development environment along with a runtime environment that has specific development tools that are combined in the ABAP Workbench.
- What are smart forms in SAP?
SAP Smart Forms is a tool used for printing and sending documents. It is useful in the development of forms, e-mails, PDF files, and documents for the Internet. This tool offers an interface for building and maintaining the layout and logic of a form. SAP delivers a form selection for business processes such as those used in Sales and Distribution(SD), Customer Relationship Management(CRM), Human Resources(HR), and Financial Accounting(FI).
This tool permits you for form modification with the help of simple graphical tools rather than using any programming tool. It implies that a user without any programming knowledge will be able to easily configure these smart forms with data for a business process.
- What are the different ABAP/4 editors?
The two ABAP/4 editors are:
- SE38: It allows you for the program creation and to view the online reports and essentially performs all the object development in ABAP/4 editor.
- SE80: It supports additional features like the creation of packages, module pool, function group, programs, classes, and BSP(Business Server Page) applications.
- What is ITS in SAP? What are the merits of ITS?
ITS(Internet Transaction Server) in SAP is the necessary link between the internet and the SAP R/3 system. It is integrated into the kernel that belongs to SAP Netweaver Application Server. ITS creates an interface between the R/3 system and HTTP server for converting screen-provided data by the R/3 system into HTML files and vice versa. Because of integration with ITS, a web browser is able to do direct communication with an SAP System. ITS is accessed with the help of “Internet Communication Manager”.
Merits of ITS are:
- It is possible to develop and test the comprehensive web transaction in the R/3 system.
- It acts upon all transaction components, including those components used outside of ITS.
- In the R/3 system, using automatic language processing utilization of language-dependent HTML documents can be done during runtime.
- Explain about lock objects in SAP ABAP.
Lock Object is an ABAP Dictionary provided feature used for synchronizing the access to the same data by multiple users or programs. Lock Objects in SAP ABAP are used for avoiding inconsistency during data insertion or modification in the database. Tables whose data records are gonna locked must be defined with their key fields in a Lock Object.
Consider an example for the usage of Lock Object, suppose a travel agent wants to book a place in flight. Also, the customer wishes to fly to a particular city on a particular day with a particular airline. The booking will be possible only if there exists a free place on the flight. The database entry for the flight must be locked through access prevention for other transactions to avoid the possibility of overbooking. This will make sure that a user can find out the number of free places, do the booking, and change the available number of free places without the data being changed at the same time by another transaction.
- Explain the types of function modules in SAP ABAP.
Function Modules are encapsulated procedures in ABAP and are grouped in Function Groups. Function modules are created with the help of Function Builder(transaction SE37). The type of function module relies on the type of processing.
Function module types are:
- Regular function module: It will be executed immediately and synchronously on the current SAP system of the user. It is the default option.
CALL FUNCTION funcname { parameter_list | parameter_tables }.
- Remote-enabled function module: It is called by remote systems(R/2 or R/3) that utilize the RFC protocol. For example, it is possible to define a Remote Function Module in an EWM(Extended Warehouse Management) system which will be later called by your ERP(Enterprise Resource Planning) system for obtaining further information related to stock levels or shipment details.
CALL FUNCTION funcname DESTINATION dest parameter_list.
The above statement calls the target system mentioned under dest synchronously. The unique name of a destination should be used for the parameter dest.
- Update function module: This module will not be executed immediately. This update process will be triggered by the COMMIT WORK statement. The ROLLBACK WORK statement is responsible for deleting all update function module registrations.
CALL FUNCTION update_function IN UPDATE TASK
[EXPORTING p1 = w1 p2 = w2 …]
[TABLES tab1 = itab1 tab2 = itab2 …].
IN UPDATE TASK will bundle database modifications into a single database called LUW. Since the update happens asynchronously, it is proved beneficial for performance.
- BAPI(Business Application Programming Interface) function module: BAPI is a Function Module that provides a standard interface for business objects available in SAP. Common usage of BAPI is to create/delete/update/read business objects such as Business Partners, Purchase Orders, or Sales Orders.
- What do you mean by the workflow in SAP ABAP?
In the SAP system, workflows in business are used for executing business processes in applications. Workflows are the SAP system’s essential component that helps in business process design, it can be either a simple process or a complex repeated business process. These are predefined in the SAP R/3 system and the user is allowed to create their new workflows. It also permits the users for managing business processes in the most efficient manner.
Workflows will make sure that the correct information will be sent to the right person at the right time in a proper sequence. It is a tool for business process automation and will uniformly work across all the applications. It is suitable for business processes that involve multiple people or a group of people.
- What are Smart forms in SAP ABAP?
The smart form allows to create, design, and maintain forms for bulk printing in SAP Systems. SAP smart forms will support printers, e-mail, fax, or the Internet as an output medium. We can embed images, texts, barcodes, tables, and ABAP codes with smart forms. On smart form activation, a function module will be generated that an ABAP program needs to call. SMART STYLES transaction is helpful in defining the paragraph and character formats(barcodes, fonts, etc).
Advantages of smart forms are:
- It helps to adapt the forms with the help of a graphical user interface and there is no need for programming knowledge.
- During smart form activation, the system will automatically generate the function module.
- For making any changes we need to use the Cut & Paste, Drag & Drop. These actions do not include the writing of coding lines or using a scripting language.
- It is possible to insert the static and dynamic tables using smart forms.
- It permits the user to include graphics, that will be shown as a part of the form or as background graphics. It is possible to suppress the background graphics by the user as and when it is necessary.
- Explain about interfaces in SAP ABAP.
Interface in SAP ABAP is an independent structure that is used when two similar classes have the same method name, but the functionalities of each will be different from each other. It looks similar to classes, but the method defined in an interface needs implementation in a class for extending the scope of that class. Interfaces, as well as inheritance features, will provide a base for polymorphism, because a function defined in an interface may act differently in various classes.
Following is the syntax for the creation of an interface:
INTERFACE <interfac_name>.
DATA…..
CLASS-DATA…..
METHODS…..
CLASS-METHODS…..
ENDINTERFACE.
In the above given syntax, <interfac_name> stands for the interface name. The DATA and CLASS-DATA statements are used for instance and static interface attributes definition respectively. The METHODS and CLASS-METHODS statements are used for instance and static interface methods definition respectively. Here, the interface definition will not include the implementation class, so adding the DEFINITION clause in the interface declaration is not mandatory.
- What is the type group in SAP ABAP?
A type group is an ABAP Dictionary-managed ABAP program that is initiated by the TYPE-POOL statement and that consists of ABAP statements that define globally visible constants, data types, and macros. A type group and its constants, data types, and macros do not have semantic attributes excluding short text and any comments in the source code. The type group name can have only five characters, must begin with a letter, and can have numbers or letters or underscores.
For example, one type group frequently used in the ABAP program is ABAP itself, which consists of multiple low-level constants and types. The disadvantage of this group is loading the entire type group is necessary, even if only a few constants and types are required.
- How can we insert a line into ABAP internal tables?
With the help of the INSERT statement, it is possible to insert a line or lines into internal tables of ABAP. For inserting a line, you need to put the values which we wish to insert in a work area, then later you can use the INSERT statement for inserting the values in the work area then into the internal table.
The general format for a line insertion into an internal table is:
INSERT <work area> INTO TABLE <internal table>.
OR
INSERT <work area> INTO <internal table> INDEX <index>.
- What is SAP Script? Describe its components.
SAP script is a text-processing system that belongs to the SAP System. It is used for printing pre-formatted text in the corresponding forms.
SAP Script has the following components:
- Editor: It will be used to enter and edit the lines of a text.
- Styles and layout set: It is mainly used for print layout. I will be created using the corresponding maintenance transactions independent of the individual texts and will be allocated to the texts later.
- Composer: It is a central output module and is invisible to the outside.
- Programming interface: It permits you for adding SAP script components into your application programs and for controlling the layout set output from within the programs.
- Database tables: It will be used for styles, layout sets, and storing texts.
- Explain about types of buffering in SAP ABAP.
Three types of buffering can be found in SAP ABAP, that can be configured for a database view or database table in ABAP Dictionary. They are:
- SAP Buffer – Single Record Buffering:
In this type of buffering, only actually accessed rows in the table will be buffered. It needs less space in the buffer when compared to generic or full buffering. But it requires more amount of administration work and direct database access. If SELECT SINGLE is used for accessing a non-buffered row, it tries to load the row. If the row is not available, this will be noted in the buffer and the database will not again access the next time SELECT SINGLE has been used. - SAP Buffer – Generic Buffering:
In this type of buffering, SAP buffer will be loaded with all rows that match a row(on which read is performed) in a left-justified part of the primary key. The count of key fields covered is mentioned within the definition and will be always less than the key field’s total count. Altogether, these key fields are considered as the generic key. Each generic area will be managed similarly as standalone views or tables whose primary key will be the generic key and that are fully buffered. - SAP Buffer – Full Buffering:
In this buffering, on reading a row, all rows in the view or table will be loaded into the SAP buffer. The buffered view or table will be either completely in the buffer or not at all. In the buffer, the buffered data records will be sorted on the Key of the view or table basis. Optimized access needs the left-justified part of the primary key/the secondary index fields to be as large as possible. If not, the buffer will be scanned in a linear format.
- Difference between Type and Like in ABAP.
‘Type’ | ‘Like’ |
You can assign the data type directly during the declaration of the data object | You can assign the data type of one object to another during the declaration of the data object. The datatype will be indirectly referenced here. |
It is used when user-defined objects connect with SAP system data type | It is used when data objects connect with the other data object |
Type keyword is useful in referring to the data type | Like keyword is useful in copying the existing data object properties |
- What is meant by ALV(Application List Viewer) programming in SAP ABAP?
The ALV or Application List Viewer is used for improving the report output. We can avail the set of ALV function modules with the help of SAP and those will be used to improve the functionality or readability of any output of the report. It is a relevant tool used for arranging the columns in the output of a report.
Application developers can quickly implement structured dataset displays with the help of ALV, by providing three different tools of ALV, one each for the display of Tree structures, Simple and two-dimensional tables, and Hierarchical-sequential lists.
The SAP ALV provides application developers with:
- An object-oriented API for all ALV tools.
- The API which is coherent.
- Detecting the error during programming as early as possible.
- Functions for accessibility will be in integration with ALV, which implies that no need of providing these functions yourself while using your application.
- What are internal tables in SAP ABAP?
Internal tables are temporary memory areas that exist only during run-time for storing data at run-time. It can be used only on a subset of database tables for performing calculations related to the table. It re-organizes the content of the database according to the requirement of the user.
- Explain the advantages of the modularization technique.
Modularization is breaking the application code into smaller parts, so that maintenance will be easier. Consider an example where you want to implement the same logic like the addition of two numbers in multiple parts of the same program, then put the logic within a modularization unit and this modularization unit can be called wherever you want to add two numbers.
Advantages of modularization techniques are:
- Modularization will eliminate redundancy if the program is having similar statement blocks or it needs to process the same function multiple times. Thus it increases the code reusability.
- Using this modularization technique, we can make the program easier to read and improve the program structure.
- Modularized programs will be easier to maintain, update, and debug.
SAP ABAP Interview Qs for Experienced
- Explain the 3-tier SAP ABAP architecture.
The SAP ABAP 3-tier architecture has 3 major layers. They are:
- Presentation Layer: It is an interface or program known as “sapgui.exe” installed on a PC or Workstation of a user. This interface will accept user inputs in the form of mouse clicks, function keys, or keystrokes and will send the request that needs to be processed by the application server. The application server will send the result back to the interface and output formatting will be done in order to display it to the user.
- Application Layer: This is an executable set that togetherly does ABAP/4 program interpretation and will also be able to do input/output management for them. When the application server gets started each and every executable will get started at the same time and when the application server stops, they shut down together. The details about the number of the process that began during the starting of the application server will be specified in a single configuration file known as Application Server Profile. The application server is in existence for interpreting and running the ABAP/4 programs. It is possible for an ABAP/4 program to start an executable on the presentation server but the execution of them is not possible. When an ABAP/4 program makes a request for the data from the database, then that request will be formatted by the application server, and finally, the formatted request will be sent to the database server.
- Database Layer: This is an executable set that will accept requests for the database that came from the application server. The requests will be passed on to the database, it will be processed and information will be sent back to the database server, from there it will be later passed on to the application server. The application server will pass on this database retrieved information to the ABAP/4 program.
- What is Transport Request in SAP?
- Transport Requests(TRs) are a ‘Container or Collection’ type of change that can be done in the development system. Also, the information related to the requested category, type of change, the target system, and the purpose of transport will be recorded. Transport requests are also called Change Requests.
- Every transport request will have multiple(one or more) change jobs(change Tasks). Tasks will be stored inside a TR, in the same way as multiple files will be stored in some folder. TR will be released only once after the completion/release/deletion of all the tasks inside a TR.
- Change Task is an object list that has gone through a modification by a specific user. Each task must be assigned to(and released by) a single user only. Anyways, multiple users will be assigned with each Transport Request. Tasks cannot be transportable by themselves, it can be done only as a part of TR.
- What are OSS notes in SAP ABAP?
- OSS(Online Service System) notes are a part of an online SAP service portal that gives up-to-date information about SAP notes. It is the Knowledge Base of SAP that will address the known issues specifically in the SAP system. It frequently releases patches, new program developments, bug fixes, and other various updates by SAP. This will provide a list of correction notes for SAP objects.
- OSS Notes will be continuously updated as customers report issues in the SAP system and SAP will release a note that includes detailed instructions about fixing or addressing the issue. Most of the issues get addressed or fixed when the next version of the same component gets released by SAP and hence it is very important to see note applicability related to the version where an issue is being addressed. Each note will be applied to a version and almost all its predecessor versions. Before you start with your work, it is necessary to check for the presence of a particular in your SAP system.
- Explain about Adobe forms in SAP ABAP.
- Adobe forms is a technology used for developing the forms and now it has become the current standard in SAP for form development. To use these forms, a Java stack must be first installed in SAP Basis. Along with that, developers need to configure the Adobe Document Service(ADS). Adobe LiveCycle Designer(LCD), GUI(graphical user interface) for Adobe Forms- must also require to be installed separately as the application will run on Windows.
- Using Adobe Forms, we can create the forms in companies, fill out the form, output as a print form, show it as a PDF file on screen, or even it can be sent. Such forms will include purchase orders, orders, and invoices.
- From the SAP system, it reads the associated master data and transaction data. The data will be displayed by the application in the predefined and desired form, for example, as a print form. Entering data in forms is also allowed.
- Adobe has become the successor to SAPscript and SmartForms. This technology has surpassed its two predecessors SAPscript and SmartForms in various areas like performance and design.
- We can separate design and programming by using Adobe forms in SAP. Also, Interactive Forms by Adobe in SAP provides different suitable tools and functions for the easier design of a form.
- It is possible to customize the forms by form developers with the help of their own programming by using two script languages Adobe FormCalc or JavaScript. The developer tool for Adobe Forms will be accessed through SFP(SAP tcode-Form Builder) transaction.
- Does the ABAP object support multiple inheritances?
Multiple inheritances mean where multiple classes can be a superclass of a single class. ABAP objects don’t support multiple inheritances as we can’t inherit a class from more than one class. It allows defining a class inheriting from only a single class in ABAP objects. If you are trying to define multiple superclasses during class definition, an error message will be prompted by the compiler. But still, you can accomplish a similar functionality like multiple inheritances by using Interfaces in SAP ABAP.
- Mention the Differences between BAPI and RFC in SAP ABAP.
BAPI(Business Application Programming Interface) | RFC(Remote Function Call) |
It is a standard programming interface that allows accessing business processes as well as data for external applications in the R/3 system | It is a standard SAP interface for communicating between various SAP systems |
Used to access SAP functions across stable, formal, and dialogue-free interfaces | It is used to call the function modules that reside on various machines |
Success or error message will be returned on a RETURN table | It does not have a RETURN table |
It allows connecting with the SAP for the outside world(VB, .NET, Java, or any Non-SAP system) | It does not allow the Non-SAP world to be connected to SAP |
A business object is associated with it | No business object is associated with it |
- Explain the sequence of events firing in report programming.
Report Programs in ABAP are event-driven programs that are used for displaying a large amount of data. The various events firing will take place in a particular order within a report program. That is:
- Top of page: This event will be triggered by the first ‘write’ statement written in the report. It acts as a page header. By default, the first event triggered will be the ‘load-of-program’, if the ‘write’ statement is not included in the report.
- Load-of-program: This event will be triggered when the program of type E(Executable program), M(Module pool), F(Function pool), or S(Subroutine pool) gets loaded. It will be in existence only once per program.
- Initialization: This event is used for initializing the values. This event will be triggered after the ‘load-of-program’ event and before the display of the selection screen.
- At selection-screen output: This event will be triggered just before the display of the selection screen. It is used if you wish to change the screen fields during runtime. It will hide the fields or make them invisible/visible or make them intensified.
- At selection-screen: This event will be triggered processing of selection-screen by the user. It will be used for checking and validating the inputted values.
- At selection-screen on field: This event will be triggered in the PAI(Process After Input) when data is transferred from PARAMETERS or SELECT-OPTIONS to ABAP. It can be used for validating the user input.
- At selection-screen on value-request: Using this, if a program field is defined with ABAP Dictionary field reference for which possible entries help has been defined, the values from the ABAP Dictionary help will be displayed automatically on calling F4 help for that field by the user.
- Start-of-selection: This event will be triggered on execute button click or F8 button press by the user.
- End-of-selection: This event will be triggered on the execution of the last statement of the start-of-selection event.
- End of page: This event will be triggered each time when the list data reaches the page footer region.
- What is IDoc in SAP ABAP?
IDoc(Intermediate Document) is an SAP object that carries business transaction data in the form of electronic messages from one system to another. The IDoc helps for transferring data/information from the SAP system to other systems and vice versa. The data transfer between two SAP systems is accomplished by using ALE(Application Link Enabling) and data transfer from SAP system to non-SAP system is accomplished using EDI(Electronic Data Interchange) subsystems.
- Explain different types of views in SAP ABAP.
A view is a virtual table that consists of fields from one or more tables. There are 4 types of views in SAP ABAP. They are:
- Projection View: It is used to hide specific fields in a given table and can also be used to gain access to the cluster, pooled, and transparent tables. Selection conditions are not available in a projection view. The projection view access will be through an Open SQL, not Native SQL.
- Help View: It is used in the search helps. The search help is able to select database views, database tables, and special help views. For database views, the search help is restricted to the inner joins and for database tables, it is restricted to a single table. It is not possible to define a help view in the database.
- Database View: It is a general view used for single or multiple basis tables. Once the database view is activated, multiple basis tables can be joined with an inner join by creating a matching SQL view. It is possible to access database views using both Open SQL and Native SQL.
- Maintenance View: It performs writes on different tables using extended table maintenance. One maintenance view is capable of changing the contents of many related database tables unfailingly. The maintenance view cannot be accessed using Open SQL.
- Differentiate between ALE and EDI.
ALE(Application Link Enabling) | EDI(Electronic Data Interchange) |
It is an SAP technology used for transferring data between SAP systems | It is an independent technology used for transferring data between two systems, either between SAP systems or non SAP systems |
Useful in internal communications | Useful in external communications |
It is used for distributing the master data(such as Vendor Master, Material Master) within a company when a distributed environment has been maintained | It is used for exchanging transaction data(such as Delivery, Purchase order) among two different business partners |
Technically, data transfer is done using memory buffer | Technically, data transfer is done using a file port |
A translator is not required here | Translator is required for converting the X12 to IDoc(Inbound) and IDoc to X12(Outbound) |
- Explain about Enhancement framework in SAP ABAP.
Enhancement framework in SAP ABAP is the new modification-free enhancement concept that allows you for adding functionalities to standard SAP software without modification of original repository objects. It also helps the consultants, customers, and third parties by providing an option of enhancing the standard code with custom code that they wish to add.
The below diagram shows the enhancement framework options.
The enhancement framework is divided into two parts. They are:
- IMPLICIT Enhancements: In the ABAP report, enhancements are possible by default at two places, the start of the report and the end of the report. So, customers are able to do enhancements at the beginning and end by creating enhancement implementations by default in all the reports.
- EXPLICIT Enhancements: The places in the report will be explicitly provided by the SAP where exactly it can be enhanced. There are three options available under these explicit enhancements:
- Enhancement Point: It will be created in the report where exactly the customer can enhance so that the expected results at that point can be modified using enhancement implementations.
- Enhancement Section: It will be created in the report by selecting the code section that can be enhanced using customer implementation.
- BAdi: It is mainly used for ABAP Objects where a BAdi definition creation can be done using an interface with a fixed signature which can be implemented by the customer using the BAdi implementation.
- How many functional modules will be used in sequence in BDC(Batch Data Communication)?
There are 3 functional modules used in a sequence for successfully performing the transfer of data in BDC(Batch Data Communication) programming. They are:
- BDC_OPEN_GROUP : Parameters such as client name, user name, sessions, etc., will be specified in this functional module.
- BDC_INSERT : It is used for inserting the data for a single transaction into a session.
- BDC_CLOSE_GROUP : It is used for closing the batch input session.
- Give some SAP ABAP real-time scenarios.
SCENARIO 1:
Consider that you have got a Business Requirement that says, “It requires a control at the Production Order level”, which implies that when a sales order has been created, the creation of a production order will also take place based on the sales order values. This needs to be stopped for various business reasons. There is no standard functionality available where the functional user will be able to configure this in SAP.
The current open sales order at the production level should not be hot by the process. ABAPer has to make a checkpoint creation for the business where the quantity will be approved by the Manager, which needs to be produced based on the sales order.
You need to code at numerous user exits and a custom table should be created that populates all the details of sales orders and restricts the user authority only for the approval authority like Manager. It has to perform the quality checks multiple times before we finally decide for moving the code into production.
SCENARIO 2:
Generally, when the creation of a sales order takes place, the sales order gets blocked based on the credit check or credit limit(if activation was done by the functional consultants) of the customer. So, you need to ‘unblock’ the sales order even if the customer has been exceeded the credit limit depending on certain conditions.
For this scenario, you need to write code at numerous places, during the time of the creation of sales orders and also during the delivery time. This process is known as enhancements.
So, for ABAPers the constant evolution of SAP coding standards for core ABAP must be the same, but the methodologies and techniques of implementation or workarounds will be evolving.
ABAP Programming Examples
- Write an ABAP program to display username, date, time, and sum by providing two inputs.
DATA: lv_result TYPE i.
SELECTION-SCREEN BEGIN OF BLOCK bl WITH FRAME TITLE TEXT-001. “Please enter two numbers for calculating the sum
PARAMETERS: p_num1 TYPE i,
p_num2 TYPE i. “Variable declaration
SELECTION-SCREEN END OF BLOCK b1.
INITIALIZATION.
CLEAR: lv_result. “To clear variables
START-OF-SELECTION. “To perform business logic
IF p_num1 IS NOT INITIAL AND p_num2 IS NOT INITIAL. “Checking whether values for the variables has been entered or not
lv_result= p_num1+p_num2.
ELSE.
MESSAGE ‘Please enter two numbers to perform addition’ TYPE ‘E’.
END IF.
END-OF-SELECTION. “To display the output
WRITE :/ ‘Hello’, sy-uname.
WRITE :/ ‘Date :’, sy-datnum, ‘Time :’, sy-uzeit.
WRITE :/ ‘Result : Sum of two numbers is :’, lv_result.
In the above program code, you need to enter values for two numbers using SELECTION_SCREEN. In START-OF-SELECTION by using the if condition, it will check whether variables are having the values, if it returns true then it will perform the sum, else it will display a message for entering the numbers.
In END-OF-SELECTION, the user name, date, time, and sum values are displayed.
- Write an ABAP sample program for ALV display.
TABLES: pa002.
*Type Declarartion
TYPES : BEGIN OF ty_employee, “Structure declaration
pernr TYPE pa0002-pernr,
subty TYPE pa0002-subty,
nachn TYPE pa0002-nachn,
vorna TYPE pa0002-vorna,
gesch TYPE pa0002-gesch,
END OF ty_employee.
*–Data Declaration
DATA : lt_employee TYPE STANDARD TABLE OF ty_employee, “Internal table
ls_employee TYPE ty_employee, “Work area
lt_fieldcat TYPE slis_t_fieldcat_alv, “Internal table for ALV display
ls_fieldcat TYPE slis_fieldcat_alv,
lv_repid LIKE sy_repid. “Local variable for the program name
*Selection Screen
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE TEXT-001. “Please enter employee number
SELECTION-OPTIONS: so_pernr FOR pa002-pernr. “Selection screen field to enter employee number
SELECTION-SCREEN END OF BLOCK b1.
START-OF-SELECTION.
*Data Fetching “To get the employee details from database
SELECT pernr subty nachn vorna gesch
FROM pa0002
INTO TABLE lt_employee
WHERE pernr IN so_pernr.
IF sy-subrc=0.
SORT lt_employee BY pernr.
ENDIF.
END-OF-SELECTION.
*Field Catalog “Inserting records for ALV display
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 1. “Column position in output
ls_fieldcat-fieldname = ‘PERNR’. “Field name in the output
ls_fieldcat-tabname = ‘LT_EMPLOYEE’.
ls_fieldcat-seltext_m = ‘Employee number’. “Field description
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 2.
ls_fieldcat-fieldname = ‘SUBTY’.
ls_fieldcat-tabname = ‘LT_EMPLOYEE’.
ls_fieldcat-seltext_m = ‘Sub type’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 3.
ls_fieldcat-fieldname = ‘NACHN’.
ls_fieldcat-tabname = ‘LT_EMPLOYEE’.
ls_fieldcat-seltext_m = ‘Last name’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 4.
ls_fieldcat-fieldname = ‘VORNA’.
ls_fieldcat-tabname = ‘LT_EMPLOYEE’.
ls_fieldcat-seltext_m = ‘First name’.
APPEND ls_fieldcat TO lt_fieldcat.
CLEAR ls_fieldcat.
ls_fieldcat-col_pos = 5.
ls_fieldcat-fieldname = ‘GESCH’.
ls_fieldcat-tabname = ‘LT_EMPLOYEE’.
ls_fieldcat-seltext_m = ‘Gender’.
APPEND ls_fieldcat TO lt_fieldcat.
CALL FUNCTION ‘REUSE_ALV_GRID_DISPLAY’ “Function module to display data in ALV format
EXPORTING
it_fieldcat = lt_fieldcat
TABLES
t_outtab = lt_employee
EXCEPTIONS
program_error = 1
OTHERS = 2
Conclusion
To obtain any technical position, theory and basic concepts are necessary for any fresher who is applying for the SAP ABAP job role, but for an experienced candidate both practical and applied concepts are mandatory. Usually, for an experienced candidate, a lot of SAP ABAP interview Qs will be related to your previous project and roles.
This article essentially covered a list of frequently asked SAP ABAP related Qs that fits the interview requirements. A candidate who wants to get a job in an SAP ABAP role should glance through these Qs once before heading towards the SAP ABAP Interview round. You can prepare well and give your best in the next interview.
References
- “Complete ABAP: The Comprehensive Guide” by Brian O’Neill
- “SAP ABAP/4 Black Book” by Dreamtech Press
- Is SAP ABAP tough?
SAP ABAP is not a so tough language to learn compared to C++, C#, Java. The difficulty level lies more in being able to convert a business requirement to a technical solution– it is more in the nature of the program/application you are writing rather than in the programming language itself.
- Is SAP ABAP a good career choice in 2022?
Actually, compared to SAP BI, FICO, Sales and distribution, Material management, Production and planning, Quality Management, and Human Capital Management, SAP ABAP is highly in demand with several job opportunities along with high salary packages. You can excel as an SAP ABAP developer, ABAP Consultant, Business Analyst and you can also move into a management role after a few years of experience in SAP ABAP. So, SAP ABAP is definitely a good career choice in 2022.
- How do I become an SAP ABAP Developer?
Generally, you can follow the following steps to become an SAP ABAP developer:
- Earn a bachelors degree: You can start by completing a bachelor’s degree in computer science, computer engineering, software engineering or a related field. These degree programs will give you a basic knowledge of SAP ABAP programming concepts.
- Undergo an internship: During the college study, seek an SAP ABAP developer internship. Finishing an internship allows you to apply for a relevant job role.
- Take SAP ABAP courses: You can continue the professional training by taking SAP ABAP programming courses from certified SAP training institutes online. This assists you learn more about ABAP since many college degrees give a basic overview of a variety of languages.
- Pursue a masters degree: Enhance your efficiency and effectiveness by earning a master’s degree in computer science. In order to become a manager or IT director, you may need to get an MBA degree.
- What is the salary of SAP ABAP Developer?
SAP ABAP developers are usually paid well, that too in some of the reputed organisations their payscale is really in the higher range. As per the data from Ambitionbox, SAP ABAP developer salary in India for a fresher candidate ranges between ₹2.5 Lakhs to ₹10.8 Lakhs with an average annual salary of ₹4.7 Lakhs.
- What are the skills required for SAP ABAP?
The below mentioned are the skills an SAP ABAP developer should have to work effectively in his role:
- Robust command over SAP SD
- Knowledge of SAP systems like FICO and HR
- Analytical & Problem-solving skills
- Communication & Interpersonal skills
- Leadership & Teamwork
- Research skills.
Part 5:
Q 1. What Is An Abap Instance?
Answer :
When you call a function module, an instance of its function group plus its data, is loaded into the memory area of the internal session. An ABAP program can load several instances by calling function modules from different function groups.
Q 2. What Is Sap R/3?
Answer :
SAP R/3 refers to Systems Application and Product for data processing Real-time having a 3 tier architecture i.e. Presentation layer, Application layer and Database layer.
Q 3. What Are The Contents In Technical Specifications?
Answer :
There are five contents in Technical Settings:
Data Class
Size Category
Buffering Permission
Buffering Type and
Logging.
Q 4. What Is Function Group? Difference Between Function Group And Function Module?
Answer :
Function Groups act as containers for Function Modules that logically belong together.
Function Groups
1) These cannot be defined in a Function Module.
2) It cannot be called.
3) They are containers for Function Module.
Function Modules
1) These must be defined in a Function Group.
2) It can be called from any program.
3) They are not containers for Function Group.
Q 5. What Function Does Data Dictionary Perform?
Answer :
Central information repository for application and system data. The ABAP Dictionary contains data definitions (metadata) that allow you to describe all of the data structures in the system (like tables, views, and data types) in one place. This eliminates redundancy.
Q 6. Difference Between Domain And Data Element? What Are Aggregate Object?
Answer :
Domain – Specifies the technical attributes of a data element – its data type, length, possible values, and appearance on the screen. Each data element has an underlying domain. A single domain can be the basis for several data elements. Domains are objects in the ABAP Dictionary.
Data Element – Describes the business function of a table field. Its technical attributes are based on a domain, and its business function is described by its field labels and documentation.
Aggregate Object – Views, Match Code and Lock objects are called aggregate objects because they are formed from several related table.
Q 7. What Is View? Different Types Of View. Explain?
Answer :
View – A view is a virtual table containing fields from one or more tables. A virtual table that does not contain any data, but instead provides an application-oriented view of one or more ABAP Dictionary tables.
Different Types of View:
Maintenance
Database – It is on more than two tables.
Projection – It is only on one table.
Help
Q 8. Can You Print Decimals In Type N? What Is Difference Between Float And Packed Data Type?
Answer :
No, we cannot print decimals in type N because decimal places are not permitted with N data type.
Float Data Type: It cannot be declared in Parameters.
Packed Number: It can be declared in Parameters.
For e.g.
PARAMETERS : A(4) TYPE P DECIMALS 2, B(4) TYPE P DECIMALS 2.
DATA : C(4) TYPE P DECIMALS 2.
C = A + B.
WRITE : / ‘THE SUM IS’ , C.
Q 9. What Are The Different Functions Used In Sap Script? What Are The Parameters Used In Each Function?
Answer :
There are three different functions used in SAP Script:
OPEN_FORM
WRITE_FORM
CLOSE_FORM
Parameters in Each Function:
OPEN_FORM
Exporting
Form
Language
WRITE_FORM
Exporting
Element
Window
CLOSE_FORM
Q 10. What Is Sequence Of Event Triggered In Report?
Answer :
There are 6 events in report:
Initialization
At Selection-Screen
Start-of-Selection
Get
Get Late
End-of-Selection
Top-of-Page
End-of-Page
At Line Selection
At User Command
At PF (nn)
Q 11. What Are Standard Layouts Sets In The Sap Script?
Answer :
There are four standard layouts in the SAP Script:
Header
Logo
Main Window
Footer
Q 12. What Are The Various Types Of Selection Screen Event?
Answer :
SELECTION-SCREEN BEGIN OF BLOCK ABC WITH FRAME TITLE T01.
SELECTION-SCREEN BEGIN OF SCREEN 500 AS WINDOW.
CALL SELECTION-SCREEN 500 STARTING AT 10 10.
Q 13. What Are The System Fields? Explain?
Answer :
The ABAP system fields are active in all ABAP programs. They are filled by the runtime environment, and you can query their values in a program to find out particular states of the system. Although they are variables, you should not assign your own values to them, since this may overwrite information that is important for the normal running of the program. However, there are some isolated cases in which you may need to overwrite a system variable. For example, by assigning a new value to the field SY-LSIND, you can control navigation within details lists.
Q 14. Difference Between Sap Script And Report?
Answer :
SAP Script – It is the integrated text management system of the SAP R/3 System.
Two types:
PC Editor
Line Editor.
Reports – It is the way to display data fetched from database table onto screen or directly output it to a printer.
Two types:
Classical
Interactive.
Q 15. Difference Between Sy-tabix And Sy-index? Where It Is Used? Can You Check Sy-subrc After Perform?
Answer :
SY-TABIX – Current line of an internal table. SY-TABIX is set by the statements below, but only for index tables. The field is either not set or is set to 0 for hashed tables.
* APPEND sets SY-TABIX to the index of the last line of the table, that is, it contains the overall number of entries in the table.
* COLLECT sets SY-TABIX to the index of the existing or inserted line in the table. If the table has the type HASHED TABLE, SY-TABIX is set to 0.
* LOOP AT sets SY-TABIX to the index of the current line at the beginning of each loop loss. At the end of the loop, SY-TABIX is reset to the value that it had before entering the loop. It is set to 0 if the table has the type HASHED TABLE.
* READ TABLE sets SY-TABIX to the index of the table line read. If you use a binary search, and the system does not find a line, SY-TABIX contains the total number of lines, or one more than the total number of lines. SY-INDEX is undefined if a linear search fails to return an entry.
* SEARCH FOR sets SY-TABIX to the index of the table line in which the search string is found.
SY_INDEX – In a DO or WHILE loop, SY-INDEX contains the number of loop passes including the current pass.
Q 16. Explain What Is A Logical Database?
Answer :
Logical Databases are special ABAP programs that retrieve data and make it available to application programs.
Use of LDB – is used to read data from database tables by linking them to executable ABAP programs
Q 17. Explain What Are The Events Used For Logical Database?
Answer :
There are Two Events:
GET – This is the most important event for executable programs that use a logical database. It occurs when the logical database has read a line from the node and made it available to the program in the work area declared using the statement NODES table Tag. The depth to which the logical database read is determined by the GET statements
PUT – The PUT statement directs the program flow according to the structure of the logical database.
Q 18. What Is The Difference Between Get And Get Late?
Answer :
GET – After the logical database has read an entry from the node table Tag.
GET LATE – After all the nodes of the logical database have been processed that are below <table> in the database hierarchy.
Q 19. What Are The Data Types Of Internal Tables?
Answer :
There are three types:
Line
Key
Table
Q 20. What Are The Events Used In Abap In The Order Of Execution?
Answer :
The Events used in ABAP are:
- INITIALIZATION
- AT SELECTION-SCREEN
- AT SELECTION-SCREEN ON <field>
- START-OF-SELECTION
- TOP-OF-PAGE
- TOP-OF-PAGE DURING LINE SELECTION
- END-OF-PAGE
- END-OF-SELECTION
- AT USER-COMMAND
- AT LINE-SELECTION
- AT PF<NN>
- GET
- GET LATE.
- AT User Command
Q 21. Explain What Are Interactive Reports?
Answer :
An output list which displays just the basic details & allow user to interact, so that a new list is populated based on user-selection. With interactive list, the user can actively control data retrieval and display during the session.
Q 22. What Are The Commands Used For Interactive Reports?
Answer :
Top-of-Page during line-selection.
Q 23. What Are The System Fields You Have Worked With? Explain?
Answer :
I had worked with the following (30) system fields:
1) SY-DBSYS – Central Database
2) SY-HOST – Server
3) SY-OPSYS – Operating System
4) SY-SAPRL – SAP Release
5) SY-SYSID – System Name
6) SY-LANGU – User Logon Language
7) SY-MANDT – Client
8) SY-UNAME – Logon User Name
9) SY-DATLO – Local Date
10) SY-DATUM – Server Date
11) SY-TIMLO – Local Time
12) SY-UZEIT – Server Time
13) SY-DYNNR – Screen Number
14) SY-REPID – Current ABAP program
15) SY-TCODE – Transaction Code
16) SY-ULINE – Horizontal Line
17) SY-VLINE – Vertical Line
18) SY-INDEX – Number of current loop Pass
19) SY-TABIX – Current line of internal table
20) SY-DBCNT – Number of table entries processed
21) SY-SUBRC – Return Code
22) SY-UCOMM – Function Code
23) SY-LINCT – Page Length of list
24) SY-LINNO – Current Line
25) SY-PAGNO – Current Page Number
26) SY-LSIND – Index of List
27) SY-MSGID – Message Class
28) SY-MSGNO – Message Number
29) SY-MSGTY – Message Type
30) SY-SPONO – Spool number during printing
Q 24. What Is The Transaction Code For Table Maintenance?
Answer :
SM30.
Q 25. Explain What Is The Difference Between Primary Key And Unique Key?
Answer :
Primary Key – It can accepts 0 value and cannot be NULL.
Unique Key – It can be NULL.
Q 26. If You Are Using Logical Databases How Will You Modify The Selection-screen Elements?
Answer :
Select-options : dname for deptt-dname.
Q 27. What Is An Rfc?
Answer :
Remote Function Call.
Q 28. Explain What Are The Events In Screen Programming?
Answer :
PBO (Process Before Output) – Before the screen is displayed, the PBO event is processed.
PAI (Process After Input) – When the user interacts with the screen, the PAI event is processed.
POH (Process On Help) – are triggered when the user requests field help (F1). You can program the appropriate coding in the corresponding event blocks. At the end of processing, the system carries on processing the current screen.
POV (Process On Value) – are triggered when the user requests possible values help (F4). You can program the appropriate coding in the corresponding event blocks. At the end of processing, the system carries on processing the current screen.
Q 29. What Is The Significance Of Hide?
Answer :
It stores the click value and display the related record in the secondary list.
Q 30. Where Do You Code The Hide Statement?
Answer :
In a LOOP statement.
Q 31. What Are The Types Of Bdc S?
Answer :
There are two types of BDC’s:
Transaction Method
Session Method
Q 32. Advantages And Disadvantages Of Different Types Of Bdc S?
Answer :
Transaction Method:
It is faster than session method.
While executing, it starts from starting.
Session Method:
It is slower than transaction method.
While executing, it does not start from starting.
Q 33. What Are The Events Used In Interactive Reports?
Answer :
There are three events of Interactive Reports:
At PF(nn)
At line-selection
At user-command
Q 34. What Is An Rdbms?
Answer :
RDBMS – Relational Database Management System. It helps to create relationship between two or more table.
Q 35. What Will You Code In Start-of-selection & End-of-selection ?
Answer :
START-OF-SELECTION
SELECT * FROM DEPTT INTO CORRESPONDING FIELDS OF ITAB
WHERE DEPTNO IN DEPTNO.
APPEND ITAB.
ENDSELECT.
LOOP AT ITAB.
WRITE : / 10 ITAB-DEPTNO.
HIDE : ITAB-DEPTNO.
ENDLOOP.
END-OF-SELECTION
Q 36. What Are Joins And Different Types Joins?
Answer :
There are four types of Joins:
Self Join
Inner Join
Outer Join
Equi Join
Q 37. How Do You Display A Data In A Detail List?
Answer :
By using two statements:
Top-of-page during line-selection
At line-selection
Q 38. What Are The Types Of Windows In Sap Script?
Answer :
There are five Standard Layouts in SAP Script:
Page
Window
Page Window
Paragraph Format
Character Format
Q 39. What Are The Function Modules Used In A Sap Script Driver Program?
Answer :
There are three functions used in SAP Script:
OPEN_FORM
WRITE_FORM
CLOSE_FORM
Q 40. What Are Extracts?
Answer :
Extracts are dynamic sequential datasets in which different lines can have different structures. We can access the individual records in an extract dataset using a LOOP.
Q 41. What Is Luw?
Answer :
Logical Unit of Work.
Q 42. Different Types Of Luws. What Are They?
Answer :
Two types of LUW are:
DB LUW – A database LUW is the mechanism used by the database to ensure that its data is always consistent. A database LUW is an inseparable sequence of database operations that ends with a database commit. The database LUW is either fully executed by the database system or not at all. Once a database LUW has been successfully executed, the database will be in a consistent state. If an error occurs within a database LUW, all of the database changes since the beginning of the database LUW are reversed. This leaves the database in the state it had before the transaction started.
SAP LUW – A logical unit consisting of dialog steps, whose changes are written to the database in a single database LUW is called an SAP LUW. Unlike a database LUW, an SAP LUW can span several dialog steps, and be executed using a series of different work processes.
Q 43. How Do You Find Out Whether A File Exits On The Presentation Server?
Answer :
eps_get_directory_listing for directory.
Q 44. Systems Fields Used For Interactive Lists And Lists?
Answer :
Interactive System Fields: SY-LSIND, SY-CPAGE, SY-LILLI, SY-LISEL, SY-LISTI, SY-LSTAT, SY-STACO, SY-STARO.
Lists: SY-COLNO, SY-LINCT, SY-LINNO, SY-LINSZ, SY-PAGNO, SY-TVAR0…..SY-TVAR9, SY-WTITL.
Q 45. Logo In Sap Script?
Answer :
RSTXLDMC OR
Steps for making and inserting Logo in SAP Script:
First Procedure:
1) Draw the picture
2) Save it
3) /nSE78
4) Write name & Choose Color
5) Click on Import
6) Browse picture
7) Enter
Second Procedure:
1) /nSE71
2) Insert
3) Graphics
4) Click on stored on document server
5) Execute
6) Choose name of BMAP
Q 46. What Are The Difference Between Call Screen And Leave Screen?
Answer :
Call Screen: Calling a single screen is a special case of embedding a screen sequence. If you want to prevent the called screen from covering the current screen completely, you can use the CALL SCREEN statement with the STARTING AT and ENDING AT
CALL SCREEN 1000.
CALL SCREEN 1000 STARTING AT 10 10 ENDING AT 20 20.
LEAVE SCREEN: statement ends the current screen and calls the subsequent screen.
LEAVE SCREEN.
LEAVE TO SCREEN 2000.
Q 47. If Internal Table Used In For All Entries In Empty Then What Happens?
Answer :
No, records will be displayed.
Q 48. If I Forgot Some Command In Sap Script E.g.: Suppress Zero Display – How To Do Find It?
Answer :
Suppressing of entire screens is possible with this command. This command allows us to perform screen processing “in the background”. Suppressing screens is useful when we are branching to list-mode from a transaction dialog step.
Q 49. How To Write A Bdc – How Do You Go About It?
Answer :
Steps for writing BDC
1) /nSE38
2) Declare Tables, Data (for ITAB) and Data (for BDCITAB)
3) Call function ‘Upload’.
4) Write code for the First Screen, Radio Button, Filename, Change Button, Second Screen, Utilities (Create Entries), Third Screen and Save.
5) Call transaction ‘SE11’ using BDCITAB mode ‘A’.
6) Save, Check Errors, Activate and Execute.
Q 50. How Do You Move On To The Next Screen In Interactive Reporting?
Answer :
Write code of the following:
Top-of-Page during line-selection
At line-selection
Q 51. Create Any Functions? How To Go About It?
Answer :
Steps for creating the Functions:
First Procedure:
1) /nSE37
2) Goto
3) Function Group (FG)
4) Create Group
5) Name of FG (ZREKHA_FG)
6) Short Text
7) Save
8) Local Object
Second Procedure:
1) Environment
2) Inactive Object
3) Function Group (ZREKHA_FG)
4) Activate
5) Back
Third Procedure:
1) Name of Function Module (ZREKHA_FM)
2) Create
3) Write FG Name (ZREKHA_FG)
4) Short Text
5) Save
Fourth Procedure:
Call function ‘ZREKHA_FM’.
Q 52. What Are The Function Modules Used In F4 Help?
Answer :
There are two types of function modules used in F4 help:
F4IF_FIELD_VALUE_REQUEST
F4IF_INT_TABLE_VALUE_REQUEST
Q 53. Work Most On Which Module: Name A Few Tables?
Answer :
Sales & Distribution Module
1) Sales Document: Item Data – VBAP
2) Sales Document: Partner – VBPA
3) Sales Document: Header Data – VBAK
4) Sales Document Flow – VBFA
5) Sales Document: Delivery Item Data – LIPS
6) Customer Master – KNA1
7) Material Data – MARA
8) Conditions (Transaction Data) – KONV
Q 54. What Are The System Table Used In Abap?
Answer :
Sales Document: Item Data – VBAP
Sales Document: Partner – VBPA
Sales Document: Header Data – VBAK
Sales Document Flow – VBFA
Sales Document: Delivery Item Data – LIPS
Customer Master – KNA1
Material Data – MARA
Conditions (Transaction Data) – KONV
Q 55. What Is Read Line In Abap?
Answer :
READ LINE and READ CURRENT LINE – These statements are used to read data from the lines of existing list levels. These statements are closely connected to the HIDE technique.
Q 56. Can There Be More Than 1 Main Window In Sap Script?
Answer :
No, there cannot be more than 1 main window in SAP Script because in WRITE_FORM, it asks for the parameter Window that will create the problem.
WRITE_FORM
Exporting
Element
Window
Q 57. What Are The Differences Between Sap Memory And Abap Memory?
Answer :
ABAP Memory is a memory area in the internal session (roll area) of an ABAP program. Data within this area is retained within a sequence of program calls, allowing you to pass data between programs that call one another. It is also possible to pass data between sessions using SAP Memory.
SAP Memory is a memory area to which all sessions within a SAPgui have access. You can use SAP memory either to pass data from one program to another within a session (as with ABAP memory) or to pass data from one session to another.
Q 58. What Are Differences Between At Selection-screen And At Selection-screen Output?
Answer :
AT SELECTION-SCREEN – event is triggered in the PAI of the selection screen once the ABAP runtime environment has passed all of the input data from the selection screen to the ABAP program.
AT SELECTION-SCREEN OUTPUT – This event block allows you to modify the selection screen directly before it is displayed.
Q 59. What Is Get Cursor Field?
Answer :
GET CURSOR statement transfers the name of the screen element on which the cursor is positioned during a user action into the variable <f>.
GET CURSOR FIELD <f> [OFFSET <off>] [LINE <lin>] [VALUE <val>] LENGTH <len>].
Q 60. What Is The Inside Concept In Select-options?
Answer :
Select-options specify are displayed on the selection screen for the user to enter values.
Different Properties of Select-options:
1) Visible Length
2) Matchcode Object
3) Memory ID
4) Lowercase
5) Obligatory
6) No Display
7) Modify ID
Q 61. What Is The Difference Between Free And Refresh?
Answer :
Free – You can use FREE to initialize an internal table and release its memory space without first using the REFRESH or CLEAR statement. Like REFRESH, FREE works on the table body, not on the table work area. After a FREE statement, you can address the internal table again. It still occupies the amount of memory required for its header (currently 256 bytes). When you refill the table, the system has to allocate new memory space to the lines.
Refresh – This always applies to the body of the table. As with the CLEAR statement, the memory used by the table before you initialized it remains allocated. To release the memory space, use the statement
Q 62. Can We Have More Than One Selection-screen And How?
Answer :
Yes, we can have more than one selection screen.
Selection-screen begin of block honey with frame title text-101.
Select-options : deptno for zrekha_deptt-deptno.
Selection-screen end of block honey.
Selection-screen begin of block honey1 with frame title text-102.
Select-options : dname for zrekha_deptt-dname.
Selection-screen end of block honey1.
Q 63. How To Declare Select-option As A Parameter?
Answer :
SELECT-OPTIONS: specify are displayed on the selection screen for the user to enter values.
Parameters: dname like dept-dname.
Select-options: dname for dept-dname.
Q 64. How Can You Write Programmatically Value Help To A Field Without Using Search Help And Match Codes?
Answer :
By using two types of function modules to be called in SAP Script:
HELP_OBJECT_SHOW_FOR_FIELD
HELP_OBJECT_SHOW.
Q 65. What Are The Differences Between Se01, Se09 And Se10?
Answer :
SE01 – Correction & Transport Organizer
SE09 – Workbench Organizer
SE10 – Customizing Organizer
Q 66. What Is The Use Of Table Maintenance Allowed?
Answer :
Mark the Table maintenance allowed flag if users with the corresponding authorization may change the data in the table using the Data Browser (Transaction SE16). If the data in the table should only be maintained with programs or with the table view maintenance transaction (Transaction SM30), you should not set the flag.
Q 67. How To Define Selection Screen?
Answer :
Parameters, Select-options & Selection-Screen.
Q 68. What Are The Check Tables And Value Tables?
Answer :
Check Table: The ABAP Dictionary allows you to define relationships between tables using foreign keys. A dependent table is called a foreign key table, and the referenced table is called the check table. Each key field of the check table corresponds to a field in the foreign key table. These fields are called foreign key fields. One of the foreign key fields is designated as the check field for checking the validity of values. The key fields of the check table can serve as input help for the check field.
Value Table: Prior to Release 4.0, it was possible to use the value table of a domain to provide input help. This is no longer possible, primarily because unexpected results could occur if the value table had more than one key field. It was not possible to restrict the other key fields, which meant that the environment of the field was not considered, as is normal with check tables.In cases where this kind of value help was appropriate, you can reconstruct it by creating a search help for the data elements that use the domain in Q, and using the value table as the selection method.Check table will be at field level checking.Value table will be at domain level checking ex: scarr table is check table for carrid.
Q 69. What Is The Difference Between Tables And Structures?
Answer :
Tables:
Data is permanently stored in tables in the database.
Database tables are generated from them.
Structure:
It contains data temporarily during program run-time.
No Database tables are generated from it.
Q 70. What Are Lock Objects?
Answer :
Reason for Setting Lock: Suppose a travel agent want to book a flight. The customer wants to fly to a particular city with a certain airline on a certain day. The booking must only be possible if there are still free places on the flight. To avoid the possibility of overbooking, the database entry corresponding to the flight must be locked against access from other transactions. This ensures that one user can find out the number of free places, make the booking, and change the number of free places without the data being changed in the meantime by another transaction.
Q 71. What Is The Difference Between Open_form And Close_form?
Answer :
OPEN_FORM – This module opens layout set printing. This function must be called up before we can work with other layout set function like WRITE_FORM.
WRITE_FORM – Output text element in form window. The specified element of the layout set window entered is output. The element must be defined in the layout set.
CLOSE_FORM – End layout set printing. Form printing started with OPEN_FORM is completed. Possible closing operations on the form last opened are carried out. Form printing must be completed by this function module. If this is not carried out, nothing is printed or displayed on the screen.
Q 72. What Are The Page Windows? How Many Main Windows Will Be There In A Page Window?
Answer :
Page Window: In this window, we define the margins for left, width, upper and height for the layout of Header, Logo, Main, & Footer.
Q 73. How To Debug A Script In Abap?
Answer :
Go to SE71, give layout set name, go to utilities select debugger mode on.
Q 74. How Many Maximum Sessions Can Be Open In Sapgui?
Answer :
There are maximum 6 sessions open in SAPgui.
Q 75. What Are System Variable In Abap?
Answer :
System variables have been predefined by SAP. We can use these variables in formulas or, for example, to pass on certain pieces of information to a function module. How the function called by the function module behaves depends on the type of information passed on.
Q 76. What Is The Difference Between Sum And Collect?
Answer :
Sum: You can only use this statement within a LOOP. If you use SUM in an AT – ENDAT block, the system calculates totals for the numeric fields of all lines in the current line group and writes them to the corresponding fields in the work area. If you use the SUM statement outside an AT – ENDAT block (single entry processing), the system calculates totals for the numeric fields of all lines of the internal table in each loop pass and writes them to the corresponding fields of the work area. It therefore only makes sense to use the SUM statement in AT…ENDAT blocks. If the table contains a nested table, you cannot use the SUM statement. Neither can you use it if you are using a field symbol instead of a work area in the LOOP statement.
COLLECT : It allows you to create unique or summarized datasets. The system first tries to find a table entry corresponding to the table key. The key values are taken either from the header line of the internal table itab, or from the explicitly-specified work area wa.
Q 77. What Is The Typical Structure Of An Abap Program?
Answer :
HEADER, BODY, FOOTER.
Q 78. What Are Field Symbols And Field Groups? Have You Used Component Idx Of Structure Clause With Field Groups?
Answer :
Field Symbols – They are placeholder or symbolic names for the other fields. They do not physically reserve space for a field, but point to its contents. It can point to any data objects.
Field-symbols <fs>
Field Groups – Field groups does not reserve storage space but contains pointers to existing fields.
An extract dataset consists of a sequence of records. These records may have different structures. All records with the same structure form a record type. You must define each record type of an extract dataset as a field group, using the FIELD-GROUPS statement.
Field-groups <fg>
Q 79. What Is A Batch Input Session?
Answer :
BATCH INPUT SESSION is an intermediate step between internal table and database table. Data along with the action is stored in session i.e. data for screen fields, to which screen it is passed, program name behind it, and how next screen is processed.
Create session – BDC_OPEN_GROUP
Insert batch input – BDC_INSERT
Close session – BDC_CLOSE_GROUP
Q 80. What Is The Alternative To Batch Input Session?
Answer :
Call Transaction Method & Call Dialog.
Q 81. A Situation: An Abap Program Creates A Batch Input Session. We Need To Submit The Program And The Batch Session In Background. How To Do It?
Answer :
Go to SM36 and create background job by giving job name, job class and job steps (JOB SCHEDULING).
Q 82. What Is The Difference Between A Pool Table And A Transparent Table And How They Are Stored At The Database Level?
Answer :
Pool Table :
Many to One Relationship.
Table in the Dictionary has the different name, different number of fields, and the fields have the different name as in the R3 Table definition.
It can hold only pooled tables.
Transparent Table :
One to One relationship.
Table in the Dictionary has the same name, same number of fields, and the fields have the same name as in the R3 Table definition.
It can hold Application data.
Q 83. What Are The Problems In Processing Batch Input Sessions? How Is Batch Input Process Different From Processing On Line?
Answer :
Two Problems: –
If the user forgets to opt for keep session then the session will be automatically removed from the session queue (log remains). However, if session is processed we may delete it manually.
If session processing fails, data will not be transferred to SAP database table.
Q 84. Is Session Method, Asynchronous Or Synchronous?
Answer :
Synchronous.
Q 85. What Are The Different Types Of Data Dictionary Objects?
Answer :
Different types of data dictionary objects:
1) Tables
2) Views
3) Data elements
4) Structure
5) Domains
6) Search Helps
7) Local Objects
8) Matchcode
Q 86. How Many Types Of Tables Exist And What Are They In Data Dictionary?
Answer :
4 Types of Tables:
Transparent tables – Exists with the same structure both in dictionary as well as in database exactly with the same data and fields. Both Open SQL and Native SQL can be used.
Pool tables – Pooled tables in the dictionary has a many-to-one relation with the table in database. Table in the database has the different name as in the dictionary. Pooled table are stored in table pool at the database level.
Cluster tables – These are logical tables that are arranged as records of transparent tables. One cannot use Native SQL on these tables (only Open SQL). They are not manageable directly using database system tools.
Internal tables – Internal table is a temporary table stored in the RAM of the application server. It gets created during the program execution and gets deleted once the program ends.
Q 87. What Is The Step-by-step Process To Create A Table In Data Dictionary?
Answer :
Steps to create a table:
Step 1: creating domains (data type, field length, Range).
Step 2: creating data elements (properties and type for a table field).
Step 3: creating tables (SE11).
Q 88. Can A Transparent Table Exist In Data Dictionary But Not In The Database Physically?
Answer :
No, Transparent table do exist with the same structure both in the dictionary as well as in the database, exactly with the same data and fields.
Q 89. In Sap Scripts, How Will You Link Form With The Event Driven?
Answer :
In PAI, define function code and write code for the same.
Q 90. Can You Create A Table With Fields Not Referring To Data Elements?
Answer :
YES. e.g.:- ITAB LIKE SPFLI.
Here we are referring to a data object (SPFLI) not data element.
Q 91. What Is A Collect Statement? How Is It Different From Append?
Answer :
Collect: If an entry with the same key already exists, the COLLECT statement does not append a new line, but adds the contents of the numeric fields in the work area to the contents of the numeric fields in the existing entry.
Append : Duplicate entries occurs
Q 92. What Is Open Sql Vs Native Sql?
Answer :
Open SQL – These statements are a subset of standard SQL. It consists of DML command (Select, Insert, Update, Delete). It can simplify and speed up database access. Buffering is partly stored in the working memory and shared memory. Data in buffer is not always up-to-date.
Native SQL – They are loosely integrated into ABAP. It allows access to all functions containing programming interface. They are not checked and converted. They are sent directly to the database system. Programs that use Native SQL are specific to the database system for which they were written. For e.g. to create or change table definition in the ABAP.
Q 93. What Does An Exec Sql Stmt Do In Abap? What Is The Disadvantage Of Using It?
Answer :
To use a Native SQL statement, you must precede it with the EXEC SQL statement, and follow it with the ENDEXEC statement as follows:
EXEC SQL [PERFORMING <form>].
<Native SQL statement>
ENDEXEC.
There is no period after Native SQL statements. Furthermore, using inverted commas (“) or an asterisk (*) at the beginning of a line in a native SQL statement does not introduce a comment as it would in normal ABAP syntax. You need to know whether table and field names are case-sensitive in your chosen database.
Q 94. What Is The Meaning Of Abap Editor Integrated With Abap Data Dictionary?
Answer :
ABAP Editor: Tool in the ABAP Workbench in which you enter the source code of ABAP programs and check their syntax. You can also navigate from the ABAP Editor to the other tools in the ABAP Workbench.
Q 95. What Are The Events In Abap Language?
Answer :
The events are as follows:
Initialization
At selection-screen
Start-of-selection
End-of-selection
Top-of-page
End-of-page
At line-selection
At user-command
At PF
Get
At New
At LAST
AT END
AT FIRST
Q 96. What Is An Interactive Report? What Is The Obvious Difference Of Such Report Compared With Classical Type Reports?
Answer :
An Interactive report is a dynamic drill down report that produces the list on users choice.
Difference: –
The list produced by classical report doesn’t allow user to interact with the system where as the list produced by interactive report allows the user to interact with the system.
Once a classical report, executed user looses control where as Interactive, user has control.
In classical report, drilling is not possible where as in interactive, drilling is possible.
Q 97. What Is A Drill Down Report?
Answer :
It’s an Interactive report where in the user can get more relevant data by selecting explicitly.
Q 98. How Do You Write A Function Module In Sap? Describe?
Answer :
Called program – SE37 – Creating function group, function module by assigning attributes, importing, exporting, tables, and exceptions.
Calling program – SE38 – In program, click pattern and write function name- provide export, import, tables, exception values.
Q 99. What Are The Exceptions In Function Module?
Answer :
Exceptions: Our function module needs an exception that it can trigger if there are no entries in table SPFLI that meet the selection criterion. The exception NOT_FOUND serves this function.
COMMUNICATION_FAILURE & SYSTEM_FAILURE
Q 100. How Are The Date And Time Field Values Stored In Sap?
Answer :
DD.MM.YYYY. HH:MM:SS.
Q 101. Name A Few Data Dictionary Objects?
Answer :
Different types of data dictionary objects:
Tables
Views
Data elements
Structure
Matchcode
Domains
Search Helps
Local Objects
Q 102. What Happens When A Table Is Activated In Dd?
Answer :
When the table is activated, a physical table definition is created in the database for the table definition stored in the ABAP dictionary. The table definition is translated from the ABAP dictionary of the particular database.
It is available for any insertion, modification and updation of records by any user.
Q 103. What Are Matchcodes? Describe?
Answer :
It is similar to table index that gives list of possible values for either primary keys or non-primary keys.
Q 104. What Are Ranges? What Are Number Ranges?
Answer :
Main function of ranges to pass data to the actual selection tables without displaying the selection screen.
Min, Max values provided in selection screens.
It is often necessary to directly access individual records in a data structure. This is done using unique keys. Number ranges are used to assign numbers to individual database records for a commercial object, to complete the key. Such numbers are e.g. order numbers or material master numbers.
Q 105. What Is Cts And What Do You Know About It?
Answer :
CTS stands for Correction and Transport System. The CTS provides a range of functions that help you to choose a transport strategy optimally suited to your requirements. We recommend that you follow the transport strategy while you plan and set up your system landscape.
Correction and Transport System (CTS) is a tool that helps you to organize development projects in the ABAP Workbench and in Customizing, and then transport the changes between the SAP Systems and clients in your system landscape. This documentation provides you with an overview of how to manage changes with the CTS and essential information on setting up your system and client landscape and deciding on a transport strategy. Read and follow this documentation when planning your development project. For practical information on working with the Correction and Transport System, see Correction and Transport Organizer and Transport Management System.
Q 106. What Is The Client Concept In Sap? What Is The Meaning Of Client Independent?
Answer :
In commercial, organizational and technical terms, the client is a self-contained unit in the R3 system, with separate set of Master data and its own set of Tables. When a change is made in one client all other clients are affected in the system – this type of objects are called Client independent objects.
Q 107. Are Programs Client Dependent?
Answer :
Yes, group of users can access these programs with a client number.
Q 108. Name A Few System Global Variables You Can Use In Abap Programs?
Answer :
SY-SUBRC, SY-DBCNT, SY-LILLI, SY-DATUM, SY-UZEIT, SY-UCOMM, SY-TABIX..
Q 109. What Are Internal Tables? How Do You Get The Number Of Lines In An Internal Table? How To Use A Specific Number Occurs Statement?
Answer :
It is a standard data type object, which exists only during the runtime of the program. They are used to perform table calculations on subsets of database tables and for re-organizing the contents of database tables according to users need.
Using SY-DBCNT.
The number of memory allocations the system need to allocate for the next record population.
Q 110. How Do You Take Care Of Performance Issues In Your Abap Programs?
Answer :
Performance of ABAP programs can be improved by minimizing the amount of data to be transferred. The data set must be transferred through the network to the applications, so reducing the amount of time and also reduces the network traffic.
Some measures that can be taken are:
Use views defined in the ABAP/4 DDIC (also has the advantage of better reusability).
Use field list (SELECT clause) rather than SELECT *.
Range tables should be avoided (IN operator)
Avoid nested SELECTS.
Q 111. What Are Datasets In Abap?
Answer :
The sequential files (ON APPLICATION SERVER) are called datasets. They are used for file handling in SAP.
Q 112. How To Find The Return Code Of An Stmt In Abap Programs?
Answer :
Open SQL has 2 system fields with return codes:
SY-SUBRC
SY-DBCNT
Using function modules
Q 113. What Are Conversion & Interface Programs In Sap?
Answer :
CONVERSION: Legacy system to flat file.
INTERFACE: Flat file to SAP system.
Q 114. Have You Used Sap Supplied Programs To Load Master Data?
Answer :
SAP supplied BDC programs
RM06BBI0 (Purchase Requisitions)
RMDATIND (Material Master)
RFBIKR00 (Vendor Masters)
RFBIDE00 (Customer Master)
RVINVB00 (Sales Order)
Q 115. What Specific Statements Do You Using When Writing A Drill Down Report?
Answer :
AT LINE-SELECTION
AT USER-COMMAND
AT PF.
Q 116. What Are The Advantages And Disadvantages Of Abap Query Tool?
Answer :
Advantages: No programming knowledge is required.
Disadvantages: Depending on the complexity of the database tables, it may not be easy for the user to select the necessary data correctly.
Q 117. What Are The Functional Areas, User Groups? How Does Abap Query Work In Relation To These?
Answer :
Functional Areas – By creating functional areas, we can initially select this data. This ensures that the data is presented to the ABAP Query user in a meaningful way to accomplish the task, and that only the data that the user may use is presented.
User Groups – A user group is a collection of users that work with about the same data and carry out similar tasks. The members of a user group can use all programs (queries) created by any user of the group. Changes to such a program are at once visible to all users. This ensures that all members of a user group use the same evaluation programs.
ABAP Query – It consists of three components – queries, functional areas and user groups. The functional areas provide the user with an initial set of data in accordance with the task to be accomplished. All users must be members of at least one user group. All members of one user group can access the same data as well as the same program (queries) to create lists.
Q 118. Is A Logical Database A Requirement/must To Write An Abap Query?
Answer :
No, it is not must to use LDB. Apart from it, we have other options:
Table join by Basis Table
Direct Read of table
Data Retrieval by Program
Q 119. What Is The Structure Of A Bdc Sessions.?
Answer :
BDCDATA.
Q 120. What Do You Do When The System Crashes In The Middle Of A Bdc Batch Session?
Answer :
We will look into the error log file (SM35). Check number of records already updated and delete them from input file and run BDC again.
Q 121. What Do You Do With Errors In Bdc Batch Sessions?
Answer :
We look into the list of incorrect session and process it again. To correct incorrect session, we analyze the session to determine which screen and value produced the error. For small errors in data we correct them interactively otherwise modify batch input program that has generated the session or many times even the data file.
Q 122. Does Sap Handle Multiple Currencies? Multiple Languages?
Answer :
Yes.
Q 123. What Is Sap Script And Layout Set?
Answer :
The tool, which is used to create layout set is called SAP Script. Layout set is a design, appearance and structure of document.
Q 124. What Are The Abap Commands That Link To A Layout Set?
Answer :
Control Commands, System Commands.
Q 125. What Is The Syntax Of Packed Number?
Answer :
Data : NUM type P decimals 2.
Q 126. What Are Different Types Of Attributes Of Function Module?
Answer :
There are 6 attributes of FM:
Import
Export
Table
Changing
Source
Exception
Q 127. What Are The List Of Screen Elements?
Answer :
There are 13 screen elements:
- Input / output fields
- Text fields
iii. Checkbox
- Radio button
- Push Button
- Drop down list
vii. Subscreen
viii. Table control
- Tabstrip control
- Custom control
- Box
xii. Status icons
xiii. OK_CODE fields
Q 128. How Many Default Tab Strips Are There? How To Insert More Tabs In It?
Answer :
There are 2 default Tab strips. Screen painter attributes contain Tab Title, which is used to insert more tabs in tab strip.
Q 129. What Are The Properties Of Selection Screen?
Answer :
There are 11 properties of selection screen:
Default
Memory ID
Lowercase
Visible length
Obligatory
Matchcode
Check
Checkbox
Radiobutton Group
No-display
Modify ID
Q 130. What Are The Components Of Selection Table?
Answer :
There are four components of selection table:
Low
High
Sign
Options
Q 131. How To Display Or Know If The Value Entered Contains Records Or Not?
Answer :
SY-SUBRC.
Q 132. What Are The Sequences Of Event Block?
Answer :
Reports
Nodes
Data
Initialization
At selection-screen
Start-of-selection
Get deptt
Get emp
Get deptt late
End-of-selection
Form
Endform
Q 133. What Are Dml Commands In Abap?
Answer :
Select, Insert, Delete, Modify, Update.
Q 134. What Is Asynchronous And Synchronous Update?
Answer :
Asynchronous Update – The program does not wait for the work process to finish the update.
Commit Work.
Synchronous Update – The program wait for the work process to finish the update.
Commit Work and Wait.
Q 135. What Are The Function Module In Bdc?
Answer :
There are three function module in BDC:
BDC_OPEN_GROUP
BDC_INSERT
BDC_CLOSE_GROUP
Q 136. Write The Steps To Execute Session Method?
Answer :
Steps for execution Session Method:
1) System
2) Service
3) Batch Input
4) Session
5) Choose Session Name
6) Process
7) Asks for Mode (Display All Screen, Display Errors & Background)
8) Process
Q 137. What Are The Different Types Of Mode (run Code) In Call Transaction Method?
Answer :
There are three modes in Call Transaction:
A – Displays All Screen
E – Display Errors
N – Background Processing
Q 138. What Are Different Types Of Screen Keywords?
Answer :
There are four types of screen keywords:
Module
Loop
Chain
Field.
Q 139. Write Special Commands Of List?
Answer :
There are four specials commands of lists:
Write
Uline
Skip
New-Page
Q 140. How Data Is Stored In Cluster Table?
Answer :
Each field of cluster table behaves as tables, which contains the number of entries.
Q 141. What Are Client Dependant Objects In Abap / Sap?
Answer :
SAP Script layout, text element, and some DDIC objects.
Q 142. On Which Event We Can Validate The Input Fields In Module Programs?
Answer :
In PAI (Write field statement on field you want to validate, if you want to validate group of fields put in chain and End chain statement).
Q 143. How Do You Get Output From Idoc?
Answer :
Data in IDOC is stored in segments; the output from IDOC is obtained by reading the data stored in its respective segments.
Q 144. When Top Of The Page Event Is Triggered?
Answer :
After executing first write statement in start-of-selection event.
Q 145. Can We Create Field Without Data Element And How?
Answer :
In SE11, one option is available above the fields strip i.e. Data element / direct type.
Q 146. Which Transaction Code Can I Used To Analyze The Performance Of Abap Program?
Answer :
Transaction Code AL21.
Q 147. How Can I Copy A Standard Table To Make My Own Z_table?
Answer :
Go to transaction SE11. Then there is one option to copy table. Press that button. Enter the name of the standard table and in the Target table enter Z_table name and press enter.
Q 148. What Is Runtime Analysis? Have You Used This?
Answer : It checks program execution time in microseconds. When you go to SE30. If you give desired program name in performance file. It will take you to below screen. You can get how much fast is your program.
Q 149. Among The Call Transaction And Session Method, Which Is Faster?
Answer :
Call transaction is faster then session method. But usually we use session method in real time…because we can transfer large amount of data from internal table to database and if any errors in a session, then process will not complete until session get correct.
Q 150. What Are The Difference Between Interactive And Drill Down Reports?
Answer :
ABAP/4 provides some interactive events on lists such as AT LINE-SELECTION (double click) or AT USER-COMMAND (pressing a button). You can use these events to move through layers of information about individual items in a list.
Drill down report is nothing but interactive report…drilldown means above paragraph only.
Q 151. What Is The Table, Which Contain The Details Of All The Name Of The Programs And Forms?
Answer :
Table contains vertical and horizontal lines. We can store the data in table as blocks. We can scroll depends upon your wish. And these all are stored in database (data dictionary).
Q 152. What Is Alv Programming In Abap? When Is This Grid Used In Abap?
Answer :
ALV is Application List viewer. Sap provides a set of ALV (ABAP LIST VIEWER) function modules which can be put into use to embellish the output of a report. This set of ALV functions is used to enhance the readability and functionality of any report output. Cases arise in sap when the output of a report contains columns extending more than 255 characters in length. In such cases, this set of ALV functions can help choose selected columns and arrange the different columns from a report output and also save different variants for report display. This is a very efficient tool for dynamically sorting and arranging the columns from a report output. The report output can contain up to 90 columns in the display with the wide array of display options.
Q 153. What Are Logical Databases? What Are The Advantages Of Logical Databases?
Answer :
To read data from a database tables we use logical database. A logical database provides read-only access to a group of related tables to an ABAP/4 program. Advantages:
Check functions which check that user input is complete, correct, and plausible.
Meaningful data selection.
Central authorization checks for database accesses.
Good read access performance while retaining the hierarchical data view determined by the application logic.
Q 154. Define Batch Input Session?
Answer :
Batch input session is an intermediate step between internal table and database table. Data along with the action is stored in session i.e data for screen fields, to which screen it is passed, program name behind it, and how next screen is processed.
Q 155. How To Upload Data Using Catt?
Answer :
These are the steps to be followed to Upload data through CATT: Creation of the CATT test case & recording the sample data input. Download of the source file template. Modification of the source file. Upload of the data from the source file.
Q 156. What Are The Disadvantages Of Logical Databases?
Answer :
Disadvantages:
If you do not specify a logical database in the program attributes, the GET events never occur.
There is no ENDGET command, so the code block associated with an event ends with the next event statement (such as another GET or an END-OF-SELECTION).
Q 157. What Is Difference Between Dependent And Independent Data?
Answer :
Client dependent or independent transfer requirements include client specific or cross client objects in the change requests. Workbench objects like Subscripts are client specific, some entries in customizing are client independent. If you display the object list for one change request, and then for each object the object attributes, you will find the flag client specific. If one object in the task list has this flag on, then that transport will be client dependent.
Q 158. Describe The Difference Between Macro And Subroutine?
Answer :
Macros can only be used in the program they are defined in and only after the definition are expanded at compilation / generation. Subroutines (FORM) can be called from both the program they are defined in and other programs. A MACRO is more or less an abbreviation for some lines of code that are used more than once or twice. A FORM is a local subroutine (which can be called external). A FUNCTION is (more or less) a subroutine that is called external. Since debugging a MACRO is not really possible, prevent the use of them (I’ve never used them, but seen them in action). If the subroutine is used only local (called internal) use a FORM. If the subroutine is called external (used by more than one program) use a FUNCTION.
Q 159. Define Spool Request?
Answer :
Spool requests are generated during dialog or background processing and placed in the spool database with information about the printer and print format. The actual data is places in the Term See (Temporary Sequential objects).
Q 160. What Are The Types Of Update Requests?
Answer :
An update request can be divided into one primary (V1) and several Secondary update components (V2). Time-critical operations are placed in V1 component and those whose timing is less critical are placed in V2 components. If a V1 update fails, V2 components will not be processed.
Q 161. What Is The Difference Between A Substructure And An Append Structure?
Answer :
- In case of a substructure, the reference originates in the table itself, in the form of a statement include.
- In case of an append structure, the table itself remains unchanged and the reference originates in the append structure.
Q 162. What Are The Different Types Of Views In Sap R/3 System?
Answer :
The different views are:
- Logical view
- Software-oriented view
- User-oriented view
Q 163. What Are The Components In Sap Application Server?
Answer :
The components are:
- Work Processes
- Dispatcher
- Gateway
- Shared Memory
Q 164. What Are The Two Ways For Restricting The Value Range For A Domain?
Answer :
The two ways are:
- By specifying fixed values.
- By stipulating a value table.
Q 165. Define Dispatcher?
Answer :
Act as a bridge to connect different work processes with the respective users logged on to the SAP R/3 system. The request received by the Application Server are first directed to the dispatcher, which enrolls them to a dispatcher queue. The dispatcher then retrieves the request from the queue on the first-in first-out basis, and allocate them to a free work process.
Q 166. Define Gateway In Sap R/3?
Answer :
It acts as an interface for R/3 communication protocols such as a Remote Function Call (RFC). RFC is the standard SAP Interface used to communicate between SAP systems.
Q 167. What Are The Three Components Of A Work Process?
Answer :
The Three components of work process are:
- Screen Processor
- ABAP Processor
- Database Interface
Q 168. What Are The Different Types Of Work Process?
Answer :
Dialog Work Process: Deals with request to execute dialog steps triggered by an active user.
Update Work Process: Execute database update requests
Background Work Process: Execute the programs that run without the involvement of the user
Enqueue Process: Handle the lock mechanism.
Spool Work Process: Passes sequential data flows on to printers
Q 169. What Is Abap Work Bench?
Answer :
It is a graphical programming environment in the SAP R/3 system to develop different application using ABAP language. It provides different tools such as ABAP Dictionary, ABAP Editor, Screen Painter to create ABAP application.
Q 170. What Is An Erp System?
Answer :
It is a system that automates and integrates all modules of the business. It effectively and efficiently manages the resources of an enterprise to maximize the profit and to give a value to its stakeholders.