Subscribe

RSS Feed (xml)

Powered By

Skin Design:
Free Blogger Skins

Powered by Blogger

Google

Free 

SAP Material & Live Information

↑ Grab this Headline Animator

Real Time questions in SAP ABAP

Q.Which client number you use for the current project?

Q.You are running a report. It is taking long time for execution. What steps will you do to reduce the execution time.

Q.After running a BDC program in background, next day morning when you see the results, few records are not updated(error records). What will you do then?

Q.You are given functional specs for a BDC program and you need to decide whether to write a method call transaction or a session. How u will decide?Q.What is the difference between report and script?

Q.what are the differences between scripts & smart forms?

Q. what are enhancements?

Q. what are user-exits ?

Q. what is badi?

Q. what is the difference between user-exit & BADIs?

Q. what is the difference between user-exit & customer-exit?

Q. How do you get functional specs when you are assigned some object? (specs through email..??)

Q. How do you write technical specs?Q. How do you write UTP?(unit test plan)

ITs about FAQS in SAP ABAP

1. What is the typical structure of an ABAP/4 program?
ANS:- HEADER ,BODY,FOOTER.

2. What are field symbols and field groups.? Have you used "component idx of structure" clause with field groups?
ANS:-
Field symbols:-

Field groups :-

3. What should be the approach for writing a BDC program?
ANS:-
STEP 1: CONVERTING THE LEGACY SYSTEM DATA TO A FLAT FILE to internal table CALLED "CONVERSION".
STEP 2: TRANSFERING THE FLAT FILE INTO SAP SYSTEM CALLED "SAP DATA TRANSFER".
STEP 3: DEPENDING UPON THE BDC TYPE i)call transaction(Write the program explicity)
ii) create sessions (sessions are created and processed.if success data will transfer).

4. What is a batch input session?
ANS:-
BATCH INPUT SESSION is an intermediate step between internal table and database table.
Data along with the action is stored in session ie data for screen fields, to which screen it is passed,program name behind it, and how next screen is processed.

5. What is the alternative to batch input session?
ANS:- Call transaction.

6. A situation: An ABAP program creates a batch input session.
We need to submit the program and the batch session in back ground. How to do it?
ANS:-
go to SM36 and create background job by giving
job name,job class and job steps (JOB SCHEDULING)

8. What are the problems in processing batch input sessions?
How is batch input process different from processing online?
ANS:-
PROBLEMS:-
i) If the user forgets to opt for keep session then the session will be automatically removed from the session queue(log remains). However if session is processed we may delete it manually.
ii)if session processing fails data will not be transferred to SAP10. What are the different types of data dictionary objects?
ans:-
tables, structures, views, domains, data elements, lock objects, Matchcode objects.

11. How many types of tables exists and what are they in data dictionary?
ans :-
4 types of tables
i)Transparent tables - Exists with the same structure both in dictionary as well as in database exactly with the same data and fields. Both Opensql and Nativesql can be used.

ii)Pool tables & iii)Cluster tables -
These are logical tables that are arranged as records of transparent tables.one cannot use native sql on these tables
(only opensql).They are not managable directly using database system tools.

iv)Internal tables - .

12. What is the step by step process to create a table in data dictionary?
ans:-
step 1: creating domains(data type,field length,range).
step 2: creating data elements(properties and type for a table
field).
step 3: creating tables(SE11)13. Can a transparent table exist in data dictionary but not in the data base physically?
ANS:- NO.
TRANSPARENT TABLE DO EXIST WITH THE SAME STRUCTURE BOTH IN THE DICTIONARY AS WELL AS IN THE DATABASE,EXACTLY WITH THE SAME DATA AND FIELDS.

14. What are the domains and data elements?
ANS:-
DOMAINS : FORMAL DEFINITION OF THE DATA TYPES.THEY SET ATTRIBUTES SUCH AS DATA TYPE,LENGTH,RANGE.
DATA ELEMENT : A FIELD IN R/3 SYSTEM IS A DATA ELEMENT.

15. Can you create a table with fields not referring to data elements?
ANS:-
YES. eg:- ITAB LIKE SPFLI.here we are referening to a data object(SPFLI) not data element.

16. What is the advantage of structures? How do you use them in the ABAP programs?
ANS:-
Adv:- GLOBAL EXISTANCE(these could be used by any other program without creating it again).

17. What does an extract statement do in the ABAP program?
ANS:-
Once you have declared the possible record types as field groups and defined their structure, you can fill the extract dataset using the following statements:
EXTRACT .

When the first EXTRACT statement occurs in a program, the system creates the extract dataset and adds the first extract record to it. In each subsequent EXTRACT statement, the new extract record is added to the dataset

EXTRACT HEADER.

When you extract the data, the record is filled with the current values of the corresponding fields.

As soon as the system has processed the first EXTRACT statement for a field group , the structure of the corresponding extract record in the extract dataset is fixed. You can no longer insert new fields into the field groups and HEADER. If you try to modify one of the field groups afterwards and use it in another EXTRACT statement, a runtime error occurs.

By processing EXTRACT statements several times using different field groups, you fill the extract dataset with records of different length and structure. Since you can modify field groups dynamically up to their first usage in an EXTRACT statement, extract datasets provide the advantage that you need not determine the structure at the beginning of the program.

18. What is a collect statement? How is it different from append?
ANS:-
If an entry with the same key already exists, the COLLECT statement does not append a new line, but adds the contents of the numeric fields in the work area to the contents of the numeric fields in the existing entry.

19. What is open sql vs native sql?
Ans:
Open SQL , native SQL are the interfaces to create the database applicatons.
Open SQL is consistant across different types of existing Databases.
Native SQL is the database language specific to database.Its API is specific to the databse.
Open SQL API is consistent across all vendors

20. What does an EXEC SQL stmt do in ABAP? What is the disadvantage of using it?
ANS:-

21. What is the meaning of ABAP/4 editor integrated with ABAP/4 data dictionary?
ANS:-

22. What are the events in ABAP/4 language?
ANS:-
Initialization, At selection-screen,Start-of-selection,end-of-selection,top-of-page,end-of-page, At line-selection,At user-command,At PF,Get,At New,At LAST,AT END, AT FIRST.

23. What is an interactive report?
What is the obvious diff of such report compared with classical type reports?
ANS:-
An Interactive report is a dynamic drill down report that produces the list on users choice.
diff:-
a) THE LIST PRODUCED BY CLASSICAL REPORT DOESN'T allow user to interact with the system
the list produced by interactive report allows the user to interact with the system.
b) ONCE A CLASSICAL REPORT EXECUTED USER LOOSES CONTROL.IR USER HAS CONTROL.
c) IN CLASSICAL REPORT DRILLING IS NOT POSSIBLE.IN INTERACTIVE DRILLING IS POSSIBLE.

24. What is a drill down report?
ANS:-
Its an Interactive report where in the user can get more relavent data by selecting explicitly.

25. How do you write a function module in SAP? describe.
ANS:-
creating function module:-
called program - se37-creating funcgrp,funcmodule by assigning attributes,importing,exporting,tables,exceptions.
calling program - SE38-in pgm click pattern and write function name- provide export,import,tables,exception values.

26. What are the exceptions in function module?
ANS:-
COMMUNICATION_FAILURE
SYSTEM_FAILURE

27. What is a function group?
ANS:-
GROUP OF ALL RELATED FUNCTIONS.

28. How are the date and time field values stored in SAP?
ANS:-
DD.MM.YYYY. HH:MM:SS

30. Name a few data dictionary objects? //rep//
ANS:-
TABLES,VIEWS,STRUCTURES,LOCK OBJECTS,MATCHCODE OBJECTS.

31. What happens when a table is activated in DD?
ANS:-
It is available for any insertion,modification and updation of records by any user.

32. What is a check table and what is a value table?
Check table will be at field level checking.
Value table will be at domain level checking ex: scarr table is check table for carrid.

33. What are match codes? describe?
ans:-
It is a similar to table index that gives list of possible values for either primary keys or non-primary keys.

34. What transactions do you use for data analysis?
ANS:-

35. What is table maintenance generator?
ANS:-

36. What are ranges? What are number ranges?
ANS:-
max,min values provided in selection screens.

37. What are select options and what is the diff from parameters?
ANS:-
select options provide ranges where as parameters do not.

SELECT-OPTIONS declares an internal table which is automatically filled with values or ranges
of values entered by the end user. For each SELECT-OPTIONS , the system creates a selection table.

SELECT-OPTIONS FOR .

A selection table is an internal table with fields SIGN, OPTION, LOW and HIGH.
The type of LOW and HIGH is the same as that of .
The SIGN field can take the following values: I Inclusive (should apply) E Exclusive (should not apply)
The OPTION field can take the following values: EQ Equal GT Greater than NE Not equal BT Between LE Less
than or equal NB Not between LT Less than CP Contains pattern GE Greater than or equal NP No pattern.
diff:-
PARAMETERS allow users to enter a single value into an internal field within a report.
SELECT-OPTIONS allow users to fill an internal table with a range of values.

For each PARAMETERS or SELECT-OPTIONS statement you should define text elements by choosing
Goto - Text elements - Selection texts - Change.

Eg:- Parameters name(30).
when the user executes the ABAP/4 program,an input field for 'name' will appear on the selection screen.You can change the comments on the left side of the input fields by using text elements as described in Selection Texts.

38. How do you validate the selection criteria of a report?
And how do you display initial values in a selection screen?
ANS:-
validate :- by using match code objects.
display :- Parameters default 'xxx'.
select-options for spfli-carrid.

39. What are selection texts?
ANS:-

40. What is CTS and what do you know about it?
ANS:-

The Change and Transport System (CTS) is a tool that helps you to organize development projects in the ABAP Workbench and in Customizing, and then transport the changes between the SAP Systems and clients in your system landscape.
This documentation provides you with an overview of how to manage changes with the CTS and essential information on setting up your system and client landscape and deciding on a transport strategy. Read and follow this documentation when planning your development project.
For practical information on working with the Change and Transport System, see Change and Transport Organizer and Transport Management System.

41. When a program is created and need to be transported to prodn does selection texts always go with it? if not how do you make sure? Can you change the CTS entries? How do you do it?
ANS:-

42. What is the client concept in SAP? What is the meaning of client independent?
ANS:-

43. Are programs client dependent?
ANS:-
Yes.Group of users can access these programs with a client no.

44. Name a few system global variables you can use in ABAP programs?
ANS:-
SY-SUBRC,SY-DBCNT,SY-LILLI,SY-DATUM,SY-UZEIT,SY-UCOMM,SY-TABIX.....
SY-LILLI IS ABSOLUTE NO OF LINES FROM WHICH THE EVENT WAS TRIGGERED.

45. What are internal tables? How do you get the number of lines in an internal table?
How to use a specific number occurs statement?
ANS:-
i)It is a standard data type object which exists only during the runtime of the program.
They are used to perform table calculations on subsets of database tables and for re-organising the contents of database tables according to users need.
ii)using SY-DBCNT.
iii)The number of memory allocations the system need to allocate for the next record population.

46. How do you take care of performance issues in your ABAP programs?
Performance of ABAPs can be improved by minimizing the amount of data to be transferred.
The data set must be transferred through the network to the applications, so reducing the amount OF time and also reduces the network traffic.

Some measures that can be taken are:

- Use views defined in the ABAP/4 DDIC (also has the advantage of better reusability).
- Use field list (SELECT clause) rather than SELECT *.
- Range tables should be avoided (IN operator)
- Avoid nested SELECTS.

i)system tools

ii)field symbols and field groups.
ans:-
Field Symbols : Field symbols are placeholders for existing fields. A Field Symbol does not physically reserve space for a field,but points to a field which is not known until runtime of the program.
eg:- FIELD-SYMBOL [].

Field groups : A field group combines several fields under one name.At runtime,the INSERT command is used to define which data fields are assigned to which field group.
There should always be a HEADER field group that defines how the extracted data will be sorted,the data is sorted by the fields grouped under the HEADER field group.

47. What are datasets?
ANS:-
The sequential files(ON APPLICATION SERVER) are called datasets. They are used for file handling in SAP.

48. How to find the return code of a statement in ABAP programs?
ANS:-
Using function modules.

49. What are interface/conversion programs in SAP?
ANS :
CONVERSION : LEGACY SYSTEM TO FLAT FILE.
INTERFACE : FLAT FILE TO SAP SYSTEM.

50. Have you used SAP supplied programs to load master data?

51. What are the techniques involved in using SAP supplied programs?
Do you prefer to write your own programs to load master data? Why?

52. What are logical databases? What are the advantages/disadvantages of logical databases?
ANS:-
To read data from a database tables we use logical database.
A logical database provides read-only access to a group of related tables to an ABAP/4 program.

adv:-
The programmer need not worry about the primary key for each table.Because Logical database knows how the different tables relate to each other,and can issue the SELECT command with proper where clause to retrieve the data.
i)An easy-to-use standard user interface.
ii)check functions which check that user input is complete,correct,and plausible.
iii)meaningful data selection.
iv)central authorization checks for database accesses.
v)good read access performance while retaining the hierarchical data view determined by the application logic.

disadv:-
i)If you donot specify a logical database in the program attributes,the GET events never occur.
ii)There is no ENDGET command,so the code block associated with an event ends with the next event
statement (such as another GET or an END-OF-SELECTION).

53. What specific statements do you using when writing a drill down report?
ans:-
AT LINE-SELECTION,AT USER-COMMAND,AT PF.

54. What are different tools to report data in SAP? What all have you used?
ans:-

55. What are the advantages and disadvantages of ABAP/4 query tool?

56. What are the functional areas? User groups? and how does ABAP/4 query work in relation to these?

57. Is a logical database a requirement/must to write an ABAP/4 query?

59. What are Change header/detail tables? Have you used them?

60. What do you do when the system crashes in the middle of a BDC batch session?
ans:-
we will look into the error log file (SM35).

61. What do you do with errors in BDC batch sessions?
ANS:-
We look into the list of incorrect session and process it again. To correct incorrect session we analyize the session to determine which screen and value produced the error.For small errors in data we correct them interactively otherwise
modify batch input program that has generated the session or many times even the datafile.

62. How do you set up background jobs in SAP? What are the steps? What are the event driven batch jobs?
ans:-
go to SM36 and create background job by giving job name,job class and job steps(JOB SCHEDULING)

63. Is it possible to run host command from SAP environment? How do you run?

64. What kind of financial periods exist in SAP? What is the relavent table for that?

65. Does SAP handle multiple currencies? Multiple languages?
ans:-
Yes.

66. What is a currency factoring technique?

67. How do you document ABAP/4 programs? Do you use program documentation menu option?

68. What is SAPscript and layout set?
ans:-
The tool which is used to create layout set is called SAPscript. Layout set is a design document.

69. What are the ABAP/4 commands that link to a layout set?
ans:-
control commands,system commands,

70. What is output determination?

71. What are IDOCs?
ans:-
IDOCs are intermediate documents to hold the messages as a container.

72. What are screen painter? menu painter? Gui status? ..etc.
ans:-
dynpro - flow logic + screens.
menu painter -
GUI Status - It is subset of the interface elements(title bar,menu bar,standard tool bar,push buttons) used for a certain screen.
The status comprises those elements that are currently needed by the transaction.

73. What is screen flow logic? What are the sections in it? Explain PAI and PBO.
ans:-
The control statements that control the screen flow.
PBO - This event is triggered before the screen is displayed.
PAI - This event is responsible for processing of screen after the user enters the data and clicks the pushbutton.

74. Overall how do you write transaction programs in SAP?
ans:-
Create program-SE93-create transcode-Run it from command field.

75. Does SAP has a GUI screen painter or not? If yes what operating systems is it available on? What is the other type of screen painter called?

76. What are step loops? How do you program pagedown pageup in step loops?
ans:-
step loops are repeated blocks of field in a screen.

77. Is ABAP a GUI language?
ANS:-
Yes.
ABAP IS AN EVENT DRIVEN LANGUAGE.

78. Normally how many and what files get created when a transaction program is written?
What is the XXXXXTOP program?
ans:-
ABAP/4 program.
DYNPRO

79. What are the include programs?
ANS:-
When the same sequence of statements in several programs are to be written repeadly they are coded in include programs (External programs) and are included in ABAP/4 programs.

80. Can you call a subroutine of one program from another program?
ans:- Yes- only external subroutines Using 'SUBMIT' statement

The Other 50 ABAP Interview Faq's in SAP

The Other 50 ABAP Interview Faq's

51. What are the techniques involved in using SAP supplied programs?
Do you prefer to write your own programs to load master data? Why?

52. What are logical databases? What are the advantages/disadvantages of logical databases?
ANS:-
To read data from a database tables we use logical database.
A logical database provides read-only access to a group of related tables to an ABAP/4 program.

advantages:-


The programmer need not worry about the primary key for each table.Because Logical database knows how the different tables relate to each other,and can issue the SELECT command with proper where clause to retrieve the data.

i)An easy-to-use standard user interface.
ii)check functions which check that user input is complete,correct,and plausible.
iii)meaningful data selection.
iv)central authorization checks for database accesses.
v)good read access performance while retaining the hierarchical data view determined by the application logic.Disadvantages:-


i)If you donot specify a logical database in the program attributes,the GET events never occur.
ii)There is no ENDGET command,so the code block associated with an event ends with the next event
statement (such as another GET or an END-OF-SELECTION).

53. What specific statements do you using when writing a drill down report?
ans:-
AT LINE-SELECTION,AT USER-COMMAND,AT PF.

54. What are different tools to report data in SAP? What all have you used?
ans:-

55. What are the advantages and disadvantages of ABAP/4 query tool?

56. What are the functional areas? User groups? and how does ABAP/4 query work in relation to these?

57. Is a logical database a requirement/must to write an ABAP/4 query?

59. What are Change header/detail tables? Have you used them?

60. What do you do when the system crashes in the middle of a BDC batch session?
ans:-
we will look into the error log file (SM35).

61. What do you do erros in BDC batch sessions?
ANS:-
We look into the list of incorrect session and process it again. To correct incorrect session we analyize the session to determine which screen and value produced the error.For small errors in data we correct them interactively otherwise
modify batch input program that has generated the session or many times even the datafile.62. How do you set up background jobsin SAP? What are the steps? What are the event driven batch jobs?
ans:-
go to SM36 and create background job by giving job name,job class and job steps(JOB SCHEDULING)

63. Is it possible to run host command from SAP environment? How do you run?

64. What kind of financial periods exist in SAP? What is the relavent table for that?

65. Does SAP handle multiple currencies? Multiple languages?
ans:-
Yes.

66. What is a currency factoring technique?

67. How do you document ABAP/4 programs? Do you use program documentation menu option?

68. What is SAPscript and layout set?
ans:-
The tool which is used to create layout set is called SAPscript. Layout set is a design document.

69. What are the ABAP/4commands that link to a layout set?
ans:-
control commands,system commands,

70. What is output determination?

71. What are IDOCs?
ans:-
IDOCs are intermediate documents to hold the messages as a container.

72. What are screen painter? menu painter? Gui status? ..etc.
ans:-
dynpro - flow logic + screens.

Menu painter -
GUI Status - It is subset of the interface elements(title bar,menu bar,standard tool bar,push buttons) used for a certain screen.
The status comprises those elements that are currently needed by the transaction.

73. What is screen flow logic? What are the sections in it? Explain PAI and PBO.
ans:-

The control statements that control the screen flow.
PBO - This event is triggered before the screen is displayed.
PAI - This event is responsible for processing of screen after the user enters the data and clicks the pushbutton.

74. Overall how do write programs in SAP?
ans:-
Create program-SE93-create transcode-Run it from command field.

75. Does SAP has a GUI screen painter or not? If yes what operating systems is it available on? What is the other type of screen painter called?

76. What are step loops? How do you program pagedown pageup in step loops?
ans:-
step loops are repeated blocks of field in a screen.

77. Is ABAP a GUI language?
ANS:-
Yes.
ABAP IS AN EVENT DRIVEN LANGUAGE.

78. Normally how many and what files get created when a transaction program is written?
What is the XXXXXTOP program?
ans:-
ABAP/4 program.
DYNPRO

79. What are the include programs?
ANS:-
When the same sequence of statements in several programs are to be written repeadly they are coded in include programs (External programs) and are included in ABAP/4 programs.

80. Can you call a subroutine of one program from another program?
ans:- Yes- only external subroutines Using 'SUBMIT' statement.

81. What are user exits? What is involved in writing them? What precations are needed?

82. What are RFCs? How do you write RFCs on SAP side?

83. What are the general naming conventions of ABAP programs?
ANS:-
Should start with Y or Z.

84. How do you find if a logical database exists for your program requrements?
ans:-
SLDB-F4.

85. How do you find the tables to report from when the user just tell you the transaction he uses? And all the underlying data is from SAP structures?
ans:-
Transcode is entered in command field to open the table.Utilities-Table contents-display.

86. How do you find the menu path for a given transaction in SAP?
ans:-

87. What are the different modules of SAP?
ans:-
FI,CO,SD,MM,PP,HR.

89. How do you get help in ABAP?
ans:-
HELP-SAP LIBRARY,by pressing F1 on a keyword.

90. What are different ABAP/4 editors? What are the differences?
ans:-

91. What are the different elements in layout sets?
ans:-
PAGES,Page windows,Header,Paragraph,Character String,Windows.

92. Can you use if then else,perform ..etc statements in sap script?
ans:-
yes.

93. What type of variables normally used in sap script to output data?

94. How do you number pages in sapscript layout outputs?

95. What takes most time in SAP script programming?
ANS:-
LAYOUT DESIGN AND LOGO INSERTION.

96. How do you use tab sets in layout sets?

97. How do you backup sapscript layout sets? Can you download and upload? How?

98. What are presentation and application servers in SAP?
ANS:-
The application layer of an R/3 System is made up of the application servers and the message server. Application programs in an R/3 System are run on application servers. The application servers communicate with the presentation components, the database, and also with each other, using the message server.

99. In an ABAP/4 program how do you access data that exists on a presentation server vs on an application server?
ans:-
i)using loop statements.
ii)flat

100. What are different data types in ABAP/4?
ans:-

Elementary -
predefined C,D,F,I,N,P,T,X.
userdefined TYPES.
ex: see in intel book page no 35/65

Structures:-
predefined TABLES.
userdefined Field Strings and internal tables.

101. What is difference between session method and Call Transaction?
ans:-

102. Setting up a BDC program where you find information from?
ans:-

103. What has to be done to the packed fields before submitting to a BDC session.
ans:-
fields converted into character type.

104. What is the structure of a BDC sessions.
ans:-
BDCDATA (standard structure).

105. What are the fields in a BDC_Tab Table.
ans:-
program,dynpro,dynbegin,fnam,fval.

106. What do you define in the domain and data element.
Technical details like

107. What is the difference between a pool table and a transparent table and how they are stored at the database level.
ans:-
ii)Pool tables is a logical representation of transparent tables .Hence no existence at database level. Where as transparent tables are physical tables and exist at database level.

108. What is cardinality?
For cardinality one out of two (domain or data element) should be the same for Ztest1 and Ztest2 tables. M:N
Cardinality specifies the number of dependent(Target) and independent (source) entities which can be in a relationship

ABAP Certification Sample Questions for Abapers in SAP

Question:
Within the TOP-OF-PAGE event the following code represents:write: /1 text-001.

A: A selection text.
B: A basic list row.
C: A page footer
D: A page headerQuestion:
Given the two ABAP Dictioary tables below, the Customer number field in table one must contain a value from table two. The Customer number field is known as a ____.

Table one:
Customer number (Primary key)
Company code (Primary key)
Other data

Table two:
Customer number (Primary key)
Customer name
Other data

A: Secondary index
B: Matchcode object
C: Validation field
D: Foreign key


Question:
A batch input job with two steps is processed. IMPORT/EXPORT statements are used to pass values between the steps.

Step 1 contains the statements
STATUS='S'. CONT = 'C'.
EXPORT STATUS CONT TO MEMORY ID 'XXXX'.

Step 2 contains the statements
CLEAR:CONT, STATUS, FLAG.
IMPORT CONT FLAG FROM MEMORY ID 'XXXX'.

What do the fields SY-SUBRC, CONT and FLAG contain after the IMPORT statement have been executed?

A. SY-SUBRC=4. CONT='C'. FLAG=''.
B. SY-SUBRC=0. CONT='C'. FLAG=''.
C. SY-SUBRC=0. CONT=''. FLAG=''.


Question:
The structure of a table has been changed in the ABAP/4 Dictionary.
Which of the following adjustments in the relevant database table is correct, if you want to retain the previous data?

A. Delete and recreate the database table.
B. Change the database directory (ALTER TABLE) where the structure change with ALTER TABLE is supported by the database.
C. Convert the table.


Question:
Must Exits be predefined by SAP programmers?

A. No
B. Yes
C. Customers can determine for themselves where they want to use exits

Important ABAP FAQ's in SAP

1)What are dml statements in sap?

Ans: Insert, Update, Delete.

2)What is the difference between open sql & native sql?

Ans: Open SQL allows you to access all database tables known to the SAP system, regardless of the database manufacturer. Sometimes, however, we may want to use database-specific SQL statements called Native SQL in your ABAP/4 program.
To avoid incompatibilities between different database tables and also to make ABAP/4 programs independent of the database system in use, SAP has created a set of separate SQL statements called Open SQL. Open SQL contains a subset of standard SQL statements as well as some enhancements which are specific to SAP.
A database interface translates SAP's Open SQL statements into SQL commands specific to the database in use. Native SQL statements access the database directly

3)What is Primary key, foreign key ? what is primary index? secondary index?

Ans: Primary index: the primary index contains key fiels of a table and a pointer to non-key fields of the table. The primary index is created automatically when a table is created in database and moreover you can further define reference to the primary index which are known as Secondary index.4)How many indexes can be created for a table?

Ans: 9.

5)What is data class?

Ans: The data class specifies in which table space the table is created in database.

6)Give few names of cluster tables in sap?

Ans7)Give few names of pooled tables in sap?

Ans: A pool table has many to one relation with the table in the database. For one table in the database there are many tables in the dictionary. Tha table in the database has a diff name than in the table in the data dict, it has diff no of fields and field names are different. A pooled table is stored in the pool at the database level. A table pool is a databse table with a special struct that enables the data of many R3 tables to be stored in it. It can hold only pooled tables.
Sorry I dont know table names.

8)Give few names of transparent tables?

Ans: A transparent table has a one to one relataionship in the database. The table in the dictionary has the same name, same no of fields, and the fields have the same name as in the R3 table defn. A transparent tabel has application data (Master and Transaction). sorry i dont know table names.

9)What is a buffer and how many types?

Ans: Buffer is othing but which stores data temporarily. there are two types of buffers.

They are Roll and Page areas.
Pages : it stores the application data.
Roll area: it stores the data of previous pages.Data areas of used programs are created in roll areas for each internal session.

10)What is table maintenance generator and how to create that? What is the transaction code?

Ans: Table maintanence generator is nothing but making a table available for adding records and deleting records.
The transaction code used is SM30.

11)How to add new fields to a standard sap table?

Ans: 1. Appended structures 2. Customizing tables

12)What are lock objects?

Ans: Lock objects are nothing but which holds a data for particular field value until you remove a lock..

13)Diff betwn inner & outer join?

Ans:

14)What is the use of start-of-selection event?

Ans: Start-of-selection is called implicity even it is not used in the program. start-of-selection is triggered after the standard selection screen has been displayed.

15)What is the difference between end-of-page and end-of-selection?

Ans: End-of-page : is footer of the page. End-of-selection: is triggered At the end of the processing block.

16)If you write a write statement after end-of-selection, will that be triggered?

Ans: Yes

17)How to create a button in selection screen?

Ans: Using parametres

18)How to add a gui status in a selection screen?

Ans:

19)How to create a check box/option button in a list?

Ans: Regarding Runtime creation of Check Boxes

20)Can you call a bdc program from a report? how?

Ans: Yes through Submit and return

21)Can you call a transaction from a report? how?

Ans: Yes Using Call transaction and leave to.

22)What are ALV reports? how they are different from normal reports?
Ans: these reports are used to find subtotals and totals in a report. If you want i'll give you an example program.

23)What are the main events that are used in an ALV report?
Ans:

24)What is the use of SLIS type pool in alv reports?

Ans: Slis type pool is a global defination of pooltypes of catalog structure, table and layout which we use in ALV reports.

25)Difference between top-of-page and top-of-page during at-line- selection?

Ans: Top-of-page is a header on primary list. Top-of-page during line-selection is a header on secondary lists.

26)In an interactive report, after going to 5th list, can you come back to 2nd list? how?

How many type of internal tables are there?

Ans: Standard, Hashed, Sorted tables

27)What is the difference between hashed & sorted internal tables?

Ans: Sorted internal table works on Binary Search and Hashed internal tables works on hashed alogorthim through indexes.

28)What is the difference between standard and sorted internal tables? (in performance wise)

Ans: Sorted table improve the performance in case of a huge table which has no: of records

29)What is the use of at new statement?

Ans:

30)When do you need to create an internal table with header line? and with out a header line? line?

Ans: If we don't want to use any explicit work area then its better to go for an internal table with header line.

31)What does it mean occurs 0 while creating an internal table?

Ans:

32)Which of these methods can be best used in background process?

Ans : Batch Input method.

33)What is direct input method?

What does an EXEC SQL stmt do in ABAP? What is the disadvantage of using it?

Ans: Exec Sql[Performing
[Native sql statements]
endexec.
The above is the syntax for the native sql statements.

Disadvantages:

. Syntax check is not done to statements written inside the EXEC SQL statements.

34)What is the meaning of ABAP/4 editor integrated with ABAP/4 data dictionary?

What transactions do you use for data analysis?

ANs: Sorry i dont know but for runtime analysis we use transaction code : se30.

35)What are selection texts?

Ans: in the selection screen you can change the name of the field,title etc using selection texts. go to text--> text elemets---> selection texts in the menu bar to set selection texts.

36)What is the client concept in SAP? What is the meaning of client independent?

How to find the return code of a statement in ABAP programs?

Ans: Through functions.

37)What is performance tuning?

Ans: Performance tuning for Data Selection Statement

38)What are steps you follow to improve the performance of a report?

Ans: 1) USe select fields statements (not select *)
2) Use views rather than tables
3) Don't use nested Select.

39)What is the role of secondary index in performance?

Ans:

40)What is the role of ST05 in performance tuning?

Ans: SQL trace

41)What is the role of extended syntax check in performance tuning?

Ans:

42)Will join conditions in sql queries affect perfomance? how?

Ans : Yes

43)Will sorted internal tables help in performance?

Ans: Yes

44)Will where conditions in a sql query help improve performance?

Ans: No Not at all

45)Does select single *.. / select * .. affect performance? how?

Ans: Select single we use for first hit of the record. so obviously Select single will improve the performance.

SAP ABAP FAQ (Technical)

DATA DICTIONARY

1.What is data Dictionary ?

2.What is the difference between open sql & native sql ?

3.Difference between Pooled, cluster & transparent tables?

4. What is Primary key, foreign key ? what is primary index?
secondary index?

5.How many indexes can be created for a table?

6. what is a value table?

7. what are the components of a table?8. what is a domain?

9.what is a data element?

10.what is data class?

11.can you create a table with out a data element?

12. can you create a field with out a data element?

13.What approach you prefer for creating a table?14.Give few names of cluster tables in sap?

15.Give few names of pooled tables in sap?

16.give few names of transparent tables?

17.what is a buffer and how many types?

18.what is table maintenance generator and how to create
that? What is the transaction code?

19.How to add new fields to a standard sap table ?

20.How many types of table joins are there?

21.Difference between inner join & outer join?

22. Difference between "select * from mara" and "select
single * from mara"?

23.what is a match code ? Lock objects ?

24.what are views?

25. what are logical tables/database?
26. what is the difference between table and a structure?

Faq Miscellaneous in SAP ABAP

1. Can you create a table with fields not referring to data elements?

YES. eg:- ITAB LIKE SPFLI.here we are referening to a data object
(SPFLI) not data element.

What are the different types of data dictionary objects? tables,
structures, views, domains, data elements, lock objects, Match code
objects.


2. What should be the approach for writing a BDC program?

STEP 1: CONVERTING THE LEGACY SYSTEM DATA TO A FLAT FILE to
internal
table CALLED "CONVERSION".
STEP 2: TRANSFERING THE FLAT FILE INTO SAP SYSTEM CALLED "SAP
DATA
TRANSFER".
STEP 3: DEPENDING UPON THE BDC TYPE
i)call transaction(Write the program explicity)
ii) create sessions (sessions are created and processed.if success
data will transfer).

3. What are the problems in processing batch input sessions and How
is batch input process different from processing online?

PROBLEMS:
i) If the user forgets to opt for keep session then the session will
be automatically removed from the session queue(log remains).
However if session is processed we may delete it manually.
ii)if session processing fails data will not be transferred to SAP
database table.

4. What does an extract statement do in the ABAP program?

Once you have declared the possible record types as field groups and
defined their structure, you can fill the extract dataset using the
following statements: EXTRACT. When the first EXTRACT statement
occurs in a program, the system creates the extract dataset and adds
the first extract record to it. In each subsequent EXTRACT
statement, the new extract record is added to the dataset EXTRACT
HEADER. When you extract the data, the record is filled with the
current values of the corresponding fields. As soon as the system
has processed the first EXTRACT statement for a field group , the
structure of the corresponding extract record in the extract dataset
is fixed. You can no longer insert new fields into the field groups
and HEADER. If you try to modify one of the field groups afterwards
and use it in another EXTRACT statement, a runtime error occurs. By
processing EXTRACT statements several times using different field
groups, you fill the extract dataset with records of different
length and structure. Since you can modify field groups dynamically
up to their first usage in an EXTRACT statement, extract datasets
provide the advantage that you need not determine the structure at
the beginning of the program.

5. Can a transparent table exist in data dictionary but not in the
data base physically?NO. TRANSPARENT TABLE DO EXIST WITH THE SAME STRUCTURE BOTH IN
THE
DICTIONARY AS WELL AS IN THE DATABASE,EXACTLY WITH THE SAME
DATA AND
FIELDS.

6. What is the step by step process to create a table in datadictionary?

step 1: creating domains(data type, field length, range).
step 2: creating data elements(properties and type for a table
field).
step 3: creating tables(SE11).

7. What is the typical structure of an ABAP/4 program?

HEADER ,BODY,FOOTER.

8. A situation: An ABAP program creates a batch input session. We
need to submit the program and the batch session in back ground. How
to do it?

go to SM36 and create background job by giving job name, job class
and job steps (JOB SCHEDULING)

9. What are the domains and data elements?DOMAINS : FORMAL DEFINITION OF THE DATA TYPES.THEY SET
ATTRIBUTES
SUCH AS DATA TYPE,LENGTH,RANGE. DATA ELEMENT : A FIELD IN R/3
SYSTEM
IS A DATA ELEMENT.

10. What is the alternative to batch input session?

Call transaction.

12. What is a batch input session?

BATCH INPUT SESSION is an intermediate step between internal table
and database table. Data along with the action is stored in session
ie data for screen fields, to which screen it is passed, program
name behind it, and how next screen is processed.

13. What is the advantage of structures? How do you use them in theABAP programs?

Adv:- GLOBAL EXISTANCE(these could be used by any other program
without creating it again).

14. How many types of tables exists and what are they in datadictionary?

4 types of tables


i)Transparent tables - Exists with the same structure both in
dictionary as well as in database exactly with the same data and
fields. Both Opensql and Nativesql can be used.

ii)Pool tables & iii)Cluster tables - These are logical tables that are arranged as
records of transparent tables. one cannot use native sql on these
tables (only open sql).They are not managable directly using
database system tools.
iv)Internal tables - .?

------------------------------------------------------------
Faq Miscellaneous-2
1. What is the command in subscript?

2. In ver 3.0b how is the print program to layout set?

3. What's an effective way of using an internal table record? What are the types of internal tables?

4. In production what is the user exit?

5. What type of user exits have you written?

6. Have you worked with field groups? Have you used Import/Export statements?

7. In the `select' statement what is group by?

8. Have you used performance tuning? What major steps will you use for these?

9. On ABAP: Did you set up a workflow? Are you familiar with all steps for setting up a workflow?

10. Have you created Maintenance dialog or Table Maintenance?

11. How to create client independent tables?

12. Difference between client dependent and client independent tables?

13. Have you created database tables?

14. Difference between Search Helps and Match Codes?

15.Elementary search helps, Collective search help.?

16.What does an EXEC SQL stmt do in ABAP? What is the disadvantage of using it?

17.What is open sql vs native sql?

18.What is a collect statement? How is it different from append?

19. If an entry with the same key already exists, the COLLECT statement does not append a new line, but
adds the contents of the numeric fields in the work area to the contents of the numeric fields in the existing entry.?

20. How can I copy a standard table to make my own z_table.?

21. Which transaction code can I used to analyze the performance of ABAP program.?

22. How do we debug sapscript?

23.Can we create field without data element and how?

24. When top of the page event is triggered?

25. How do you get output from IDOC?
----------------------------------------------------------
Faq Miscellaneous-3

SAP R-3 Interview Question?

1. In selection screen I have three fields, plant mat no and materialgroup. If I input plant how do I get the mat no and material groupbased on plant dynamically?

2. On which even we can validate the input fields in module progams?

3. What are client dependant objects in abap/sap?

4. How data is stored in cluster table?

5. What is the difference between Upload and WS_Upload ?

6. Open datasets, Read datasets ( Reading and writing data to files)?

7.Have you set up a back ground job ? How to create a background job without a variant ?

8. Have you processed BDCs ?

9. How do you send files to the legacy systems from SAP and vice versa?

10. How does one know that the legacy files have come on to the SAP server you are working
on?

11. What kind of BDC programs are written ?

12. Update types in Call transaction method. What is the difference?

13. Call transaction method, how to capture the errors ?

14. Data conversion experience?

15. Experience with ABAP and Unix files?

16. From Excel to ABAP - Is batch mode possible ?

17. How to read files and process BDCs automatically?

18. Difference between /N and /BEND?

19. SM35 transaction . How to automate BDC ?

20. BDC vs Direct Loads( have you used direct loads on SAP tables )?

21. Recording Function?

22. What are logical databases?

23. What is Group by in Select statement?

24. Catch Command?

25. Explain Commit and Roll back?

26. Difference between Insert, Update and Modify?

27. What happens Update command is used without where clause ?

ABAP Interview Questions in SAP

1. How data is stored in cluster table?
Each field of cluster table behaves as tables which contains the no. of entries.2. What are client dependant objects in abap/sap?
SAP Script layout, text element, and some DDIC objects.

3. On which even we can validate the input fields in module progams?
In PAI (Write field statement on field you want to validate, if you want to validate group of fields put in chain and End chain statement.)

4. In selection screen I have three fields, plant mat no and material group. If I input plant how do I get the mat no and material group based on plant dynamically?
AT SELECTION-SCREEN ON VALUE-REQUEST FOR MATERIAL.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST' to get material and material group for the plant.

5. How do you get output from IDOC?
Data in IDOc is stored in segments, the output from Idoc is obtained by reading the data stored in its respective segments.

6. When top of the page event is triggered?
After excuteing first write statement in start-of-selection event.

7. Can we create field without data element and how?
In SE11 one option is available above the fields strip. Data element/ direct type.

8. How do we debug sapscript?
Go to SE71 give lay set name , go to utilities select debugger mode on.

9. Which transaction code can I used to analyze the performance of ABAP program.TCode AL21.
10. How can I copy a standard table to make my own z_table.
Go to transaction SE11. Then there is one option to copy table. Press that button. Enter the name of the standard table and in the Target table enter Z table name and press enter.


11. What is the use of 'outerjoin'
Ans. With the use of outer join you can join the tables even there is no entry in all the tables used in the view.
In case of inner join there should be an entry in al the tables use in the view.

12. When to use logical database?
Ans. Advantage of Logical databases:
less coding s required to retrieve data compared to normal internel tables.
Tables used LDB are in hierarchial structure.

13. What is the use of 'table index'?
Ans .Index is used for faster access of data base tables.

14. What is the use of 'FOR ALL ENTRIES'?
Ans. To avoid nested select statements we use SELECT FOR ALL ENTRIES statement.
If there r more than 10000 records SELECT FOR ALL ENTRIES is used.
Performance wise SELECT FOR ALL ENTRIES is better to use.

15. Can you set up background processing using CALL TRANSACTION?
Yes,Using No Screen Mode.

16. What are table buffers?
Table buffers reside locally on each application server in the system. The data of buffered tables can thus be accessed
directly from the buffer of the application server. This avoids the time-consuming process of accessing the database.

Buffering is useful if table needs to be accessed more no. of times in a program.


17. How do I set a flag for a field in any table?
Create a char field of length 1. for example field STAS-LKENZ is Deletion Indicator. It means that if the value in the field is 'X' then that record has been deleted.

18. Can I execute user exits? If yes, how?
Yes you can. after finding the user exit, you need to use, goto CMOD add ur user-exit to your project. Then activate the FM which you require. Now go into that function module there will be a Include program wit name ZX* . Double click on it, it will ask to create an object, answer it Yes and then write your code in it.
19. How do I find the output type of a table or a program?
Table TNAPR / NAST

Interview Question on BAPI, RFC, ABAP Objects, Tables in SAP

1) What is the difference between RFC and BAPI ?
What are subclasses and super classes in BAPI and also what are the methods in BAPI ?
2) Is it possible to connect SAP to Non-SAP systems to retrieve data using RFC alone with out using BAPI ?
3) What is the difference between Function module and BAPI ?
4) What are the types of tables?
5) What are pooled table ?
6) What are Hashed Tables ?
7) What are advantages of using ABAP objects?
8) What is the advantage of using ABAP objects in Reports ?1) BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects. You create business objects and those are then registered in your BOR (Business Object Repository) which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA. in this case u only specify the business object and its method from external system in BAPI there is no direct system call. while RFC are direct system call Some BAPIs provide basic functions and can be used for most SAP business object types. These BAPIs should be implemented the same for all business object types. Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs. Whenever possible, a standardized BAPI must be used in preference to an individual BAPI.

The following standardized BAPIs are provided:
Reading instances of SAP business objects
GetList ( ) With the BAPI GetList you can select a range of object key values, for example, company codes and material numbers.The BAPI GetList() is a class method.
GetDetail() With the BAPI GetDetail() the details of an instance of a business object type are retrieved and returned to the calling program. The instance is identified via its key. The BAPI GetDetail() is an instance method. BAPIs that can create, change or delete instances of a business object type

The following BAPIs of the same object type have to be programmed so that they can be called several times within one transaction. For example, if, after sales order 1 has been created, a second sales order 2 is created in the same transaction, the second BAPI call must not affect the consistency of the sales order 2. After completing the transaction with a COMMIT WORK, both the orders are saved consistently in the database.

Create( ) and CreateFromData! ( )
The BAPIs Create() and CreateFromData() create an instance of an SAP business object type, for example, a purchase order. These BAPIs are class methods.

Change( )
The BAPI Change() changes an existing instance of an SAP business object type, for example, a purchase order. The BAPI Change () is an instance method.

Delete( ) and Undelete( ) The BAPI Delete() deletes an instance of an SAP business object type from the database or sets a deletion flag.

The BAPI Undelete() removes a deletion flag. These BAPIs are instance methods.

Cancel ( ) Unlike the BAPI Delete(), the BAPI Cancel() cancels an instance of a business object type. The instance to be cancelled remains in the database and an additional instance is created and this is the one that is actually canceled. The Cancel() BAPI is an instance method.

Add ( ) and Remove ( ) The BAPI Add adds a subobject to an existing object inst! ance and the BAPI and Remove removes a subobject from an object instance. These BAPIs are instance methods.

2) No it is not possible to connect SAP to Non-SAP systems to retrieve data using RFC alone. RFC can acces the SAP from outside only through BAPI and same is for vice versa access.

3) Each Bapi Object has Interface, Key Fields, Attributes,Methods and Events.
Bapi Function Modules can be attached to these Bapi objects .Function module has a single bound functionality while a BAPI object can contain many functionalities

4) Transparent table, Pool table and cluster table are data dictionary table objects sorted table, indexed table and hash table are internal tables.

5) Table plools (pools) and table clusters (clusters) are special table types in the ABAP Dictionary. The data from several different tables can be stored together in a table pool or table cluster. Tables assigned to a table pool or table cluster are referred to as pooled tables or cluster tables.

A table in the database in which all records from the pooled tables assigned to the table pool are stored corresponds to a table pool.

The definition of a pool consists essentially of two key fields (Tabname and Varkey) and a long argument field (Vardata).
Table Clusters Several logical data records from different cluster tables can be stored together in one physical record in a table cluster.

A cluster key consists of a series of freely definable key fields and a field (Pageno) for distinguishing continuation records. A cluster also contains a long field (Vardata) that contains the contents of the data fields of the cluster tables for this key. If the data does not fit into the long field, continuation records are created. Control information on the structure of the data string is still written at the beginning of the Vardata field.

6) Hashed tables


This is the most appropriate type for any table where the main operation is key access. You cannot access a hashed table using its index. The response time for key access remains constant, regardless of the number of table entries. Like database tables, hashed tables always have a unique key. Hashed tables are useful if you want to construct and use an internal table which resembles a database table or for processing large amounts of data.

Sample Prog: This does nothing.
REPORT Z_1 .
tables: mara.
data: i type hashed table of mara with unique key matnr

7) and 8) ABAP objects are root for your program and reports.

RFC Vs BAPI

BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects. You create business objects and those are then registered in your BOR (Business Object Repository) which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA.

In this case you only specify the business object and its method from external system in BAPI there is no direct system call. while RFC are direct system call Some BAPIs provide basic functions and can be used for most SAP business object types. These BAPIs should be implemented the same for all business object types. Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs. Whenever possible, a standardized BAPI must be used in preference to an individual BAPI. It is not possible to connect SAP to Non-SAP systems to retrieve data using RFC alone. RFC can acces the SAP from outside only through BAPI and same is for vice versa access.

RFC is the protocol used by SAP for remote communication, that is, for communications between remote (independent) systems. RFC is used for communications between two independent SAP systems, or for communications between an SAP system and a non-SAP system, such as an external application. It can also be used for communications between modules on the same system. Using the RFC interfaces you can extend the functionality of R/3 applications from an external program.

What is the different btween clear and refresh?

There are 2 types of clear statements we can use:
Clear ITAB : This Statement will clear the Internal Table Header content.
To clear the Intertal Table Hearder as well Body we can use Clear ITAB [ ] statement.

Refresh will deletes the Internal Table content but still memory is not freed.


What is the pick statement do?

Pick Statemnt will captures the UserAction.
Eg: if SY-UCOMM = 'X'.
This type of user actions can be captured thru PICK Statement only.

What is the different between session method and call transaction method and suppose I used one method to transform the data next time suppose I want transform the data which method I can use.

There are many difference between Session method and Call Transaction.
Which method we have to use will be found based on Volume Of data and Accuracy of data given. Mainly Call Transaction used for small sets of data because in Call Transaction we have to Handle the Processing errors explicitly. We can do this by BDCMSGCOLL structure.
In Session method seperate session will crate for errors. Calll Transaction will update the Database fastly compare with Session Method.

What is single and upto one row different?

The Major difference between Select Single and Select UPTO 1 rows is The Usage Of Buffer for each.
Select Single will search for all the satisfied data and bring all that data into Buffer and later it will give to that data to the program.
Select UPTO 1 Rows will end the search after getting the 1st satisfied record and gives that record to the program.
Thus Select Single will take much processing time when compare with Select UPTO 1 rows.

What is the differences between selection screen and selection screen out?

The difference between Selection Screen and Selection Screen Output is we use the Selection Screen Output Event before the Selection Screen will displayed. Eg: Suppose if we want to disable some fields and enable some fields in the Selection Screen then we can code that in Section-Screen Output event.
Selection-Screen Event will trigger after section-screen is displayed and user action takes place on that.

Learning ABAP or SAP Application

This is important for you, as an ABAP/4 programmer, to know because these applications are all written entirely in ABAP/4. These are the applications you must understand to be a proficient developer in R/3.


For example, assume you know ABAP/4 and you have been asked to write a financial report summarizing debits and credits by fiscal year for each vendor in the enterprise. You might know how to code in ABAP, but would you know how to begin to solve such a request?Or perhaps your job entails new development in ABAP/4. You are asked to design a system that provides stock quotations to potential buyers. If you do not know the financial and sales and distribution systems, you won't know if you are creating something that already exists in R/3. Nor can you know if there are R/3 tables that already contain data similar to or identical to the type of data you want to store. These applications are highly integrated. A developer who takes the approach "I'll build my own tables and keep my own copies of the data," might soon find his data is redundant and must be routinely synchronized with the rest of the database. He has built an application that does not take advantage of the highly integrated nature of the R/3 environmentI only point this out because many developers who wish to become independent consultants think that learning ABAP/4 is all they need to develop in the R/3 system. It is certainly a great start, but it is only the start. The importance of training in a functional area can be overlooked or unknown to those interested in becoming proficient ABAP/4 consultants. Obviously, much of this learning can and will be done on the job. However, I hope to illustrate the point that learning the ABAP/4 language is only the beginning of a long journey into SAP. If you desire to be successful as an independent consultant, you will eventually need to acquire functional area knowledge

ABAP Objective Questions in SAP

1 Full Buffering would be appropriate for

A. Transaction Tables
B. Small Static tables
C. Internal Tables
D. Tables with generic Keys

2 What is the basic object of data Dictionary

A. Domains
B. Documentation
C. Data Models
D. Dynpro

3 Search help can not be attach to:
A. Domain
B. field of a table
C. check table
D. Type4 Sub query usually more efficient because:

A. data is filtered in the database
B. data is filtered on the network
C. data is filtered in the sapgui
D. data is filtered at the application server

5 It is better to buffer a table when
A. When a table is read infrequently
B. When a table is linked to check tables
C. When a table is read frequently and the data seldom changes
D. When a single record is to be picked up

6 In Inner and outter join
A. buffers are always used
B. Choice of buffer can be made to use
C. buffers are always bypassed
D. None of above

7 What is invalid attribute of a domain
A. Type
B. Fixed values
C. Length
D. Header

8 Data element is an example of
A. Physical Definition
B. Business Object
C. Semantic Domain
D. Technical Domain

9 What is true
A. A view contains data
B. Views can be buffered
C. Views can not be buffered
D. None of above

10 Command flushes the database buffers
A. $TAB
B. $RESET
C. $INIT
D. $FREE

11 How many lists can exist in parallel in an interactive reporting?
A. An Interactive report can have 1 basic list and up to 20 Secondary lists.
B. An Interactive report can have 1 basic list and up to 19 Secondary lists.
C. An Interactive report can have 1 basic list and up to 19 Secondary lists.
D. An Interactive report can have 1 basic list and up to 21 Secondary lists.

12. What are the check tables and value tables? (Multiple Answer)
A. Check table will be at field level checking.
B. Value table will be at domain level checking
C Value table will be at field level checking
D. Check table will be at domain level checking.

13.What are presentation and application servers in SAP? (Multiple Answer)

A. Application server is actually a program named Sapgui.exe. It is usually installed On a user’s workstation.

B. Application server is a set of executables that collectively interpret the ABAP/4 Programs and manage the input & output for them.

C. Presentation server is actually a program named Sapgui.exe. It is usually installed On a user’s workstation.

D. Presentation server is a set of executables that collectively interpret the ABAP/4 Programs and manage the input & output for them.

14.What is the difference between Synchronous and Asynchronous updates? (Multiple Answer)

A. In synchronous processing, the program waits: control returns to the program only when the task has been completed.

B. In asynchronous processing, the program does not wait: the system returns control after merely logging the request for execution.

C. In asynchronous processing, the program waits: control returns to the program only when the task has been completed.

D. In synchronous processing, the program does not wait: the system returns control after merely logging the request for execution.

15.What are the main events an interactive report have? (Multiple Answer)

A. Top-of-page during line selection.

B. At line-selection.

C. At user-command.

D. AT New

16.How many types of tables exist in data dictionary? (Multiple Answer)

A. Transparent tables
B. Internal Table
C. Pool tables
D. Hash Table
E. Cluster tables
F. Master Data Table

17. What is the difference between UPLOAD and WS_UPLOAD? (Multiple Answer)

A. WS_UPLOAD - File transfer with dialog from presentation server file to internal table. Data which is available in a file on the presentation server is transferred in an internal table. ASCII & Binary files can be transferred.

B. UPLOAD - To read data from the presentation server into an internal table without a user
dialog, use the function module WS_UPLOAD. The most important parameters are listed below.

C. UPLOAD - File transfer with dialog from presentation server file to internal table. Data which is available in a file on the presentation server is transferred in an internal table. ASCII & Binary files can be transferred.

D.WS_UPLOAD - To read data from the presentation server into an internal table without a user dialog, use the function module WS_UPLOAD. The most important parameters are listed below.

18.Is Session Method, Asynchronous or Synchronous?
A. Asynchronous
B. Synchronous
C. Synchronous and Asynchronous
D. None of above

19. What are the differences between SAP memory and ABAP memory? (Multiple Answer)

A. SAP Memory is a memory area in the internal session (roll area) of an ABAP program. Data within this area is retained within a sequence of program calls, allowing you to pass data between programs that call one another. It is also possible to pass data between sessions using SAP Memory.

B. ABAP Memory is a memory area to which all sessions within a SAPgui have access. You can use SAP memory either to pass data from one program to another within a session (as with ABAP memory) or to pass data from one session to another.

C.ABAP Memory is a memory area in the internal session (roll area) of an ABAP program. Data within this area is retained within a sequence of program calls, allowing you to pass data between programs that call one another. It is also possible to pass data between sessions using SAP Memory.

D.SAP Memory is a memory area to which all sessions within a SAPgui have access. You can use SAP memory either to pass data from one program to another within a session (as with ABAP memory) or to pass data from one session to another.

20. Which data type cannot be used to define parameters.

A. Type N
B. Type C
C. Type F
D. Type P


ANSWERS:-

1. B

2. A

3. D

4. A

5. C

6. C

7. D

8. C

9. B

10. A

11. A

12. A,B

13. C,B

14. A,B

15. A,B,C

16. A,C,E

17. C,D

18. B

19. C,D

20. C

QUESTION Database in SAP ABAP

Q) What is ASAP methodology?

Answer. ASAP stands for Accelerated SAP (ASAP). ASAP is a software tool used for project management in SAP implementations. Normally, any SAP implementation involves various phases. ASAP helps in guiding a SAP implementation project. Thus from the initial stages to the "Go Live" stage, ASAP helps in streamlining the entire SAP implementation process.

One of the most asked question in a SAP interview is whether it is possible to have a self defined transaction code in SAP. The answer to the question is simple and if given tactfully can impress the interviewers.

Q) In SAP, is it possible to have a self-defined transaction code?

Answer: To start with, yes, self-defined reports, transactions or functions are possible within SAP. There might be numerous reasons why a company might go in for customized transaction codes or for that matter reports. To cater to this demand, SAP allows creation of user-defined transaction codes.Creating a transaction code allows the user to speed up access to specific reports/programs as the user no longer needs to use transaction code [SA38]. Thus, instead of using T-Code SA38, then entering the program name or report name and pressing execute, the same can be done directly through a pre-defined T-Code. The user can then simply use a transaction code, which will automatically open the program. In SAP customized T-codes can be created through transaction code [SE93].

Q) What is ABAP data dictionary?
Answer. A data dictionary is central source information for data in a data management system. Its function is creation and management of data definitions.The data dictionary objects are automatically created in the database.

Q) How many types of tables are there in SAP?

Answer. There are three types of tables

1) Transparent tables
2) Pooled tables
3) Cluster tables

Table pools (pools) and table clusters (clusters) are special table types in the ABAP Dictionary. The data from several different tables can be stored together in a table pool or table cluster. Tables assigned to a table pool or table cluster are referred to as pooled tables or cluster tables.

A table pool or table cluster should be used exclusively for storing internal control information (screen sequences, program parameters, temporary data, and continuous texts such as documentation). Data of commercial relevance is usually stored in transparent tables.

Transparent Table: Exists with the same structure both in dictionary as well as in database exactly with the same data and fields. Pooled Table: Pooled tables are logical tables that must be assigned to a table pool when they are defined. Pooled tables are used to store control data. Several pooled tables can be combined in a table pool. The data of these pooled tables are then sorted in a common table in the database.
Cluster Table: Cluster tables are logical tables that must be assigned to a table cluster when they are defined. Cluster tables can be used to store control data. They can also be used to store temporary data or texts, such as documentation.

A transparent table is a table that stores data directly. You can read these tables directly on the database from outside SAP with for instance an SQL statement. I.E you can use Native SQL also to read the tables along with Open SQL. Transparent table is a one to one relation table i.e. When you create one transparent table then exactly same table will create in data base and if is basically used to store transaction data.

A clustered and a pooled table cannot be read from outside SAP because certain data are clustered and pooled in one field. I.E they must be read using OPEN SQL only. You cannot read them using native SQL.

You can create secondary indexes on transparent tables where as secondary indexes can’t be created on pooled and cluster tables.

Q) What is a table? What is the difference between structure and table?

Answer: Table consists of rows and columns where we store the real world data. Main difference between structure and Table –

When we create table and activate it, it will be created both in ABAP dictionary and under lying physical database. Table can hold data. Where as structure can not hold data. It is created only in the ABAP dictionary. We can declare objects that are of structure type and make use of them to hold data in run time.


Q)Have you ever created custom database tables (Z tables) in any project?

Answer: This is the most common question being asked in any interview. For this you can say YES. I will give you a real time example. There is a report program. You want to maintain the log of execution for that report. That means you want to maintain user details who has executed the report. When they have executed and what time?

For that you will create a custom table with fields like user id, date, time etc. When ever a particular report is executed, the custom table is updated with the details mentioned above. This is the simple scenario. Like this, we can create custom tables to suit our requirements.

Q)What is a logical database?


Answer: This is one of the most commonly asked questions in a SAP technical interview. A logical database is simply an ABAP program that combines the contents of database tables. A logical database is linked to an ABAP report program as one of the program attributes.


It supplies the ABAP report program with a set of hierarchically structured table entries derived from different database tables. This saves the developer from having to program the data retrieval. The logical database term covers both the program and the dataset.


Q). In SAP how can a user view a list of all changed entries in customizing tables?

Answer: For viewing changed entries in a user has to turn on table logging, once this is done, one can view each changed entry to the customizing table. SAP shows information by system, date, time, user, the old entry, and the new entry; a list of all prior modified data is also shown by the system.
Question Database



Q1) what is a data dictionary?

A data dictionary is a centralized storage location for information about the data that is stored in a database. This information is often called “metadata” (data about data).

A data dictionary provides answers to questions


such as:


* What data is contained in the database?

* What are the attributes of this data: name, length, format, etc.?

* What relationships exist among different data objects?



Q2) what is SAP’s data dictionary?


SAP’s data dictionary is called the ABAP Dictionary.


The ABAP Dictionary:


– Enforces data integrity

– Manages data definitions without redundancy

– Is tightly integrated with the rest of the ABAP Workbench



Q3) what is database utility?


The database utility provides the interface between the ABAP Dictionary and the underlying database management system (DBMS). It supports the creation of tables and secondary indices in the database both online and in the background.

Whenever you make a change to a dictionary object that affects the underlying database, the database utility is activated. Usually it works silently behind the scenes, but occasionally the database utility will prompt you for information. This occurs when an error is encountered or when existing data must be converted.

The database utility provides the interface to the DBMS by automatically generating the Data Definition Language (DDL) that the DBMS understands.



Q4) what is a data element?


A data element provides a meaningful description for a field. You will hear it called a semantic domain. The data element description appears beside a field in a table definition. These descriptions are language-dependent.

Question Database



Q5) what is a domain?


A domain specifies the technical characteristics and the allowed values of a field.

Domains are linked to fields via data elements. In other words, fields are assigned to data elements, and data elements are assigned to domains. You cannot directly assign fields to domains.

The technical characteristics of a field are the field’s type and length. These are also referred to as the field’s format.

The allowed values of a field define what is acceptable input for that field. These may be listed explicitly or may be specified by reference to a value table.

Domains can exist independently in the ABAP Dictionary.

Just as multiple fields may be assigned to the same data element, multiple data elements may be assigned to the same domain.

As with data elements, pre-defined domains exist in the system and are available for your use. If an SAP R/3-supplied domain matches the characteristics you require, use the pre-defined domain. If you wish to change the domain’s allowed values, however, you must create your own domain.

In addition to the characteristics listed previously, domains can also specify a fields output characteristics, such as output length and whether or not lowercase letters are permitted for that domain.

By defining valid values for a domain, automatic validation is provided for any fields that point to that domain. This includes validation at the ABAP Dictionary level (if a program tries to insert invalid data, an error will occur) as well as at the screen level (users will not be permitted to enter invalid data).

Additionally, users can obtain a list of possible entries (for fields pointing to domains with allowed values) by pressing function key F4 .




Q6) what is a foreign key?

A foreign key is a field (or combination of fields) that represents the primary key of another table.



Foreign keys are used for:

– Maintaining data integrity

– Providing additional texts in the online help system

– Creating other dictionary objects that are defined over multiple tables
(such as views)



Q7) what is a value table?

The table containing the set of allowed values attached to a domain.



Q8) what is a check table?

The table that is referenced by a foreign key. A check table is either identical to a value table, or is another table containing a subset of the records in a value table.



Q9) what is a foreign key table?

The table containing fields that are the primary key of the other table. The foreign key table is also known own as the “dependent” or “child” table.

When creating foreign key relationships, you should always specify the cardinality of that relationship. Here is a reminder of the possible values for each side of the n : m notation that SAP uses to specify cardinality.


Q10) How many table types are there in SAP ABAP dictionary?


There are 5 different table types in the SAP ABAP Dictionary:


* Transparent tables

* Structures

* Pool tables

* Cluster tables

* Views
11) How many types of table buffering are there?


• Buffering types:

– Single record: Only records actually being processed are moved into the buffer. This type of buffering preserves buffer space but requires more database hits in order to load the table. Recommended for large tables when only a few records need to be accessed.



– Generic: A subset of the table records is loaded based on part of the primary key. Recommended if only certain “generic” areas of the table will be needed.


– Full: Results in either all of the table or none of it being loaded into the buffer. Recommended for a) tables up to 30 K in size, b) larger tables where access is needed to many records, and c) tables against which attempts to access data will frequently yield a “no record found” result.



12) What is an index? What is the use of an index?

An index serves as a sorted copy of the table reduced to specific fields, with a pointer to the remaining fields.

Indexes accelerate the reading of tables when the system looks for records satisfying specific search criteria.

The system determines the most efficient index by which to select data for the specific request.



13) What is Database Utility?


• The Database (DB) Utility is a tool used in SAP to serve as a interface between the database management software (i.e., ORACLE, INFORMIX, DB2, INGRES, etc.) and the ABAP Dictionary.


It is used to:


– Convert data (i.e., change field lengths and data types, etc.)

– Activate objects in the ABAP Dictionary

– Create tables and indices

– Perform all standard table operations in the database that were entered in the ABAP Dictionary

• The DB Utility automatically writes the SQL commands necessary to create, change and delete tables and indexes in the physical database, and records the tables in the ABAP Dictionary.


• As the DB Utility is operating, a log file gets created which contains information on whether or not the conversion was successful and the point of failure during the conversion if it was not successful.


• The DB Utility can be run either online or in the background.


• You can also manually run the DB Utility from any ABAP Dictionary screen under the UTILITIES menu or transaction SE14.


14) In how many ways we can modify SAP tables?


• Groups of fields or individual fields can be added to SAP delivered tables using append structures, or customizing includes:


Ø Customizing includes are provided in SAP tables and structures to allow you to add fields to these structures/tables without modifying the tables themselves.


Ø Append structures allow you to add fields to SAP-provided structures and transparent tables that were not provided for in the standard version.


Customizing includes are supplied empty by SAP and are filled in by the customer with the help of special customizing transactions. These includes make it possible to extend (add fields to) tables without modifying the tables themselves and without the risk of additions being overwritten during a Release Upgrade.


· Names of customizing includes start with ‘CI_’. If a table does not contain a customizing include, you can still make additions by creating an Append structure. You cannot add your own ‘.INCLUDE CI_’ to an SAP table.


Append structures are intended for additions not provided for in the standard version of SAP tables via customizing includes. They are to be used with SAP transparent tables or structures, not with customer tables.


An Append structure is a structure assigned to exactly one table. However, a single table can have a number of append structures. It is recommended to use only one append structure in a table.


When an append structure is activated, its assigned table is also activated with all of the append structure fields. When a table including an append structure is activated, the append structure fields are found and added to the table.


Append structures cannot be deleted.


Append structures cannot be used with tables containing fields of data type VARC, LCHR, or LRAW because these data types must be the last field in a table.


Use the Append structures … push-button in the table display screen to add fields to SAP tables.


Fields contained in an Append structure are added to the SAP tables when an upgrade is performed and the appropriate tables are activated.


Question Database


Q) What are Reports and how do you setup Reports?

A report program reads and analyzes data from one or more database tables without modifying database. Usually, the result of such a program is in the form of list which is output to the screen or sent to a printer.


Q) What are the different types of programs?

I Include Program
M Module Pool

F Function Modules
S External Subroutines

1 On line program

Q) What are the events in report programming Explain?

The following events occur at runtime of a typical report program which uses logical databases. INITIALIZATION Point before the selection screen is displayed When you start a program in which a selection screen is defined (either in the program itself or logical database program), the system normally processes the selection screen first. If you want to execute a processing block before the selection screen is processed, you can assign it to the keyword INITIALIZATION.

AT SELECTION-SCREEN Point after processing user input on the selection screen while the selection screen is still active.

The event keyword AT SELECTION-SCREEN provides you with several possibilities to carry out processing blocks while the system is processing the selection screen.

START-OF-SELECTION point after processing the selection screen

The event START-OF-SELECTION gives you the possibility of creating a processing block after processing the selection screen and before accessing database tables using a logical database. You can use the processing block, for example, to set the values of internal fields or to write informational statements onto the output screen.


At the START-OF-SELECTION event, also all statements are processed that are not attached to an event keyword except those that are written behind a FORM-ENDFORM block.

GET table point at which the logical database offers a line of the database table ..table.. The most important event for report programs with an attached logical database is the moment at which the logical database program has read a line from a database table. To start a processing block at this event, use the GET statement as follows.

syntax GET ..table.. [fields ..List..]
after this statement, you can work with the current line of the database table ..table... The data is provided in the table work area ..table..

GET ..table.. LATE point after processing all tables which are hierarchically inferior to a specific data base table, use the event keyword GET as follows

GET ..table.. LATE [FIELDS ..list..]

In analogy to report programs that use only SELECT statements, the processing block of a GET ..table.. LATE statement would appear directly before the ENDSELECT statement in the SELECT loop for the database table ..table..

END-OF-SELECTION point after processing all the lines offered by a logical database.

To define a processing block after the system has read and processed all database tables of a logical database, use the keyword END-OF-SELECTION.

QUESTION DATABASE

The following events occur during the processing of the output list of a report program:

Event keyword Event

TOP-OF-PAGE Point during list Processing when a new page is started
END-OF-PAGE Point during list Processing when a Page Is ended

The following events occur during the display of the output list of a report program:
Event key work Event


AT LINE-SELECTION Point at which the user Selects a Line


AT USER-COMMAND Point at which the user Presses a Function key or enters a command in the
command Field.

AT PF ..nn.. Point at which the User presses the Function key with the function code PF With the selection screen, ABAP/4 offers an interactive element also for report programs. You can define a selection screen without having to bother about all the details required in dialog programming.

The selection screen is always processed directly after a report program is started. The user can enter field values and selection criteria on this screen.

The main purpose of the selection screen is to enable the user to control the database selections of the report program. If a report program is started from another ABAP/4 program with the SUBMIT statement (see Calling Reports), the selection screen objects also serve as a data interface, With a selection screen defined in the report program, you can enable the user to


Assign values to variables with the PARAMETERS statement

Determine selection criteria with the SELECT-OPTIONS statement

Q)How do you read selected lines of database table into an internal table in packages of predefined size.


SELECT * FROM SPGLI INTO TABLE ITAB PACKAGE SIZE ..N..

Where ‘n’ is variable.

Q)Name the WILDCARD characters which are used for comparisons with character strings & numeric

strings.‘%’ and ‘-‘



Q)How to specify a client for database table processing.

TABLES SPFLI .


SELECT * FROM SPFLI CLIENT SPECIFIED
WHERE MANDT BETWEEN ‘001’ AND ‘003’ .
. . .
ENDSELECT.

Q) Activation – During activation, the runtime object of aggregate object or tables is created. The runtime object is buffered so that the application program can access it quickly. Runtime object has information about the following objects of table

- domain – data elements – field definition – table definition


Q) Lock Mechanism – prevents a new database operation being started an existing one has been correctly completed. When conversion is done, lock is created automatically and released only when conversion is successful.

Clearing of locks

- restart adjustment – attempt is made to continue conversion at the point of termination cancel adjustment - lock entry is simply deleted from table.


Q) Version Management functions –


- Canceling changes - reset revised version to active version

- Storing changes - active version will be temporarily stored in version


Q)Switching changes - switch between active and revised versions Version catalog - list of all existing versions of an object

Q)Revised version - produced when we edit an existing object


- active version - produced when we activate an object

- Temporary version - produced when we copy the active version temporarily to the database with store version functions

- Historical versions - created when 1. Correctuib us created 2 cirrectuib us Released

Q)Table Buffering : Possible buffering types


- full buffering - either, whole table or none of the table is located in the buffer (Tables up to 30 kb done in client dependent fully buffered tables)

- Generic buffering - generic areas of the table are fully buffered.

- Generic key - left justified section of primary key of a table.

- Generic area - all records for which fields of generic key correspond

Single record buffering - records actually being accessed are loaded to buffers, large records where few records are accessed.



Q)Types of internal tables?Internal Tables ? Types ?


STANDARD table

Key access to a standard table uses a linear search. This means that the time required for a search is in linear relation to the number of table entries.

You should use inde operations to access standard tables.

SORTED table

Defines the table as one that is always saved correctly sorted.

Key access to a sorted table uses a binary key. If the key is not unique, the system takes the entry with the lowest index. The runtime required for key access is logarithmically related to the number of table entries.

HASHED table

Defines the table as one that is managed with an internal hash procedure

You can only access a hashed table using the generic key operations or other generic operations (SORT, LOOP, AND SO ON). Explicit or implicit index operations (such as LOOP . . . FROM oe INSERT itab within a LOOP) are not allowed.

INDEX table

A table that can be accessed using an index.

Index table is only used to specify the type of generic parameters in a FORM or FUNCTION. That means that you can’t create a table of type INDEX.

Standar tables and sorted tables are index tables.

Syntax :

DATA itab TYPE table type of line type [WITH UNIQUE/NON-UNIQUE KEY ] [Initial size n] [WITH HEADER LINE]

QUESTION DATABASE


Q) 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. 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.

Q)Describe the functions of the debugger screen.


- Single step(F5) - Use this option to step through the program statement by statement. This allows you to branch into subroutines and function modules, and to execute these routines step by step as well. Once a subroutine or function module has been processed, control returns to the statement following the CALL FUNCTION or PERFORM statement.


- Execute(F6) – Use this option to process a program line by line. All of the statements on the current line are processed in a single step. If you are positioned on a line that calls a subroutine and you choose Execute, the Debugger processes the whole subroutine and then moves on to the line following the subroutine call. This allows you to jump through the statements within the subroutine.


- Return (F7) - The Debugger returns from a routine to the point at which control returns to the main program. Use this option to return from a subroutine function module, or called program to the calling program.


- Continue (F8) – Use this option to process the program up to the next dynamic or static breakpoint or up to the cursor position. If there are no more breakpoints in the program and no cursor has been set, the system exits debugging mode and executes the rest of the program normally.


- Tables – Display the contents of internal tables.

Q)Problem : How to run a program in background?

Solution : Execute the Report a

In the selection screen: After filling the screen fields press F9

A screen appears requesting U to print the Background Parameters

*Enter the output device(Eg HPLJ / SAP2 etc)

*In the spool options uncheck Print immediately, uncheck delete after output, and new spool request.

Press enter.

Another screen appears with heading start time. You can press start immediately, then save. Now the Background job is scheduled for the given program.

Q)To View the status of background Job, The transaction code is SM37.

Execute from the resulting screen. A Job overview --> From the Job list select U’r program and select spool from the application tool bar a output Controller:List of Spool Requests a Select U’ r Spool request and click display icon from the overview screen. You can see the List.


Caution : See to that the list with does not exceed 255 columns. It it exceeds the extra columns will be truncated in Background.

Q)What are presentation and application servers in SAP?

A presentation server is actually a program named SAP GUI. Ex. It is usually installed on a user’s workstat on. Application server is a set of executables that collectively interpret the ABAP/4 programs and manage the input & output for them.

Q)In an ABAP/4 program how do you access data that exists on a presentation server v/s on an application server?

For presentation server use UPLOAD or WS_UPLOAD function modules.
For application server use OPEN DATASET, READ DATASET and CLOSE DATASET commands.

Q)Describe the syntax and function of the AUTHORITY CHECK command?

Ans :- AUTHORITY - CHECK OBJECT ID FIELD
ID FIELD

IF SY – SUBRC NE O .
The AUTHORITY – CHECK checks whether a user has the appropriate authorization to execute a particular activity.

Q) Explain the EXPORT and IMPORT commands? How can you pass more than one group of data by using IMPORT commands?

EXPORT :-

To read data objects from an ABAP program into ABAP memory, use the following statement :

Syntax:

EXPORT [FROM ] [FROM ] . . . TO MEMORY ID .

This statement stores the data objects specified in the list as a cluster in memory. If you do not use the option FROM , the data object is saved under its own name. if you use the FROM option, the data object is saved under the name . the name identifies the cluster in memory. It ma be up to 32 characters long.

The EXPORT statement always completely overwrites the contents of any existing data cluster with the same name .

IMPORT :-
To read data objects from ABAP memory into an ABAP program, use the following statement :

Syntax:

IMPORT [TO ] [TO ] . . . FROM MEMORY ID .

This statement reads the data objects specified in the list from a cluster in memory. If you do not use the TO option, the data object in memory is assigned to the data object in the program with the same name. if you do use the option, the data object is read from memory into the field . the name identifies the cluster in memory. It may be up to 32 characters king.

You do not have to read all of the objects stored under a particular name . You can restrict the number of objects by specifying their names. If the memory does not contain any objects under the name , SY-SUBRC is set to 4. if, on the other hand, there is a data cluster in memory with the name , SY-SUBRC is always 0, regardless of whether it contained the data object . if the cluster does not contain the data object, the target field remains unchanged.

Q)Explain the READ LINE and MODIFY LINE commands.

READ LINE :- use the statements READ LINE and READ CURRENT LINE to read data from the lines of existing list levels. These statements are closely connected to the HIDE technique.

MODIFY LINE :- To modify the lines of a completed list from within the program, use the MODIFY LINE statement.


Q)What are the differences between calling a program, transaction ‘with return’ and ‘without return’ and how can each be accomplished?


Program

-SUBMIT | {field>) [AND RETURN] []

if you use AND RETURN, the system stores the data of the calling executable program and returns to the calling after processing the called program. The system resumes executing the calling program at the statement following the call.

If you omit the AND RETURN addition, all data and list levels of the calling program (the entire internal session) are deleted. After the called executable program has finished, control returns to the level from which you started the calling program.

Transaction


-CALL TRANSACTION [AND SKIP FIRST SCREEN] [USING ].

This statement saves the data of the calling program, and starts transaction . At the end of the transaction, the system returns to the statement following the call in the calling report.


-LEAVE TO TRANSACTION [AND SKIP FIRST SCREEN].
This statement ends the calling program and starts transaction . This deletes the call stack (internal sessions) of all previous programs. At the end of the transaction, the system returns to the area menu from which the original program in the call stack was started.