Tuesday, February 26, 2019

Interview Questions & Answers report related in SAP ABAP Details.



REPORT GENERATION – FORMATTING




REPORTING – GENERAL
1.     The system field, which indicates success or failure of a SQL operation, is SY-SUBRC.

2.   What is the syntax for specifying database table name at runtime in SELECT statement.
NAME = ‘SPFL1’.
SELECT * FROM (NAME).
……………….
……………….
ENDSELECT.

3.  How do you read selected lines of database table into an internal table in packages of predefined size.
SELECT * FROM <SPFLI>INTO TABLE <ITAB>PACKAGE SIZE<N>.
Where n is variable.

4. Name the WILDCARD characters which are used for comparisons with character strings & numeric strings. ‘%’ and ‘-‘.

5. In SELECT statements can you specify a variable in WHERE condition or a part of the condition, if so what is the syntax.
SELECT * FROM <table>WHERE <var1><condition><var or const>.

6. Name the ABAP/4 key words, which are used to change the contents of database table.
UPDATE or MODIFY.

7. How to specify a client for database table processing.
TABLES SPFLI.
SELECT * FROM SPFLI CLIENT SPECIFIED WHERE MANDT BETWEEN ‘001’ AND ‘003’.
……..
ENDSELECT.

8.  How do you write a DATA object from ABAP/4 program to ABAP/4 memory and restore the same from memory to program.
EXPORT <f1>[FROM <g1>]<f2>[FROM <g2>]…. TO MEMORY ID <key>.
The ID <key>, which can be up to 32 characters long, identifies the data in memory.

9.  What are DATA CLUSTERS?
You can group any complex internal data objects of an ABAP/4 program together in data clusters and store them temporarily in ABAP/4 memory or for longer periods in databases.  You can store data clusters in special databases of the ABAP/4 Dictionary.  These databases are known as ABAP/4 cluster databases and have a predefined structure.  Storing a data cluster is specific to ABAP/4.  Although you can also access cluster databases using SQL statements, only ABAP/4 statements are able to decode the structure of the stored data cluster.

10. Statements used to delete data objects in ABAP/4 memory FREE MEMORY [ID <key>].
11. How will you create a file on application server.
Open dataset <dsn> for output.

12. ABAP/4 statement for opening a file on application server for reading Open dataset <dsn> for input.

13.  How will you transfer data into a file in application server?
  Data fname(60) value ‘mYFILE’.
  Data num type i.
  Open dataset fname for output.
  Do 10 times.
  Num = Num +1.
  Transfer num to fname.
  Enddo.
  …….etc.

14.  Name the function modules to write data from an Internal Table to the Presentation Server.
DOWNLOAD and WS_DOWNLOAD.

15.  Name the function module that can be used to give information about files on Presentation Server and about its Operating System.
WS_QUERY.

16.  Name the ABAP/4 key word, which is used to clear the Headerline of an Internal Table.
CLEAR<itab>.
17.  Name the function modules to read data from Presentation Server into an Internal Table.
UPLOAD and WS_UPLOAD.

18.  Name the ABAP/4 keywords to initialize an Internal Table with and without headerline.
REFRESH <itab>.

19.  How to determine the attributes of an internal table?
DESCRIBE TABLE <itab>[LINES <lin>] [OCCURS <occ>].

20.  Name the ABAP/4 key word for searching a string in an Internal Table.
SEARCH <itab> FOR <str><options>.
The different options (<options>) for the search in an internal table are:

ABBREVIATED
Searches table<itab>for a word containing the character string specified in <str>, where other characters might separate the characters. The first letter of the word and the string <str> must be the same.
STARTING AT<lin1>
Searches table<itab> for <str>, starting at line <line1>. <\lin1> can be a variable.
ENDING AT<n2>
Searches table <itab>for <str>upto line<lin2>. <lin2>can be a variable.
AND MARK
If the search string is found, all the characters in the search string (and all the characters in between when using ABBREVIATED) are converted to upper case. 

21.  What are the different attributes that can be assigned to a variant?
The different attributes that can be assigned to a variant are….
Description
Enter a short, meaningful description of the variant.  This may be upto 30 characters long.
Background only
Specify whether you want to use the variant in background processing only, or in online environment as well.
Protected variant.
Mark the field if you want to protect your variant against being changed by other users.
Do not display variant.
Mark this field if you want the variant name to be displayed in the catalog only, but not in the F4 value list. 
For the selections you cover in a variant, you can enter the following attributes:
Type
The system displays whether the field is a parameter or a select option.
Protected
Mark this field for each field on the selection screen you want to protect from being overwritten.  Values that you mark this way are displayed to the users, but they cannot change them, that are they are not ready to accept input.
Invisible
If you mark this column, the system will not display the corresponding field on the selection screen the user sees when starting the report program.
Variable
Mark this column if you want to set the value for this field at runtime. 

22.  Is it possible to create new dynamic programs during runtime of an ABAP/4 program? If so how?
To create new dynamic programs during the runtime of an ABAP/4 program, you must use an internal table.  For this purpose, you should create this internal table with one character type column and a line width of 72.  You can use any method you like from Filling Internal Tables to write the code of your new program into the internal table.  Especially, you can use internal fields in which contents are dependent on the flow of the program that you use to create a new one, to influence the coding of the new program dynamically.  The following example shows how to proceed in principal:
DATA CODE (72) OCCURS 10.
APPEND ‘REPORT ZDYN1.’
TO CODE.
APPEND ‘WRITE/”Hello, I am dynamically created!”.’
TO CODE.
Two lines of a very simple program are written into the internal table CODE. 
In the next step you have to put the new module, in the above example it is a report, into the library.  For this purpose you can use the following statement: 
Syntax 
INSERT REPORT <prog>FROM <itab>. 
The program <prog> is inserted in your present development class in the R/3 Repository.  If a program with this name does not already exists, it is newly created with the following attributes:
Title: none,
Type: 1 (Reporting),
Application: S (Basis).
You can specify the name of the program <prog> explicitly within single quotation marks or you can write the name of a character field, which contains the program name.  The name of the program must not necessarily be the same as given in the coding, but it is recommended to do so.  <itab> is the internal table containing the source code.  For the above example you could write:
INSERT REPORT ‘ZDYN1’ FROM CODE.
Or
DATA REP (8).
REP = ‘ZDYN1’
INSERT REPORT REP FROM CODE. 

23.  Data types can be elementary or structured (T/F).
TRUE.

24.  The amount of memory associated with a data type is ZERO.

25.  Data objects are the physical units a program uses at runtime. (T/F).
TRUE.

26.  The data object does not occupy any space in memory. (T/F)
FALSE.

27.  What are the three hierarchical levels of data types and objects?
Program-independent data, defined in the ABAP/4 Dictionary.
Internal data used globally in one program.
Data used locally in a procedure (subroutine, function module) 

28.  How would you find the attributes of a data type or data object?
DESCRIBE FIELD <f> [LENGTH <l.] [TYPE <t> [COMPONENTS <n>]]
             [OUTPUT-LENGTH <o>] [DECIMALS <d>]
             [EDIT MASK <m>].

29.  The components of a field string cannot have different data types. (T/F).
FALSE.

30.  Field strings are also called as Record or Structures.

31.  If a field string is aligned (Left, centered, right justified etc.), the filler fields are also added to the length of the type C field. (T/F).
TRUE.

32.  You cannot assign a local data object defined in a subroutine or function module to a field group. (T/F)
TRUE.
33.  Field group reserves storage space for the fields, and does not contain pointers to existing fields (T/F).
False.

34.  Defining a field group as ‘HEADER’ is optional (T/F)
FALSE.

35.  How would you define a field symbol?
FIELD-SYMBOLS<FS>.

36.  Which function module would you use to check the user’s authorization to access files before opening a file?
AUTHORITY_CHECK_DATASET

37.  Name the function module used to convert logical file names to physical file names in ABAP/4 programs.
FILE_GET_NAME.

38.  Parameters, which are defined during the definition of a subroutine with the FORM statement, are called Formal Parameters.

39.  Parameters which are specified during the call of a subroutine with the PERFORM statement are called Actual Parameters.

40.  In subroutines internal tables that are passed by TABLES, are always called by value and result. (T/F)
FALSE.  They are called by reference.


Interview Questions & Answers report related in SAP ABAP.



Interview Questions & Answers report related in SAP ABAP.

REPORT GENERATION – FORMATTING

1.The alignment of a type ‘c’ field in a report is left Aligned.

2. In the statement Write:/15(10) Ofal-lifnr. what do the number 15 and 10 stand for
15 stand for the offset on the screen and 10 stands for the field length displayed.

3.Specify the default alignment for the following field types:‘D’ – Left, ‘F’-Right, ‘N’-Left, ‘I’-Right, ‘T’-Left.

4. If s_time has the value ‘123456’ how would you get an output of 12:34:56 with a single ‘Write:’ statement.
Write:s_time using edit mask’--:--:--‘.

5. In order to suppress the leading zeroes of a number field the keywords used are NO-ZERO.

6. The total no of date formats that can be used to display a date during output is MM/DD/YY, DD/MM/YY, DD/MM/YYYY, MM/DD/YYYY, MMDDYY, DDMMYY, YYMMDD.

7. The UNDER Command allows for vertical alignment of fields one below the other.

8. In order to concatenate strings only for output purposes the command NO-GAP can be used in conjunction with the ‘Write’ statement.

9. The no of decimal places for output can be defines within a write statement. (T/F).
TRUE.  Write:/<F> decimals 2.

10.  Data can be moved from one field to another using a ‘Write:’ Statement and stored in the desired format. (T/F).
TRUE. Write: Date_1 to Date_2 format DD/MM/YY.

11.  In the statement Write:/15(10) lfa1-lifnr. The values 15 and 11 can also be defined by variables (T/F). False.

12. Differentiate between the following two statements if any.
ULINE.
Write: sy-uline.
No-difference.  Except that uline is used outside the ‘Write’ Statement.

13. In order to skip a single line the number of lines need not be given as an assignment (T/F)
TRUE.

14. The “SKIP TO LINE line number” is dependent on the LINE-COUNT  statement included in the report statement of the program.

15. In order to skip columns the command used is POSITION <n>.
   
16.  In order to have boldfaced text as output the command used is Write:<f>INTENSIFIED.
   
17.  Background and foreground colors can be interchanged using the command Format Inverse.
  
18.  In order to restore the system defaults for all changes made with the format statement is Format Reset.

     19.   Like ULINE the statement VLINE is used to insert vertical lines. (T/F).
False.
20. Suppressing the number signs (+/-) is carried out using the addition NO-SIGNS to the Write statement. (T/F).    False.

21.  If SY-UZEIT has the value 6:34:45 it can be displayed as 063445 using No Edit Mask.

22.  If the variable “Text” has the value ‘ABCDEF’ the output for the statement “Write:/Text+2(3)” will be “CDE” 

23.  The fields specified by select-options and parameters statement cannot be grouped together in the selection screen. (T/F).  False.

24.  When calling an external report the parameters or select-options specified in the external report cannot be called. (T/F)
FALSE.

25.  Selection Texts  in the text elements of the program helps in changing the displayed names of variables in the parameters statement.

26.  Type F  datatype cannot be used to define parameters.
27. Rounding off of values can be carried out using the write statement. (T/F). TRUE

28.  How would you define the exponents for a type ‘f’ field?
Exponent <e>.

29.  How would you format the output as left, centered or right-justified using the write statement.
Left-justified, Centered, Right-justified.

30.  If the same formatting options were used for a WRITE statement that follows the FORMAT statement, which settings would take precedence.
The settings in the Write Statement.

31.  For each new event, the system resets all formatting options to their default values (T/F)
TRUE.

32.  All formatting options have the default value OFF. (T/F).
TRUE.

33.  How would you set the formatting options statically and dynamically within a report? Statically: FORMAT <option1>[ON|OFF]….
Dynamically: FORMAT <option1> = <var1><option2>=<var2>….

34.  The page footer is defined using the statement END-OF-PAGE.

35.  The processing block following END-OF-PAGE is processed only if you reserve lines for the footer in the LINE-COUNT option of the REPORT statement. (T/F)
TRUE.

36.  To execute a page break under the condition that less than a certain number of lines is left on a page is achieved by RESERVE n lines.

37.  The RESERVE statement only takes effect if output is written to the subsequent page.  No blank pages are created and it defines a block of lines that must be output as a whole. (T/F). TRUE.

38.  To set the next output line to the first line of a block of lines defined with the RESERVE statement the statement BACK  is used.

39.  What is the limit for the length of a page if the page length is not specified in the report statement. 60,000 lines.

40.  How would you start the printing process from within the program while creating a list?
NEW-PAGE PRINT ON.

41.  You can change the width of pages within list levels triggered by page breaks. (T/F).
FALSE.

42.  Hotspots are special areas of an output list used to trigger events. (T/F) TRUE.

43.  To designate fields as hotspots at runtime, use FORMAT HOTSPOT = <h>.

44.  Horizontal lines created with ULINE and blank lines created with SKIP can be formatted as hotspots. (T/F). FALSE.

45.  How would you suppress the display of a parameter on the selection screen?
Parameters <p> ………..No-Display.

46.  Can you assign a matchcode object to a parameter? If so how?
Yes.  PARAMETERS <p>……..MATCHCODE OBJECT <obj>……..

47.  For each SELECT-OPTIONS statement, the system creates a selection table. (T/F)
TRUE.

48.  To position a set of parameters or comments on a single line on the selection screen, you must declare the elements in a block enclosed by
SELECTION-SCREEN BEGIN OF LINE.
……..
SELECTION-SCREEN END OF LINE.

49.  How can Symbols or R/3 icons be output on the screen?
     WRITE <symbol-name>AS SYMBOL.
     WRITE <icon-name> AS ICON.

50.  In the standard setting, you cannot create empty lines with the WRITE statement alone. (T/F).  TRUE.

Interview Questions & Answers for SAP ABAP .



Interview Questions & Answers for SAP ABAP.

1. What guarantees the integration of all application modules?
The R/3 basis system guarantees the integration of all application modules.  The R/3 basis s/w provides the run time environment for the R/3 applications ensures optimal integration, defines a stable architectural frame for system enhancements, and contains the administration tools for the entire system.One of the main tasks of the basis system is to guarantee the portability of the complete system.

 2. What are the central interfaces of the R/3 system?
     Presentation Interface.
     Database Interface.
     Operating system Interface.
 3. Which interface controls what is shown on the p.c.?
     Presentation Interface.

 4. Which interface converts SQL requirements in the SAP development system to those of the database?
     Database Interface.

 5. What is SAP dispatcher?
     SAP dispatcher is the control agent that manages the resources for the R/3 applications.

 6. What are the functions of dispatcher?
     Equal distribution of transaction load to the work processes.
     Management of buffer areas in main memory.
     Integration of the presentation levels.
     Organization of communication activities.

 7. What is a work process?
     A work process is where individual dialog steps are actually processed and the work is done.  Each work process handles one type of request.

 8. Name various work processes of R/3 system?
    Dialog or Online (processes only one request at a time).
    Background (Started at a specific time)
    Update (primary or secondary)
    Enque (Lock mechanism).
    Spool (generated online or during back ground processing for printing).

 9. Explain about the two services that are used to deal with communication.
Message Service: Used by the application servers to exchange short internal messages, all system communications.
Gateway Service: Enables communication between R/3 and external applications using CPI-C protocol.

 10. Which work process triggers database changes?
Update work process.

 11. Define service (within R/3)?
A service is a process or group of processes that perform a specific system function and often provide an application-programming interface for other processes to call.

 12. What are the roll and page areas?
Roll and page areas are SAP R/3 buffers used to store user contexts (process requests).  The SAP dispatcher assigns process requests to work processes as they are queued in the roll and page areas.
Paging area holds data from the application programs.
Roll area holds data from previous dialog steps and data that characterize the user.

 13. What are the different layers in R/3 system?
Presentation Layer.
Application Layer.
Database Layer.

 14. What are the phases of background processing?
Job Scheduling.
Job Processing.
Job Overview.

 15. What components of the R/e system initiate the start of background jobs at the specified time?
The batch scheduler initiates the start of background job.  The dispatcher then sends this request to an available background work process for processing.

 16. Define Instance.
An instance is an administrative unit in which components of an R/3 systems providing one or more services are grouped together.  The services offered by an instance are started and stopped at random.  All components are parameterized using a joint instance profile.  A central R/3 system consists of a single instance in which all-necessary SAP services are offered.  Each instance uses separate buffer areas.

 17. From hardware perspective, every information system can be divided into three task areas Presentation, Application Logic and Data Storage.
The R/3 Basis software is highly suitable for use in multi-level client/server architectures.

 18. What are R/3 Basis configurations?
A central system with centrally installed presentation software.
Two-level client/server system with rolled out presentation software.
Two-level client/server system. Presentation and Application run on the same computer.
Three-level client/server system.  Presentation, Application and database each run on separate computers.

 19. What is a Service in SAP terminology?
A service refers to something offered by a s/w component.

 20. What is Server in SAP terminology?
A component can consist of one process or a group and is then called the server for the respective service.

 21. What is a client in SAP terminology?
A S/W component that uses the service (offered by a s/w component) is called a Client.  At the same time these clients may also be servers for other services.

 22.What is a SAP system?
The union of all s/w components that are assigned to the same databases is called as a SAP system.

 23. What is the means of communications between R/3 and external applications?
The means of communication between R/2,R/3 and external applications is via the CPI-C handler or SAP Gateway, using the CPI-C Protocol.

 24. What is the protocol used by SAP Gateway process?
The SAP Gateway process communicates with the clients based on the TCP/IP Protocol.

 25. Expand CPI-C.
Common Program Interface Communication.

 26. What is a Spool request?
Spool requests are generated during dialog or background processing and placed in the spool database with information about the printer and print format.  The actual data is places in the Tem Se (Temporary Sequential objects).

 27. What are different types of Log records?
V1 and V2.  V1 must be processed before V2.  But, we can have more than one V2 logs.

 28. What are the types of Update requests?
An update request can be divided into one primary (V1) and several Secondary update components (V2).  Time-critical operations are placed in V1 component and those whose timing is less critical are placed in V2 components.  If a V1 update fails, V2 components will not be processed.

 29. Dialog work processes perform only one dialog step and then available for the next request.

 30. Explain what is a transaction in SAP terminology.
In SAP terminology, a transaction is series of logically connected dialog steps.

 31. Explain how SAP GUI handles output screen for the user.
The SAP front-end s/w can either run on the same computer or on different computers provided for that purpose. User terminal input is accepted by the SAP terminal program SAP GUI, converted to SAP proprietary format and sent to the SAP dispatcher.  The dispatcher coordinates the information exchange between the SAP GUIs and the work processes.  The dispatcher first places the processing request in request queues, which it then processes.  The dispatcher dispatches the requests one after another, to the available work process.  The actual processing takes place in the work process.  When processing is complete, the result of a work process is returned via the dispatcher to the SAP GUI.  The SAP GUI interprets the received data and generates the output screen for the user.

1.       What is full form of BDC Session?
Batch Data Communication Session.

2.       What are the steps in a BDC session?
The first step in a BDC session is to identify the screens of the transaction that the program will process.  Next step is to write a program to build the BDC table that will be used to submit the data to SAP.  The final step is to submit the BDC table to the system in the batch mode or as a single transaction by the CALL TRANSACTION command.

3.       How do you find the information on the current screen?
The information on the current screen can be found by SYSTEM à STATUS command from any menu.

4.       How do you save data in BDC tables?
The data in BDC tables is saved by using the field name ‘BDC_OKCODE’ and field value of ‘/11’.

5.       What is the last entry in all BDC tables?
In all BDC tables the last entry is to save the data by using the field name BDC_OKCODE and a field value of ‘/11’.

6.       What is a multiple line field?
A multiple line field is a special kind of field which allows the user to enter multiple lines of data into it.

7.       How do you populate data into a multiple line field?
To populate data into a multiple line field, an index is added to the field name to indicate which line is to be populated by the BDC session (Line index).

8.       Write the BDC table structure.
BDC table structure
FIELD                     TYPE                            DESCRIPTION
Program                CHAR (8)                      Program name of transaction.
DynPro                  CHAR (4)                      Screen number of transaction.
DynBegin              CHAR (1)                      Indicator for new screen.
Fnam                     CHAR (35)                     Name of database field from screen.
Fval                       CHAR (80)                     Value to submit to field.

9.       Does the CALL TRANSACTION method allow multiple transactions to be processed by SAP?
No.  The CALL TRANSACTION method allows only a single transaction to be processed by SAP.

10.    Does the BDC-INSERT function allow multiple transactions to be processed by SAP?
Yes.

11.    What is the syntax for ‘CALL TRANSACTION’?
CALL TRANSACTION trans [using bdctab MODE mode].
Three possible entries are there for MODE.
                  A          -           Show all screens.
                  E          -           Show only screens with errors.
                  N          -           Show no screens.