abap top most interview questions

Upload: vinay-reddy

Post on 06-Apr-2018

245 views

Category:

Documents


3 download

TRANSCRIPT

  • 8/3/2019 ABAP Top Most Interview Questions

    1/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 1

    MALLIKARJUNA PSAP Technical Consultant

    IBM India Pvt Ltd.

    BANGALORE

  • 8/3/2019 ABAP Top Most Interview Questions

    2/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 2

    ABAP internal Tables interview questions

    Q1: What is the meaning of Data Clusters?A1: Data clusters are the way in which every type of complex internal data objects from an

    application in ABAP/4 are grouped. They are also deposited in the memory of BAP/4 for a limitedperiod of time or in databases for a longer time. The databases of this type have the name accordingly,

    they are named cluster databases and their construction is predefined. This type of depositing data

    clusters is a particular feature of ABAP/4. With the aid of SQL statements it is possible to enter

    cluster databases and the data clusters that have been deposited in ABAP/4 can be decoded only by

    ABAP/4.

    Q2: What is the meaning of these terms in SAP: application server and presentation server?

    A2: An application server manages the output /input of ABAP/4 programs and interprets them.

    Application servers are groups of executables. Presentation servers are programs from the

    workstations of users that are called like this: Sapgui.exe.

    Q3: In what way are Get and SET different?A3: GET PARAMETER IF FIELD: The value deposited in ID is met in the variable by the statement,

    if a value is not found in SAP memory, the system configures SY-SUBRC to 4, in a different case is

    0. SET PARAMETER ID FIELD: The field contents from ID are stored in SAP memory in a code

    with up to 20 characters in length. If a value is found there already it will be overwritten, if there is no

    ID we have to make a new parameter object by double-clicking the ABAP Editor.

    Q4: What is the meaning of Field group, extract data set?

    A4: Extract data sets are made of records sequences, we can have various structures for the records,

    record types are in fact a group of records that have the same structure. Every record type that an

    extract dataset has can be defined as a field group with the statement FIELD GROUPS. The FIELD

    GROUPS statement brings multiple fields together with providing one single name. Usually we

    should declare the field groups when the declaration part in a program is finished, this will makeeverything clearer. Field groupsdon tgenerate field spacebut they show the fields that already exist,they show us the records content if the records are met in the extract dataset.

    Q5:What is the way for accessing data that is found on an application server and on a

    presentation server in ABAP/4?

    A5: We will have to make use of these modules: UPLOAD or WS_UPLOAD for the presentation

    server and OPEN DATASET, CLOSE DATASET, READ DATASET for the application server.

    Q6: How can we process sequential file, through what commands and syntax?A7: For reading we use READ DATASET, for writing we use TRANSFER and for mode at

    POSITION MESSAGE, OPEN DATASET.

    READ DATASET INTO

    CLOSE DATASET

    DELETE DATASET

    TRANSFER

    Q8: How do we separate these statements: assign and move?

    A8: Assign: at data object assigning, the data projects technical attributes are verified by the systemfor compatibility with every type specifications of the field symbol (ASSIGN TO). General attributes

    can be taken by the field symbol if they are not found in the field type specifications. If we go with

    the assignment it shows in the memory. Move: the MOVE statement is used for giving data object

  • 8/3/2019 ABAP Top Most Interview Questions

    3/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 3

    values to variables. It can be found as text symbol, literal, constant but it is not necessary to be found

    as a variable. No matter what the personal configurations the user has the decimal points always have

    to be stated with a period (,).

    Q9: How do we make a separation between these terms: appending, input and output?

    A9: Through appending we understand opening a file in order to write at its end. In the case the file is

    not found we have to make it. Through inputwe understand the opening a file to read it and through

    output we mean opening a file for the purpose of writing. The file in which we write will be

    overwritten if it is already there and made if it doesnt exist already.

    Q10: How do we proceed for a row in a table when we want to run a report?A10: In this case we will make use of the Graphics Multiplexer. We will have a procedure that

    resembles screen capture that allows us to capture just the data. With this data graphs can be designed

    2D or 3D, a feature that we can always access from the Menu-generate Graphics. In this way the

    required data can be dragged and we can choose the data we need for making a graph. After selection

    we must hit Graphics and the Graphics Multiplexer will be opened.

    Q11: At the creation of internal tables what is the criteria configuration of the value of anoccurs?

    A11: What we have to do for configuring the value of an occurs is to make optimizations and for this

    we have to keep in mind some things like:

    a) The default declared size will be maintained in the roll areafaster program access.b) The whole data area of the application will be 64 kilobytes.

    c) The data inserted that is bigger than the default size is deposited in the roll file- the program is

    accessed slow.

    More, prior to deciding to do an optimization we have to analyze the rates of access and the volume.

    Q12: What is the syntax and function used for command AUTHORITY CHECK?

    A12: Syntax: AUTHORITY=CHECK OBJECT

    IF SY-SUBRC NE 0. The verification for authorization from the user part for starting a specific actionis made by AUTHORITY CHECK.

    Q13: What are the details regarding the debugger screen functions?A13:Single step or F5 is an option that can be used to go through a program by every statement, in

    the function modules and subroutines that will run also step by step. After the processing of every

    function module or subroutine with the aid of the statements CALL FUNCTION and PERFORM the

    control can go back at the statement.Execute or F6 is an option for running a program with every line,

    so in a single line the statements will be processed all at once. When we use Execute and we are on a

    line invoking a subroutine, the entire subroutine will be processed and it will go to the line with the

    subroutine invoking, and we can go from statement to statement inside the subroutine. Return or F7:

    When control is going back to the main program, also the debugger will go back there from the

    subroutine. Return is an option that is good for going back to the invoking program from a subroutine, invoked program or function module. Continue or F8 is an option good for processing the program

    up to the following dynamic or static breakpoint or the location of the cursor. When the breakpoints

    dont exist anymore and there is no cursor, the remaining part of the program will be processednormally and the system will go out of the debugging mode.

    Q14: What is the role of the following commands: IMPORT and EXPORT? When we use

    IMPORT what is the way for passing multiple data groups?

    A14: IMPORT: The statement used or reading the data objects from the memory into a program in

    ABAP/4 has this syntax: IMPORT FROM MEMORY ID. The data objects that are read are found

  • 8/3/2019 ABAP Top Most Interview Questions

    4/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 4

    in a memory cluster in the form of a list. Without the option TO the same name will be found at

    assigning the data object from the memory to the one from the application. In this case the data object

    will be read in the field from memory and the memory cluster will be seen by the name, which can be

    of a maximum of 32 characters in length. We dont really have to read every object that was depositedon a specific name, the object count can be restricted by the names of the objects. When on a specific

    name in the memory there are no objects then SYSUBRC will be four. In another case when the name

    from memory has a data cluster then SY-SUBRC will be 0 no matter if there is non not a data object

    contained.

    EXPORT: The statement and syntax used for reading data objects from the program into memory in

    ABAP/4 Are: EXPORT TO MEMORY ID. A cluster in the memory is where the data objects aredeposited in form of a list, when FROM is not used the data object will be stored in the name of the

    data object, when FORM is used a name will be used for storage and it will represent the cluster from

    the memory, 32 maximum characters in length. If we have the same name already EXPORT will

    overwrite what it finds in the current data cluster.

    Q15: What types of Internal tables exist?

    A15: The Internal table type are:

    a) The standard table: for key access to this type of table linear search is used, so the duration neededfor a search has a linear connection to how many table entries we have. For accessing standard tables

    it is best to use index operations.

    b) The hashed table: it is a table that will be handled using an internal hash procedure and it will only

    be available to access with the generic (key) operations like LOOP, SORT and others, so

    implicit/explicit index operations are forbidden.

    c) The sorted table: it is a table that is every time sorted in the right way and to access it we need to use

    binary keys. The index from the lower level is picked up by the system if we dont have a unique key.The table count determines directly in a logarithmic way the needed runtime for key access.

    d) The index table: is the table which is possible for us to access with the aid of an index. Its solely

    purpose if to say what kind of generic parameters we will have in a function or form.

    Q16: How do we describe the Check statements and what is their mechanism?A16:The Check statement is used for finishing one loop pass conditionally, w hen the conditionsays true the rest of the statements from the actual statement block will be ignored and will begin the

    next loop.

    Q17: How can we describe the following commands: MODIFY LINE and READ LINE?

    A17: The MODIFY LINE statement is meant for changing the lines of a full list from inside the

    program and the READ LINE statement is used for reading data found on the lines from the current

    levels. READ LINE is the same as READ CURRENT LINE and they are both related to HIDE.

    Q18: In what way is made the client specification regarding data processing?A18: TABLES SPFLI. SELECT * FROM SPFLI CLIENT SPECIFIED WHERE MANDT

    BETWEEN 001 and 003. END SELECT.

    Q19: How do we describe Activation?A19: In the time of activation, the runtime object of aggregate object/tables is being made, it will be

    buffered for the purpose of faster access from the application program; it contains details regarding

    the following objects of table: domain, data elements, field definition, table definition.

    Q20: What is the best way for reading database table lines in an internal table in the form of

    packs of a known size?

  • 8/3/2019 ABAP Top Most Interview Questions

    5/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 5

    A20: SELECT *FROM SPFLI INTO TABLE ITAB PACKAGE SIZE N (N being the variable). We

    must give a name to the WILDCARD characters that are meant to be compared with numeric and

    character strings.

    Q21: What do we mean by Lock Mechanism?

    A21: The Lock Mechanism stops the beginning of a fresh database operation when another has been

    finished in the right way. At the end of a conversion the lock will be made automatically if the

    conversion is correct.

    Q22: What is the meaning of these terms: Switching changes, storing changes and cancelling

    changes?A22: The switching changes are the switches from active to revised version, the storing changes mean

    that active version will be deposited for a limited period of time in versions and cancelling

    changes will make a reset of the revised versions to be an active versions.

    A23: What is the significance of restart adjustment and cancel adjustment?

    A23: With restart adjustment will continue the conversion when it is at the finish point and with

    cancel adjustment the lock entry will be erased from table.

    Q24: What is the version catalog and what types of versions exist?A24: The version catalog is the list that contains very version of an object in existence. The version

    types are:

    a) The active version: is the version made at the program activation.

    b) The revised version: is the version made at the editing of the current project.

    c) The temporary version: is the version made at the temporary copying of the active version in the

    database that has store version functions.

    d) The historical version: is the version made at the making of the correction and at the release of the

    correction.

    Q25: How do we show the internal table contents and how does a program run in background?

    A25: We can push F9 from the selection screen but not before we fill the screen, then the display willshow a request for the user to print Background Parameters. Then we write the output device, that can

    be for example HPLI/SAP2. Print has to be unchecked urgently from the spool options then we c also

    delete then new spool request. After we hit enter a screen will be displayed showing the start time of

    the heading, we may pres start now and save. In this way we have a background job started for the

    specific program, for displaying its status we will use this transaction code: SM37. Then from the

    screen that appears Job overview then we select our program then Spool in the toolbar of theapplication the Output Controller and List of Spool Requests. After this-we select our Spool request

    and we hit the Display icon that we see in the overview. The List should appear. We have to be

    careful because if the list exceeds 255 columns it will become truncated in background.

    Q26: Which are the buffering types?

    A26: Buffering can be full, generic or single record. In the first case the entire table or nothing willwe found in the buffer while in the case of generic buffering the generic locations from the buffer are

    buffered entirely? Single record buffering is the third case in which the currently accessed records will

    be loaded into buffers.

    Q27: What is generic key and generic area?A27: The generic key is the left part of the first table key. The generic area represents every record

    that correspond to generic key fields.

  • 8/3/2019 ABAP Top Most Interview Questions

    6/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 6

    Q28: How do we separate these terms: invoking a program, transactions with or without return

    and what is the way to succeed?

    A28: When using AND RETURN the data of the invoking executable will be deposited by the system

    and the system will go back to the invoking once the invoked program was processed. The execution

    of the invoking program will be retaken when the statement is made. When we dont add ANDRETURN the entire data and the stages of the list that the invoking program has or we can say the

    whole internal session will be erased. Once the executable program is terminated the control will go

    back to where that start of the invoking program was. When it comes to transaction we have: CALL

    TRANSACTION [AND SKIP FIRST SCREEN] [USING]. It is a statement that preserves the

    invoking program data and the transaction begins. When the transaction finishes , the system will go

    back to the statement from the invoking report that is following the invoking. This statement: LEAVE

    TO TRANSACTION [AND SKIP FIRST SCREEN] finishes the invoking program and the

    transaction begins. The invoking stack will be erased (or what we name internal sessions) for all the

    past programs. When the transaction finishes, the system will go back to the area menu where the

    original program from the invoking stack begun.

    ABAP ALE interview questionsQ1: What are the strong features of ALE and how do we benefit from the?A1: ALE is good because it gives the companies the possibility to enhance the performance of their

    business and to get solutions for technical and management problems. We can split businesses

    allowing operations at local level in an independent way. This splitting brings improved results to

    companies, better than the results that they may get at a bigger scale when they are centralized. This is

    because they are more flexible and this flexibility assures the adaptation of the information systems to

    the change speed that we find in the markets these days. Through distribution we gain a high freedom

    state, some of the companies that already have a good local management can make connections with

    the ALE businesses. Virtual connections can be made and partnerships between different companies

    in this way. Anyway, integration is not the best solution for all issues because many of the programs

    that a company uses could not be compatible with a system when we talk about complementary

    software and legacy systems. Companies can use a different SAP industry solution or a particular

    solution to a country that cant work on the same system. If these programs run on two or moreseparate systems, they cant be connected with a central database but they will use ALE as anintegration method. ALE can connect SAP Core Systems to CRM, APO or Business Information

    Warehouse. Not only flexibility is an advantage but ALE has the great advantage of a low upgrade

    cost, along with other reduced costs. When the entire system works on a single integrated system the

    entire system has to be upgraded even in the case when just company component requires an upgrade.

    The Upgrade has an impact on the whole company and for this to be a success the users must be

    instructed with the new version. A distributed software with separate single interfaces like ALE we

    can concentrate to upgrade only the part of a company that is necessary to be updated while keepingthe remaining parts the same with no update or instructions; the advantages of this procedure are

    obvious- saving big amounts of money and protecting the current investments. There is one more cost

    element that influences the communication cost, it is cheaper to have a 64k line connection to the

    central system than to have an overseas type of connection.

    Q2: What is the meaning of ALE?

    A2: ALE or Application Link Enabling is the totality of tools and business processes that can give the

    programs the possibility to connect from different computers. The computer can be two or multiple

    SAP systems or they can be SAP and non SAP. In one SAP system, through one database multiple

    applications can be incorporated. As example: sales, production, finances, human resources etc. The

  • 8/3/2019 ABAP Top Most Interview Questions

    7/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 7

    business that ALE is providing can connect programs from various platforms. Some of the ALE

    businesses are found in the SAP standard system, but with the aid of some utilities we can modify the

    current processes of ALE businesses or insert fresh processes. Along with the normal business

    processes there are specific ALE services needed for configuring the distributed environment control,

    services that contain business object synchronization, distribution model or utilities for error

    management and monitoring. Being a component of the SAP Business Architecture, ALE allows the

    cooperation of the framework parts, it works like a glue for the Business Framework.

    ABAP Enhancements interview questions

    Q1: What is the reason for using enhancements?

    A1:Normal programs dont give us all the functionalities we may need, so to fix this we can use theR/3 enhancements that will permit us to insert our particular functionality to any normal SAP

    program.

    Q2: What is the meaning of customer development?

    A2: Customer development generates objects particular to the customers in their name range.

    Q3: What weaknesses do we find when using modification?

    A3: One of the weaknesses is that we could have errors when standard code is modified. This

    automatically leads to a higher amount of work when software upgrades are made.

    Q4: Why should we choose to make modifications?A4: Customer exits dont exist in every screen and program from R/3, and because they can be used

    just if they already exist in SAP R/3, sometimes we must choose to make modifications.

    Q5: What is the meaning of a screen exit?A5: Screen exits means to add fields to R/3 screens, SAP generates screen exits by deploying

    particular subscreen areas in a normal R/3 screen and then invoking customer subscreens from the

    normal flow logic of dynpro.

    Q6: What is the way in which exit organizing is made by SAP?A6: Organizing exit packages of SAP is also found under the name of SAP enhancements and every

    SAP enhancement can have several particular exits.

    Q7: What is the meaning of user exits, how are they written and which measures do we have to

    take for prevention?

    A7: In the default standards of SAP we can find the user defined functionalities, we can find a Sapprogram in which a customer personal program may be invoked. Unlike customer exits. user exits can

    permit the developers to enter and change the parts of the program and also the objects. When

    upgrade is made , every user exit has to be verified for conformation to the standard system. The user

    exits can use INCLUDES, case in which Customizing makes the management. We have to search for

    those customer enhancements from a specific development class.

    Q8: Can we classify the enhancements by type?A8: Yes they can be classified in: a) enhancements that use customer exits and b)enhancements of the

    elements in the ABAP/4 Dictionary.

  • 8/3/2019 ABAP Top Most Interview Questions

    8/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 8

    a) The standard software doesnt incorporate all the requirements of the customer, but they can becontained as empty shells that can be changed by the customers by inserting their personal codes.The enhancements can refer to menus, screens or programs, the compatibility being assured. This

    means that in SAP guarantees that the compatibility will be maintained even when passing from

    standard software to exit and the interface invoking the exit (they will be kept for future versions too).

    b) These are enhancements like table appends or text enhancements or field exits (supplementary

    coding for data elements).

    Q9: What is the meaning of SSCR?

    A9: The SAP Software Change Registration or SSCR is the operational that makes possible the

    registration of every manual change of the SAP source coding and objects of SAP Dictionary.

    Q10: What are the strong features of enhancements?A10: They dont have an impact on the standard source code of SAP, they dont have an impact onsoftware upgrades.

    Q11: Which are the main types of customer exits?

    A11: The main types of customer exits are: the screen exits, the menu exits, the function module exitsand the keyword exits.

    Q12: What is the meaning of function module exit?

    A12: The function module exit is meting supplementary functionality in R/3 programs having a big

    role in the menu exits and the screen exits.

    Q13: What is the meaning of an add-on project?A13: For using in the best way the exits we find in the standard R/3 programs we have to make an

    add-on project, that makes possible organizing the enhancement packs and the exits we desire to use.

    An add-on project makes possible to met add-on functionality on the texts from the SAP

    enhancements.

    Q14: What is the meaning of a keyword exit?

    A14: With a keyword exit we can give to the data elements of the keywords from the ABAP/4

    dictionary some documentation. This documentation will be shown by the system every time users hit

    the F1 key for obtaining help online regarding a screen field.

    Q15: What is the meaning of a menu exit?

    A15: Menu exits mean when we add item on the pulldown menus.

    Q16: How can we separate enhancements from modifications?

    A16: When we create modifications on the functionality of the SAP standard we say modifications.

    When we put supplementary functionality on the standard functionality of SAP we say enhancements.

    Q17: What is the meaning of customizing?

    A17: When we configure the system parameters through the SAP interface we mean custominzing.

    A18: How can we classify the methods in which we generate modifications in the standard

    software of SAP?A18: We can make: enhancements to the standard of SAP, modifications to the standard of SAP,

    customizing and customer development.

  • 8/3/2019 ABAP Top Most Interview Questions

    9/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 9

    SAP ABAP top 50 interview questions

    These are very very top sap abap interview questions for interviwers..

    Q1: What is the way to combine SAP and CAD?

    A1: SAP interfaces are given by third party tools like those from Eigner or Fastlook Plus (from Kamel

    Software) which can allow us to display every format from Autocad.

    Q2:Is it possible to have a standard SAP report that will count how many times a program is

    running?

    A2: There is one report like that, transaction STAT.

    Q3: We use SAPSCRIPT-FORMATPAGES for receiving the total page count that we expect,

    since our duplex case is every time Terms and Conditions,what should we do if we dont need

    the same page count like in duplex printing?

    A3: We have make modifications on the Page counter mode, putting it to HOLD to avoid the

    incrementation when printing the Terms and Conditions.

    Q4: At client creation the details get updated in the RF02d structure and also KNA1 tables get

    updated (some of them), where are the master data transaction tables to be found?

    A4: We have to hit Overview from the ABAP Workbench then application hierarchy then SAP and

    see the customizing tree of our program; we must choose the lowest hierarchy level in order to receive

    the right development class marking. Every table is found here, every view and every logical database

    of a system operation.

    Q5: How do we get an RFC to perform these transaction: MB1A, MB1C, >MB01?A5: We will need to invoke RFC INBOUND_IDOC_PROCESS using IDOC_CONTROL and

    IDOC_DATA. The IDOC_DATA structure fields are e1mbxyi e1mbxyh.

    Q6: When we state the logical database and we require a field that will not be found in the

    normal tables of the logical database , how do we do this, how do we add a field that is from a

    separate table?

    A6:Lets think that we poses this logical database:Table 1

    Table 2

    Table 3

    We then will define fld as the supplementary field (initially it is the required field) of tables 1, 2 and

    3, then: Perform get_fld(zxxxxxxx) with fld where form zxxxxxxx can be Form get_fld with f=table4-

    fld.

    Q7: We see that the ABAP program is running well in background, is it possible to schedule itto run this weekend in background?

    A7: We can do this, it is possible with the aid of RSBDCSUB, a normal SAP program but we have to

    make a version of RSBDCSUB using the name of the BDC session.

    Q8: How do we transport a change to a layout set in a Dev instance between two clients in a

    better way?

    A8: This can be done using transaction SE 71 from Utilities then Copy from Client and the transport

    will be made from client to client through the DEVKxxxxxx requests.

  • 8/3/2019 ABAP Top Most Interview Questions

    10/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 10

    Q9: What is the way to set parameters?A9: We have to setup the PS utilities from the SAPGUI setup CD and then from SE38 we have to

    start report RIACCESS, the SALE, Communication, Define RFC Destination, we have to intall 2

    RFC destinations PS_ACCESS_1 and PS_ACCESS_2 and configure them to show wdpsatab.exe and

    wdpsastr.exe. After this we will run RIACCESS and select PS_ACCESS_1 for creating access tables,

    but just tables of 255 fields are compatible with Access.

    Q10: In what way is possible to move standard text?A10: For a full tutorial follow note 3355 from OSS, the objects that need to be moved from SAP

    Script have to be met in a transport request, like below:

    R3TR FORM NAME (the layout set name)

    R3TRSTYL NAME(the style name )

    R3TR TEXT OBJECT, NAME, ID, L. Here Object means the text object, NAME means the text

    name, ID means text ID, L is the text language. For moving multiple texts we should use report

    RSTXTRAN for entering particular text keys in a correction, the moving request has to be inserted

    and released through the transport system.

    Q11: Why cant we make stock order transports , even if we can make transports for deliverydue list by invoking transaction VL01 in batch input?

    A11: Filling delivery due list cant be made as is not a dynpro, but a normal SAP report, which can beinvoked with the use of the corresponding options, it is better to invoke a report instead of making a

    batch-input program.

    Q12: What is the best way to access SAP online?

    A12: There is a private Internet transaction server or ITS for SAP and there are also products like

    WebObjects, Haht, NetDynamics, every product comes with a different architecture. But for database

    access we have to use the following access paths: RFC Channel and SAP GUI.

    Q13: What is the way for locking user defined transactions temporarily so that nobody has

    access to the same?A13: They way is by using the SM01 transaction. We have to look for transaction and make sure it is

    locked by checking, then when the maintenance is done we can uncheck SM01 for unlocking.

    Q14: What is the way to see which transactions were running for specific time for a specific

    user?

    A14: For this the way is using STAT.

    Q15: How can we announce a user for the completion in background of a BDC or report?A15: We can do this by using FUNCTIONS RS_SEND_MAILFOR_SPOOLLIST. In Unix a report

    has to be sent to the e-mail with this:

    REPORT ZSNDMAIL.

    DATA:COMND(299) type c.DATA:RESULT(200) type c occurs 100 with header line.

    PARAMETERS: FILE(60) type c lower case default '/sapdata/sd_outbound/testmail.dat'.

    PARAMETERS: SUBJECT(60) type c lower case.

    PARAMETERS: EMAIL(60) type c lower case.

    INITIALIZATION.

    TRANSLATE EMAIL TO LOWER CASE.

    START-OF-SELECTION.

    TRANSLATE EMAIL TO LOWER CASE.

  • 8/3/2019 ABAP Top Most Interview Questions

    11/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 11

    CONCATENATE 'cat' FILE '| elm -s "' subject '"' email into comnd seperated by space.

    CALL 'SYSTEM' ID 'COMMAND' FIELD comnd 'TAB' FIELD UNIX_RESULTS-*SYS*.

    Loop at Results.

    write: /1 results.

    endloop

    end-of-selection.

    Q16: Is there possible to print a logo in an invoice?A16: The Logo can be made and saved with Corel Draw or PaintshopPro under a tiff file, then with

    RSTXLDMC we must transform the logo into a standard text format in SAP Script. It is important to

    write the name of the file and the patch right at the execution of the program. It could look like this:

    Run RSTXLDMC

    Enter file name C:\MAIL\COMPLOGO.TIF

    Resolution for Tiff file

    Absolute X-position

    Absolute Y-position

    Absolute positioning

    Reserved heightShift to right

    UOM = CM

    Text title

    Line width for text = 132

    Text name ZHEX-MACRO-COMPLOGO

    Text ID ST

    Text language = E

    Postscript scaling

    Width & Height according to PS scaling

    Number of Tiff gray levels (2,4,9) 2

    We must make a new window COMP that has attributes;

    Window COMP description Company LogoWindow type CONST

    Left margin 7.00 CH window width 10.00 CH

    Upper margin LN window height 8.00 LN

    In the end we have to say in the text element

    /: INCLUDE 'ZHEX-MACRO-COMPLOGO' OBJECT TEXT ID ST LANGUAGE 'E'.

    We have to be careful because if we dont indicate the name of the object as ZHEX it is possiblethat the logo will not be printed. Anyway we cant see the logo in a preview (test print). When we use2 logos in a layout we have to put individual name to every logo. Example: ZHEX -MACRO-LOGO1 and ZHEX-MACRO-LOGO2, if we dont do it like this, every detail will be overwritten.One more thing, the logo is not printed if it is not tiff 6.0.

    Q17: Can we monitor the transports which will go in other systems like DEV, TST, PRD orTRN?

    A17: For the management of the DEV and CTS systems we have SAPCRAFT, it monitors every

    transport at every level and we can allocate the import, authorization and export functions to a

    particular user.

    Q18: In what place can we deposit the last file number in the case when we have to download

    internal tables on the local workstation or Presentation Server, as we have to save each file in

    order like 0001.txt, 0002.text, 0003.text and so on?

  • 8/3/2019 ABAP Top Most Interview Questions

    12/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 12

    A18: For depositing these files in SAP we have the TVARV table in which we can make records for

    each program that needs this type of records. Example: we have this record 100Zmm10001 MM, the

    first part of the record is the code of the client and the current working record, the second part

    describes the role that the record will have, the whole string can be put in the Name field. We can

    have Parameter and Selection in the Type field (P and S) and we can have 0001 on first run in theLow field.

    A19:Can we have some examples of Direct input data transfer programs?A19: Material Master data, MM -RMDATIND, Accounting Document (FI)RFBIBL00, Independent

    requirements(PP)RM06INN00, Classification data (CA)RCCLBI03.

    A20: What is the meaning of a field symbol?

    A20:Field symbols dont make space in the physical memory, instead they display fields that will beavailable at the program start. Usually it is enough to know just the field that we are about to process

    and the mode in which it is processed at runtime. To accomplish this we can make field symbols in

    our program and real fields can then be assigned to the field symbols during runtime. The processes

    that we initiated with the field symbols will then be transported along with their assigned fields, after

    this it doesnt matter if we reference the fields or the field symbols.

    Q21: Which are the main standard programs that everyone who uses ABAP have to use and

    learn?

    A21: RSAVGL00 the configuration of tables between clients, RSBDCSUB makes the release of

    batch-input sessions automated, RSCLTCOP is copying tables between clients, RSINCL00 xtended

    Program list , RSORARELGettheOracleRelease, RSPARAM Display all instance parameters

    ,RSTXSCRP Transport SAPscript files across systems, RGUGBR00 Substitution/Validation utility,

    RSUSR003 heck the passwords of users SAP*and DDIC in all clients, RSUSR006 makes a list of

    last logins and RSTXLDMC is loading LOGOs on the application server.

    Q22: What is the way for using a grid list?

    A22: For using grid lists we will use Function Module Display_*LIST. We will put all the requireddata for output in the last format and then transport the internal table on the function module. There

    are 2 types of grid lists:

    a)in version 4.0b we have DISPLAY_GRID_LIST

    b)in version 4.6b we have DISPLAY_BASIC _LIST.

    Q23: What database integrities do we know?

    A23: The database integrities are classified like this: relational, foreign key, semantic, primary key,

    value set and operational.

    Q24: What types of lock modes exist?A24: The lock modes are: exclusive, shared and extended exclusive.

    Q25: When do we have to use GPA an SPA and what is their meaning?A25: To insert report data in the fields of the invoked transaction we have to use the SPA/GPA

    technique. SPA and GPA are parameters or values that are deposited in the global memory by the

    system. The memory of SAP is actually good for moving the values from a program to another. The

    values that are deposited can be accessed by the user in the SAP memory in the time of a single

    terminal session for every mode together in the same time.

    Q26: What message types exist and what is the way of displaying them?

    A26: The system is announced about errors that appear by the ABAP/4 module in the form of

    information, messages of warning or error, it can also issue messages of success when some action

  • 8/3/2019 ABAP Top Most Interview Questions

    13/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 13

    that have been made is a success. By pressing the ENTER key the process currently running will be

    terminated. The SAP main menu can be reached with the aid of the Abend message.

    Q27: Where is the Message class generated and how is this made?

    A27: 2 locations in the system can generate a Message class:

    a) The Object Broweser, where we will have an object list- Object class.

    b) The ABAP/4 Editor, where there is the ABAP/4 module.

    Q28: What is the meaning of interactive reports and what separates them from HTML reports?A28: With interactive reporting users can be have an interactive participation at data presentations

    and recovery in the time of a session, interactive reporting is not making a very detailed list but a

    concentrated and simple list from where we can invoke more information and details by moving the

    cursor over it and inserting commands. It also lowers the recovery of information of the needed data.

    The secondary list contains the details, this list can be as a full overlay of the main list or it can be

    displayed on a supplementary dialog window from the main screen. We can also make the secondary

    list to be interactive as well.

    Q29: What do we have to define for Domain and for Data element?

    A29: For Domain we define the Field Length, the Data Type and the data values that are permitted.

    For Data Element we define the FIELD TEXTS and COLUMN CAPTIONS represented as fields on

    the display. They the table contents output.

    Q30: What phases exist for generating tables in the data dictionary?

    A30: The first phase is choosing the table fields, second is keeping the foreign keys, third is making

    secondary indexes( is not mandatory), the fourth is keeping the technical settings and fifth is enabling

    the table.

    A31: What separates transparent tables from pool tables?

    A31: Pool tables is related multiple to single to the database table, this means that for a singledatabase tables there are multiple tables corresponding to it in the dictionary. The dictionary table is

    named separately from the database table, also the field count and field names are different. The

    storage of pool tables is made at the stage of the database. A table pool is the same thing with a table

    in the database and its construction is specific for activating the data of multiple R3 tables for storage.

    Q32: What benefits do we get from structures and what is the way for using them in the

    applications of ABAP/4?

    A32: Structure can be defined like tables in the dictionary and the access to them is made from the

    applications of ABAP/4, when modifications are made in this structure every program receives the

    change in an automated way. The data in a structure is valid just in the time of the application

    runtime, unlike the data from tables which is deployed in the database forever. Structures are meant

    for moving the data from program to program at a global level in ABAP/4, at a private level they aregood at defining the data from module pools to screens and for function module case in which they

    generate standard parameters.

    Q33: What is the role of the EXEC SQL statement and what are the weak points of it in

    ABAP/4?A33: The EXEC SQL statement is used prior the Native SQL statement which will be finalized with

    ENDEXEC statement. databases.

    Q34: Can we describe what is happening when we enable tables in DD?

  • 8/3/2019 ABAP Top Most Interview Questions

    14/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 14

    A34: When we enable tables , in the ABAP/4 Dictionary a physical table definition will be linked and

    deposited and the single table definition from the database will be converted in a relevant database

    definition.

    Q35: What is the meaning of a matchcode?

    A35: Matchcodes are utilities that help us find data records in the system, being simple and efficient

    in the case we dont have the key of a record. It is made of 2 level: the Match code object which refersto the group of paths that a search item can have and the Match code ID which refers to a particular

    search patch that a search item has.

    Q36: What is the description of the SAP Client concept and also the Client independent?A36: When we speak in a technical, commercial or management language we can say that a client is a

    stand-alone full unit in R3 that that has a particular group of Master data and its own Tables set. Every

    client from the system is affected if a client gets modified, in this case we say that we have Client

    independent objects.

    Q37: What is the meaning and usage of variants?

    A37: When we have to start a report program with equal selections at some regular time intervals likefor instance monthly or weekly statistics we will have to insert each time tha same values. There is an

    option in ABAP/4 that gives us the possibility to bring together all the selections and make one single

    selection group. These groups can be as many as we want each one for a particular report program(

    they will remain linked on that report). A group like that is named a variant.

    Q38: How can we transfer selection and parameter data in a report?

    A38: For transferring selection and parameter data in the report there are three ways:

    a) SUBMITWITHb) Report variant

    c) RANGE table.

    Q39: What is the best way to transfer data to the program Subroutine from forms?

    A39: This can be achieved by using the ITCSY structure.

    Q40: What is the way to use Variants Online or in Background Processing?A40: Beginning a report online through variant helps the user to save the work an avoid errors of

    input. When it comes to Background Processing there is no other option for transferring the values for

    selections than the variant. For filling those selections that have values which are modifying

    depending on the application we have to use variants because they pick up the values from the

    TABLE TVARV.

    Q41: What is the meaning of Internal tables?

    A41: The table objects that are in existence just during the program runtime are the Internal tables. In

    order to work using Internal tables many ABAP statements exist like delete, insert, find or append

    lines. The line count that Internal tables has can be extended in a dynamic way according to ourneeds. Internal tables can be useful for to calculate the tables on subsets from the database tables.

    They are useful as well for content management for the purpose of accomplishing the program

    requirements.

    Q42: What is the best way to validate a reports selection criteria and how can we display on the

    selection screen the default values?

    A42: In the processing block of the event named AT SELECTION SCREEN The criteria will become

    validated and the default values on the selection screen can be showed using:

    a) INITIALIZATION EVENT

  • 8/3/2019 ABAP Top Most Interview Questions

    15/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 15

    b) DEFAULT VALUE option of the PARAMETERS Statement

    c) SPA/GPA Parameters or PIDs.

    Q43: What is the meaning of get and set parameter?

    A43: The SPA/GPA parameters are used for transferring data to an invoked program and they are

    values of fields stored in the memory globally. Every parameter can be found by a three-character

    code. To define parameters we have to go in the object browser and choose Other objects in the next

    display. The saving of SPA.GPA is particular to users and in every session that a user has they are

    valid. The statements GET PARAMETER and SET PARAMETER are good for depositing and

    recovering the values of SPA.GPA in the ABAP/4 program. If the needed fields are not shared

    between the two selection screens of the transactions we can then use the statements for depositing the

    screen fields with names. Prior to invoking the new transaction we can deposit the transaction fields

    of the invoker with this name : SET PARAMETER ID RID FIELD. The values from the SPAparameter RID will be deposited by the system. RID is the three-character identifier and we haveto make its definition in table TPARA in SAP. When this parameter has a value already it will be

    overwritten by the statement SET PARAMETER with its details. To recover the fields with the other

    name for the invoked transaction in the PBO module: GET PARAMETER ID RID FIELD.

    Q44: What is the meaning of ranges and number ranges?

    A44: Many times it is required to make a direct access to personal records from data structures and

    we do this with unique keys. For linking numbers to personal databases we will use number ranges.

    Examples of this type of numbers: material master numbers and order number.

    Q45: What is the meaning of check tables and value tables?

    A45:In the relational data model we dont find just tables, we also find the relations of the tables withother tables and these relations are defined with the use of foreign keys in the dictionary of ABAP.

    Foreign keys have the role of maintaining the integrity of data in the relational data model. The

    foreign key fields can have just the values that the check table allows, meaning values that appear on

    the check table primary key. Two tables are connected through a foreign key as in this example: table

    T1 and table T2 with a primary key reference in T2. The foreign key fields of the primary key fieldsfrom T2 are contained by T2, T1 is the tables verified, T1 is named foreign key table and T2 check

    table, we can use as well the terms dependent (table) and referenced (table). When the check field

    domain contains a value table it will be seen as check tables by the system (in the routine of the

    foreign field). Now the value table key fields are the fields of the foreign key table and they have an

    equal domain, they can take just the values that the value tables allows. By specifying value table we

    may define the domains value range and every field that has reference to the current domain may be

    verified for this fields value table. For making this verification we have to define a foreign key on thevalue table.

    Q46: What events are found in ABAP/4?A46: In ABAP/4 these are the events: INITIALIZATION, AT SELECTION-SCREEN, AT

    SELECTION-SCREEN ON, START-OF-SELECTION, TOP-OF-PAGE, TOP-OF-PAGE DURINGLINE SELECTION, END-OF-PAGE, END-OF-SELECTION, AT-USER-COMMAND, AT LINE-

    SELECTION, AT PF, GET, GET LATE, AT USER COMMAND.

    Q47: What is the difference between Native SQL and Open SQL?

    A47: With Open SQL we can enter in every database table from the SAP system no matter what

    manufacturer the database has. Many times we have to make use of Native SQL statements which are

    particular to databases in ABAP/4 programs. For having independent programs( regarding the current

    database system) in ABAP and for not having compatibility issues amongst tables in Sap we can find

    a group of differentiated SQL statements named Open SQL. Open SQL has standard SQL statements

  • 8/3/2019 ABAP Top Most Interview Questions

    16/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 16

    and many improvements that are found only in SAP. Open SQL statements can be converted in SQL

    commands by the database interface and they are particular o the current database. Native SQL

    statements are having the advantage of direct access to the database.

    Q48: How can we describe SAP locking and what is a lock object having?

    A48: Through Sap locking we understand implementing or defining logical locks on the objects of the

    database. The lock object can have a lock argument and tables.

    Q49: What is the way for invoking a lock object in a transaction?

    A49: This can be done With the invoking in the transactionof Enqueue and Dequeue.

    Q50: What is the role of function modules and what types of parameters exist for them?

    A50: The function modules are library routines with a generic use and they are found everywhere in

    the system. Usually they have 4 types of parameters:

    a) EXPORTING- used to transfer data to the invoked function.

    b) TABLES-used to transfer by reference just internal tables.

    c) IMPORTING-used to get data that the function module returned.

    d) CHANGING-used for transferring parameters to a function and from the function.Q51: What events allow us to program help texts and display possible values lists?

    A51: The events are: PROCESS ON HELP-REQUEST (POH) and PROCESS ON VALUE (POV).

    Q52: What is the way for, instead of displaying a report to print it?A52: We can print the report with the aid of the keywords TO SAP-SPOOL:

    SUBMIT RSFLINDTO SAP-SPOOL DESTINATION LT50.

    Q53: How do we differentiate PARAMETERS from VARIANTS and SELE-OPTIONS?

    A53: For inserting values in the selection screen variables the variables have to be defined with the

    PARAMETER statement. For inserting range of values in the selection screen the statement

    SELECT-OPTIONS does the job. When we need to repeat the program at regular times using the

    same selections we can make combinations of the values we want in a single selection group, theselection is named VARIANTS.

    Q54: Through what way we can get data to reach external programs?A54: This can be made with the SPA/GPA parameters in the memory of SAP and with

    EXPORT/IMPORT data in the memory of ABAP.

    Q55: What is the meaning of filed symbols and field groups and what is the usage of an idx

    structure component in relation to field groups?A55: Field symbols are not providing physical memory spaces for fields, instead they show a field

    that become known only at the program runtime. They can be compared to pointers at the level of

    concept (like in the C language). Extract datasets are made of record sequences, the records can be of

    various structures. The records that have an equal structure can be categorized together as a recordtype and every record type has to be defined as a filed group with the aid of this statement: FIELD-

    GROUPS.

    Q56: What is the meaning of the collect statement and in what way can we separate it from an

    append statement?A56: Inserting lines in internal tables that have independent standard keys, the statement COLLECT

    is used. When we already have an entry with that key the COLLECT statement brings the numeric

    field contents from the place of work to the numeric field contents from the current entry instead of

    appending a new line (thing that is made by the APPEND statement).

  • 8/3/2019 ABAP Top Most Interview Questions

    17/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 17

    Q57: What is the role of the EXTRACT statement in ABAP/4?A57: Once the primary EXTRACT statement is used in a report the extract data set is generated by

    the system and the primary extract record is brought. Then at every EXTRACTstatement a

    supplementary extract record is brought to the extract dataset.

    ABAP interview questions on SAP Scripts

    SAP Scripts:

    Q1: What is the meaning of a SAP Script and what is the role of it?A1: SAP Script is in fact the word processor of the SAP system, very similar to the most used text

    processors available for personal use on computers. Usually companies print the documents in their

    own layout like invoices, delivery notes and others. There is a standard layout (or predefined) but

    sometimes the standard layout has to be expanded according to the requirements with additional data

    like addresses or purchase orders. These details are inserted by employees or they are extracted from

    database tables. Companies use a high amount of these documents, so printing them has become a big

    requirement. Larger documents are printed like paychecks, reminders, order confirmations, payslips

    and others, for making this possible SAP Script is developed in such a way that it can make all the

    document types mentioned above, it has the IT tool that is used for text insertion and the printing of

    forms in the R/3 programs. Usually SAP can give us these document types in a standard form but each

    company can modify them or replace them at their desire and according to their needs.

    Q2: Which are the variables that we can utilize for data output in SAP Script?A2: &Tables name-fields&

    Q3: What is the meaning of a Compare Tool in SAP Script?

    A3: For object comparison between clients there are many utilities within SAP Script, for example for

    the comparison of these objects-Documents, Layout sets and Styles we have a Compare Tool. With

    the Compare Tool we can make many things like: verifying if an object can be found in each of the

    two clients or showing why multiple versions of an object are different. For the page layout

    management or to format the text in a document we can use Layout Sets. The Standard styles and

    layout sets are found in Client 000 in the SAP system.

    Q4: How can we describe better the SAP Script ?A4: SAP Script is by definition the text handling system of SAP R/3, it has a high degree of

    integration in the SAP system, it is the standard and the most used tool for several tasks that involve

    the processing of text in the entire SAP system.

    Q5: What is the meaning of Layout Sets?

    A5: In SAP Script Layout Sets are the tools that define the layout of pages (documents). A layout is

    constructed from many components, some of them even handle the layout itself for single pages or

    some are filled with details about the text that is about to be printed on the pages. The Layout Set

    speaks about how a document will look and how it will be constructed, it will contain text blocks with

    areas for variables that can be useful for other programs, each SAP Script document has a Layout Set.

  • 8/3/2019 ABAP Top Most Interview Questions

    18/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 18

    When we want to modify our documents, for instance when we have to move text blocks, choose a

    different font, set a specific paragraph type, insert tabs all these can be made from the Layout Set. For

    text formatting we have two possibilities: We insert the text and output it in normal text maintenance

    or we can insert the text through the Layout Set.

    The text can be formatted through the ABAP/4 application and the Layout Set, the application will

    output single text blocks, elements of a text or a whole document. The formatting of our text is given

    by the use ofStyles, they make the formatting by configuring the character formats and the paragraphs

    that we use in the document. Styles can be useful for highlighting strings of characters and even entire

    paragraphs, they can be attributed to every type of text but mainly they will be used in the basic

    windows of Layout Sets, where the text is inserted straight from the user in a document.

    An important element is the header data, which can be used on Styles for show valuable details( in

    this way an end user can choose a style in the simplest way) and Layout Sets as well, where it has the

    role of control and information.

    The Layout Set maintenance also contains windows, which are places in a page where the text will

    output in the near future, every Layout Set contains one or multiple windows, if the window is

    missing then text formatting will not be possible in SAP Script.

    Window types that are used in Layout Sets:

    a) MAIN-in this type of window the output of text is made continuously, it is a window type that iscommon to the dialog users, like the body text of letters.

    b) VAR- this type of window contains variable text in every page where the window is found, these

    windows will be formatted for every page.

    c) CONST-this type of window contains constant text so it will be formatted only one time.

    W can classify the elements of a Layout Set like this:

    a) The header data- it contains data about the construction and the Layout Set like who made the

    document, what elements were used etc. This is the start page.

    b) Theparagraph formatsthey are needed for text formatting exactly as in Styles but their usageextends to the processing of text like formatting the text elements as well.

    c) The character formats-these can be used for formatting paragraphs and text, they actually format the

    text from inside paragraphsd) The windows- they are placed only after their assigning to pages and attributing measurement units.

    e) Thepages- They give us a beginning and a finish in the formatting of text.

    f) Thepage windows- They bring the pages and the windows together and their measurements are

    stated.

    The management commands in SAP Script are meant for handling the output formatting and they are

    not read by the SAP Script Editor but processed by the SAP Script Composer which is an application

    that transforms the text from the editing form to the printing form.

    Q6: Can we describe the way in which the Layout Sets are backed up, uploaded and

    downloaded in SAP Script?A6: For the SAP Script backup we have go to transaction SE71to select Utilities then Copy from

    client then Give source from name then source client (000 default) and Target from name. Fordownloading we must go to transaction SE71 the we must write the name of the form then we select

    Display, Utilities, form info, List and we hit Save to PC file. Fro Upload we have to create form with

    page then window, pagewindow with the downloaded PC file. From the PC file we will have the page

    window text elements.

    Q7: What is the way to count pages the SAP Script outputs?

    A7: &page&, &nextPage&.

    Q8: How can we classify the SAP Script components?

  • 8/3/2019 ABAP Top Most Interview Questions

    19/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 19

    A8: SAP Script can be classified in: SAP Script text, Layout Set, Symbols, ABAP print program and

    function modules such as read text, open/close form and others.

    Q9: What is the way to deposit the text in SAP Script?

    A9: For text storage SAO Script uses ITF or the Interchange Text Format but it also has the options to

    convert RTF or Rich Text Format and also ASCII which are formats for other text processors.

    Q10: How can we describe symbols and what are the main types with example?A10: The constant that may be entered into a document has the name of symbol and has the role of

    keeping the supplementary work if phrases or portions of the text get replaced, the symbol name is

    enclosed with &. Example: &variable name&, or system symbols like &Date&, &time& an others.

    Standard symbols are the ones that the user has defined and they are kept in the table TTDTG.

    Examples of standard symbols: &SGDH& for :dear sir/madam and &MFG& for:yours Faithfully.The program symbols show ABAP/4 program data that invoked a function for text processing,

    example: Itab-connid. The text symbols are good for every block type of text to define but it becomes

    valid just where it has been defined, example: Define &Symbol&=value.

    Q11: How can we implement the tab sets in Layout Sets?A11: We can do this by defining the paragraphs using defined tabs.

    Q12: What is the role of the composer?

    A12: For getting a final look of our documents we will combine the Layout Set with the print

    program, the print program is being started by SAP Script so the process of printing begins, each of

    the commands inserted with the aid of the SAP Script interface is given to the composer. The print

    program specifies a Layout Set which contains the details that will be sent to the composer, and in this

    way the documents will be formatted base on the details provided. When there are variables in a

    document they are they will be replaced with R/3 data, for example the actual date or with data from

    the print program. In the end the document is finished with the use of the print program and the

    composer will put it in the spool.

    Q13: What is the way to define the text symbols?

    A13:We can define the text symbols with the aid of the control command DEFINE &x1&=56

    Q14: What activity is the most time-consuming from all in SAP Script coding?

    A14: The most time-consuming is when we define Layout Sets.

    Q15: What commands are used in ABAP/4 for connecting a Layout Set?

    A15: We can use the following: the call functions OPEN-form, WRITE-form or CLOSE-form.

    Q16: How do we define the data tab space in SAP Script and where?

    A16: We may define the tabs after we define the text element paragraphs.

    Q17: Which are the commands mainly used for control?A17: The main control commands are PROTECT, ENDPROTECT, DEFINE, NEW-PAGE,

    INCLUDE, IF, ENDIF.

    Q18: How can we introduce a logo in our program and what is the name of the program for

    logo upload and also what syntax can be used for this in SAP Script?A18: We can use the RSTXLDMC report for uploading a logo and this statement:/:INCLUDEZHEX-MACRO-XXXOBJECTTEXTID ST LANGUAGEE. The name of the objectis represented by XXX.

  • 8/3/2019 ABAP Top Most Interview Questions

    20/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 20

    Q19: What purpose has an ABAP application in SAP Script?A19: The purpose of an ABAP application can include multiple parts like:

    a) It makes the definition of the processing logic of the Layout Set, or so to speak-what order the

    elements of text have and when are they used again.

    b) It takes the data from the R/3 program that is found in the database.

    c) It selects a Layout Set to print.

    d) Chooses printer, fax or monitor as the output device.

    e) It makes print configurations regarding the counting of pages that will be printed.

    Q20: What is the correct syntax used for a box command?A20: The syntax looks like this one: BOX XPOS 2MM WIDTH 0 CM HEIGHT 9.5 CM FRAME10 TW.

    Q21: How do we define variables?

    A21: DEFINE &CUST&=00000021.

    Q22: How can we describe symbols more detailed?

    A22: The values that are entered in the time of print formatting are stored in symbols and thesesymbols can be found under names between& and they are not case sensitive.System symbols are: DATE, DAY, NAME_OF_DAY, MONTH, YEAR, TIME, HOURS, MINUTES,

    SECONDS, PAGE, NEXTPAGE, DEVICE, SPACE, ULINE, VLINE. Standard symbols are the ones

    from table TTDG and are defined by the user. To show them or modify them we can use the

    transaction SM30. An example of standard symbol: &MFG&. The standard textis a normal text that

    can be found in one or multiple forms and they can be written , modified or shown with the aid of the

    transaction SO10. For text classification we have text ID. For putting standard texts in forms we can

    do this with the command INCLUDE like the following: INCLUDEZ_BC460_EX4_HF

    OBJECTTEXT ID SDVD. We can use the PARAGRAPH parameter to format standard texts, in the

    next example we will see how we can center the text:

    INCLUDEZ_BC460_EX4_HF OBJECTTEXT ID SDVD LANGUAGE EN PARAGRAPH C.

    Name:Z_BC460_EX4_HFObject: Text

    Text id: SDVD(TEXT id from SO10)

    Language EN

    Paragraph: C (Centered0.

    Program symbols are used for database content. For tables: kna1, in forms: &KNA1-NAME1&, for

    formatting: &SYMBOL& (it means there is no formatting), &SYMBOL(5)&Length(the data and

    length), &SYMBOL(Z)&Suppress leading zeros, &SYMBOL+4&Offset(the start of the output),

    &SYMBOL(I)&Suppress initial value, &SYMBOL(C)&Compress blank spaces(one space from the

    compression of consecutive spaces), &SYMBOL(S)&Operators are suppressed,

    &SYMBOL(R)&Right align output, &SYMBOL(8.2)&Decimal format(length),

    &SYMBOL(*)&Dictionary length(the ABAP dictionary), &text1SYMBOLtext2&Text entered

    prior to and after the symbol.

    Q23: Can we give a detailed description on the Control commands?

    A23: For the changing of text output we use control commands./: is the format key that can be used in

    the format column, there is the intensity (grey scale) in percents, the frame thickness is given by frame

    parameters with zero as the initial value. Every parameter such as width and height, xpos and ypos or

    frame will have a measurement unit like: CH-character, TW-twip, IN-inch, PT-point, MM-millimeter,

    LN-line, CM-centimeter; as an example we have: BOX XPOS 10.14 MM YPOS 5.79 MMHEIGHT 9 MMWIDTH 14 MM INTENSITY 8 FRAME 0 TW. This is making 2 lines and 2rectangles for building a 3 column table and a highlighting heading section.

  • 8/3/2019 ABAP Top Most Interview Questions

    21/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 21

    POSITION and SIZE are commands used for configuring the initial box parameters, a very good

    thing when we have many boxes with equal parameters. With POSITION WINDOW we can

    configure the position in relation to the window (to the left or to the right), after that we can use

    POSITION for setting the coordinates related to the window start. + and - can be used forposition configuration in ORIGIN.

    The Styles are utilized in forms for setting paragraphs or formats of characters and for this we

    have multiple standard Styles in SAP; we can also define personal styles. For the creation, finding and

    keeping of styles there is the transaction SE72. With the aid of the Format menu and then Style we

    will give the text a style and for non permanent modifications to the style we will use /: as a

    command.

    Q24: How do we import or use graphics in Sap Script?

    Q24: For importing graphics in SAP there is the transaction SE78. We may include using Edit,

    Graphic, Create in the form painter or we can use the statement INCLUDE, case in which we will use

    the window script editor-Include, Graphic like in this example (with a bitmap):

    /:BITMAP MYLOGO OBJECT GRAPHIC ID BMAP TYPE BMON.

    Q25: How are the modifications made?A25: Changes to the normal SAP program have to be made only in the case when this is compulsory.

    When we require supplementary data , we should use the statement PERFORM and we dont have tomodify the print program. He print program modification can take place due to reasons like these:

    modifications in structure or the requirement for fresh text elements. The print program the will print

    supplementary forms will be crucial to deciding what are the print programs and forms that we will

    use. They exist in the TNAPR table and they are specific for a particular output type; the programs

    used for output are: view V_TNAPR for entry modification from transaction SE30, for importing or

    exporting a SAP Script form from a PC file we will use RSTXSCRP, for getting the print application

    name we will use SD or the TNAPR table (for SD documents).

    Q26: How can we define and enter a standard text?

    A26: The default text type that can be implemented in multiple forms is called a standard text. Withthe aid of the transaction SO10 we can make, modify or display a standard text. For classifying the

    texts we will use text ID. With the command INCLUDE we can introduce a standard texts in forms

    like in this example: /:INCLUDEZ_BC460_EX4_HF OBJECT TEXT ID SDVD. With the aid of the

    parameter PARAGRAPH we can format standard texts and for centering texts we can see the

    example: /:INCLUDEZ_BC460_EX4_HF OBJECT TEXT ID SVD LANGUAGE EN PARAGRAPH

    C. For address format we can use the command ADRESS-ENDADRESS which is determined by the

    country parameter from the postal standards that the country of the recipient has. Example:

    ADDRESS DELIVERY PARAGRAPH AD

    NAME &KNA1-NAME&

    STREET & KNA1-STRAS&

    POSTCODE&KNA1-PSTLZ&

    CITY&KNA1-ORT01&COUNTRY &KNA1-LAND1&

    FROMCOUNTRY deENDADDRESS.

    For pagebreak avoiding in paragraphs :

    /:PROTECT

    :

    :

    /:ENDPROTECT.

  • 8/3/2019 ABAP Top Most Interview Questions

    22/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 22

    The lines of text that are to be defended against pagebreaks will be met between the command IF and

    the command ENDIF, as in every ABAP program like this:

    /:IF condition

    :

    :

    /:ENDIF

    and

    /:IF condition

    :

    /:ELSE

    :

    /:ENDIF. An exact expression would be: /: &SPFLI-CITYTO&=BERLINtext /:ENDIF.

    A27: What separates a Window from a Page Window?

    Q27: The Page Window is when we declare the parameters of a window that was declared before and

    the document look (width, height and the marginsleft and right). Window is when we talk about thetype window, about the initial paragraph or the text components (SAP Scripts) that have to be

    included. The windows are those places stated from the start in the layout set , the text blocks that wefind on a page are the windows.

    Q28: How do we load graphics like logos in SAP Script?

    A28: We can load graphics like files with the .tif extension in SAP Script in standard text with the aid

    of RSTXLDMC.

    Q29: Which are the most used programs from SAP Script?A29: For the transformation of the page format we have RSTXFCON, for downloading and uploading

    the layout sets we have RSTXSCRP, for the debugging of SAP Script we have RSTXDBUG, for

    moving script files from system to system we can use RSTXSCRP, to modify development classes of

    different objects we will use RSWBO052, for table contents comparison between clients we have to

    use RSTBSERV.

    Q30: What are the steps and other details of debugging?A30: We will use Tools then Word Processing then Layout Set and we will write the layout name the

    we go to Utilities and Activate Debugger. It doesnt matter which layout set we choose we choose thedebugger. The layout set will call the debugger. If we try to copy a form from client to client and we

    try to also modify the copied form we will have these error messages:

    a) Form not found. The solving of this problem is trying to copy again but with a language

    specification.

    b) Text file is inconsistent. From SE38 we have to run RSTXCHKO, the form name will be requiredand checking all the checkboxes (and running the program) fixes the problem.

    Q31: How can we copy a table from client to client?A31: We can do this with the aid of RSCLTCOP.

    Q32: What is the way for making a script layout backup for future loading from the HDD?A32: This can be done with the EXPORT MODE, a script with a similar name to the initial script will

    be made, if this is already made we will receive an error.

  • 8/3/2019 ABAP Top Most Interview Questions

    23/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 23

    ABAP Interactive lists / reports Interview

    Questions:

    Q1: What is the significance of a stacked list?A1: The secondary list is also called the stacked list and it will be shown on the entire screen if we

    dont write its coordinates of the command window.

    Q2: When its the right time to utilize the command GET CURSOR in interactive lists?

    A2: The command GET CURSOR will be utilized when the hidden information is not enough for

    tracing the selected line, this command will give us the field name where the cursor is positioned in

    field that will be specified subsequently to the addition field. The selected field value will be in a field

    specified subsequently to the value.

    Q3: How do we keep lists?A3: The return from a high level in the list on the immediate lower position (SY-LSIND) is made by

    using Back from the secondary list. In this way the actual list that is displayed will disappear and wewill see the previously made list. The list that disappeared was released by the system and deleted.

    The SY-LSIND field must be configured for indicating the list level at which we want the output to

    be. Just the index values that are the same with the levels of the list are accepted by the system and the

    list levels that have a higher index than the one we indicate or equal with it will be erased by the

    system. For instance when we configure SY-LSIND to be 0, every secondary list will be erased by the

    system and the basic list will be replaced by the actual secondary list.

    Q4: What is the meaning of secondary lists?A4: With secondary lists the details from the basic list can be improved and if, for instance, we want

    to choose a line from the basic list and we want more details about it to be displayed we can do it. The

    secondary information will be shown on the secondary list , which can be as an overlay of the basic

    list or it can appear in a separate window and this secondary list can be dynamical as well.

    Q5: What is interactive reporting?

    A5: With the use of interactive reporting we can be present in an active mode at the data presentation

    in a session. Actually interactive reporting generates a simple list that encapsulates the details, it can

    be extended and we can see the details with the aid of the cursor or commands. Interactive reporting

    lowers the amount of retrieved details to the real requirement of data.

    Q6: Which are the event key words used in interactive reporting?

    A6:AT LINE-SELECTION-this is a time when we choose a line with a double-click on the line or by

    moving the cursor over the line and hitting F2. AT USER-COMMAND- this is a time when we hit a

    function key. TOP-OF-PAGE DURING LINE-SELECTION-this is a time when, while the list isprocessing a secondary list, a new page is starting.

    Q7:Is it possible to invoke transactions or reports from the interactive reporting lists?

    A7: Yes, it is possible because with interactive reporting we can as well invoke transactions or

    different reports from the lists, in this way the programs will use the values that are shown in the list

    as their input information. As an example, a transaction can be invoked from a list and the database

    table that shows its data in the list can be modified.

    Q8: How can we make user interfaces for a list?

  • 8/3/2019 ABAP Top Most Interview Questions

    24/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 24

    A8: A graphical user interface or GUI is made automatically if we have a list with simple functions

    regarding list processing like list printing or saving, the GUI is made by the R/3 system. For more

    complicated functions like pushbuttons for example, we have to define our personal interface status

    and for making a new status we have the Menu Painter from the Development Workbench. In this

    way we can generate toolbars or menus for the program, we can also put shortcut keys for various

    functions. When the statement block of AT END_OF_SELECTION is started the status of the main

    list can be enabled with the SET PF-STATUS STATUS statement.

    Q9: What page headers do the secondary lists have?

    A9: There is no standard page header regarding secondary lists and also there is no event TOP-OF-

    PAGE triggered by the system, so for making page headers for secondary lists we have to improve the

    TPP-OF-PAGE. When we use TOP-OF-PAGE DURING LINE-SELECTION this event will be

    invoked for every secondary list, when we want to make separate page headers for each specific list

    level, the processing block correspondent to this event has to be configured for this like for instance

    when we use SY-LSIND(system field) and SY-PFKEY.

    Q10: Which is the best way to choose valid lines for a secondary list?

    A10: There are many ways for us to avoid the use of invalid lines in ABAP/4 like the ones below.When the processing block END-OF-SELECTION finishes we have to erase the field content that we

    deposited in the past for valid lines with the aid of the HIDE statement. We must verify if the work

    place is the default one or if the HIDE statement deposited the content of the field in this place, this is

    done when the AT LINE-SELECTION event occurs. We can make a secondary list because we

    deposited the content of the field just for valid lines, we have to clean the work place one more time

    for avoiding the creation of other secondary lists by the user starting from the secondary list on the

    screen.

    Q11: When we make a new list, is it true that the main list will be erased?A11: No way, the main list will not be erased and we can access it with the aid of the standard

    navigation functions such as the back or cancel buttons.

    Q12: In what way should we transfer data from a list to a report?

    A12: In ABAP/4 this can be made in 3 ways:

    a) By fetching the data with the aid of statements.

    b) By making an automated data transfer with the aid of the system fields.

    c) By transferring the attributes of the list.

    Q13: What is the standard construction of an ABAP application?

    A13: The basic construction of an ABAP program is made of these steps:

    a) The Reports are defined.

    b) The Data and tables are defined.

    c) The events are initialized.

    d) We have the Screen Select Options and Inputs.e) The selection screen events.

    f) The start of selection events.

    g) Performs and Events Statements.

    h) The End-of selection event

    i) The Initialization.

    Q14: What is the significance of hotspots?

  • 8/3/2019 ABAP Top Most Interview Questions

    25/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 25

    A14: The list place that makes our mouse pointer looking like an upright hand is called a hotspot,

    when a hotspot is active, single clicking is equivalent to double-clicking. This feature is compatible

    with versions 3.0c and above of R/3.

    Q15: What is the system field that has the name of the actual GUI STATUS?

    A15: The System field SY-PFKEY contains the actual GUI STATUS name.

    Q16: What is the meaning of report transaction and how are programs called??A16: The reports in ABAP can be called like transactions: for calling and returning- SUBMIT AND

    RETURN CALL TRANSACTION, for calling and not returning- SUBMIT LEAVE TO

    TRANSACTION. When we make an extensive application and we make one program, it will be very

    complicated and for reading the program in a simple way it is recommended to split the functions

    needed among the programs.

    Q17: What is the meaning of Form Event?A17: Form Event is just like PERFORM/SUBROUTINES, it STARTS by FORM and finishes by

    ENDFORM and the statements from ENDFORM to the finish of the application are not processed at

    all, every statement from ENDFORM to the event keyword will not be processed.

    Q18: How do we describe STARTOF-SELECTION and END-OF-SELECTION?A18: The start and the finish of the main processing logic, which is default for every ABAP/4

    application; the statements from START-OF-SELECTION to END-OF-SELECTION are executed

    automatically, there is no requirement for having END-OF-SELECTION. Every procedural statement

    in ABAP applications are dependent by default on the START-OF-SELECTION.

    Q19: How do we transfer data by program statements?

    A19: For transferring single output fields or supplementary details from lines to the processing blocks

    in the time of interactive events the following statements will be written: HIDE, READ LINE, GET

    CURSOR, SET CURSOR and others.

    Q20: What system fields do we use for interactive reporting?A20: The index of the actual list is found in the system field SY-LSIND , at the time of making the

    main list SY-LSIND is 0. The system fields below are configured automatically by the system at

    every interactive event: the system field information, SY-LINCT the whole line number of a list, SY-

    LINNO the number of line where the cursor is found, SY-LSIND is the index of the presently made

    list( in the time of the actual event-0), SY-LISTI is the index of the level that invoked the event,

    SYLILLI is the line number that invoked the event, SY-LISEL represents the content of the line that

    invoked the event, SY-CUROW represents the place in the window that the line which invoked the

    event has (beginning from 1), SY-CUCOL is the place in the window where the column that invoked

    the event is found (beginning from 2), SY-UCOMM represents the function code which invoked theevent, SY-PFKEY has the actual list status.

    Q21: How do we describe the HIDE AREA?A21: With the aid of the HIDE command we can deploy the field content from actual line in a place

    that is named the HIDE AREA. This place a system controlled memory and the field content will be

    moved from the HIDE AREA when the interactive event occurs. If we invoke a secondary list from

    the HIDE AREA the values that were deposited will be moved in the program variables. When we

    write the program we have to use the HIDE statement in the present line after we use the WRITE

    statement.

  • 8/3/2019 ABAP Top Most Interview Questions

    26/26

    Top Most SAP-ABAP Interview Questions

    MALLIKARJUNA P, SAP Technical Consultant, IBM India-Bangalore 26

    Q22: What is the usage of GET CURSOR and SET CURSOR?

    A22: GET CURSOR LINE and GET CURSOR FIELD are statements that we use to transfer an

    output field and an output line where, in the time of the interactive event the cursor was placed.

    Example of syntax: GET CUROSR FIELD [OFFSET] [LINE] [VALUE] [LENGTH]. SET

    CURSOR is a statement used to set the cursor the latest list made which when we make a basic or

    main list, the latest will be exactly this one: the basic list. The basic list will become previous when

    we make a secondary list. The set cursor statement also places the cursor on the column that is on the

    output windows line.

    Q23: How do we get data from the system fields of interactive lists?A23: The details that we get from the system fields are: the list index, the coordinates of the list in the

    output window and the place where the cursor is found. The system field which has the chosen line

    contents is SY-LISEL only.

    Q24: What is the role of the READ LINE and READ CURRENT LINE statements?

    A24: These statements are used for reading the current list level data lines explicitly and they are

    linked together with the technique named HIDE. The syntax looks like this: READ LINE [INDEX][FIELD VALUE [INTO]] [OF CURRENT PAGE | OF PAGE]. We can see this example: READ

    LINE SY-INDEX FIELDVALUE BOX.