23 January 2014



SAP Technical Interview questions

Q. What are the methods of interfacing to SAP ?

Q. What is an IDOC ?

Q.What is partner profile ?

Q. When would you use a BAPI rather than an IDOC ?

Q. How would you control changes to standard SAP objects ?

Q. Explain Data and List methods in LIS ?

Q. Select single vs select up to one rows ?

Q. Explain V2 updates ?

Q. Text on an output document. How do you find its source ?

Q. Explain the 4 events in flow logic ?

Q. What methods can you use to make a report interactive ?

Q. Where do you find info on new developments in SAP ?

Q. Are you a member of any professional organisations ?

Q. How long do you struggle with a problem before you ask for help ?

Q. What is the purpose of (a) unit testing (b) integration testing ?

Q. What is the role of a functional analyst? How many Analysts on your project ?

Q. What is the role of the Basis team? How many Basis people running your implementation ?

Q. Who signs off that a program is performing as specified ?

Q. What action do you take when a program is taking longer than expected to develop ?

Q. Tell me a little bit about performance in ABAP. How do you ensure that your programs run efficiently ?

Project experience

Q. Tell me about some of the projects you have worked on ?

Q. What roles have you played on these different projects ?

Q. Have you taken on any project management or project/team lead roles ?

Q. What type of position are you looking for ?

Q. What type of programs have you developed ?

Q. What functional areas have you written programs for? Do you consider yourself an expert developer for any of the functional areas you have written programs for ?.

Q. Have you done much of your own analysis work ? Written specs ?

Q. What was the most complicated program you’ve developed and why ?

Q. What is the most challenging thing you find when developing programs ?

Q. Have you given any formal training in your SAP career ? Mentoring ?

Q. Have you used any QA standards or been required to go through any QA evaluations for custom programs you have written ?

Q. What, if any, project methodologies have you used ?

Q. Who in the organization do you speak to most frequently on a day-to-day basis? i.e.: end users, analysts, team leads, managers.


Q. In your opinion what is the most common problem encountered after transporting dictionary objects?

Q. Discuss ‘development classes’.

Q. How many they use in a project etc...

Q. If only used $TMP, no go live experience

Q. Discuss the differences between BDC and ‘Call transaction’.

Q. Synch vs. Asynch

Q. Error log vs. no error log

Q. Discuss the pros and cons of secondary indices.

Q. Processing overhead vs. disk space

Q. Discuss a ‘logical unit of work’.

Q. What are the differences between Open SQL and Native SQL ?

Q. SAP only use Open SQL

Q. Discuss indices and matchcodes.

Q. What is difference between static and dynamic field symbols ?

EDI Related

Q. Which EDI transactions have you done ? Inbound/Outbound ?

Q. Which translator did you use ?

Q. Were you involved with non-SAP mapping ?

Q. Which versions of SAP did you implement EDI for ?

Q. Were you involved with the analysis of the transactions ?

Q. Were you the sole SAP EDI person on the project ?

Q. Did you do the ABAP portion of the EDI implementation ?

Q. Were you involved with the production support end of EDI once it was implemented ?

Q. How did you train the users in EDI support both functionally and technically ?

Q. Did you do any custom WF programming or setup (aside from error handling) ?

ALE Related

Q. Which ALE transactions have you done ? Inbound/Outbound ?

Q. Did you implement change pointers ?

Q. Any custom ABAP work necessary ?

Q. Any custom WF ?

Q. SAP to SAP or external ?

18 January 2014



1. General System Information

• How many SAP instances are there (Development, QA, PRD, Training, etc) ?

• What SAP versions are in use for each instance? (e.g. 3.1I etc.)

• What release of SAP Kernel for each instance ?

• What’s the SAP Hot Package level for each instance ?

• What OS (type and version) is employed per instance ?

• What RDBMS (type and version) is employed ? 


2. System Architecture
• What is the system landscape currently (including client strategy) ? Please provide a diagram of all systems and clients and transport routes between the different systems.

• Is any hardware available for the upgrade? I.e. to copy the Dev and Production systems or just a copy of Production ? 

• Which Add-ons are employed (faxing, printing, ITS, barcoding, taxation, scheduling, etc.) ?

• Responsibility and tools used for SAPGUI rollout ? How many users ?


3. System Administration

• Who is responsible for maintaining Authorizations ?

• Was the Profile Generator used to create and develop the Profiles ?

• Is a Change Management Procedure in place to manage and test transports ? 

• Are any other tools other than SAP used to manage transports? If so, please provide details.


4. Backup and Recovery

• Is a tested backup and recovery process in place ?


5. Availability Requirements and business cycles

• What are the availability requirements per instance ?

• What is the longest period of time that the business can operate without the SAP system ?

• When are the peak processing times ? 

• When is financial closing ?


6. Application Infrastructure

• How many interfaces are in use ?

• How many modifications were made and complexity ?

• How many user exits were used and complexity ?

• Are any additional languages used ? List if Yes.

• Which SAP modules are used (including Industry solutions) ? Please also provide version information.

• Are any test scripts available ? How current are the test scripts ?   



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 ?

53. What specific statements do you using when writing a drill down report ?

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

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

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

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

58. What is the structure of a BDC sessions.

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 ?

61. What do you do with errors in BDC batch sessions ?

62. How do you set up background jobs in SAP ? What are the steps ? What are the event driven batch jobs ?

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 ?

66. What is a currency factoring technique ?

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

68. What is SAP script and layout set ?

69. What are the ABAP commands that link to a layout set ?

70. What is output determination ?

71. What are IDOCs ?

72. What are screen painter? menu painter ? Gui status ? ..etc.

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

74. Overall how do you write transaction programs in SAP ?

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 page down pageup in step loops ?

77. Is ABAP a GUI language ?

78. Normally how many and what files get created when a transaction program is written ? What is the XXXXXTOP program ?

79. What are the include programs ?

80. Can you call a subroutine of one program from another program ?

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 ?

84. How do you find if a logical database exists for your program requrements ?

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 ?

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

87. What are the different modules of SAP ?

88. What is IMG in SAP ?

89. How do you get help in ABAP ?

90. What are different ABAP editors? What are the differences ?

91. What are the different elements in layout sets ?

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

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 ?

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

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

98. What are presentation and application servers in SAP ?

99. In an ABAP program how do you access data that exists on a presentation server vs on an application server ?

100. What are different data types in ABAP ?



1. What is the typical structure of an ABAP program ?

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

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

4. What is a batch input session ?

5. What is the alternative to batch input session ?

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

7. What is the difference between a pool table and a transparent table and how they are stored at the database level.

8. What are the problems in processing batch input sessions ? How is batch input process different from processing on line ?

9. What do you define in the domain and data element.

10. What are the different types of data dictionary objects ?

11. How many types of tables exists and what are they in data dictionary ?

12. What is the step by step process to create a table in data dictionary ?

13. Can a transparent table exist in data dictionary but not in the data base physically ?

14. What are the domains and data elements ?

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

16. What is the advantage of structures ? How do you use them in the ABAP programs ?

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

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

19. What is open sql vs native sql ?

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

21. What is the meaning of ABAP editor integrated with ABAP data dictionary ?

22. What are the events in ABAP language ?

23. What is an interactive report ? What is the obvious diff of such report compared with classical type reports ?

24. What is a drill down report ?

25. How do you write a function module in SAP? describe.

26. What are the exceptions in function module ?

27. What is a function group ?

28. How are the date abd time field values stored in SAP ?

29. What are the fields in a BDC_Tab Table.

30. Name a few data dictionary objects ?

31. What happens when a table is activated in DD ?

32. What is a check table and what is a value table ?

33. What are match codes? describe ?

34. What transactions do you use for data analysis ?

35. What is table maintenance generator ?

36. What are ranges ? What are number ranges ?

37. What are select options and what is the diff from parameters ?

38. How do you validate the selection criteria of a report ? And how do you display initial values in a selection screen ?

39. What are selection texts ?

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

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 ?

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

43. Are programs client dependent ?

44. Name a few system global variables you can use in ABAP programs ?

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 ?

46. How do you take care of performance issues in your ABAP programs ?

47. What are datasets ?

48. How to find the return code of a stmt in ABAP programs ? 

49. What are interface/conversion programs in SAP ?

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



71. Brief about Testing of programs

72. How do u move on to the next screen in interactive reporting ?

73. Create any functions ? How to go about it.

74. Advanced topics ?

75. Function modules used in f4 help.

76. Work most on which module : Name a few tables.

77. System fields used , system table

78. From a table how do u find whether a material is used in another material BOM?

79. SAPscript layout used.

80. How u used logical database ? How is data transferred to program ? Corresponding statement in LDB

81. How do u suppress fields on selection screen generated by LDB ?

82. Can there be more than 1 main window ?

83. Global and local data in function modules.

84. What are the differences between sap memory and abap memory

85 What are differences between At selection-screen and at selection-screen output

86. What are the events ?

87. what are the interactive events

88. What is Hide ?

89. What is the difference between occurs 1 and occurs 2?

90. What is the difference between Free and Refresh ?

91. What are elements ?

92. Can we have more than one selection-screen and how ?

93. How to declare select-option as a parameter ?

94. How can u write programmatically value help to a field without using search help and match codes ?

95. What is RFC ?

96. How to set destination ?

97. What are the function module types ?

98. What are tables ?

99. what are client-dependant tables and independent tables ?

100. how to distinguish them ?

101. what is the use of Table maintanance allowed ?

102. What are the domains ?

103 What are the check tables and value tables ?

104 What is the difference between table and structures ?

105 How to declare one internal table with out header line without using structures ?

106. what are lock objects ?

107. What are datasets ? what are the different syntaxes ?

108. What is the differences between we_upload and upload ?

109. What is the difference between open_form and close_form

110. What are the page windows ? How many main windows will be there in a page window ?

111. How to include Logo in your layout ?

112. How to debugg a script ?

113. Tell me different standard layouts which we use ?

114. sapscripts and abap programs are client dependent or not ? why ?

115. what are the different internal tables ? explain them ?

116. what is runtime analysis ?

117. what is the transaction code for Table maintenance ?

118. what is the difference between sum and collect ?

119. what are session method and call transaction method and explain about them ?

120. If you have 10000 records in your file, which method you use in BDC ?

130. what are different modes and explain them ?

131. what are control events in a loop ?

132. what are the events we use in dialog programming? and explain them ?

133. what are the differences between se01 , se09 and se10 ?

134. what is the inside concept in select-options ?

135. what is client ?

136. what is get cursor field ?

137. what is read line ?

138. What is difference between BDC and Call Transaction ?

139. Setting up a BDC program where you find information from ?

140. What has to be done to the packed fields before submitting to a BDC session.



1. What is sap R/3 ?

2. What are the programming standards followed ?

3. What are the contents in technical specifications ?

4. What is an instance ?

5. How to take care of performance in ABAP Development ?

6. What is Function group ? Difference between function group and function module ?

7. What is the difference between 'Select single * ' and 'Select upto 1 rows' ?

8. What Function does data dictionary perform ?

9. Difference between domain and data element ? what are aggregate object ?

10. what is view ? Different types of view ? explain ?

11. Can u print decimals in type n ? what is difference between float and packed data type ?

12. What is step-loop ? explain all the steps ?

13. What is the initial value and maximum length of all data type ?

14. What are the ways to find out the tables used in the program ?

15. Can you have two detail lists from the basic list at the same time ? if yes how and if no why ?

16. What are the different functions used in sapscript ? What are the parameters used in function ?

17. What is sequence of event triggered in report ?

18. What are standard layout sets in the SAP Script ?

19. What function module upload data from application server ?

20. What are the various types of selection screen event ?

21. What do you know about a client ?

22. What are the system fields ? Explain ?

23. What is sapscript ? what is the purpose of sapscript ? difference between sapscript and report ?

24. what is the use of occurs in internal table ? can u change occurs value in program ?

25. Difference between sy-tabix and sy-index.? where its used ? can u check sy-subrc after perform ?

26. Difference between upload And ws_upload ?

27. Why did u switch to SAP ?

28. What is a Logical Database ?

29. What are the events used for Logical Database ?

30. What is the difference between Get and Get Late ?

31. What are the Types Of Internal Tables ?

32. What are the events used in ABAP in the order of execution ?

33. What are Interactive Reports ?

34. What are the commands used for interactive reports ?

35. What are the system fields u have worked with ? Explain ?

36. What is the difference between Primary key and Unique Key ?

37. What are the types of Internal Tables ?

38. If u are using Logical Databases how will u modify the selection-screen elements ?

39. What is an RFC ?

40. If u are using RFC and passing values to a remote system how does it work ?

41. What are the events in Screen Programming ?

42. What is the significance of HIDE ?

43. Where do u code the HIDE statement ?

44. Types of BDC's ?

45. Advantages & Disadvantages of different types of BDC's ?

46. What are the events used in Interactive Reports.

47. What is an RDBMS ?

48. What standards u use to follow while coding ABAP programs ?

49. What will you code in START-OF-SELECTION & END-OF-SELECTON & why ?

50. What are joins and different types joins ?

51. Which is the default join ?

52. How do u display a data in a Detail List ?

53. What are the types of windows in SAPSCRIPT ?

54. What are the function modules used in a SAPSCRIPT driver program ?

55. What are Extracts ?

56. How would u go about improving the performance of a Program which selects data from MSEG & MKPF ?

57. How does System work in case of a Interactive Report ?

58. what is LUW ?

59. Different types of LUWs. What r they.

60. What is First event triggered in program ?

61. What are various Joins ? What is right outer join ?

62. How do u find out whether a file exits on the presentation server ? -   eps_get_directory_listing for directory

63.  what are the difference between call screen and leave screen ?

64. Systems fields used - normal + interactive

65. Logo in SAP script

66. If internal table used in for all entries in empty then what happens

67. If I forgot some command in sapscript eg: suppress zero display - How to do find it ?

68. Have to write a BDC - how do u go about it ?

69. What is Performance tuning

70. Define Documentation

16 January 2014



Q. Normally how many and what files get created when a transaction program is written ?  What is the TOP program ? 
ABAP/4 program.

Q. What are the include programs ? 

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.

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

Q. What are the general naming conventions of ABAP programs ? 
Should start with Y or Z.

Q. How do you find if a logical database exists for your program requrements ? 

Q. 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 ? 
Transcode is entered in command field to open the table.Utilities-Table contents-display.

Q. What are the different modules of SAP ? 

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

Q. What are the different elements in layout sets ?
PAGES,Page windows,Header,Paragraph,Character String,Windows.

Q. Can you use if then else, perform ..etc statements in sap script ? 

Q. What takes most time in SAP script programming ? 
Layout design and logo insertion.

Q. What are presentation and application servers in SAP ? 
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.

Q. In an ABAP/4 program how do you access data that exists on a presentation server vs on an application server ? 
i)using loop statements.

Q. What are different data types in ABAP/4 ? 

     Elementary - 
     predefined C,D,F,I,N,P,T,X.
     userdefined TYPES.
 ex: see in intel book page no 35/65
     Structured - 
     predefined    TABLES.
     userdefined Field Strings and internal tables.

Q. What has to be done to the packed fields before submitting to a BDC session. 
     Fields converted into character type.

Q. What is the structure of a BDC sessions. 
      BDCDATA (standard structure).

Q. What are the fields in a BDC_Tab Table. 

Q. What is the difference between a pool table and a transparent table and how they are stored at the database level. 
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.

Q. What is cardinality ? 

For cardinality one out of two (domain or data element) should be the same for Ztest1 and Ztest2 tables. M:N



Q. What are interface/conversion programs in SAP ? 
ANS :- 

Q. What are logical databases ? What are the advantages/disadvantages of logical databases ? 
To read data from a database tables we use logical database.
A logical database provides read-only access to a group of related tables to an ABAP/4 program.
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. 
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). 

Q. What specific statements do you using when writing a drill down report ? 
At line-selection,at user-command,at pf.

Q. What do you do when the system crashes in the middle of a BDC batch session ? 

We will look into the error log file (SM35).

Q. What do you do with errors in BDC batch sessions ? 
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.

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

Q. Does SAP handle multiple currencies ? Multiple languages ? 


Q. What is SAPscript and layout set ? 

The tool which is used to create layout set is called SAPscript. Layout set is a design document.

Q. What are the ABAP/4 commands that link to a layout set ? 
control commands,system commands,

Q. What are IDOCs ? 
IDOCs are intermediate documents to hold the messages as a container.

Q. What are screen painter ? menu painter ? Gui status ? ..etc. 
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.

Q. What is screen flow logic ? What are the sections in it ? Explain PAI and PBO. 
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.

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

Q. What are step loops ? How do you program pagedown pageup in step loops ? 

Step loops are repeated blocks of field in a screen.

Q. Is ABAP a GUI language ? 

ABAP is an event driven language.



Q. What is a function group ? 

Group of all related functions. 

Q. How are the date and time field values stored in SAP ? 

Q. Name a few data dictionary objects ?
Tables,views,structures,lock objects,matchcode objects.

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

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

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

Q. What are ranges ? What are number ranges ? 

Max,min values provided in selection screens.

Q. What are select options and what is the diff from parameters ? 
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.
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 <field>. 
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.
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.

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

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

Q. Are programs client dependent ? 
Yes. Group of users can access these programs with a client no.

Q. Name a few system global variables you can use in ABAP programs ? 
sy-lilli is absolute no of lines from which the event was triggered.

Q. What are internal tables ? How do you get the number of lines in an internal table ? How to use a specific number occurs statement ? 
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.

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

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

Q. How to find the return code of a statement in ABAP programs ? 
Using function modules.



Q. What is the typical structure of an ABAP/4 program ? 
ANS:-  Header ,body,footer.

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

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

Q. What is the alternative to batch input session ? 

Call transaction.

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

Q. What are the problems in processing batch input sessions ?  How is batch input process different from processing online ? 
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.

Q. What are the different types of data dictionary objects ?
Tables, structures, views, domains, data elements, lock objects, Matchcode objects.

Q. How many types of tables exists and what are they in data dictionary ? 

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.

Q. What is the step by step process to create a table in data dictionary ? 
step 1: creating domains(data type,field length,range).
step 2: creating data elements(properties and type for a table field).
step 3: creating tables(SE11).

Q. Can a transparent table exist in data dictionary but not in the data base physically ?
Transparent table do exist with the same structure both in the dictionary as well as in the database,exactly with the same data and fields.

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

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

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

Q. 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:
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
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 <fg>, the structure of the corresponding extract record in the extract dataset is fixed. You can no longer insert new fields into the field groups <fg> 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.

Q. What is a collect statement? How is it different from append ? 
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. 

Q. What are the events in ABAP/4 language ? 
Initialization, At selection-screen,Start-of-selection,end-of-selection,top-of-page,end-of-page, At line-selection,At user-command,At PF,Get,At New,At last,at end, at first. 

Q. What is an interactive report ? What is the obvious diff of such report compared with classical type reports ? 
An Interactive report is a dynamic drill down report that produces the list on users choice.
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.

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

Q. How do you write a function module in SAP ? describe. 
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.

Q. What are the exceptions in function module ? 


11 January 2014

General Interview Questions

General Interview Questions :-

Q) Tell me about yourself.
A) Make a short, organized statement of your education and professional achievements and professional goals. Then, briefly describe your qualifications for the job and the contributions you could make to the organization.

Q) Why do you want to work here ? or What about our company interests you ?
A) Few questions are more important than these, so it is important to answer them clearly and with enthusiasm. Show the interviewer your interest in the company. Share what you learned about the job, the company and the industry through your own research. Talk about how your professional skills will benefit the company. Unless you work in sales, your answer should never be simply: "money." The interviewer will wonder if you really care about the job.

Q) Why did you leave your last job ?
A) The interviewer may want to know if you had any problems on your last job. If you did not have any problems, simply give a reason, such as: relocated away from job; company went out of business; laid off; temporary job; no possibility of advancement; wanted a job better suited to your skills.

If you did have problems, be honest. Show that you can accept responsibility and learn from your mistakes. You should explain any problems you had (or still have) with an employer, but don't describe that employer in negative terms. Demonstrate that it was a learning experience that will not affect your future work.

Q) What are your best skills ?
A) If you have sufficiently researched the organization, you should be able to imagine what skills the company values. List them, then give examples where you have demonstrated these skills.

Q) What is your major weakness ?
A) Be positive; turn a weakness into strength. For example, you might say: "I often worry too much over my work. Sometimes I work late to make sure the job is done well."

Q) Do you prefer to work by yourself or with others ?
A) The ideal answer is one of flexibility. However, be honest. Give examples describing how you have worked in both situations.

Q) What are your career goals ? or What are your future plans ?
A) The interviewer wants to know if your plans and the company's goals are compatible. Let him know that you are ambitious enough to plan ahead. Talk about your desire to learn more and improve your performance, and be specific as possible about how you will meet the goals you have set for yourself.

Q) What are your hobbies ? and Do you play any sports ?
A) The interviewer may be looking for evidence of your job skills outside of your professional experience. For example, hobbies such as chess or bridge demonstrate analytical skills. Reading, music, and painting are creative hobbies. Individual sports show determination and stamina, while group sport activities may indicate you are comfortable working as part of a team.

Also, the interviewer might simply be curious as to whether you have a life outside of work. Employees who have creative or athletic outlets for their stress are often healthier, happier and more productive.

Q) What salary are you expecting ?
A) You probably don't want to answer this one directly. Instead, deflect the question back to the interviewer by saying something like: "I don't know. What are you planning on paying the best candidate?" Let the employer make the first offer.

However, it is still important to know what the current salary range is for the profession. Find salary surveys at the library or on the Internet, and check the classifieds to see what comparable jobs in your area are paying. This information can help you negotiate compensation once the employer makes an offer.

Q) What have I forgotten to ask ?
A) Use this as a chance to summarize your good characteristics and attributes and how they may be used to benefit the organization. Convince the interviewer that you understand the job requirements and that you can succeed.



1) Transaction Code for the following ?
A) 1) To delete setup tables -> LBWG
2) To fill setup tables -> OLI*BW
3) Currency exchange rates -> OB08
4) BW Delta Queue Monitor -> RSA7
5) DB connect -> RSDBC

2) What is Real Time Data Acquisition ?
A) Real-time data acquisition supports tactical decision-making. It also supports operational reporting by allowing you to send data to the delta queue or PSA table in real-time. You then use a daemon to transfer Data Store objects to the operational Data Store layer at frequent regular intervals. The data is stored persistently in BI.

3) Difference between display attributes and navigational attributes ? 
A) Display attribute is one which is used only for display purpose in the report.Where as navigational attribute is used for drilling down in the report.We don't need to maintain Nav attribute in the cube as a characteristic(that is the advantage) to drill down.

4) What are the different variables used in BEX ?
A) Variable with default entry
Replacement path
SAP exit
Customer exit

5) What are Return Tables ?
A) When we want to return multiple records, instead of single value, we use the return table in the Update Routine. Example: If we have total telephone expense for a Cost Center, using a return table we can get expense per employee

6) What are Start routines, Transfer routines and Update routines ?
A) Start Routines: The start routine is run for each DataPackage after the data has been written to the PSA and before the transfer rules have been executed. It allows complex computations for a key figure or a characteristic. It has no return value. Its purpose is to execute preliminary calculations and to store them in global DataStructures. This structure or table can be accessed in the other routines. The entire DataPackage in the transfer structure format is used as a parameter for the routine.
• Transfer / Update Routines: They are defined at the InfoObject level. It is like the Start Routine. It is independent of the DataSource. We can use this to define Global Data and Global Checks.

7) What is the difference between ODS and InfoCube and MultiProvider ?
A) ODS: Provides granular data, allows overwrite and data is in transparent tables, ideal for drilldown and RRI.
• CUBE: Follows the star schema, we can only append data, ideal for primary reporting.
• MultiProvider: Does not have physical data. It allows to access data from different InfoProviders (Cube, ODS, InfoObject). It is also preferred for reporting.

8) What are the steps involved in LO Extraction ?
A) The steps are:
• RSA5 Select the DataSources
• LBWE Maintain DataSources and Activate Extract Structures
• LBWG Delete Setup Tables
• 0LI*BW Setup tables
• RSA3 Check extraction and the data in Setup tables
• LBWQ Check the extraction queue
• LBWF Log for LO Extract Structures
• RSA7 BW Delta Queue Monitor.

9) Can an InfoObject be an InfoProvider, how and why ?
A) Yes, when we want to report on Characteristics or Master Data. We have to right click on the InfoArea and select "Insert characteristic as data target". For example, we can make 0CUSTOMER as an InfoProvider and report on it.

10) What are Process Types & Process variant ?
A) Process types are General services, Load Process & subsequent processing, Data Target Administration, Reporting agent & Other BW services.
Process variant (start variant) is the place the process type knows when & where to start.

11) Four types of Sid tables ?
A) X time independent navigational attributes sid tables
Y time dependent navigational attributes sid tables
H hierarchy sid tables
I hierarchy structure sid tables.

X-table = A table to link material SIDs with SIDs for time-independent navigation attributes.
Y-table = A table to link material SIDs with SIDS for time-dependent navigation attributes.

12) How can you improve the performance of a query ?
A) Query Performance can be improved by making the Aggregates having all the Chars & KF used in Query.



1) what is the t-code to create INDEX in SAP BI(7.0) ? /How can we create the index in SAP BW/BI ?
A) I am sorry as I am not aware of TCode for Index. But, I can roughly tell how to create Index. Creating Indexing is apart of Performance Issues on Query. As we know thatwhenever we load data to the data target, Primary indexesare created automatically and uses Linear search i.e, searchrecord by record, whereas when we can create SecondaryIndexes, it will follow Binary search and hence the queryperformance improves.
To create a Secondary Index,
1. Select your data target(Infocube or DSO)and select contextmenu and select Manage.
2. Select the Performance tab and select 'Create Index' button.
3. In the new dialog box, Select 'Selection' and then select'Immediate' and click Save.
4. Select 'Start' and click 'Continue'.
Once the Secondary Index is created, a check mark is createdin front of the data target.
B) Index can be created by managing a cube. There are two types of indexes. They are primary index and secondary index.Primary index is automatically created by the system ie system generated index. Secondary index is created by us.
Indexing is a process of storing data according to an index like in a phone book. Secondary indexes are of bit map andbinary tree.

2) how can we enhance the data sources, explain me with example ?

1.find the structure of the data source and goto se11 using append structure add the require fileds to the structure and activate
2.goto rsa6 select ur datasource and click on change icon and unhide the fileds and generate the datasoure.
3. goto tcode cmod create a project and assign RSRA0001
write the require code in the standard Include.
enhancement name is RSAP0001
find the structure of the datasource i.e in rsa5 and goto se11 using append structure add the require fileds to the structure and activategoto rsa6 select ur datasource and click on change icon and unhide the fileds(important)and generate the datasoure.
goto tcode cmod create a project and assign RSAP0001write the require code in the standard Include.

3) Explain about monitering tcodes RSMO RSPC RSPCM and how to work with the DATA LOAD issues ?

RSMO: monitoring the data loads.
RSPC: for creating process chains
RSPCM: monitor daily process chains.
RSPC: using RSPC we can create a process chain to schedule any data load.
RSPCM: After creating the process chain at RSPC level, if u wants to monitor the data load(data failures)we should add that process chain to RSPCM which is used to monitor all the data loads.
RSMO: used to monitor data loads which are scheduled by only process chains.

4) what are the errors in process chain, how can we solve them ?
A) IN log overview we can check what all errors are there and Accordingly handle the errorsThis key figure (0TCTNPRSTER) specifies the number of Processes or process chains that finished with errors. The key figure has the data type DEC (number).

5) What is difference between BI and BO'S with BI ?
A) In BI we are using BEx suite for different reporting requirements but in BO's we have so many components which solves various reporting requirements in terms of more visualization.

Crystal report designer in BO similar to Report designer in BI
Xcelsius similar to WAD,
Bex analyzer similar to Voyager

By using Universe designer we create a universe (similar to Multiprovider) in BO and we can use this universe to create reports. A BI connection is needed to create universe in BO (nothing but source system connection in BI.

6) I want to start a new project with NW BI 7.0. Which frontends do I use ?
• It is generally recommended to evaluate and use the Busines Object premium packages.
• For selected areas, such as web- & Excel based OLAP analysis, it will still be beneficial to leverage BEx Analyzer & BEx Web Analyzer for new projects as they provide superior OLAP features compared to Busines Object Voyager.
• Projects requiring an Excel OLAP Integration should be carried out with BEx Analyzer until Pioneer arrives.
• If you are already experienced with the BEx Web Applications Designer, and want to build heavy weight BI Web applications, you can still do this using BEx Web Application Designer, but please evaluate Visual Composer in NW Composition Environment 7.1.1, as VC/CE tools will be the go-to solutions for design of web-based, composite applications in the future.

7) What is variable exit ? Give me its structure ?
A) SAP provides a variable of type customer exit for BW queries which customer is able to manage its values depends on their business requirements. It is necessary some background in ABAP to start in this area, the proposal of this document is to help on those tasks. It is structured in the following sequence:
Project management of SAP Enhancements
Query BEX Query Designer and Variable Type Customer Exit
Customer Exit and ABAP Code
Test and Debug
Additional Information

8) After starting an InfoPackage, I can't see any job running in SM37. How can this possibly be ?
A) In the source system, the extraction job has the name BI*<request id>. If the DataSource is in SAP ERP, you can check for this job in your ERP system and see what's the status of the extraction. If you're moving data from BW to BW itself (e.g. you're loading data from a DSO to a datamart InfoCube), the extraction job will be running in BW itself.
Once the extraction job has been completed, in the BW system the data update is done through a dialog process, which you can only monitor in SM50. You won't see any jobs in SM37 related to the update.

In the Scheduling tab of an InfoPackage, you can choose between two options:
• Start Data Load Immediately - The request will be created in foreground using dialog process;
• Start Later in Batch - The request will be created using a backgroud job.
However, this only refers to the request creation. Even if you choose the 2nd option, the completion of this job doesn't mean that the load has been completed as well. It just means that the request has been created successfully.
Only when you check the option Request Batch Process Runs Until All Data Has Been Updated in BW this job will be running in SM37 till the upload is complete. Otherwise the only way to monitor your load is SM37 for the extractor job and SM50 for the ETL processing and the update into a data target.
Notice also that the Start Later in Batch setting is hidden if the InfoPackage is used in a process chain. This is because the start of the request is determined by the process chain itself. Therefore, the request is created by the job associated to the process chain's process

9) What is the use of BI accelerator monitor ?
A) The BI accelerator monitor is used for the technical administration and maintenance of the BI accelerator. It provides an overview of the current status of the BI accelerator.
The BI accelerator monitor displays the results of the consistency checks. These checks run periodically on the BI accelerator. If problems occur, the system automatically proposes appropriate actions. These actions involve BI accelerator repair functions which can be used to fix problems.
The detailed BI accelerator monitors offers a detailed, technical overview of the hardware, BI accelerator services, any trace files that exist and the BI accelerator indexes.

10) Why do you go for function module in generic extraction ?
A) If you have to get data from more than 1 table and also incorporate some logic then you would use a fn module extractor. It is like a program where you would code using ABAP and have all your logic incorporated.

10 January 2014



Q) Different types in LO's ?
A) Direct Delta, Queued Delta, Serialized V3 update, Unserialized V3 Update.
Direct Delta: - With every document posted in R/3, the extraction data is transferred directly into the BW delta queue. Each document posting with delta extraction becomes exactly one LUW in the corresponding Delta queue.
Queued Delta: - The extraction data from the application is collected in extraction queue instead of as update data and can be transferred to the BW delta queue by an update collection run, as in the V3 update.

Q) What does LO Cockpit contain ?
* Maintaining Extract structure.
* Maintaining DataSources.
* Activating Updates.
* Controlling Updates.

Q) What are Process Chains ?
A) TCode is RSPC, is a sequence of processes scheduled in the background & waiting to be triggered by a specific event. Process chains nothing but grouping processes. Process variant (start variant) is the place the process chain knows where to start.
There should be min and max one start variant in each process chain, here we specify when should the process chain start by giving date and time or if you want to start immediately
Some of theses processes trigger an event of their own that in-turn triggers other processes.
Ex: - Start chain &#8594; Delete BCube indexes &#8594; Load data from the source system to PSA &#8594;
Load data from PSA to DataTarget ODS &#8594; Load data from ODS
to BCube &#8594; Create Indexes for BCube after loading data &#8594; Create database statistics &#8594; Roll-Up data into the aggregate &#8594; Restart chain from beginning.

Q) What are Process Types & Process variant ?
A) Process types are General services, Load Process & subsequent processing, Data Target Administration, Reporting agent & Other BW services.
Process variant (start variant) is the place the process type knows when & where to start.

Q) Difference between MasterData & Transaction InfoPackage ?
A) 5 tabs in Masterdata & 6 tabs in Transaction data, the extra tab in Transaction data is DATA TARGETS.

Q) Types of Updates ?
A) Full Update, Init Delta Update & Delta Update.

Q) For Full update possible while loading data from R/3 ?
A) InfoPackage &#8594; Scheduler &#8594; Repair Request flag (check).
This is only possible when we use MM & SD modules.

Q) Why it takes more time while loading the transaction data even to load the transaction without master data (we check the checkbox, Always Update data, even if no master data exits for the data) ?
A) Because while loading the data it has to create SID keys for transaction data.

Q) For what we use HIDE fields, SELECT fields & CANCELLATION fields ?
A) Selection fields-- The only purpose is when we check this column, the field will appear in InfoPackage Data selection tab.
Hide fields -- These fields are not transferred to BW transfer structure.
Cancellation - It will reverse the posted documents of keyfigures of customer defined by multiplying it with -1...and nullifying the value.
I think this is reverse posting

Q) Transporting.
A) When it comes to transporting for R/3 and BW, u should always transport all the R/3 Objects first………once you transport all the R/3 objects to the 2nd system, you have to replicate the datasources into the 2nd BW system…and then transport BW objects.
First you will transport all the datasources from 1st R/3 system to 2nd R/3 System. Second, you will replicate the datasources from 2nd R/3 system into 2nd BW system. Third, you will transport all the BW Objects from 1st BW system to 2nd BW system.
You have to send your extractors first to the corresponding R/3 Q Box and replicate that to BW. Then you have to do this transport in BW. Development, testing and then production

Q) When does a transfer structure contain more fields than the communication structure of an InfoSource ?
A) If we use a routine to enhance a field in the communication from several fields in the transfer structure, the communication structure may contain more fields.

Q) What is the PSA, technical name of PSA, Uses ?
A) When we want to delete the data in InfoProvider & again want to re-load the data, at this stage we can directly load from PSA not going to extract from R/3.

Q) Variables in Reporting ?
A) Characteristics values, Text, Hierarchies, Hierarchy nodes & Formula elements,

Q) Variable processing types in Reporting ?
A) Manual, Replacement path, SAP Exit, Authorizations, Customer Exit

Q) Why we use this RSRP0001 Enhancement ?
A) For enhancing the Customer Exit in reporting.

Q) What is the use of Filters ?
A) It Restricts Data.

Q) What is the use of Conditioning ?
A) To retrieve data based on particular conditions like less than, greater than, less than or equal etc.,

Q) What is NODIM ?
A) For example it converts 5lts + 5kgs = 10.

Q) What for Exception's ? How can I get PINK color ?
A) To differentiate values with colors, by adding relevant colors u can get pink.

Q) Why SAPLRSAP is used ?
A) We use these function modules for enhancing in r/3.

Q) Where are workbooks saved ?
A) Workbooks are saved in favorites.

Q) Can Favorites accessed by other users ?
A) No, they need authorization.

Q) What is InfoSet ?
A) An InfoSet is a special view of a dataset, such as logical database, table join, table, and sequential file, and is used by SAP Query as a source data. InfoSets determine the tables or fields in these tables that can be referenced by a report. In most cases, InfoSets are based on logical databases.
SAP Query includes a component for maintaining InfoSets. When you create an InfoSet, a DataSource in an application system is selected.
Navigating in a BW to an InfoSet Query, using one or more ODS objects or InfoObjects.
You can also drill-through to BEx queries and InfoSet Queries from a second BW system, that isConnected as a data mart.
The InfoSet Query functions allow you to report using flat data tables (master data reporting).
Choose InfoObjects or ODS objects as data sources. These can be connected using joins.
You define the data sources in an InfoSet. An InfoSet can contain data from one or more tables that are connected to one another by key fields.
The data sources specified in the InfoSet form the basis of the InfoSet Query.

Q) LO's ?
Synchronous update (V1 update)
Statistics update is carried out at the same time as the document update in the same task.
• Asynchronous update (V2 update)
Document update and the statistics update take place separately in different tasks.
• Collective update (V3 update)
Again, document update is separate from the statistics update. However, in contrast to the V2 update, the V3 collective statistics update must be scheduled as a job.
Successfully scheduling the update will ensure that all the necessary information
Structures are properly updated when new or existing documents are processed.
Scheduling intervals should be based on the amount of activity on a particular OLTPsystem. For example, a development system with a relatively low or no volume of new documents may only need to run the V3 update on a weekly basis. A full production environment, with hundreds of transactions per hour may have to be updated every 15 to 30 minutes.
SAP standard background job scheduling functionality may be used in order to schedule the V3 updates successfully. It is possible to verify that all V3 updates are successfully completed via transaction SM13. This transaction will take you to the “UPDATE RECORDS: MAIN MENU” screen. At this screen, enter asterisk as your user (for all users), flag the radio button 'All' and hit enter. Any outstanding V3 updates will be listed. While a non-executed V3 update will not hinder your OLTP system, by administering the V3 update jobs properly, your information structures will be current and overall performance will be improved.



Q) What does InfoCube contains ?

A) Each InfoCube has one FactTable & a maximum of 16 (13+3 system defined, time, unit & data packet) dimensions.

Q) What does FACT Table contain ?
A) FactTable consists of KeyFigures.
Each Fact Table can contain a maximum of 233 key figures.
Dimension can contain up to 248 freely available characteristics.

Q) How many dimensions are in a CUBE ?
A) 16 dimensions. (13 user defined & 3 system pre-defined [time, unit & data packet])

Q) What does SID Table contain ?
A) SID keys linked with dimension table & master data tables (attributes, texts, hierarchies)

Q) What does ATTRIBUTE Table contain ?
A) Master attribute data

Q) What does TEXT Table contain ?
A) Master text data, short text, long text, medium text & language key if it is language dependent

Q) What does Hierarchy table contain ?
A) Master hierarchy data

Q)Differences between STAR Schema & Extended Schema ?
A) In STAR SCHEMA, A FACT Table in center, surrounded by dimensional tables and the dimension tables contains of master data. In Extended Schema the dimension tables does not contain master data, instead they are stored in Masterdata tables divided into attributes, text & hierarchy. These Masterdata & dimensional tables are linked with each other with SID keys. Masterdata tables are independent of Infocube & reusability in other InfoCubes.

Q) As to where in BW do you go to add a character like a \; # so that BW will accept it. This is transaction data which loads fine in the PSA but not the data target.
A) Check transaction SPRO ---Then click the "Goggles"-Button => Business
Information Warehouse => Global Settings => 2nd point in the list. I
hope you can use my "Guide" (my BW is in german, so i don't know all the english descriptions).

Q) When are Dimension ID's created ?
A) When Transaction data is loaded into InfoCube.

Q) When are SID's generated ?
A) When Master data loaded into Master Tables (Attr, Text, Hierarchies).

Q) How would we delete the data in ODS ?
A) By request IDs, Selective deletion & change log entry deletion.

Q) How would we delete the data in change log table of ODS ?
A) Context menu of ODS &#8594; Manage &#8594; Environment &#8594; change log entries.

Q) What are the extra fields does PSA contain ?
A) Record id, Data packet

Q) Partitioning possible for ODS ?
A) No, It's possible only for Cube.

Q) Why partitioning ?
A) For performance tuning.

Q) Have you ever tried to load data from 2 InfoPackages into one cube ?
A) Yes.

Q) Different types of Attributes ?
A) Navigational attribute, Display attributes, Time dependent attributes, Compounding attributes, Transitive attributes, Currency attributes.

Q) Transitive Attributes ?
A) Navigational attributes having nav attr…these nav attrs are called transitive attrs

Q) Navigational attribute ?
A) Are used for drill down reporting (RRI).

Q) Display attributes ?
A) You can show DISPLAY attributes in a report, which are used only for displaying.

Q) How does u recognize an attribute whether it is a display attribute or not ?
A) In Edit characteristics of char, on general tab checked as attribute only.

Q) How do we convert Master data InfoObject to a Data target ?
A) InfoArea &#8594; Infoprovider (context menu) &#8594; Insert characteristic Data as DataTarget.

Q) How do we load the data if a FlatFile consists of both Master and Transaction data ?
A) Using Flexible update method while creating InfoSource.

Q) Steps in LO are Extraction ?
* Maintain extract structures. (R/3)
* Maintain DataSources. (R/3)
* Replicate DataSource in BW.
* Assign InfoSources.
* Maintain communication structures/transfer rules.
* Maintain InfoCubes & Update rules.
* Activate extract structures. (R/3)
* Delete setup tables/setup extraction. (R/3)
* InfoPackage for the Delta initialization.
* Set-up periodic V3 update. (R/3)
* InfoPackage for Delta uploads.

9 January 2014



Q) How can u analize the project at first ?
A) Prepare Project Plan and Environment
Define Project Management Standards and Procedures
Define Implementation Standards and Procedures
Testing & Go-live + supporting.

Q) There is one ods and 4 infocubes. we send data at time to all cubes if one cube got lock error. how can u rectify the error ?
A) Go to TCode sm66 then see which one is locked select that pid from there and goto sm12 TCode then unlock it this is happened when lock errors are occurred when u scheduled.

Q) Can anybody tell me how to add a navigational attribute in the BEx report in the rows ?
A) Expand dimension under left side panel (that is infocube panel) select than navigational attributes drag and drop under rows panel.

Q) if any trasaction code like smpt or stmt.
A) In current systems (BW 3.0B and R/3 4.6B) these Tcodes don't exist

Q) what is transactional cube ?
A) Transactional InfoCubes differ from standard InfoCubes in that the former have an improved write access performance level. Standard InfoCubes are technically optimized for read-only access and for a comparatively small number of simultaneous accesses. Instead, the transactional InfoCube was developed to meet the demands of SAP Strategic Enterprise Management (SEM), meaning that, data is written to the InfoCube (possibly by several users at the same time) and re-read as soon as possible. Standard Basic cubes are not suitable for this.

Q) Is there any way to delete cube contents within update rules from an ODS data source? The reason for this would be to delete (or zero out) a cube record in an "Open Order" cube if the open order quantity was 0. I've tried using the 0recordmode but that doesn't work. Also, would it be easier to write a program that would be run after the load and delete the records with a zero open qty ?
A) START routine for update rules u can write ABAP code.
B) Yap, you can do it. Create a start routine in Update rule.
It is not "Deleting cube contents with update rules" It is only possible to avoid that some content is updated into the InfoCube using the start routine. Loop at all the records and delete the record that has the condition. "If the open order quantity was 0" You have to think also in before and after images in case of a delta upload. In that case you may delete the change record and keep the old and after the change the wrong information.

Q) I am not able to access a node in hierarchy directly using variables for reports. When I am using Tcode RSZV it is giving a message that it doesn't exist in BW 3.0 and it is embedded in BEx. Can any one tell me the other options to get the same functionality in BEx ?
A) Tcode RSZV is used in the earlier version of 3.0B only. From 3.0B onwards, it's possible in the Query Designer (BEx) itself. Just right click on the InfoObject for which you want to use as variables and precede further selecting variable type and processing types.

Q) In BW we need to write abap routines. I wish to know when and what type of abap routines we got to write. Also, are these routines written in update rules? I will be glad, if this is clarified with real-time scenarios and few examples ?
A) Over here we write our routines in the start routines in the update rules or in the transfer structure (you can choose between writing them in the start routines or directly behind the different characteristics. In the transfer structure you just click on the yellow triangle behind a characteristic and choose "routine". In the update rules you can choose "start routine" or click on the triangle with the green square behind an individual characteristic. Usually we only use start routine when it does not concern one single characteristic (for example when you have to read the same table for 4 characteristics). I hope this helps.

We used ABAP Routines for example:
To convert to Uppercase (transfer structure)
To convert Values out of a third party tool with different keys into the same keys as our SAP System uses (transfer structure)
To select only a part of the data for from an infosource updating the InfoCube (Start Routine) etc.

Q) What is ODS ?
A) An ODS object acts as a storage location for consolidated and cleaned-up transaction data (transaction data or master data, for example) on the document (atomic) level.
This data can be evaluated using a BEx query.
Standard ODS Object
Transactional ODS object:
The data is immediately available here for reporting. For implementation, compare with the Transactional ODS Object.

A transactional ODS object differs from a standard ODS object in the way it prepares data. In a standard ODS object, data is stored in different versions ((new) delta, active, (change log) modified), where as a transactional ODS object contains the data in a single version. Therefore, data is stored in precisely the same form in which it was written to the transactional ODS object by the application. In BW, you can use a transaction ODS object as a data target for an analysis process.

The transactional ODS object is also required by diverse applications, such as SAP Strategic Enterprise Management (SEM) for example, as well as other external applications.

Transactional ODS objects allow data to be available quickly. The data from this kind of ODS object is accessed transactionally, that is, data is written to the ODS object (possibly by several users at the same time) and reread as soon as possible.

It offers no replacement for the standard ODS object. Instead, an additional function displays those that can be used for special applications.

The transactional ODS object simply consists of a table for active data. It retrieves its data from external systems via fill- or delete- APIs. The loading process is not supported by the BW system. The advantage to the way it is structured is that data is easy to access. They are made available for reporting immediately after being loaded.



Q) Why does it take so long to delete from the delta queue (for example half a day) ?
A) Import PlugIn 2000.2 patch 3. With this patch the performance during deletion is considerably improved.

Q) Why is the delta queue not updated when you start the V3 update in the logistics cockpit area ?
A) It is most likely that a delta initialization had not yet run or that the delta initialization was not successful. A successful delta initialization (the corresponding request must have QM status 'green' in the BW System) is a prerequisite for the application data being written in the delta queue.

Q) What is the relationship between RSA7 and the qRFC monitor (Transaction SMQ1) ?
A) The qRFC monitor basically displays the same data as RSA7. The internal queue name must be used for selection on the initial screen of the qRFC monitor. This is made up of the prefix 'BW, the client and the short name of the DataSource. For DataSources whose name are 19 characters long or shorter, the short name corresponds to the name of the DataSource. For DataSources whose name is longer than 19 characters (for delta-capable DataSources only possible as of PlugIn 2001.1) the short name is assigned in table ROOSSHORTN.
In the qRFC monitor you cannot distinguish between repeatable and new LUWs. Moreover, the data of a LUW is displayed in an unstructured manner there.

Q) Why are the data in the delta queue although the V3 update was not started ?
A) Data was posted in background. Then, the records are updated directly in the delta queue (RSA7). This happens in particular during automatic goods receipt posting (MRRS). There is no duplicate transfer of records to the BW system. See Note 417189.

Q) Why does button 'Repeatable' on the RSA7 data details screen not only show data loaded into BW during the last delta but also data that were newly added, i.e. 'pure' delta records ?
A) Was programmed in a way that the request in repeat mode fetches both actually repeatable (old) data and new data from the source system.

Q) I loaded several delta inits with various selections. For which one is the delta loaded ?
A) For delta, all selections made via delta inits are summed up. This means, a delta for the 'total' of all delta initializations is loaded.

Q) How many selections for delta inits are possible in the system ?

A) With simple selections (intervals without complicated join conditions or single values), you can make up to about 100 delta inits. It should not be more. With complicated selection conditions, it should be only up to 10-20 delta inits.
Reason: With many selection conditions that are joined in a complicated way, too many 'where' lines are generated in the generated ABAP source code that may exceed the memory limit.

Q) I intend to copy the source system, i.e. make a client copy. What will happen with may delta? Should I initialize again after that ?
A) Before you copy a source client or source system, make sure that your deltas have been fetched from the DeltaQueue into BW and that no delta is pending. After the client copy, an inconsistency might occur between BW delta tables and the OLTP delta tables as described in Note 405943. After the client copy, Table ROOSPRMSC will probably be empty in the OLTP since this table is client-independent. After the system copy, the table will contain the entries with the old logical system name that are no longer useful for further delta loading from the new logical system. The delta must be initialized in any case since delta depends on both the BW system and the source system. Even if no dump 'MESSAGE_TYPE_X' occurs in BW when editing or creating an InfoPackage, you should expect that the delta have to be initialized after the copy.

Q) Is it allowed in Transaction SMQ1 to use the functions for manual control of processes ?
A) Use SMQ1 as an instrument for diagnosis and control only. Make changes to BW queues only after informing the BW Support or only if this is explicitly requested in a note for component 'BC-BW' or 'BW-WHM-SAPI'.

Q) Despite of the delta request being started after completion of the collective run (V3 update), it does not contain all documents. Only another delta request loads the missing documents into BW. What is the cause for this "splitting"?
A) The collective run submits the open V2 documents for processing to the task handler, which processes them in one or several parallel update processes in an asynchronous way. For this reason, plan a sufficiently large "safety time window" between the end of the collective run in the source system and the start of the delta request in BW. An alternative solution where this problem does not occur is described in Note 505700.

Q) Despite my deleting the delta init, LUWs are still written into the DeltaQueue ?
A) In general, delta initializations and deletions of delta inits should always be carried out at a time when no posting takes place. Otherwise, buffer problems may occur: If a user started the internal mode at a time when the delta initialization was still active, he/she posts data into the queue even though the initialization had been deleted in the meantime. This is the case in your system.

Q) The extract structure was changed when the DeltaQueue was empty. Afterwards new delta records were written to the DeltaQueue. When loading the delta into the PSA, it shows that some fields were moved. The same result occurs when the contents of the DeltaQueue are listed via the detail display. Why are the data displayed differently ? What can be done ?
A) Make sure that the change of the extract structure is also reflected in the database and that all servers are synchronized. We recommend to reset the buffers using Transaction $SYNC. If the extract structure change is not communicated synchronously to the server where delta records are being created, the records are written with the old structure until the new structure has been generated. This may have disastrous consequences for the delta. When the problem occurs, the delta needs to be re-initialized.

Q) How and where can I control whether a repeat delta is requested ?

A) Via the status of the last delta in the BW Request Monitor. If the request is RED, the next load will be of type 'Repeat'. If you need to repeat the last load for certain reasons, set the request in the monitor to red manually. For the contents of the repeat see Question 14. Delta requests set to red despite of data being already updated lead to duplicate records in a subsequent repeat, if they have not been deleted from the data targets concerned before.

Q) As of PI 2003.1, the Logistic Cockpit offers various types of update methods. Which update method is recommended in logistics ? According to which criteria should the decision be made? How can I choose an update method in logistics ? 

A) See the recommendation in Note 505700.

Q) Are there particular recommendations regarding the data volume the DeltaQueue may grow to without facing the danger of a read failure due to memory problems ?
A) There is no strict limit (except for the restricted number range of the 24-digit QCOUNT counter in the LUW management table - which is of no practical importance, however - or the restrictions regarding the volume and number of records in a database table).
When estimating "smooth" limits, both the number of LUWs is important and the average data volume per LUW. As a rule, we recommend to bundle data (usually documents) already when writing to the DeltaQueue to keep number of LUWs small (partly this can be set in the applications, e.g. in the Logistics Cockpit). The data volume of a single LUW should not be considerably larger than 10% of the memory available to the work process for data extraction (in a 32-bit architecture with a memory volume of about 1GByte per work process, 100 Mbytes per LUW should not be exceeded). That limit is of rather small practical importance as well since a comparable limit already applies when writing to the DeltaQueue. If the limit is observed, correct reading is guaranteed in most cases.
If the number of LUWs cannot be reduced by bundling application transactions, you should at least make sure that the data are fetched from all connected BWs as quickly as possible. But for other, BW-specific, reasons, the frequency should not be higher than one DeltaRequest per hour.
To avoid memory problems, a program-internal limit ensures that never more than 1 million LUWs are read and fetched from the database per DeltaRequest. If this limit is reached within a request, the DeltaQueue must be emptied by several successive DeltaRequests. We recommend, however, to try not to reach that limit but trigger the fetching of data from the connected BWs already when the number of LUWs reaches a 5-digit value.

Q) I would like to display the date the data was uploaded on the report. Usually, we load the transactional data nightly. Is there any easy way to include this information on the report for users? So that they know the validity of the report.
A) If I understand your requirement correctly, you want to display the date on which data was loaded into the data target from which the report is being executed. If it is so, configure your workbook to display the text elements in the report. This displays the relevance of data field, which is the date on which the data load has taken place.

Q) Can we load data directly into infoobject with out extraction is it possible.

A) Yes. We can copy from other infoobject if it is same. We load data from PSA if it is already in PSA.

Q) How many days can we keep the data in psa, if we r sheduled daily, weekly and monthly
A) We can set the time.

Q) How can u get the data from client if u r working on offshore projects. through which network.

A) VPN…………….Virtual Private Network, VPN is nothing but one sort of network where we can connect to the client systems sitting in offshore through RAS (Remote access server).