Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
At Line-Selection
Start-of-Selection
Top-of-Page
At Selection-Screen
The mandatory fields must be filled in with "Get Parameter" statement or default values in Transaction ZABC
Export the screen fields to memory
The mandatory fields must be filled in with "Set Parameter" statement or default values in Transaction ZABC
The first screen in transaction ZABC can indicate that mandatory fields do not need to be filled in if called by another
transac
cl_context_clas
cl_ctmenu
cl_menu
menu_class
Joined Tables
Sequential Data Set
Program
LDB
Search Help
When all data has been retrieved for the Get
When the END GET statement is encountered
After each PUT in the LDB
When the next keyword event is encountered
T006
TVARV
TVAR
in table "nametab"
in work processes
in the dictionary
12 bytes
0 bytes
5 bytes
CHECK
It is not possible
Authority-check
Loopatitab.
ctr=ctr+1
write:sytabix.
checkctr=3.
deleteitab
endloop.
12334
1245
12345
1234
Types:beginofitab_structure,
Field1typep,
Field2typec,
Field3typeI,
Field4typen,
endofitab_structure.
Data: itab type table of itab_structure.
Sort itab.
Field2, Field4
Field1, Field3
Where only numbers are allowed and there is no need for arithmetic operations
Where there is a need for numbers, characters, and arithmetic operations
Where only numbers are allowed and there is a need for arithmetic operations
sy-dbcnt
By Value
By Table
By Header Line
Polymorphism
Inheritance
Encapsulation
Instantiation
Screens
Lists
Selection Screen
Business Objects
Logical Database
Performcalculate_salesusingamount.
FORMcalculate_saleschangingvalue(f_amount)
(More than one answer is correct)
Formal Parameter f_amount is allocated its own memory space
Formal parameter is not copied to memory space of actual parameter
Formal parameter is copied to memory space of actual parameter at the end of the form
The address of the actual parameter is passed to the formal parameter
T100
It is an Object
It is an interface
Can only be use inside SAP
It is impemented as a function
Can be a method of an object
Y_ or Z_
SelectABC
frommy_table
intowa_list
The fields are copied according to type
Field names do not matter. The fields A, B, and C, will get copied by position
Only If like named fields exist in wa_list will the contents of A, B, and C get copied into wa_list
Objects in the repository can be viewed across clie
Objects created using the IMG are stored in the reposito
It stores development objects
It stores client-specific objects
It is attached to profiles
An authorization is defined in the program attributes
Defines permissable values for each authorization field listed in the authorization object
TACTZ
Used to calculate values
Used to hide input fields
Cross client
Used to protect fields
Export Parameters
User dialogs
Exceptions
Import Parameters
exception integers
exception parameters
sy-subrc
interface parameters
Complex Entries
Menu trees
Variants
Type Checks
Translation Utilities
10
Import
Sy-SUBRC
Exceptions
Basis System
Dispatcher
ABAP Interpereter
Database Server
Database Interface
In the ABAP workbench
In the repository
In the dictionary
Tools
System
Options
Help
Status
EZ* or EY*
SAP LUW
DB LUW
Program Syntax Checks
implementation
method
attributes
definition
Database Interface
Dialog Processor
ABAP Processor
Screen Processor
MZMYPROGRAMTOP
MZMYPROGRAMDATA
APMZMYPROGRAMTOP
Dialog Module
Event
Declarations
Function
Remote-enabled
Update
Normal
Enabled
Non Updateable
implementation
definition
attributes
method
Result
Exception
Importing
Returning
REFRESH_TABLE_DISPLAY
SET_TABLE_FOR_DISPLAY
SET_TABLE_FOR_FIRST_DISPL
CONSTRUCTOR
Hashed
CREATEFROMDATA
GETDETAIL
UPDATEDETAIL
CREATELIST
GETLIST
SY-LISEL
CL_GUI_CUSTOM _CONTAINER
CL_GUI_ALVGRID_CONTAINER
CL_GUI_CONTAINER_ALV
SelectABC
frommy_table
intowa_list
Only If like named fields exist in wa_list will the contents of A, B, and C get copied into wa_list
The fields are copied according to type
Field names do not matter. The fields A, B, and C, will get copied by position
Generate a program
Generate a File
Generate Batch Input Session
Generate a Batch Job
Start the data transfer program
Will execute only one batch input session
Can be executed in background or online
Can be executed with a variant
Requires different authorization checking than the batch input session
BDCRECXX
FILE
BDCDATA
RECORD
Session Name
Program
NODATA Character
File Name
Session Type
BDC scheduling
Online transaction access
BDC creation
BDC processing
SY-BATCH
SY-BINPT
SY-ONLINE
External fields shorter than the SAP field must be zero filled
Data must be in character format
User specific settings need to be considered
Data must be initialized according to it's type
Only one
Conversion Program
Posting Program
Read Program
Transaction Program
Set the screen painter attribute GET Parameter and fill in the Parameter ID field with CAR
Use the GET Parameter in the PAI of the DYNPRO
Use the GET Parameter in the PBO of the DYNPRO
Use the SET Parameter in the PBO of the DYNPRO
SY-PFKEY
6
SNR1
SNR2
SNR3
SNR4
Batch
Direct
Synchronous
Asynchronous
Leave Screen
Leave to Transaction
Set Screen 100
Call Screen 100
After these events are processed the PAI is processed then the PBO and then the screen is displayed
After these events are processed the screen is redisplayed but the PBO is not processed
After these events are processed the PBO module is processed and the screen is redisplayed
NUMBER_GET_NEXT
NUMBER_GET_INFO
NUMBER_RANGE_INTERVAL_LIST
CHAIN.
Field:Flight,Carrid.
ModuleValidateonChainInput
ENDCHAIN.
The Module Validate is never processed
The Module Validate is processed if at least one of the fields FLIGHT or CARRID are other than the initial value
The Module Validate is processed only if both FLIGHT and CARRID are initial values
The Module Validate is processed if both FLIGHT and CARRID are other than the initial value
ProcessAfterInput
ModuleExitatexitcommand
FieldABCModuleValidate_ABC.
10AllfieldsnotdefinedinFIELDstatements
20SystemperformsAutoFieldChecking
30FieldsinFIELDStatements
20, 30, 10
20, 10, 30
10, 20, 30
DYNP_VALUES_UPDATE
F4IF_FIELD_VALUE_REQUEST
DYNP_VALUES_READ
SAP memory
Shared Memory
ABAP/4 memory
Column sizing is adjustable and can be controlled by the user
Table control rows are scrollable
Page scrolling using the standard toolbar is automatic and can be controlled by the user
Function Code
ACTIVETAB
OK_Code
Synchronous RFC
Asynchronous RFC
Transactional RFC
Can set their own GUI status
have their own OK_CODE
Can set their own titlebar
Multiple subscreens are possible in a single screen.
You can also specify the subscreens dynamically at runtime.
Gives a single user read and write access to the specified table rows. No other users may access the rows.
V2
CallFunctionEnqueue_ESMYLOCK
Exporting
Field1=
Field2=
Field3=
Field 1 = AA, FIELD2 = 111, Field3 = Initial
Field 1 = AA, FIELD2 = 111, Field3 = Space
Field1 = Generic, Field2 = Generic, Field3 = Space
ROLLBACK WORK
COMMIT WORK
Each external session has its own ABAP memory
SAP Memory can be accessed by all external sessions
ABAP memory is local to each external session
02 - System Failure
03 - Already_Locked
08 - General_Failure
01 - Foreign_Lock
ENQUEUE_EZMARA
DEQUEUE_EZMARA
Message I001.
Database Server
Database Interface
Basis System
Central
Three Tier
Two tier client server
Single Database
Controls resources for the R/3 applications
Issues SQL requests to the underlying database
Dispatches tasks to non R3 systems
Internet Access
Web Browser Access
single sign on access to all services
One common generically defined user role
Only One
One for every transaction in the SAP LUW
At least One
Organizational unit
One Application server and one Database server
No Application server and one Database server
One Application server and many Database servers
Many Application servers and one Database server
rdisp/max_wprun_time
rdisp/txntime
rdisp/btctime
SAP LUW
DB LUW
Commit Point
communication
dialog
message
At least 3
Only 3
3 for each tier
controls information flow
automates executon of activities
manages communication media
builds screen sequences
Central
Database
3 Tier
2 Tier Presentation
System Alerts
System Configuration
Starting and stopping SAP
Program Syntax Checks
EZ* or EY*
Instance plus system services
Multiple Application Servers
Database
Instance plus Database
Requesting an access key for a change to SAP code
Issuing Problem Messages to SAP
Booking SAP training
Maintaining Authorizations
a software component that provides a service
To register SAP modifications made by a developer
a menu exit
a text exit
a program exit
a screen exit
ZZ or YY
Processing units that execute based on their position in the sourfce code
Processing areas for a programs Global Data
Smallest units in ABAP
OR conditions only
any boolean operators
combination of OR or AND conditions
WorkBench Organizer
Repository Browser
Customizing Organizer
When a method of an object is called
When a CREATE OBJECT statement is processed
When the reference variable for the class is defined
defined by Basis
10
1
Import Parameters
User dialogs
Exceptions
Export Parameters
Domains
Data elements
Record structures
It stores client-specific objects
Objects created using the IMG are stored in the repository
It stores development objects
Objects in the repository can be viewed across clients
Standard
Hashed
Sorted
P
N
I
X
D
TRDIR
TADIR
defined by Basis
10
unlimited
Data:cl_containertypereftocl_gui_custom_container,
cl_gridtypereftocl_gui_alv_grid.
cl_grid points to the object that communicates with the container control
cl_container points to the object that communicates with the container control
cl_grid points to the object that communicates with the ALV grid control
cl_container points to the object that communicates with the ALV grid control
The Dispatcher
The Programmer
The User
The run time system
An authorization is defined in the program attributes
It is attached to profiles
Defines permissable values for each authorization field listed in the authorization object
SET_TABLE_FOR_DISPLAY
REFRESH_TABLE_DISPLAY
CONSTRUCTOR
SET_TABLE_FOR_FIRST_DISPLAY
CL_GUI_CONTAINER_ALV
CL_GUI_CUSTOM _CONTAINER
CL_GUI_ALVGRID_CONTAINER
Run SPAU to adjust change requests
Run SPDD to adjust dictionary objects
Release all Change Requests
highlighted line
info sign
stop sign
warning sign
TACT
TACTZ
Read
Delete
Update
Append
In the user master record
In the tauth table
In the users own data
in the USER01 table
The authorization concept is used to restrict access to users
The authorization concept is used to restrict access to data and transactions
The authorization concept is used to restrict access to the dictionary
The authorization concept is used to restrict access to servers and work processes
SHDB
SM35
SXDA
BDC scheduling
Function
BAPI
Batch Input Sessions
Program with File Input
Program with Spreadsheet Input
F1
Scoll Bars
Error Dialogs
Subscreens
BMV0
Session Type
NODATA Character
Program
Session Name
File Name
BDC_OKCODE
Released
Direct database updates are applied
Generate a File
Generate a program
Generate Batch Input Session
Generate a Batch Job
By the Business Object Repository
By the Method
By the Transaction
Assignment
DDIC
ABAP ABAP
Format
Aggregate Objects
Fixed Values belonging to a domain
Programs
Tables
Prevents a single user with read-write access from attaining further locks to the same set of table rows. This is useful when
you are using recursive routines to make updates.
allows multiple users to access the specified table rows, but with read-access only. No write-accesses are allowed at any
time.
Gives a single user read and write access to the specified table rows. No other users may access the rows.
CALL SUBSCREEN
CALL TRANSACTION
Message I001.
At User-Command
Exit the Transaction
Object Browser
Workbench
Repository
Customizing
System Wide
Client independent
Versions
Client specific
Variant Transactions
Custom Developed Programs
Operating System Scripts
SET/GET Parameters
Desktop Shortcuts
Dictionary
Application
Repository
Customizing
Changes are lost during an upgrade to a new release
New versions may need to be adjusted to include the modification
Modified objects lose their connection to the standard
Adjustment is automatic during an upgrade
User Exit
Modification
Copy
Custom development
1.BusinessBlueprint
2.Realization
3.ProjectPreparation
4.GoLiveandSupport
5.FinalPreparation
1, 3, 2, 5, 4
3, 1, 2, 5, 4
3, 2, 1, 5, 4
Interfacing
Personalization
Enhancement
Modification
Customizing
The modification assistant will prompt you for a change request to reapply the change
Options 'replace' and 'insert' is made available for you to decide on how to handle the upgrade
The user modifications are automatically inserted into the new subroutine release
The user modifications must be reapplied manually
A.ProjectLeadercreatesachangerequestandassignsdeveloperstothechange
request
B.Developercreatesrepositoryobjectsandassignsobjectstoadevelopmentclass
C.WBOcreatesataskforeachdeveloperassignedtothechangerequest
D.ProjectLeaderreleaseschangerequest
E.Developerreleasestask
F.Objectsareexportedtothetransportdirectory
B AC D E F
ACBEDF
ABCDEF
3 clients in 1 system
1 client in 3 separate systems
3 clients in 3 separate systems
fieldcat
alv_catalog
lcv_t_fcat
catalog
AtSelectionScreenonvaluerequestforsales.
Callscreen100.
When the user presses F1, Screen 100 is displayed instead of the normal possible values search help
When the user presses F4, Screen 100 is displayed in addition to the normal help screen
When the user presses F4, Screen 100 is displayed instead of the normal possible values search help
When the user presses F1, Screen 100 is displayed in addition to the normal help screen
File
Node
Complex Data Object
Table
Structure
Sequential Files
Views
LDB
Database Tables
When all data has been retrieved for the Get
After each PUT in the LDB
When the END GET statement is encountered
When the next keyword event is encountered
6. Given:
DO.
Write: /1 'E equals MC squared.'.
ENDDO.
This will result in ____.
A: output of 'E equals MC squared.' on a new line one time
B: an endless loop that results in an abend error
C: output of 'E equals MC squared.' on a new line many times
D: a loop that will end when the user presses ESC
7. The following code indicates all of the following except:
DATA: counter type i.
CLEAR counter.
DO.
counter = counter + 1.
IF counter >= 5. exit. ENDIF.
ENDDO.
WRITE: /1 counter.
A: Start a loop.
B: Increment counter until it is 5 or more.
C: Execute the code between DO and ENDDO five times.
D: Exit the program if counter is 5 or more.
8. A DATA statement may appear only at the top of a program, before START-OF-SELECTION.
A: True
B: False
9. This data type has a default length of one and a default value = '0'.
A: P
B: C
C: N
D: I
10. The editor function that formats and indents the lines of code automatically is called ____.
A: Auto align
B: Pretty printer
C: Generate version
D: Syntax check
11. The transport route of an ABAP workbench object is determined by the object's:
A: Client designation
B: Program type
C: Development class
D: Naming convention
12. What value must ch_field contain so that "Nice job!" will be output?
write: /1 'Nice'.
CHECK ch_field NE 'X'.
Write: 'job!'.
A: 'X'
B: Anything other than 'X'
C: "Nice job!" will not be output by this code
D: None of the above
13. Given:
CONSTANTS: var_one(3) type C value 'DOG'.
IF var_one = 'dog'.
WRITE: /1 'Bark!'.
ELSE.
WRITE: /1 'Meow!'.
ENDIF.
WRITE: var_one.
This will result in the output:
A: Bark! DOG
B: DOG
C: Meow! DOG
D: None of the above
14. In regard to CONTINUE, which of the following is a true statement?
A: Causes a loop to terminate.
B: Jumps immediately to the END-OF-SELECTION event.
C: Stops the current loop pass and gets the next.
D: Continue may be used outside of loops.
15. What is the system field for program name?
A: SY-REPRT
B: SY-PROG
C: SY-REPID
D: SY-PNAME
16. Which keyword removes any line from an internal table?
A: ERASE
B: MODIFY
C: STRIP
D: DELETE
17. When coding AT FIRST fld1. _ ENDAT. within an internal table loop, you should avoid using:
A: SORT itab by fld1.
B: LOOP AT itab WHERE fld1 = pfld.
C: SUM.
D: WRITE itab-fld1.
18. To stop selection when a certain number of records have been found, use ____.
A: UP TO n ROWS
B: BYPASSING BUFFER
C: ORDER BY
D: GROUP BY
19. To total the numeric fields at a control break, use:
A: ADD.
B: SUM.
C: COUNT.
D: TOT.
20. To sort data as you select it, use ____.
A: INTO TABLE
B: SORT BY
C: ORDER BY
D: None of the above
21. To limit the number of records selected from the database, use ____.
A: WHERE
B: WHEN
C: IF
D: CASE
22. Your own selection screen modifications should be coded here:
A: AT SELECTION-SCREEN OUTPUT.
B: AT USER-COMMAND.
C: AT LINE-SELECTION.
D: INITIALIZATION.
23. Instead of using OCCURS 50, you could use:
A: ROWS 50
B: INDEX 50
C: DEFAULT 50
D: INITIAL SIZE 50
24. What addition to the READ TABLE statement must be used when reading a hashed or sorted internal table to ensure
that a binary search will be used?
A: WITH KEY
B: WITH TABLE KEY
C: SEARCH TYPE
D: WHERE
Ans. With TABLE KEY
25. To assign an initial value, include this option of the PARAMETERS statement:
A: FIRST
B: INITIALIZATION
C: VALUE
D: DEFAULT
26. By definition, what fields make up the standard internal table key?
A: All the table's fields.
B: All the non-numeric fields.
C: All the numeric fields.
D: The first field
27. In regard to COMMIT WORK, which of the following is NOT a true statement?
A: Executes a database commit.
B: Releases locks.
C: Calls PERFORM_ON COMMIT subroutines.
D: Committed work may be undone by ROLLBACK WORK.
28. To use a secondary table index in your SELECT statement, you should:
A: Include the index fields in the WHERE clause in the correct order
B: Use the INDEX clause of the SELECT statement
C: Include MANDT in the WHERE clause
D: None of the above
29. Which of these ABAP statements does NOT declare an internal table?
A: DATA: BEGIN OF itab OCCURS 0, field(10) TYPE C, END OF itab.
B: DATA: itab LIKE struc OCCURS 10 WITH HEADER LINE.
C: DATA: BEGIN OF itab WITH HEADER LINE, field(10) TYPE C, END OF itab.
D: DATA: itab TYPE STANDARD TABLE OF struc_type.
30. ABAP Open SQL allows SAP applications to run on any supported database system without modifying the source
code.
A: True
B: False
31. To properly tune the following code, you should:
SELECT fld1 fld2 fld3 FROM tab1 INTO (fld4, fld5, fld6)
WHERE fld7 = pfld7.
CHECK tab1-fld9 = pfld9.
WRITE: /1 fld4, fld5, fld6.
ENDSELECT.
A: Add a SY-SUBRC check after ENDSELECT.
B: Remove the INTO clause of the SELECT statement.
C: Take the WRITE statement out of the SELECT_ENDSELECT.
D: Move the CHECK statement into the WHERE clause.
32. To make a single field open for input after an error or warning message
A: Add the field to the screen with the input attribute checked.
B: Declare the field as global data.
C: Use the FIELD flow logic statement
D: Call message type S.
33. Given:
SELECT fld1 fld2 fld3 FROM tab1 INTO (itab-fld4, itab-fld5, itab-fld6)
WHERE fld7 = pfld7.
APPEND itab.
ENDSELECT.
Which of the following is a good performance tuning technique?
A: Change the SELECT statement to use INTO TABLE itab.
B: Add MOVE statements to fill the header line of itab.
C: Remove the internal table itab from the SELECT statement.
D: This code is optimized; no change is required.
34. All of the following pertain to a subroutine's local data object except:
A: Declared inside of the subroutine.
B: Available only within the subroutine.
C: Must follow the same declaration syntax as Global data.
D: Value is known to all subroutines.
35. Page headers for a secondary list should be coded in which event?
A: TOP-OF-PAGE.
B: START-OF-SELECTION.
C: TOP-OF-PAGE DURING LINE-SELECTION.
D: AT USER-COMMAND
36. Given:
REPORT ZTESTPRG.
FORMAT INTENSIFIED OFF.
WRITE 'This is a line of output'.
AT LINE-SELECTION.
MODIFY CURRENT LINE LINE FORMAT INTENSIFIED.
What happens when the text line is double-clicked for the first time?
A: The line remains unchanged.
B: The line becomes open for input.
C: The line is changed to intensified output.
D: Nothing, this is a syntax error.
37. When is it optional to pass an actual parameter to a required formal parameter of a function module?
A: The actual parameter is type C.
B: The formal parameter contains a default value.
C: The formal parameter's "Reference" attribute is turned on.
D: It is never optional.
38. A select statement has built-in authorization checks.
A: True
B: False
39. To prevent invalid list lines from being selected by a double-click, you should do all of the following except:
A: Check the hide field after outputting the basic list.
B: Clear the hide field after outputting the basic list.
C: Check the hide field in AT LINE-SELECTION to make sure the hide field has a value.
D: Clear the hide field at the end of the AT LINE-SELECTION event.
40. The table control attribute <ctrl>-LINES indicates the total number of lines in the internal table.
A: True
B: False
41. The ABAP statement you will typically use in a 'CANCEL' function is:
A: CALL SCREEN 0.
B: COMMIT WORK.
C: ROLLBACK WORK.
D: UPDATE
42. If the user picks the WIND function, the following code indicates:
AT USER-COMMAND.
IF SY-UCOMM = 'WIND'.
WINDOW STARTING AT 7 4 ENDING AT 65 12.
WRITE text-900.
ENDIF.
A: Display text-900 in a dialog window.
B: Display text-900 in a full screen.
C: Output text-900 on row 4, starting at column 7.
D: Draw a box around text-900 with coordinates (7,4) and (65,12)
43. To call a local subroutine named calculate_answer, use this line of code:
A: PERFORM calculate_answer.
B: CALL calculate_answer.
C: USING calculate_answer.
D: SUB calculate_answer.
44. In regard to a screen's flow logic, which of the following in not a true statement?
A: Contains PBO and PAI module statements.
B: Uses the same syntax as the ABAP modules.
C: Determines the processing sequence of ABAP logic for a screen.
D: Controls what happens before a screen is output and what happens after user input
45. Before a function module may be tested, it must first be:
A: Linked
B: Authorized
C: Released
D: Active
1. The structure of a table has been changed in the ABAP Dictionary. Which of the following adjustments in the relevant
database table is correct, if you want to retain the previous data?
Delete and recreate the database table
Change the database directory (ALTER TABLE) where the structure change with ALTER TABLE is supported by the
database.
Convert the table
4. Which of the following statements are true?
A Repository object can have an original version in more than one system.
You can change a local object without using a change request.
A Repository object can only have an original version in a single system. Other systems may contain copies of the object.
You can only correct a Repository object in its original system
5. You want to define an interface status for a details list displayed after a WINDOW statement.
Which status type do you have to use?
Screen
Dialog box
List
List in dialog box
6. You have a screen with number 100, in which the next screen is defined as screen 200.
Screen 100 is called using CALL SCREEN. After the PAI modules of screen 100 have been executed, and assuming that
they contain no statements that affect the screen sequence, where does processing
continue?
In the PBO modules of screen 200.
Directly after the CALL SCREEN statement
In the PBO modules of screen 100.
7. In the ABAP Editor, how can you find information about an ABAP statement?
By placing the cursor on the keyword in your program and pressing F1
By choosing "Help on…" from the menu (or the corresponding icon) and entering the keyword in the subsequent
dialog box.
By placing the cursor on the keyword in your program and pressing F4.
By placing the cursor on the keyword in your program and choosing the "Help" menu.
8. You want to transport a local object into another system. What do you do?
Assign the object to a change request.
Assign the object to a transport request.
Reassign the object to a different development class and then assign it to a transport request.
You cannot transport local objects.
Copy the object and assign the copy to a different development class, then assign the object to a transport request.
9. Which of the following statements about development classes are true?
The development class to which an object is assigned determines its path through the transport landscape.
If you want objects to be transported together, they must all belong to the same development class.
The interlinking of corrections requires that the objects involved all belong to the same development class.
A development class is a container for objects that all belong to the same functional area.
The development class of an object determines who is allowed to change it.
10. Which of the following function modules are used to construct batch input sessions?
BDC_ADD_TRANSACTION
BDC_INSERT
BDC_CLOSE_GROUP
BDC_OPEN_GROUP
11. You are using Transaction SM35 (System->Services->Batch input- >Edit) to process a batch input session in the mode
‘Display errors only’. An error occurs.
Which of the following assertions could apply?
The system flags the session status as 'Incorrect'.
The batch input program used to generate the session must be restarted before you the session can be processed again.
The system flags the session status as 'Incorrect'. The session can be processed again.
The system flags the session status as 'Incorrect'. It can only be processed again in the processing mode
Process/foreground'.
The system flags the session status as 'Incorrect'. It can only be processed again by you.
12. In a program, how can you find out how many lines of a table control (step loop) are displayed?
The value of SY-STEPL
The value of SY-LOOPC in a module called between LOOP and ENDLOOP in the PBO event.
The value of SY-LOOPC in a module called between LOOP and ENDLOOP in the PAI event.
The value of SY-LOOPC but not between the LOOP and ENDLOOP statements.
Using the DESCRIBE statement
13. In the middle of a dialog program, you need to change to list mode in order to read data using a logical database.
Which of the following statements would you use?
CALL SCREEN
READ LIST
CALL TRANSACTION <Report transaction>
LEAVE TO LIST-PROCESSING
SUBMIT <Name> AND RETURN
14. You used the statement LEAVE TO LIST-PROCESSING to switch to list
processing from a dialog program. How can you return to dialog
processing?
EXIT
Standard BACK function
Not possible
You can ONLY return to dialog porcessing if you used the AND
RETURN TO SCREEN n addition in the
LEAVE TO LIST-PROCESSING statement.
15. You have a screen with three input/output fields named F1, F2 and F3 respectively. F1 is in the first line of the screen,
F2 in the second line, and F3 in the third line. When the screen is displayed, how would you ensure that the cursor
is positioned at the first character of field F2?
By entering the field name F2 in the cursor position field in the screen attributes.
By using the statement SET CURSOR FIELD 'F2' in a PAI module.
By using the statement SET CURSOR FIELD 'F2' in a PBO module.
By using the statement SET CURSOR LINE 2 in a PBO module.
16. How can you inactivate functions in the GUI status?
LOOP AT SCREEN. SCREEN-INACTIVE. MODIFY SCREEN.
SET FUNCTION INACTIVE.
SET PF-STATUS EXCLUDING f
SET PF-STATUS EXCLUDING itab
17. In a dialog program, how can you display a dialog box?
GO TO SCREEN 200
CALL SCREEN 200
SET SCREEN 200
CALL SCREEN 200 STARTING AT 5 5.
WINDOW 200 STARTING AT 5 5.
They allow customers to call their own functions from SAP menus.
They are usually coupled with a function module exit.
The position and function code of a menu exit are defined by the SAP programmer.
They have function codes beginning with Y or Z.
You call them using CALL CUSTOMER-MENU.
27. Which of the following statements apply to screen exits?
They allow customers to insert a sequence of screens into the
existing screen sequence defined by SAP.
They are called in the flow logic using the statement CALL
CUSTOMER-SUBSCREEN … INCLUDING…
Customers can edit them using the Transaction CMOD.
To use them, the customer must create or edit a subscreen in a SAP
X function group.
All of the data from the SAP module pool is available for use in the
modules of the customer subscreen.
F. Programming Language
28. You have defined parameters and/or select options for a program.
What do you have to do to ensure that short texts are displayed on
the selection screen of the report, and not just the coded names of
the parameters and select options?
Use the Screen Painter to modify the appropriate field names in the
field list of the selection screen.
Output the appropriate terms at the INITIALIZATION event.
Output the appropriate terms at event AT SELECTION-SCREEN.
Maintain the selection texts.
29. Which of the following variants define an internal table?
DATA: BEGIN OF tab,
a (72),
END OF tab.
DATA: BEGIN OF tab occurs 100,
a (72),
END OF tab.
DATA: tab TYPE <Typ> OCCURS 0.
DATA: tab LIKE table of <Struktur>.
DATA: BEGIN OF COMMON,
a (72),
END OF COMMON.
30. An internal table with the fields
kunde (Type C, Length 30) and lifnr (Type I) is filled using the following statements:
itab-kunde = 'Meier'. itab-lifnr = 8. APPEND itab.
itab-kunde = 'Lehmann'. itab-lifnr = 7. APPEND itab.
itab-kunde = 'Schulze'. itab-lifnr = 4. APPEND itab.
itab-kunde = 'Schmidt'. itab-lifnr = 10. APPEND itab.
Which of the following statements would you use to read the entry for Schmidt?
SELECT SINGLE * FROM itab WHERE kunde = 'Schmidt'.
READ TABLE itab WITH KEY 'Schmidt' BINARY SEARCH.
READ TABLE itab WITH KEY 'Schmidt'.
READ TABLE itab INDEX 10.
G. R/3 System Architecture
LEAVE TO LIST-PROCESSING.
EXIT.
39. Which of the following statements can you use to change a list?
LOOP AT SCREEN, SCREEN-NAME = ‘xxxx’. END LOOP.
MODIFY LINE FIELD VALUE <f1> FROM ‘xxxx’.
SY-LISEL(10) = ‘xxxx’.
AT LINE – SELECTION.
MOVE ‘xxxx’ TO LISTLINE.
READ LINE FIELD VALUE <f1> INTO <g1>.
<g1> = ‘xxxx’.
I. System
40. You want to define a screen in which you can trigger a function you have already defined.
Which system/program variables return the corresponding function code?
SY-PFKEY
In the variables assigned to the OK code field (command field)
SY-TCODE
OK-CODE
41. From which system field can you find out the current GUI status?
SY-PFKEY
SY-UCOMM
SY-STATUS
1. The major difference between DO and WHILE is:
A: WHILE requires a logical expression.
B: You cannot use the CONTINUE statement with WHILE.
C: A WHILE loop may not be nested within another WHILE loop.
D: Endless loops are not possible with WHILE
2. This event retrieves data from a logical database.
A: READ
B: SELECT
C: GET
D: AT USER-COMMAND
3. In a line of code, text-100, is an example of which type of text element?
A: Text symbol
B: Selection text
C: Text title
D: Text identifier
4. Which of the following is NOT a character data type?
A: F
B: D
C: T
D: X
5. These events are listed in the order they will be processed: AT SELECTION-SCREEN, START-OFSELECTION, GET dbtab, END-OF-SELECTION.
A: True
B: False
6. To indicate that your new function module is ready to be freely used by anyone, you should:
A: Activate it.
B: Release it.
C: Add documentation.
D: Send out an e-mail.
7. Page headers for a basic list can be coded in the event:
A: NEW-PAGE.
B: AT LINE-SELECTION.
C: INITIALIZATION.
D: TOP-OF-PAGE.
8. If a field, NAME1, is declared as a global data object, what will be output by the following code?
report zabaprg.
DATA: name1 like KNA1-NAME1 value 'ABAP programmer'.
name1 = 'Customer name'.
CLEAR name1.
perform write_name.
FORM write_name.
name1 = 'Material number'.
WRITE name1.
ENDFORM.
A: Customer name
B: ABAP programmer
C: Material number
D: None of the above
9. What is the transaction code for the ABAP Dictionary?
A: SE10
B: SE38
C: SE11
D: SE37
10. What standard data type is the following user-defined type?
TYPES: user_type.
A: N
B: C
C: I
D: Undefined
11. Page headers for a secondary/details list can be coded in the event:
A: GET.
B: INITIALIZATION.
C: TOP-OF-PAGE DURING LINE-SELECTION.
D: NEW-PAGE.
12. Without displaying the from/to fields on the selection screen, you declare an internal table to hold selection
criteria using the keyword
A: TYPES
B: TABLES
C: FIELD-GROUP
D: RANGES
13. The program type attribute for a dialog program is:
A: M
B: 1
C: I
D: D
14. After coding an authorization check, what else should you code to handle a failed check?
A: WRITE 'You are not authorized'.
B: IF SY-SUBRC NE 0. EXIT. ENDIF.
COMMIT WORK.
ELSE.
ROLLBACK WORK.
ENDIF.
If my_ind is initial, this will result in:
A: Changes are written to the database.
B: Changes are undone without writing them to the database.
C: A database error.
D: An abend.
25. To summarize the contents of several matching lines into a single line, use this SELECT statement clause.
A: INTO
B: WHERE
C: FROM
D: GROUP BY
26. To limit your SELECT statement to user-entered SELECT-OPTIONS, use ____.
A: IN
B: EQ
C: NE
D: BT
27. The following code indicates:
DATA: itab1 LIKE struc1 OCCURS 0 WITH HEADER LINE,
itab2 LIKE struc1 OCCURS 0 WITH HEADER LINE.
itab1[] = itab2[].
A: Set the type of itab1 to the type of itab2.
B: Move the header line of itab2 to itab1.
C: Move all the rows of itab2 to itab1.
D: Move the last row of itab2 to itab1.
28. To grant a set of access privileges to a user ____.
A: enter the authorization profile name in the user master record
B: assign the user to the authority object's list of allowed users
C: include the user name in the ABAP authorization check
D: none of the above
29. Given:
SELECT fld1 FROM tab1 INTO fld4
WHERE fld7 = pfld7.
tot = tot + fld4.
ENDSELECT.
A good performance tuning technique would be to change the SELECT statement to use:
A: GROUP-BY.
B: SUM.
C: TOT.
D: MAX.
30. What must you code in the flow logic to prevent a module from being called unless a field contains new user
input?
A: ON INPUT
B: CHAIN
C: FIELD
D: ON REQUEST
31. To make a single field open for input after an error or warning message
A: Add the field to the screen with the input attribute checked.
B: Declare the field as global data.
C: Use the FIELD flow logic statement
D: Call message type S.
32. From program zprog1, to call a subroutine named sub_name in program zprog2, code the following:
A: CALL zprog2(sub_name).
B: PERFORM sub_name(zprog2).
C: PERFORM (sub_name)zprog2.
D: INCLUDE zprog2(sub_name).
33. To prevent duplicate accesses to a master data field:
A: Create an index on the master data field.
B: Remove nested SELECT statements.
C: Use SELECT SINGLE.
D: Buffer the data in an internal table.
34. In relation to an internal table as a formal parameter, because of the STRUCTURE syntax, it is possible to:
A: Use the DESCRIBE statement within a subroutine.
B: Loop through the internal table within a subroutine.
C: Access the internal table fields within a subroutine.
D: Add rows to the internal table within a subroutine.
35. When making a function module call, pass internal tables via the parameter ____.
A: EXPORTING
B: IMPORTING
C: USING
D: TABLES
36. In regard to the DESCRIBE LIST statement, which of the following is a true statement?
A: Retrieves the ABAP report name.
B: Retrieves the number of list lines and pages.
C: Retrieves the window title.
D: None of the above.
37. Which dialog programming section is used to handle user functions?
A: PBO
B: PAI
C: INITIALIZATION
D: None of the above
38. To allow the user to double-click a list line, write code within the event:
A: START-OF-SELECTION.
B: AT LINE-SELECTION.
C: INITIALIZATION.
D: TOP-OF-PAGE.
39. In the following code, what does function FC12 do?
AT USER-COMMAND.
CASE SY-UCOMM.
WHEN 'FC11'.
SCROLL LIST LEFT BY 20 PLACES.
WHEN 'FC12'.
SCROLL LIST FORWARD.
ENDCASE.
A: Shifts the list rows up.
B: Moves the cursor.
C: Scrolls the list to the right.
D: Performs a page up.
40. If you need to add a new field to a table delivered with the standard SAP system, you should add the field
____.
A: with the Tab.maint.generator function
B: directly to the table with a name that starts with Z or Y
C: via a secondary index
D: using an append structure
41. The CASE statement may not contain a logical expression, as in
CASE my_fld > 3.
A: True
B: False
42. What is the major difference between an ABAP Dictionary table and an ABAP Dictionary structure?
A: A table has columns but no rows, and a structure has rows but no columns.
B: A structure has a primary key and a table does not.
C: A table may not be buffered, but a structure may be buffered.
D: A table stores data, and a structure does not.
43. Which statement correctly declares a field-symbol?
A: FIELD-SYMBOLS fs.
B: FIELD-SYMBOLS <fs>.
C: FIELD-SYMBOLS [fs].
D: FIELD-SYMBOLS (FS).
44. How many digits may be stored in the following data object?
DATA: digits(6) type p.
A: 6
B: 11
C: 12
D: 5
45. The following code indicates:
INITIALIZATION.
concatenate 'IEQ' sy-uname into suname.
A: The field suname will be output in the page header.
B: SELECT-OPTION suname will contain the user name in its from value at runtime.
C: The user name is set equal to the value contained in field suname.
D: A default value of 'IEQ' is assigned to the PARAMETER suname.
46. Pressing the enter key in PC mode while entering code in the ABAP editor will do all of the following except:
A: Insert a blank line after the current line
B: Insert a blank line before the current line
C: Select the beginning of a block of lines
D: Split the current line at the cursor position
47. This data type has a default length of eight and a default value = '00000000'.
A: P
B: D
C: N
D: C
48. In regard to the three-tier client/server architecture, which of the following is a true statement?
A: The presentation server processes the SAP program logic.
B: An application server is responsible for updating database tables.
C: Typically, there is a one-to-one ratio of database servers to presentation servers.
D: The application server layer is the level between a presentation server and a database server.
49. What will this code output?
PARAMETERS: rad1 radiobutton group g1,
rad2 radiobutton group g1,
rad3 radiobutton group g1.
CASE 'X'.
WHEN rad1.
write: /1 'ABC'.
WHEN rad2.
write: /1 'DEF'.
WHEN rad3.
Write: /1 'XYZ'.
ENDCASE.
A: ABC
B: DEF
C: XYZ
D: Nothing; a syntax error occurs.
E: Depends on which radiobutton the user chooses
50. The following code indicates
write: /5 'I Love ABAP'.
A: Output 'I Lov' on the current line
B: Output 'I Love ABAP' starting at column 5 on the current line
C: Output 'I Lov' on a new line
D: Output 'I Love ABAP' starting at column 5 on a new line
51. The following event may be explicitly coded, but it is also implied.
A: END-OF-SELECTION.
B: START-OF-SELECTION.
C: AT LINE-SELECTION.
D: AT SELECTION-SCREEN.
52. The following code indicates:
SELECTION-SCREEN POSITION 10.
A: The next parameter or comment will start at column 10.
B: The next parameter or comment will start at row 10.
C: The cursor will be placed on the 10th selection screen parameter.
D: Row 10 of the selection screen will appear at the top of the screen.
53. Which keyword adds a line to the end of an internal table?
A: DELETE
B: APPEND
C: ADD
D: MODIFY
1. If a table does not have MANDT as part of the primary key, it is ____.
A: A structure
B: Invalid
C: Client-independent
D: Not mandatory
2. In regard to CALL, which of the following is NOT a valid statement?
A: CALL FUNCTION
B: CALL SCREEN
C: CALL TRANSACTION
D: CALL PROGRAM
3. Name the type of ABAP Dictionary table that has these characteristics:
Same number of fields as the database table
Same name as database table
Maps 1:1 to database table
A: Pooled
B: Cluster
C: Transparent
D: View
4. An event starts with an event keyword and ends with:
A: Program execution.
B: END-OF-EVENT.
C: Another event keyword.
D: END-EVENT.
5. What is the system field for the current date?
A: SY-DATUM
B: SY-DATE
C: SY-DATID
D: SY-SDATE
6. The following code indicates:
17. After adding rows to an internal table with COLLECT, you should avoid adding more rows with APPEND.
A: True
B: False
18. Which of the following is not a component of control break processing when looping at an internal table?
A: AT START OF
B: AT FIRST
C: AT LAST
D: AT NEW
19. A dictionary table is made available for use within an ABAP program via the TABLES statement.
A: True
B: False
20. Which of the following would be best for hiding further selection criteria until a function is chosen?
A: AT NEW SELECTION-SCREEN
B: SELECTION-SCREEN AT LINE-SELECTION
C: SUBMIT SELECTION-SCREEN
D: CALL SELECTION-SCREEN
21. What must you code in the flow logic to prevent a module from being called unless a field contains a noninitial value (as determined by its data type)?
A: ON INPUT
B: CHAIN
C: FIELD
D: ON REQUEST
22. The AT USER-COMMAND event is triggered by functions defined in the ____.
A: screen painter
B: ABAP report
C: menu painter status
D: ABAP Dictionary
23. In regard to a function group, which of the following is NOT a true statement?
A: Combines similar function modules.
B: Shares global data with all its function modules.
C: Exists within the ABAP workbench as an include program.
D: Shares subroutines with all its function modules.
24. In regard to SET PF-STATUS, you can deactivate unwanted function codes by using ____.
A: EXCLUDING
B: IMMEDIATELY
C: WITHOUT
D: HIDE
25. In regard to data transported in PAI when the FIELD statement is used, which of the following is NOT a true
statement?
A: Fields in PBO are transported directly from PAI.
B: Fields with identical names are transported to the ABAP side.
C: Fields not defined in FIELD statements are transported first.
D: Fields that are defined in FIELD statements are transported when their corresponding module is called.
26. The order in which an event appears in the ABAP code determines when the event is processed.
A: True
B: False
27. A field declared as type T has the following internal representation:
A: SSMMHH
B: HHMMSS
C: MMHHSS
D: HHSSMM
28. Which of the following is NOT a component of the default standard ABAP report header?
A: Date and Time
B: List title
C: Page number
D: Underline
29. Assuming a pushbutton with function code 'FUNC' is available in the toolbar of a list report, what event is
processed when the button is clicked?
A: AT USER-COMMAND.
B: AT PFn.
C: AT SELECTION-SCREEN.
D: END-OF-SELECTION.
30. In regard to field selection, what option of the SELECT statement is required?
A: FOR ALL ENTRIES
B: WHERE
C: INTO
D: MOVE-CORRESPONDING
31. The following program outputs what?
report zjgtest1
write: /1 'Ready_'.
PARAMETER: test.
INITIALIZATION.
write: /1 'Set_'.
START-OF-SELECTION.
write: /1 'GO!!'.
A: Set_ GO!! (each on its own line)
B: Set_ Ready_ GO!! (all on their own lines)
C: Ready_ GO!! (each on its own line)
D: Ready_ Set_ GO!! (all on their own lines)
32. To declare a selection criterion that does not appear on the selection screen, use:
A: NO-DISPLAY
B: INVISIBLE
C: MODIF ID
D: OBLIGATORY
33. An internal table that is nested within another internal table should not contain a header line.
A: True
B: False
34. What is output by the following code?
DATA: BEGIN OF itab OCCURS 0, letter type c, END OF itab.
itab-letter = 'A'. APPEND itab. itab-letter = 'B'. APPEND itab.
itab-letter = 'C'. APPEND itab. itab-letter = 'D'. APPEND itab.
LOOP AT itab.
SY-TABIX = 2.
WRITE itab-letter.
EXIT.
ENDLOOP.
A: A
B: A B C D
C: B
D: B C D
35. To select all database entries for a certain WHERE clause into an internal table in one step, use
A: SELECT_INTO TABLE itab_
B: SELECT_INTO itab_
C: SELECT_APPENDING itab
D: SELECT_itab_
36. After a successful SELECT statement, what does SY-SUBRC equal?
A: 0
B: 4
C: 8
D: Null
37. This selection screen syntax forces the user to input a value:
A: REQUIRED-ENTRY
B: OBLIGATORY
C: DEFAULT
D: SELECTION-SCREEN EXCLUDE
38. If the following code results in a syntax error, the remedy is:
DATA: itab TYPE SORTED TABLE OF rec_type WITH UNIQUE KEY field1
WITH HEADER LINE.
itab-field1 = 'Company'. itab-field2 = '1234'. INSERT TABLE itab.
itab-field1 = 'Bank'. itab-field2 = 'ABC'. INSERT TABLE itab.
SORT itab.
LOOP AT itab.
write: /1 itab-field1, itab-field2.
ENDLOOP.
A: There is no syntax error here
B: Remove the SORT statement
C: Change INSERT to APPEND
D: Add a WHERE clause to the loop
39. If this code results in an error, the remedy is:
SELECT fld1 fld2 FROM tab1 WHERE fld3 = pfld3.
WRITE: /1 tab1-fld1, tab1-fld2.
ENDSELECT.
A: Add a SY-SUBRC check.
B: Change the WHERE clause to use fld1 or fld2.
C: Remove the /1 from the WRITE statement.
D: Add INTO (tab1-fld1, tab1-fld2).
40. When modifying an internal table within LOOP AT itab. _ ENDLOOP. you must include an index number.
A: True
B: False
41. To allow the user to enter values on the screen for a list field, use:
A: OPEN LINE.
B: SET CURSOR FIELD.
C: WRITE fld AS INPUT FIELD.
D: FORMAT INPUT ON.
42. Before a function module may be tested, it must first be:
A: Linked
B: Authorized
C: Released
D: Active
43. To include a field on your screen that is not in the ABAP Dictionary, which include program should contain
the data declaration for the field?
A: PBO module include program
B: TOP include program
C: PAI module include program
D: Subroutine include program
44. If a table contains many duplicate values for a field, minimize the number of records returned by using this
SELECT statement addition.
A: MIN
B: ORDER BY
C: DISTINCT
D: DELETE
45. The system internal table used for dynamic screen modification is named:
A: ITAB
B: SCREEN
C: MODTAB
D: SMOD
46. Within the source code of a function module, errors are handled via the keyword:
A: EXCEPTION
B: RAISE
C: STOP
D: ABEND
47. Which system field contains the contents of a selected line?
A: SY-CUCOL
B: SY-LILLI
C: SY-CUROW
D: SY-LISEL
48. The following statement writes what type of data object?
WRITE: /1 'Total Amount:'.
A: Text literal
B: Text variable
C: In-code comment
D: Text integer
49. For the code below, second_field is of what data type?
DATA: first_field type P, second_field like first_field.
A: P
B: C
C: N
D: D
50. Which of the following describes the internal representation of a type D data object?
A: DDMMYYYY
B: YYYYDDMM
C: MMDDYYYY
D: YYYYMMDD
51. A BDC program is used for all of the following except:
A: Downloading data to a local file
B: Data interfaces between SAP and external systems
C: Initial data transfer
D: Entering a large amount of data
52. In regard to PERFORM, which of the following is NOT a true statement?
A: May be used within a subroutine.
B: Requires actual parameters.
C: Recursive calls are allowed in ABAP.
rows?
A: Another internal table with a header line.
B: A work area with the same structure as the internal table.
C: An internal table type using the TYPES statement.
D: A PARAMETER.
63. Assuming an internal table contains 2000 entries, how many entries will it have after the following line of
code is executed?
DELETE itab FROM 1500 TO 1700.
A: This is a syntax error.
B: 1801
C: 1800
D: 1799
64. To remove lines from a database table, use ____.
A: UPDATE
B: MODIFY
C: ERASE
D: DELETE
65. All of the following may be performed using SET CURSOR except:
A: Move the cursor to a specific field on a list.
B: Move the cursor to a specific list line.
C: Move the cursor to a specific pushbutton, activating that function.
D: Move the cursor to a specific row and column on a list.
66. When is it optional to pass an actual parameter to a required formal parameter of a function module?
A: The actual parameter is type C.
B: The formal parameter contains a default value.
C: The formal parameter's "Reference" attribute is turned on.
D: It is never optional.
67. Coding two INITIALIZATION events will cause a syntax error.
A: True
B: False
68. Adding a COMMIT WORK statement between SELECT_ENDSELECT is a good method for improving
performance.
A: True
B: False
69. To save information on a list line for use after the line is selected, use this keyword.
A: APPEND
B: EXPORT
C: WRITE
D: HIDE
70. To bypass automatic field input checks, include this in PAI.
A: AT EXIT-COMMAND
B: ON INPUT
C: ON REQUEST
D: LEAVE TO SCREEN 0.
71. Within a function module's source code, if the MESSAGE_RAISING statement is executed, all of the
following system fields are filled automatically except:
A: SY-MSGTY
B: SY-MSGNO
C: SY-MSGV1
D: SY-MSGWA
72. The following code indicates:
REPORT ZLISTTST.
START-OF-SELECTION.
WRITE: text-001.
D: Type
81. When creating a transparent table in the ABAP Dictionary, which step automatically creates the table in the
underlying database?
A: Adding technical settings to the table
B: Checking the table syntax
C: Saving the table
D: Activating the table
82. Within the ABAP program attributes, Type = 1 represents:
A: INCLUDE program
B: Online program
C: Module pool
D: Function group
E: Subroutine pool
83. If this code results in an error, the remedy is:
SELECT fld1 SUM( fld1 ) FROM tab1 INTO_
A: Remove the spaces from SUM( fld1 ).
B: Move SUM( fld1 ) before fld1.
C: Add GROUP BY f1.
D: Change to SUM( DISTINCT f1 ).
84. Which keyword adds rows to an internal table while accumulating numeric values?
A: INSERT
B: APPEND
C: COLLECT
D: GROUP
85. Assuming itab has a header line, what will be output by the following code?
READ TABLE itab INDEX 3 TRANSPORTING field1.
WRITE: /1 itab-field1, itab-field2.
A: The contents of the third row's itab-field1.
B: The contents of the third row's itab-field1 and itab-field2.
C: The contents of the third row's itab-field2.
D: Nothing.
86. The following code indicates:
SELECTION-SCREEN BEGIN OF BLOCK B1.
PARAMETERS: myparam(10) type C,
Myparam2(10) type N,
SELECTION-SCREEN END OF BLOCK.
A: Draw a box around myparam and myparam2 on the selection screen.
B: Allow myparam and myparam2 to be ready for input during an error dialog.
C: Do not display myparam and myparam2 on the selection screen.
D: Display myparam and myparam2 only if both fields have default values.
87. Which statement will sort the data of an internal table with fields FRUIT, QTY, and PRICE so that it appears
as follows?
FRUIT QTY PRICE
Apples 12 22.50
Apples 9 18.25
Oranges 15 17.35
Bananas 20 10.20
Bananas 15 6.89
Bananas 5 2.75
A: SORT itab DESCENDING BY QTY PRICE.
B: SORT itab BY PRICE FRUIT.
C: SORT itab.
D: SORT itab BY PRICE DESCENDING.
88. Which keyword adds a line anywhere within an internal table?
A: APPEND
B: MODIFY
C: ADD
D: INSERT
89. To read a single line of an internal table, use the following:
A: LOOP AT itab. _ ENDLOOP.
B: READ itab.
C: SELECT SINGLE * FROM itab.
D: READ TABLE itab.
90. Which Open SQL statement should not be used with cluster databases?
A: UPDATE
B: MODIFY
C: DELETE
D: INSERT
91. To include a field on your screen that is not in the ABAP Dictionary, which include program should contain
the data declaration for the field?
A: PBO module include program
B: TOP include program
C: PAI module include program
D: Subroutine include program
92. This flow logic statement is used to make multiple fields open for input after an error or warning message.
A: GROUP
B: FIELD-GROUP
C: CHAIN
D: LOOP AT SCREEN
93. Given:
PERFORM subroutine USING var.
The var field is known as what type of parameter?
A: Formal
B: Actual
C: Static
D: Value
A. ABAP Dictionary
1. The structure of a table has been changed in the ABAP Dictionary. Which of the following adjustments in the
relevant database table is correct, if you want to retain the previous data?
Delete and recreate the database table
Change the database directory (ALTER TABLE) where the structure change with ALTER TABLE is supported by
the database.
Convert the table
2. In SAP terminology, what is a check table?
A value table specified in the definition of the domain for a field.
Any internal table, used to check input values.
A table assigned to one or more fields of a foreign key table for checking input values.
The table created for a foreign key.
The table to which a foreign key refers.
3. Can you store data persistently in a structure?
Yes
No
Yes, as long as the structure has been created in the ABAP Dictionary.
4. Which of the following statements are true?
A Repository object can have an original version in more than one system.
You can change a local object without using a change request.
A Repository object can only have an original version in a single system. Other systems may contain copies of
the object.
You can only correct a Repository object in its original system.
B. ABAP Workbench
5. You want to define an interface status for a details list displayed after a WINDOW statement.
Which status type do you have to use?
Screen
Dialog box
List
List in dialog box
6. You have a screen with number 100, in which the next screen is defined as screen 200.
Screen 100 is called using CALL SCREEN. After the PAI modules of screen 100 have been executed, and
assuming that they contain no statements that affect the screen sequence, where does processing
continue?
In the PBO modules of screen 200.
Directly after the CALL SCREEN statement
In the PBO modules of screen 100.
7. In the ABAP Editor, how can you find information about an ABAP statement?
By placing the cursor on the keyword in your program and pressing F1
By choosing "Help on...;" from the menu (or the corresponding icon)and entering the keyword in the subsequent
dialog box.
By placing the cursor on the keyword in your program and pressing F4.
By placing the cursor on the keyword in your program and choosing the "Help" menu.
8. You want to transport a local object into another system. What do you do?
Assign the object to a change request.
Assign the object to a transport request.
Reassign the object to a different development class and then assign it to a transport request.
You cannot transport local objects.
Copy the object and assign the copy to a different development class, then assign the object to a transport
request.
9. Which of the following statements about development classes are true?
The development class to which an object is assigned determines its path through the transport landscape.
If you want objects to be transported together, they must all belong to the same development class.
The interlinking of corrections requires that the objects involved all belong to the same development class.
A development class is a container for objects that all belong to thesame functional area.
The development class of an object determines who is allowed to change it.
C. Batch Input
10. Which of the following function modules are used to construct batch input sessions?
BDC_ADD_TRANSACTION
BDC_INSERT
BDC_CLOSE_GROUP
BDC_OPEN_GROUP
11. You are using Transaction SM35 (System->Services->Batch input- >Edit) to process a batch input session
in the mode 'Display errors only';. An error occurs.
Which of the following assertions could apply?
The system flags the session status as 'Incorrect'.
The batch input program used to generate the session must be restarted before you the session can be
processed again.
The system flags the session status as 'Incorrect'. The session can be processed again.
The system flags the session status as 'Incorrect'. It can only be processed again in the processing mode
'Process/foreground'.
The system flags the session status as 'Incorrect'. It can only be processed again by you.
D. Dialog Programming
12. In a program, how can you find out how many lines of a table control (step loop) are displayed?
The value of SY-STEPL
The value of SY-LOOPC in a module called between LOOP and ENDLOOP in the PBO event.
The value of SY-LOOPC in a module called between LOOP and ENDLOOP in the PAI event.
The value of SY-LOOPC but not between the LOOP and ENDLOOP statements.
DEFAULT
LIKE
VALUE
MEMORY ID
37. How can you suppress the default title of a list?
By defining a TOP-OF-PAGE event in the program and using it to display something else.
By choosing System -- List -- List header and entering your own title.
By using the NO STANDARD PAGE HEADING addition in the REPORT statement.
By entering a title in the text elements of the program.
By using the NEW-PAGE NO-TITLE statement.
38. Which statement would you use to leave a list that you created by using a SUBMIT statement?
LEAVE.
LEAVE PROGRAM.
LEAVE LIST-PROCESSING.
LEAVE TO LIST-PROCESSING.
EXIT.
39. Which of the following statements can you use to change a list?
LOOP AT SCREEN, SCREEN-NAME = 'xxxx'. END LOOP.
MODIFY LINE FIELD VALUE <f1> FROM 'xxxx'.
SY-LISEL(10) = 'xxxx'.
AT LINE-SELECTION.
MOVE 'xxxx' TO LISTLINE.
READ LINE FIELD VALUE <f1> INTO <g1>.
<g1> = 'xxxx'.
I. System
40. You want to define a screen in which you can trigger a function you have already defined.
Which system/program variables return the corresponding function code?
SY-PFKEY
In the variables assigned to the OK code field (command field)
SY-TCODE
OK-CODE
41. From which system field can you find out the current GUI status?
SY-PFKEY
SY-UCOMM
SY-STATUS
MORE ABAP QUESTIONS FROM SKILL DRILL
1. To get the average value of a database table field as you select it, use ____.
A: GET AVERAGE
B: SELECT AVERAGE
C: SELECT AVG
D: COMPUTE AVG
2. To change one or more lines of a database table, use ____.
A: UPDATE
B: INSERT
C: INTO
D: MOD
3. To get the number of rows in an internal table, use the ABAP statement:
A: READ TABLE itab INDEX nlines.
B: DESCRIBE TABLE itab LINES nlines.
C: COUNT TABLE itab LINES INTO nlines.
D: COLLECT itab LINES nlines.
4. A template that groups up to ten fields for testing access privileges is known as ____.
A: Authorization
B: Authorization object
C: User profile
D: Authority profile
5. To exchange data between reports without an external subroutine call, you may use:
A: IMPORT_MEMORY data_object MEMORY ID 'ID'.
B: READ_DATA data_object.
C: EXPORT data_object TO MEMORY ID 'ID'.
D: SAVE data_object MEMORY ID 'ID'.
6. Given:
PERFORM my_sub USING fld1 fld2.
FORM my_sub using fld1 fld2.
ENDFORM.
The parameter fld1 is passed by:
A: Value
B: Reference
C: Value and result
D: None of the above
7. Which of the following is NOT a field of a selection screen range internal table?
A: Sign
B: Option
C: Low
D: High
E: Value
8. In regard to Runtime Analysis, which of the following is NOT a true statement?
A: System-level performance problems are identified.
B: Helps you analyze the performance of any program created within the ABAP Workbench.
C: Helps identify potentially inefficient database accesses.
D: Measurement results are saved in performance data files.
9. Internal tables may be declared without a header line.
A: True
B: False
10. By definition, what fields make up the standard internal table key?
A: All the table's fields.
B: All the non-numeric fields.
C: All the numeric fields.
D: The first field.
11. The following line of code indicates:
GET CURSOR FIELD MY_FLD.
A: The cursor is positioned on the field MY_FLD.
B: MY_FLD contains the number of the line on which the cursor is positioned.
C: MY_FLD contains the name of the field on which the cursor is positioned.
D: The cursor column number is moved to MY_FLD.
12. The field declared below is of what data type?
DATA: new_fld(25).
A: P
B: N
C: I
D: C
13. To set up a screen field to allow default values to be stored across user sessions:
A: Turn on the field attribute flag for SPA/GPA.
B: Enter a value in the search-help field attribute.
C: Set the field to display only.
D: Use the identical names concept.
14. Given:
SELECT fld1 fld2 fld3 FROM tab1 INTO TABLE itab
32. Which of the following is NOT one of the main components of a screen painter screen?
A: Screen attributes
B: Flow logic
C: Include program
D: Screen layout
E: Field attributes
33. Function module source code may not call a subroutine.
A: True
B: False
34. To allow a basic list line to branch to a different SAP transaction use:
A: LEAVE TRANSACTION
B: SUBMIT TRANSACTION
C: EXECUTE TRANSACTION
D: CALL TRANSACTION
35. With regard to data objects, which of the following is NOT a true statement?
A: A data object holds data in memory at runtime.
B: The PARAMETERS keyword declares a data object.
C: Local data objects may be declared inside a subroutine.
D: Global data objects are only accessible outside a subroutine.
36. Given these data declarations, which of these statements will cause a syntax error?
DATA: num_field(10) type c, pack_field type p decimals 2.
A: WRITE: num_field, pack_field.
B: WRITE: 'Sales order number', num_field.
C: MOVE 12- to pack_field.
D: MOVE '9.9' to pack_field.
37. An ABAP data type may be declared with reference to the SAP data type P.
A: True
B: False
38. Which of the following declares an internal table data object?
A: DATA: myrec like vbak
B: DATA: cust like kna1 occurs 0
C: DATA: hold_number(10) type C
D: None of the above
39. Given this code what is output last?
DATA: my_counter type I.
CLEAR my_counter.
DO.
my_counter = my_counter + 1.
write: /1 my_counter.
IF my_counter >= 10. EXIT. ENDIF.
ENDDO.
END-OF-SELECTION.
Write: /1 'Good-bye!'.
A: Good-bye!
B: 10
C: 11
D: 9
40. The following code indicates:
CALL SCREEN 9000 STARTING AT 10 5 ENDING AT 60 20
A: Screen 9000 is called with the cursor at coordinates (10,5)(60,20).
B: Screen 9000 must be of type "Modal dialog box."
C: Display screen 9000 in a full window.
D: Screen 9000 may only contain an ABAP list.
64. Given:
REPORT ZINTERAC.
WRITE 'First List'.
AT PF5.
WRITE: 'Second List'.
After running the report, how would the user receive the output, "Second List?"
A: No further action is required
B: Double-click the "First List" row
C: Press the keyboard function key F5
D: This is not possible for the given code
65. To automatically share data with another report during an external subroutine call, the shared data may be
declared ____.
A: in both programs with the same name; no additional code is required
B: in a data dictionary structure
C: as global data objects in either program
D: in both programs between BEGIN OF COMMON PART_ END OF COMMON PART
66. Database locks are sufficient in a multi-user environment.
A: True
B: False
67. The program type attribute for a dialog program is:
A: M
B: 1
C: I
D: D
68. To add your own functions to an ABAP list, what statement should you use?
A: SET TITLEBAR '100'.
B: SET PF-STATUS '100'.
C: GUI-STATUS = '100'.
D: CALL FUNCTION '100'.
69. Which is the correct sequence of events?
A: AT SELECTION-SCREEN, TOP-OF-PAGE, INITIALIZATION
B: START-OF-SELECTION, AT USER-COMMAND, GET dbtab
C: INITIALIZATION, END-OF-SELECTION, AT LINE-SELECTION
D: GET dbtab, GET dbtab LATE, START-OF-SELECTION
70. Function module source code may have its own local data.
A: True
B: False
71. Changing the length of a field in the ABAP Dictionary will cause an ABAP program that references that field
to use the new length the next time the program is run.
A: True
B: False
72. In regard to the AT USER-COMMAND event, which of the following is NOT a true statement?
A: The standard system function 'BACK' is processed here.
B: Executed when a function key is pressed.
C: SY-UCOMM contains the current function code.
D: Function codes from your own menu painter status are processed here.
73. To assign an initial value, include this option of the PARAMETERS statement:
A: FIRST
B: INITIALIZATION
C: VALUE
D: DEFAULT
74. Pressing the enter key in PC mode while entering code in the ABAP editor will do all of the following except:
13. All of the following are valid Open SQL statements except:
A: OPEN DATASET.
B: CLOSE CURSOR.
C: DELETE.
D: COMMIT WORK.
14. To read data from the database, use ____.
A: READ TABLE
B: SELECT
C: OPEN DATASET
D: READ DATASET
15. The following code indicates:
READ TABLE itab WITH KEY field1 = sy-langu field2 = counter.
A: Read table itab row-by-row until finding an entry other than field1 = sy-langu and field2 = counter.
B: Read the row with an index number equal to the value stored in counter.
C: Read the internal table using the binary search method to find field1 = sy-langu and field2 = counter.
D: Read the first row found in itab that has field1 = sy-langu and field2 = counter.
16. At runtime Native SQL is converted to ABAP Open SQL.
A: True
B: False
17. A Logical Unit of Work will either be carried out completely or not at all.
A: True
B: False
18. All of the following are true in regard to a parameter passed by reference, except:
A: A pointer to the memory location of the parameter's value is passed.
B: Changing the formal parameter immediately changes the passed parameter.
C: Besides USING, no additional syntax is required.
D: New memory is allocated for the parameter's value.
19. A dictionary table is made available for use within an ABAP program via the TABLES statement.
A: True
B: False
20. To modify several fields in a screen without referencing each individual field name:
A: Access the SPA/GPA parameter for each of the fields.
B: Assign the fields to a single ABAP Dictionary structure.
C: Group the fields in a CHAIN.
D: Identify the fields via their group name.
21. Given:
SELECT fld1 fld2 fld3 FROM tab1 INTO (fld4, fld5, fld6)
WHERE fld7 = pfld7.
WRITE: /1 fld4, fld5, fld6.
SELECT fld8 FROM tab2 INTO fld9
WHERE fld10 = tab1-fld6.
WRITE: /1 fld9.
ULINE.
ENDSELECT.
ENDSELECT.
All of the following are good performance tuning methods except:
A: Use SELECT fld1 fld2 fld3 FROM tab1 INTO itab_
B: Convert the nested SELECT statements to a database view
C: Code your own database join.
D: Use SELECT_FOR ALL ENTRIES IN itab.
22. To make a single field open for input after an error or warning message
A: Add the field to the screen with the input attribute checked.
B: Declare the field as global data.
A: Left unchanged
B: Filled with spaces
C: Filled with *
D: None of the above
31. The ABAP keyword for adding authorizations to a program is ____.
A: AUTH-CHECK
B: AUTHORITY-CHECK
C: AUTHORIZATION-CHECK
D: AUTHORITY-OBJECT
32. If the following code results in a syntax error, the remedy is:
DATA: itab TYPE SORTED TABLE OF rec_type WITH UNIQUE KEY field1
WITH HEADER LINE.
itab-field1 = 'Company'. itab-field2 = '1234'. INSERT TABLE itab.
itab-field1 = 'Bank'. itab-field2 = 'ABC'. INSERT TABLE itab.
SORT itab.
LOOP AT itab.
write: /1 itab-field1, itab-field2.
ENDLOOP.
A: There is no syntax error here
B: Remove the SORT statement
C: Change INSERT to APPEND
D: Add a WHERE clause to the loop
33. You declare a local data object that retains its value across multiple subroutine calls using the keyword
A: DATA
B: TYPES
C: PARAMETERS
D: STATICS
34. Given this code, what will be the resulting output?
report zabaprg.
DATA: address(45) type C value '1600 Penn Ave.', street like address.
address = '100 Washington Place'.
WRITE: /1 'He lives at', street.
A: He lives at 100 Washington Place
B: He lives at
C: He lives at 1600 Penn Ave.
D: He lives at 100 Washington Place, 1600 Penn Ave.
E: None of the above
35. A SELECT statement without a WHERE clause is generally bad design.
A: True
B: False
36. To code a blank line on a selection screen, use SELECTION-SCREEN:
A: COMMENT
B: EXCLUDE
C: ULINE
D: SKIP
37. If itab contains 20 rows, what will SY-TABIX equal when the program reaches the WRITE statement below?
SY-TABIX = 10.
LOOP AT itab.
count_field = count_field + 1.
ENDLOOP.
WRITE: /1 count_field.
A: 0
B: 10
C: 20
D: 30
38. Which of the following is NOT a true statement in regard to a sorted internal table type?
A: May only be accessed by its key.
B: Its key may be UNIQUE or NON-UNIQUE.
C: Entries are sorted according to its key when added.
D: A binary search is used when accessing rows by its key.
39. Predefined selection criteria values assigned to a report are called:
A: Variants.
B: Matchcodes.
C: Search-helps.
D: Screen-batches.
40. In regard to the standard SAP authorization field ACTVT (Activity), "change" authority is represented by
____.
A: 02
B: 01
C: 03
D: 00
41. ABAP Open SQL contains both Data Definition Language (DDL) statements and Data Controlling Language
(DCL) statements.
A: True
B: False
42. The following code indicates:
SET SCREEN 200. LEAVE SCREEN.
A: Come back to the calling screen from screen 200.
B: Exit screen 200.
C: Branch back to the previous screen.
D: Branch to screen 200 without coming back.
43. While creating a secondary list, a message with type E will have all of these effects except:
A: The interactive processing block is terminated.
B: The entire report is terminated.
C: The previous list level is still displayed.
D: The same effects as a message with type W.
44. All of the following are true statements regarding SET TITLEBAR except:
A: Sets the title of the output list window.
B: A title is active for all screens until another SET TITLEBAR statement occurs.
C: Changes the report's title attribute.
D: A title is defined for a single program.
45. The following statement will result in a syntax error.
DATA: price(3) type p decimals 2 value '100.23'.
A: True
B: False
46. Given this code:
AT LINE-SELECTION.
Write: /1 'Thanks!'.
What will trigger the output of the word "Thanks!"?
A: Executing the ABAP report
B: Double-clicking a list row
C: Clicking once on a list row and pressing Enter
D: None of the above
47. To place a checkbox on a list, use
A: WRITE CHECKBOX.
B: FORMAT CHECKBOX ON.
C: WRITE fld AS CHECKBOX.
D: MODIFY LINE WITH CHECKBOX.
48. If c_index is a type N variable, what will be output by this code?
CLEAR c_index.
DO 3 times.
write: c_index no-gap.
c_index = c_index + 2.
ENDDO.
A: 2 4 6
B: 246
C: 0 2 4
D: 024
49. The following code reorders the rows so that:
DATA: itab LIKE kna1 OCCURS 0 WITH HEADER LINE.
itab-name1 = 'Smith'. itab-ort01 = 'Miami'. APPEND itab.
itab-name1 = 'Jones'. itab-ort01 = 'Chicago'. APPEND itab.
itab-name1 = 'Brown'. itab-ort01 = 'New York'. APPEND itab.
SORT itab BY name1 ort01.
A: Smith appears before Jones
B: Jones appears before Brown
C: Brown appears before Jones
D: Miami appears before New York
50. The following code indicates:
SELECTION-SCREEN BEGIN OF BLOCK B1.
PARAMETERS: myparam(10) type C,
Myparam2(10) type N,
SELECTION-SCREEN END OF BLOCK.
A: Draw a box around myparam and myparam2 on the selection screen.
B: Allow myparam and myparam2 to be ready for input during an error dialog.
C: Do not display myparam and myparam2 on the selection screen.
D: Display myparam and myparam2 only if both fields have default values.
51. In the flow logic, what must you code in both PBO and PAI when you have included a table control in your
screen?
A: CHAIN_ENDCHAIN
B: AT EXIT-COMMAND
C: LOOP_ENDLOOP
D: SET PF-STATUS
52. The following code indicates:
SELECT fld1 FROM tab1 INTO TABLE itab
UP TO 100 ROWS
WHERE fld7 = pfld7.
A: Itab will contain 100 rows.
B: Only the first 100 records of tab1 are read.
C: If itab has less than 100 rows before the SELECT, SY-SUBRC will be set to 4.
D: None of the above.
53. Which system field corresponds to the current time?
A: SY-UZEIT
B: SY-TIME
C: SY-TIMID
54. The output for the following code will be
report zabaprg.
DATA: my_field type I value 99.
my_field = my_field + 1.
clear my_field.