Knowledge of SAP ABAP Test Answers



1. ABAP has built-in types like C, I, N, STRING, or X. If you use these types for defining data objects, which of the following statements are correct?
Answers:
• If you want to define a two-byte integer data object, you use the follow-ing syntax: DATA xyz(2) TYPE i.
• If you create a data object without explicitly specifying its type, it will become type C with length 1.
• If you define a data object with type D, two or four digits will be re-served for the year, depending on the user's settings.
• A data object of type STRING has a fixed length that will automatically be set when the first value is assigned to this data object. This length cannot be adjusted thereafter.

2. During an upgrade project to SAP NetWeaver 7.0, you are asked for a strategy to convert the implemented classic BAdIs to the new BAdI type.

What do you recommend?
Answers:
• Perform the migration of customer BAdIs and BAdIs that are provided by SAP With the available migration tool.
• Use the procedure for semi-automatic migration because of existing differences between classic and new BAdIs.
• Perform a completely automated migration of all existing classic BAdIs with the available migration tool.
• Create new BAdIs because a conversion of classic BAdIs is not foreseen.
3. Among the most frequently used enhancement concepts in ABAP, you find customer exits. Which of the following statements about customer exits are correct?
Answers:
• If a customer exit is not implemented, the program offering this customer exit will dump (terminate abnormally) at runtime.
• Within one SAP system, a customer exit can have a maximum of one implementation.
• Within one client of an SAP system, a customer exit can have multiple implementations.
• Once a customer exit has been implemented in an SAP system, the implementation can be changed, but it cannot be deactivated any more.
4. A customer wants to develop a Web application with Web Dynpro for Java as the front-end technology and a SAP ERP 6.0 system as the backend.

Which type of external interface do you use to generate a Web Dynpro model automatically with a minimum of effort?
Answers:
• RFC
• BAPI
• Web Service
• Java Connector
5. A customer has implemented an enhancement for a transaction by using the predefined customer subscreen. The program contains the necessary plausibility checks for the values on the subscreen. However, from time to time, data fields are updated with values that are not allowed.

What do you recommend to solve this problem?
Answers:
• Modify all dynpros that use data from the plausibility checks.
• Implement new plausibility checks for every dynpro change.
• Implement the same plausibility checks in the User Exit "before save".
• Implement an additional program to correct the wrong data field values.
6. An international retail company needs a customer-specific list in SAP ERP that shows accumulated order values in a selectable currency.

What do you need to know to create this program?
Answers:
• Converting factors of source currencies
• Converting factors of target currency
• Source currency of the orders
• Local currency in the system
7. In which case do you decide to create a new ABAP OO class?
Answers:
• If it deals with encapsulated data of another class
• If it mediates between two other classes
• If it improves maintainability
• If it only contains methods
8. Your transport request is released in system X and imported in system Y.

Which method is used to transport the data from X to Y?
Answers:
• File on a file system
• Database table
• Remote Function Call
• File on an IDoc
9. You need to read an ABAP report from a database that is not declared in the ABAP Dictionary.

How do you do this?
Answers:
• With open SQL
• With native SQL
• With NetWeaver AS ABAP
• With a remote Java call function
10. How do you characterize customer and user exits?
Answers:
• Customer Exits have a predefined interface with the possibility to activate and deactivate them.
• Customer Exits need an SSCR (SAP Software Change Registration) registration.
• User Exits have a predefined interface with the possibility to activate and deactivate them.
• User Exits need an SSCR (SAP Software Change Registration) registration.
11. In a customer application, it is necessary to save texts with undefined size.

Which table type do you use to minimize programming efforts?
Answers:
• Transparent table with field type TEXT80 for the text
• Transparent table with field type STRING for the text
• Cluster table with application key and others fields
• Pool table with normal construction
12. Your customer wants to use SAP NetWeaver Master Data Management ( MDM ) to cleanse and distribute business partners created in SAP CRM within the existing heterogeneous system environment.

Which standard MDM scenario do you recommend using?
Answers:
• Master data consolidation
• Master data harmonization
• Central master data management
• Local master data management
13. How do you avoid semantic mistakes for interface parameters in a customer specific routine?
Answers:
• Type all interface parameters.
• Document all interface parameters.
• Insert commands by using patterns.
• Name all interface parameters differently.
14. In a report, you want to define a SELECT-OPTION so_xyz. What are possible ways of defining its type?
Answers:
• Refer to a table type directly, using TYPE
• Refer to a previously defined elementary data object in the same program, using LIKE
• Refer to a previously defined elementary data object in the same program, using FOR
• Refer to a Dictionary table type with columns SIGN, OPTION, LOW, and HIGH, using FOR
15. In a customer program, a LOOP statement is processing time consuming database operations on transaction data. The execution of this program takes too long.

How can you optimize the performance of this program?
Answers:
• Create new secondary indexes for database tables.
• Divide the internal table into several smaller tables and call a function module with these tables as parameters in parallel tasks.
• Divide the internal table into several smaller tables and start a report with these tables as parameters.
• Expand the internal table with fields which are read from the database within the LOOP.
• Insert a COMMIT- WORK at the end of the LOOP.
16. You found an error for a field in Process-after-Input (PAI) of a dynpro. You change the value of this field and start PAI again.

Where is the flow control starting in PAI in that case?
Answers:
• Always at the first module in the flow control of PAI
• At the module in the flow control where the error was found
• At the first module in the flow control, where this field is listed first
• At the first module of the CHAIN group, where the error was found
17. Your customer wants to migrate from an old legacy system to SAP ERP. The databases in both systems are modified.

What is an advantage using the Legacy System Migration Workbench (LSMW) for the migration?
Answers:
• It provides standard interfaces for all fields in a data migration.
• It provides standard interfaces for all tables in a migration.
• It supports migration of data and enhanced programs.
• It supports Batch Input, Call Transaction, and Direct Input to migrate data.
18. In a new customer SAP GUI dynpro program, particular fields should be visible for authorized users only.

How do you implement this requirement?
Answers:
• Set a flag in the appropriate internal table at PBO.
• Assign those fields to specified user profiles.
• Delete field content in PBO in case the authorization check was negative.
• Define transaction variants according to the required authorizations.
19. In a program, you need an elementary data object for some calculations. What are possible ways to specify its type?
Answers:
• Refer to a domain
• Refer to a data element
• Refer to a field of a database table
• Refer to a field of a search help
20. There are basically three types of SELECT statements: SELECT SINGLE, SELECT ... ENDSELECT, and SELECT ... INTO TABLE. The SELECT ... ENDSELECT statement is also known as the SELECT loop.

Below, you will find a list of comments about SELECT ... ENDSELECT. Which of them are correct?
Answers:
• A work area (structure) is required for the selected rows. This work area can be given explicitly (with INTO) or implicitly (if a TABLES declaration is used).
• The database will transport individual rows to the database interface.
• The database will transport blocks of rows to the database interface.
• The system field sy-tabix counts the number of selected table rows.
21. The SAP List Viewer, commonly known as the ALV, is a powerful tool for displaying data. Among the various ALV types, the ALV Grid Control is used for displaying non-hierarchical table data.
Answers:
• The ALV Grid Control can be integrated into a list, a selection-screen, and a classical screen (dynpro).
• By default, a column header will be taken from the data element which is used for specifying the type of the column.
• When a report with an ALV Grid Control is executed in background processing, the program will terminate abnormally since controls can-not be addressed in background processing.
• The ALV display is automatically refreshed when the data in the data-base table is changed.
22. Where do you place the language key field in a customer-specific text table to enable generic buffering of this table?
Answers:
• Directly before the foreign key of the corresponding customizing table
• Directly after the foreign key of the corresponding customizing table
• At the last position of the key fields of the text table
• The position of the language key field does not matter
23. The concept of visibility of components is well-known in object oriented languages. Which of the following statements are correct with regard to ABAP Objects?
Answers:
• A programmer can, but need not, determine the visibility of a component. The default visibility of a component is PRIVATE.
• A PRIVATE component of a class can be accessed in all methods of that class.
• A PROTECTED method METH that is defined in a class SUPER can be overwritten (redefined) in an inherited class SUB.
• All components of inherited classes are PUBLIC.
24. Which of the following is a use case for SAP Solution Manager?
Answers:
• Support of Test Data Migration Server (TDMS) for test preparation
• Support of Visio for process modeling
• Support of SAP Early Watch Alert for early problem detection
• Support of SAP Project System (PS) for cost planning
25. What is the main advantage of enhancement packages in SAP Business Suite 7.0?
Answers:
• The installation of the packages has to be done in chronological order to make sure the project can use best practices.
• The installation is independent from the existing installation and all functions of the package will be activated at once.
• The installation is done via OSS so that the projects themselves do not require administrative knowledge.
• The installation of a whole package is required, but it is possible to activate only parts of it.
26. You analyze the complexity of a customer-specific program to determine the expected maintenance efforts.

Which measure do you use?
Answers:
• Number of binary decision points (for example, IF-statements)
• Number of references to other modularization units
• Number of executable statements
• Number of methods and interfaces
27. Which task do you need to do after printing an Adobe form to avoid a program error?
Answers:
• Clear the content of all internal tables.
• Execute the COMMIT function module.
• Close the form.
• Disable the PDF printer.
28. Internal tables are used in ABAP to store mass data. Which of the following statements about the relationships between internal tables and database tables are correct?
Answers:
• An internal table can be linked to a database table so that the content of the internal table is updated automatically as soon as the content of the database table changes.
• A data base table XYZ can be used for the definition of an internal table like this: DATA itab TYPE TABLE OF xyz.
• A data base table in the Dictionary can be defined with reference to an internal table from an ABAP program.
• If you have a huge number of rows to be dealt with in a program, it might improve the program's performance if you define a database table in the program instead of an internal table.
29. You cannot book the business data during processing of an incoming IDoc.

How must the function module react to this problem?
Answers:
• Send the IDoc backward
• Trigger an event for sender
• Set an error status in the control record
• Create a Batch Input map
30. What do you need to consider when using dynamic breakpoints?
Answers:
• You should set dynamic breakpoints only directly in the Debugger at runtime.
• You should use dynamic breakpoints only if the program is locked by another user.
• You can use dynamic breakpoints only up to a limited number without changing the program.
• If the line where you set a breakpoint already contains a breakpoint, it is deleted.
31. Which functionality has been introduced with the SAP Enterprise Edition of SAP Solution Manager?
Answers:
• Service level reporting
• Document management with display and print of digitally-signed documents
• Service desk and root cause analysis
• Test workbench with integrated Test Data Migration Server (TDMS)
32. Which ABAP language element can you use in Enterprise Services?
Answers:
• COMMIT WORK
• WRITE
• CALL FUNCTION STARTING NEW TASK
• DATA itab ... WITH HEADER LINE
33. What are the effects of a COMMIT WORK during program execution?
Answers:
• All database and internal table locks are released.
• The time slice counter is reset to zero.
• All open database cursors are closed.
• All memory fields are cleared.
34. How can you realize a modification free instantiation of objects in a customer-specific ABAP OO development?
Answers:
• By programming against interfaces and applying the Factory Design Pattern
• By inheriting from a main class and applying the Factory Design Pattern
• By implementing an interface and inheriting from a main class
• By programming against interfaces and inheriting from a main class
35. Where can you check which secondary index of a database table is used in a program?
Answers:
• In the system log
• In the performance trace
• In the debugger
• In the application log
36. The event concept is vital for selection-screens. Which of the following usages of events make sense for selection-screens?
Answers:
• Use INITIALIZATION for setting values for SELECT-OPTIONS.
• Use AT SELECTION-SCREEN for hiding fields on the selection-screen.
• Use AT SELECTION-SCREEN OUTPUT for checking user entries.
• Use AT SELECTION-SCREEN ON pa_car for checking the user entry in the PARAMETER pa_car.
37. What provides guidelines for the development of Web services?
Answers:
• Web Service Interoperability (WS-I)
• Universal Description, Discovery and Integration (UDDI)
• Web Services Description Language (WSDL)
• Simple Object Access Protocol ( SOAP )
38. What should you emphasize when presenting the results of a code review to the customer?
Answers:
• The risks and effects of identified problems
• Project plan to implement corrections
• Recommendations for concrete solutions
• Implementation of suggested corrections
39. Some ABAP statements require an explicit end, like SELECT loops, FORM definitions, or IF clauses. Which of the following ABAP statements can be nested?
Answers:
• One inner SELECT ... ENDSELECT in an outer SELECT ... END-SELECT
• One inner FORM ... ENDFORM in an outer FORM ... ENDFORM
• One inner CASE ... ENDCASE in an outer CASE ... ENDCASE
• One inner CLASS ... ENDCLASS in an outer CLASS ... ENDCLASS