SAP-APAB interview questions and answers

What is an ABAP?
ABAP (Advanced Business Application Programming) is a high level programming language created by the German software company SAP. It is currently positioned as the language for programming SAP's Web Application Server, part of its NetWeaver platform for building business applications
What is the differences between ABAP and OOABAP. In which situation we use OOABAP?
OOABAP is used to develop BSP/PCUI applications and also anthing involved object oriented like BADIs, SmartForms..etc.where as ABAP is used to develop traditional programs in R/3.
What are the functional modules used in sequence in BDC?
These are the 3 functional modules which are used in a sequence to perform a data transfer successfully using BDC programming: BDC_OPEN_GROUP - Parameters like Name of the client, sessions and user name are specified in this functional modules. BDC_INSERT - It is used to insert the data for one transaction into a session. BDC_CLOSE_GROUP - This is used to
close the batch input session.
When we create a customer the information is updated in structure RF02D and the some tables like KNA1 are updated. How can we find the tables for master data transactions?
Go to ABAP Workbench -> Overview -> application hierarchy - SAP -> follow the customizing based tree for your application. Double click on a lowest hierarchy level to get for the correct marked development class. Here you can find all the tables, views, logical databases etc. used or a system operation.
How can we use CAD with SAP ?
Third party tools from Eigner + Partner provide interfaces to SAP. Another third party software - Fastlook Plus from Kamel Software enables you to view all of the Autocad formats.
How can I access SAP through Internet?
SAP has its own Internet transaction Server (ITS) . Other products include Haht, WebObjects, NetDynamics etc. Each product has its' own architecture. However to access the database, access paths SAP GUI or RFC Channel have to be used.
How can we transport the standard text?
Refer note 3355 in OSS for a complete explanation. The SAPscript objects that should be transported must be written in a transport request. The entries are as follows: R3TR FORM NAME (NAME = Name of the layout set) R3TR STYL NAME (NAME = Name of the style) R3TR TEXT OBJECT,NAME,ID,L (OBJECT = Text object, NAME = Text name, ID = Text ID, L = Text language) If you want to transport a number of texts, you can use report RSTXTRAN to insert the individual text keys into a correction. The transport request must be entered and released via the transport system.
How to find what transactions a particular user was running for a given period in the past (Eg: from 1st of a month )
You may use the transaction - STAT.
We want protect/lock a field so that only selected people can change the value while others can only read. How to set the authorizations?
Create an authorization object for change mode. Loop at screen in the user exit and set input to 0. Check the user based on sy-uname and the authorization. Decide whether input should be 0 or 1.
How to lock an user defined transaction for some time during which no user can access the same?
Use transaction SM01. Scroll through the transactions and check against the transaction to be locked. And after the maintenance is over, go back to SM01 and uncheck the same to unlock. Batch Data Command Our ABAP program is working properly in Foreground.
Can I schedule it for background processing on the weekend?
SAP standard program RSBDCSUB helps you to schedule the job. Create a variant for RSBDCSUB with the BDC session name.
What are internal tables?
Internal tables are 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
What is ITS and merits of ITS?
ITS is a Internet Transaction Server. ITS forms an interface between HTTP server and R/3 system, which converts screen provided data by the R/3 system into HTML documents and vice-versa. Merits of ITS: A complete web transaction can be developed and tested in R/3 system. All transaction components, including those used by the ITS outside the R/3 system at
runtime, can be stored in the R/3 system. The advantage of automatic language processing in the R/3 system can be utilized to language-dependent HTML documents at runtime.
What is CTS and what do you know about it?
The Change 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.
What are logical databases? What are the advantages/ dis-advantages of logical databases?
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: i)check functions which check that user input is complete, correct,and plausible. ii)Meaningful data selection. iii)central authorization checks for database accesses. iv)good read access performance while retaining the hierarchical data view determined by the application logic.
dis advantages: i)If you donot specify a logical database in the program
attributes,the GET events never occur. ii)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).
What is a batch input session?
BATCH INPUT SESSION is an intermediate step between internal table and database table. Data along with the action is stored in session ie data for screen fields, to which screen it is passed, program name behind it, and how next screen is processed.
How to upload data using CATT ?
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.
What is Smart Forms?
Smart Forms allows you to create forms using a graphical design tool with robust functionality, color, and more. Additionally, all new forms developed at SAP will be created with the new Smart Form solution.
How can I make a differentiation between dependent and independent data?
Client dependent or independent transfer requirements include client specific or cross client objects in the change requests. Workbench objects like SAPscripts 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.
What is DynPro?
DynPro is a Dynamic Programming which is a combination of screen and the associated flow logic Screen is also called as DynPro.
What are screen painter and menu painter?
Screen painter: Screen painter is a tool to design and maintain screen and its elements. It allows user to create GUI screens for the transactions. Attributes, layout, filed attributes and flow logic are the elements of Screen painter. Menu painter: Menu painter is a tool to design the interface components. Status, menu bars, menu lists, F-key settings, functions and titles are the components of Menu painters. Screen painter and menu painter both are the graphical interface of an ABAP/4 applications.
What are the components of SAP scripts?
SAP scripts is a word processing tool of SAP which has the following components: Standard text. It is like a standard normal documents. Layout sets. - Layout set consists of the following components: Windows and pages, Paragraph formats, Character formats. Creating forms in the R/3 system. Every layout set consists of Header, paragraph, and character string. ABAP/4
program.
What is ALV programming in ABAP? When is this grid used in ABAP?
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.
What is an ABAP data dictionary?
ABAP 4 data dictionary describes the logical structures of the objects used in application development and shows how they are mapped to the underlying relational database in tables/views.
What are domains and data element?
Domain is the central object for describing the technical characteristics of an attribute of an business objects. It describes the value range of the field. Data Element: It is used to describe the semantic definition of the table fields like description the field. Data element describes how a field can be displayed to end-user.
What is foreign key relationship?
A relationship which can be defined between tables and must be explicitly defined at field level. Foreign keys are used to ensure the consistency of data. Data entered should be checked against existing data to ensure that there are now contradiction. While defining foreign key relationship cardinality has to be specified. Cardinality mentions how many dependent records or how referenced records are possible.
Describe data classes.
Master data: It is the data which is seldom 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.
What are indexes? Indexes are described as a copy of a database table reduced to specific fields. This data exists in sorted form. This sorting form ease fast access to the field of the tables. In order that other fields are also read, a pointer to the associated record of the actual table are included in the index. The indexes are activated along with the table and are created
automatically with it in the database.
What are the difference between transparent tables and pooled tables?
Transparent tables in the dictionary has a one-to-one relation with the table in database. Its structure corresponds to single database field. Table in the database has the same name as in the dictionary. Transparent table holds application data. Pooled 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.
What is an ABAP/4 Query?
ABAP/4 Query is a powerful tool to generate simple reports without any coding. ABAP/4 Query can generate the following 3 simple reports: Basic List: It is the simple reports. Statistics: Reports with statistical functions like Average, Percentages. Ranked Lists: For analytical reports. - For creating a ABAP/4 Query, programmer has to create user group and a functional group. Functional group can be created using with or without logical database table. Finally, assign user group to functional group. Finally, create a query on the functional group generated.
What is BDC programming?
Transferring of large/external/legacy data into SAP system using Batch Input programming. Batch input is a automatic procedure referred to as BDC(Batch Data Communications). The central component of the transfer is a queue file which receives the data vie a batch input programs and groups associated data into “sessions”.
What are the events in ABAP/4 language?
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.
What is the difference between macro and subroutine?
Macros can only be used in the program the are defined in and only after the definition are expanded at compilation / generation. Subroutines (FORM) can be called from both the program the 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.
What is the differences between structure and table in data dictionary in ABAP?
Table can store the data physically but a structure dose not store.Table can have primary key but a structure dose not have.Table can have the technical attribute but a structure dose not have.structure doesn't contain technical attributes.structure doesn't contain primary key.structure doesn't stores underline database level.
What is the difference between collect and sum?
When processing an internal table in a block starting with LOOP and concluded by ENDLOOP , SUM calculates the control totals of all fields of type I , F and P (see also ABAP/4 number types ) and places them in the LOOP output area (header line of the internal table or an explicitly specified work area). When you use SUM in a LOOP with an explicitly specified output area, this output area must be compatible with the line type of the internal table.When using LOOP to process a sorted extract (see SORT ), the control total of f at the end of the group appears in the field SUM(f) - - if f is type I , F or P . COLLECT is used to create unique or compressed datsets. The key fields are the default key fields of the internal table itab .
How we format the data before before write statement in report ?
We can format the reports output by using the loop events like:
1.at first2.at new3.at lastetc.
What is the difference between Table and Template?
Table is a dynamic and template is a static
When do we use End-of-selection?
End-of-selection event are mostly used when we are writing HR-ABAP code. In the HR-ABAP code, data is retrived in the Start-of-selection event and Printing on the list and all will be done in End-of-selection event.
What is table buffer? Which type of tables used this buffer?
buffer is nothing but a memory area. table is buffered means that table information is available on application server. when you call data from database table it will come from application server. Transperent and pooled tables are buffered. cluster tables can not buffered.
What is the use of pretty printer ?
Pretty Printer is used to format the ABAP Code we write in ABAP Editor ,like KEY WORDS in Capitals and remaining are in small letters which is also depend on system settings.
What is the difference between SAP memory and ABAP memory?
Data sending between main sessions using get parameter and set parameter is sap memory Data sending between internal sessions using import or export parameters is abap memory sap memory is a global memory whereas abap memory is local memory.
What are the advantages and disadvantages of using views in ABAP programming ?
advantages: view is used to retrieve the data very fastly from the database tables *memory wastage is reduced *faster than joins to retrieve the data from database tables
disadvantages: view is not a container,it will not hold the data *view memory is not permanent memory
How data is stored in cluster table?
A cluster table conatins data from mulitple DDIC tables. It stores data as a name value pair ( varkey, vardata)
Have you used performance tuning? What major steps will you use for these?
First of all tunning can be done In three ways: disk i/o ,sql tunning , memory tunning, Before tunning u have to get the status of your database using Oracle utility called statpack , tkprof, then you should go for tunning
How to create client independent tables?
client independent tables: the table in which the first field is not mandt is the client independent tables *mandt is the field with mandt as the data element *automatically client which we login is populated to mandt
What type of user exits have you written?
There are four types 1.function exit 2.menu ixit 3.screen exit. 4.field exit. these are the user exits
How can you debug a script form?
SE71 -> give the form name -> utilities -> activate debugger
How do we debug sapscript?
First we need to put Break point in Print program where ever you want to stop the execution. After in SE71 give your form name and go to Utilities-->Active De-bugger. Then go to your transcation like VF03(for Invoice or Credit memo) etc to see the print preview or print the form execute it. When you execute it the the form Debugging will get activated and you can see your Form execution step by step.
What are the different types of data dictionary objects?
Data Dictionary Objects* Tables* Views* Domain* Data Element* Type Groups* Search Helps/Matchcode Objects* Lock objects* Structures* Table Typesthe dictionary objects are: domain dataelements tables views structures typegroups search helps lock objects etc which are data base related objects in sap
What is the step by step process to create a table in data dictionary?
steps to create database tables 1.go to se11 2.give name the database table 3.give short description for the table 4.Give delivery class name as A and data browser / table view maint as Display/maintenence allowed 5.select fields tab 6.give field name data type(user defined element type/built-in-type),short text 7.select technical settings tab ,give data class as appl0 and size category as 0 8.save it 9.go utillities menu click table contents select create and enter the field values then select display in table contents and u can view the table values with field lables
Can a transparent table exist in data dictionary but not in the data base physically?
no, transparent table do exist with the same structure both in the dictionary as well as in the database.exactly with the same datas and fields.