The mySAP.com database interface converts Open SQL statement from ABAP statement into corresponding database statements
With the ABAP programming language, you can use SAP OPEN SQL to access data in the database regardless of your database management system
An RDBMS saves data and relationships between data in the form of three-dimensional tables
In RDBMS the data, tables, and table relationships are defined in the database catalog (the data dictionary) of the database system
Customers can add their own developments to the Repository
The danger of creating data inconsistencies would be too great
Repository objects are not cross-client, it is possible to use a development system as a production environment
All customer developments take place in the customer namespace
If changes are to be made to the Repository, better recommend two, even better, three systems
SAP Business Information Warehouse (SAP BW)
SAP Supply Chain Management (SAP SCM)
SAP Strategic Enterprise Management (SAP SEM)
SAP Customer Relationship Management (SAP CRM)
The Screen painter for configuring screens
The ABAP Dictionary for processing database table definitions,central data types, and more
Menu Painter for designing the user interface
The ABAP Editor for editing source code
Background work processes are used for non-dialong-free execution of programs
Background processing scheduled in the form of batches
The background scheduler is not responsible for automatically triggering the job at the specified time
Background processing is not generally triggered immediately (Immediate start)
Use of the SAP GUI for HTML, a 1:1 conversion of SAP screens into HTML
Use of screen-based IACs (internet Application Components) that have been delivered with the R/3 System for years
Automatic conversion of SAP screens into HTML format
Use of screen-based IACs (Internet Application Componets) that have been deliered with teh R/3 System for future
ABAP programs consist of individual statements
Statements can't be indented
Each statement ends with a period
Statements can take up more than one line
A single line can contain multiple statements
Presentation servers can also log on to an application server through the message server
The services offered by an instance are started or stopped together
A central MySAP.com System consists of a single instance that provides all of the necessary servies
A central mySAP.com System consists of a multiple instance that provides all of the necessary services
Each instance has its own SAP buffer areas.
The SAP Business Workflow is a tool that you can use to optimzie the flow of business transactions
Workflow can be done using an automated mail or workflow item
It can't execute consecutive work steps automatically, or coordinate the flow of information
Workflow brings the "right" work in the "right" sequence to the "right" persons at the "right" time.
A central mySAP.com System consists of a multiple instance that provides all of the necessary services
Presentation servers can also log on to an application server through the message server
A central mySAP.com System consists of a single instance that provides all of the necessary services
Each instance has its own SAP buffer areas.
Ther services offered by an instance are started or stopped together
A transparent table is automatically created on the database when it is activated in the ABAP Dictionary
The data types in the ABAP Dictionary are converted to the corresponding data types of the ABAP Dictionary
The database table has the same name as the table in the ABAP dictionary
You can also creat a structured type in the ABAP Dictionary for which there is no corresponding object in the database
The order of the fields in the ABAP Dictionary is same as the order of the fields on the database
An index can be considered to be a copy of a database table reduced to certain fields
All of the fields of the table are contained in the index
The index also contains a pointer from the index entry to the corresponding table entry to permit all the field contents to be read
When you change a data record of a table, you must adjust the index sorting
An index can be used to speed up the selection of data records from a table
The table is automatically created on the database when it is activated in the ABAP Dictionary
You can define whether changes to the table entries should be logged
The settins for buffering define whether and how the table should be buffered
The technical settings are used to individually optimize the storage reuirements and accessing behavior of database tables
You need not maintain the technical settings when you define a transparaent table in the ABAP Dictionary
Six character naming restriction as PARAMETERS
Ten character naming restriction as PARAMETERS
Eight character naming restriction as PARAMETERS
Four character naming restriction as PARAMETERS
Changing an ABAP Dictionary object might also affect its dependent objects
If an object is probably used by several objects, you should perform the search in the background
There is a Where-Used list for ech ABAP Dictionary object with which you can't find all the objects that refer to this object
You can find direct and indirect usages of an ABAP Dictionary object with the where-used list
Changes in the definition of a table or database view are also automatically made in the database
Tables and database views can't be defined in the ABAP Dictionary
Indexes can be defined in the ABAP Dictionary to speed up access to data in a table
Indexes are also created in the database.
Database objects are created in the underlying database with this defination
The R/3 system allocates the presentation, application logic, and data storage on a single computer
The lowest level is the database level
The R/3 System has a modular software architecture that follows software-oriented client/server principles
The application server level contains the user interface through which each user can access the program, enter new data, and display the results of a work process
ABAP programs (both the applications provided by SAP and the ones you develop yourself) run at the application server leverl
If you want to define a two-byte integer data object, you use the following syntax: DATA xyz(2) TYPE i.
If you create a data object without explicitly specifying its type, it will ecome type C with length 1.
If you define a data object with type D, two or four digits will be reserved for theyear, 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.
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
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
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
Withie one client of an SAP system, a customer exit can have multiple implementations
Once a customer exit has been implemented in an SAP system, that implementation can be changed, but it cannot be deactivated any more
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 database 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 imporove the programs' performance if you define a database table in the program instead of an internal table
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
Refer to a domain
Refer to a data element
Refer to a field of a database table
Refer to a field of a serach help
Refer to 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 colymns SIGN, OPTION, LOW, and HIGH using FOR
Using 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 pay-car for checking the user entry in the PARAMETER pa_car
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 cannot be addressed in background processing.
The ALV display is automatically refreshed when the data in the database table is changed
You can select from several database tables using a database view or a join
A secondary index for non-key fields generally works like a primary index for key fields
A key field in a database table uniquely identifies a data record
The client field is a selective field and should therefor always be specified in the WHERE condition for SELECT
The OPEN SQL statements are converted into database-specific statements by the database interface
A structured work area (line)
An internal table
Using the SET/GET parameters
By passing parameters using additions in the SUBMIT statement
Using the ABAP memory
By declaring the data objects with the same name in both programs, using the statement
With SELECT SINGLE access, the result is one data record maximum
The SELECT statement supports the return code (SY-SUBRC)
With SELECT...ENDSELECT access, the result is one data record maximum.
The SELECT statement always reads the data into SAP memory first
With SELECT...INTO TABLE access, the result is one data record maximum.
If you change the value of a field symbol, the value of the data object to which the field system is assigned to is also changed
A field symbol always references a data element
You can no longer create data objects at runtime (dynamically) since the ABAP runtime system combines all the declarative statement in one processing block and executes those first
A field symbol only references a data object after the latter has been assigned to the field symbols using the ASSIGN statement
You can change the type of assigned data object using the CASTING-TYPE addition for the ASSIGN statement
Key access to an internal table of the type STANDARD generally has even less runtime consumption than index access
Index access to an internal table of type SORTED will, in certain cases, violate the sort sequence
Access to nested internal tables using field symbols usually increase performance
Index access to an internal tabel of the type HASHED has less runtime consumption
You can perform a binary search on internal tables of the type SORTED using the addition BINARY SEARCH only
FORM U CHANGING VALUE(P).
FORM U CHANGING P.
FORM U USING P. LOCAL P.
FROM U USING p.
FROM U USING VALUE(p)
A MESSAGE E... statement
An AUTHORITY-CHECK statement that return code SY-SUBRC NE 0
A MESSAGE I statement
PROCESS BEFORE OUTPUT
Syntax check of "native" SQL commands
Conversion of Open SQL statements from ABAP statements into the corresponding database stgatements
Data consistency check with respect to foreign key relationships
Usage of the SAP buffers
SAP GUI for Windows
SAP GUI for HTML
SAP GUI for Web AS
SAP GUI for ITS
SAP GUI for Java
For input fields on screens if the input fields have been copied from the Dication into the Screen Painter
For input fields on ABAP lists
For input fields on selection screens
No, key changes are not allowed
Yes, irrespective of whether the table already contains data or not
Yes, however the table must not contain any data yet
After adding an APPEND structure to a table, you must convert the table
You can use an APPEND structure like any other structure in ABAP program
An APPEND structure allow you to append fields to an SAP table without having to modify the table itself.
An APPEND structure is the same as substructure
A database view supplies the results quantity of an outer join logic
Using a database view, you can read data from several tables
Using a database view, you can insert data into several tables.
A database view is a special view of transparent tables
A database view can have one or several base tables
A search help function that is linked to the table field can return values only for the search field (field where the F4 help twas triggered)
A search help function that is linked to the data element can return values only for the search field (field where the F4 help was triggered)
If the search help function is linked to the data element as well as to the field, the search help for the field is displayed
If the search help function is linked to table A, this search help is displayed whenever there are input fields from A on the screen
If the search help function is linked to a table A, this search help is displayed whenever there are input fields on that screen that have A as the check table
Parameters can be displayed on the result list
Parameters must be fields from the selection method only
Import parameters control which data can be included in the data selection
Export parameters control which data can be returned to the input template
A parameter is either an import or an export parameter
The primary index consists of the key fields of the database table
An index can be assigned to several database tables
A database table can have more than one index
Using an index speeds up data selection from a table.
For the purpose of data consistency: when you activate the table, the FKs are created in the database. You thus prevent invalid data from getting into the table
For the propose data consistency: when you maintain data records using dialog transactions (screens)
The input values are automatically check in accordance with the FKs
FKs are used solely for documenting table relationships
Transparent database table
Redefinition of methods (for polymorphism through inheritance)
Implementation of methods of an interface in the respective classes (for polymorphism through interfaces)
Typing with LIKE to ABAP Dictionary types
The definition of internal tables with header lines
The TABLES statement
The definition of internal tables with header lines
Typing with TYPE to ABAP Dictionary types
Interfaces actually stand for an interface (protocol) between a client (interface user) and a server (implementing class)
Interfaces are used to call static components of a class
Using interface references you can reference all the public components of an object that have been defined in the corresponding interface-implementing class
A client (caller) can use interface reference to access all methods of the interfaces and thus archive polmorphism behaviour
Using interfaces you can simulate multiple inheritance
All objects of the same class contain the same number of attributes and methods after being created.
You can preset different objects of a class with different values immediately when they are being created
The contents of the attributes of different objects in a class always contain the same content or value immeidately after being created
You define type type and number of attributes of an object through the corresponding class.
CREATE OBJECT ref_cl.
CREATE OBJECT ref_if TYPE cl_document.
CREATE OBJECT ref_if.
DATA class-name TYPE string. class_name = "CL_DOCUMENT". CREAT OBJECT ref_if TYPE (class_name)
In a static method, instance attributes can also be used, provided they are declared as READ ONLY
Instance methods can use both static as well as instance components in their implemenation part
Both static as well as instance attributes are declared using the DATA statement
Static methods can be called through the class: =>
Static attributes exist only once for each class
Functional methods cannot have any EXPORTING or CHANGING parameters
Functions methods have exactly one RETURNING parameter
You can using functional methods directly in a WRITE statement
You can use functional methods directly in an arithmetic expression.
Can only be implemented in module pools
Can only display single-line lists
Cannot print data
Provides standard functions such as sorting
Can only display structures from the Dictionary
A friend of a class access to the public attributes of the class allowing the friendship
A subclass of a friend class has automatic access to the private attributes of the class allowing the friendship
A friend of a class has access to the private attributes of the class allowing the friendship
The allowing of a friendship is not inherited.
You can call methods in ABAP objects in the same way as function modules
You can call methods only within ABAP Objects classes
Like form routines or function modules, you have the option with methods of marking parameters as 'optional'
Like form routines or function modules, methods are a means to modularize software
The singleton class must have a class method implemented in which the CREATE OBJECT call is programmed for this one object.
The singleton class must have the addition CREATE PRIVATE in the definition part
In the singleton class, there must be an even defined that is triggered when the first and only ojbect is created and also prevents further objects of this calss from being created.
The singleton class must have an instance method implemented in which the CREATE OBJECT call is programmed for this one object
The CREATE OBJECT call for this one object can take place in the class constructor of the singleton class
You can use the refence ME within a class solely to reference the private methods of the class itself
You use the reference ME within a class to call attributes and methods of the class itself.
You use the reference ME within a class solely to reference the private attributes of the class itself
The constructor must not have any importing parameters
There is no limitation
The constructor must be defined in the protected section.
Through inheritance, the public attributes of the super class are inherited to the subclass
Through inheritance the private attributes of the super class are inherited to the subclass and they can be addressed in the subclass directly using "ME->"
Through inheritance, the protected attributes of the super class are inherited to the subclass
Through inheritance, the private attributes of the super class are inherited to the subclass and they can be addressed in the sublcass directly using "THIS->".
Typing is imperative for interfce parameters of a method belonging to an ABAP objects class
To simplify writing the software and design it clearly, you can do without typing altogether with the ABAP object classes
If you have numeric inteface parameter in an ABAP Objects class, you can do with out typing.
An instance attribute that is automatically given a unique identification by the system when an object is created
An instance method for initializing the attributes of an object; It is automatically called by the system during CREATE OBJECT
An instance method of controlling how much main memory is to be reserved for an object
If you are using asynchronous update, the database changes are executed directly from the program
If you are using asynchronous update, the statement COMMIT WORK is not required because it is executed implicitly after each screen change.
In the PAI of each screen, you must use the statement COMMIT WORK.
In an inline change has resulted in an error, the statement ROLLBACK WORK must be listed in the last screen in order to rollback the entire SAP LUW
All inline changes must be done in the PAI of the last screen in order to ensure the rollback ability of the SAP LUW
Output a termination message (ABORT, X)
Analyze the log record
Output an error message
Perform a ROLLBACK WORK
Raise an exception
Call the ABAP command COMMIT WORK
Unlock the data record that is to be updated
Lock the data record that is to be updated
Read the data record that is to be updated
Pass the changes entered by the user to the update process
At the end of the dialog step
At the start of the V1 update
At the time of the call
At the start of function execution
At COMMIT WORK
A logical database
A table buffer refresh on the application server
A call for ENQUEUE / DEQUEUE function modules
An AUTHORITY-CHECK statement
A call for an update function module in the case of time-consuming changes
To log database changes
To achieve delayed implementation of database changes
To collect database change requests from several dialog steps in order to process them or delete them together
To relieve the load on the dialog work processes
The update process triggered by the called transaction can be executed asynchronously or synchronously as required
The called transaction is processed in a separated database LUW
Processing of the calling program will be continued at the end of the transaction
Another internal session is opened for the transaction
Function module exits
...have transaction run in the background
...change the flow logic of a screen
... reduce the complexity of transactions
... suppress individual fields
... suppress entire(a) screen
There can be several append structures for one table
If you copy a table to which an append structure has been added, the fields in the append structure become standard fields in the table
An append structure can be assigned to several tables
BTEs are called on a cross-client basis
BTEs allow you to call additional components in ohter systems
BTEs allow you to link up additional components to the SAP standard system
BTEs interface can be used repeatedly
If a user has modified an SAP object and SAP delivers a new version of the object in a release upgrade of Support Package, the modified object must be adjusted during the upgrade.
You can perform the modification immediately if you set the gloabl setting for system modifiabilty to "Modifiable". RZ11 (Configuration)
The R/3 System does not allow modification by user DDIC or SAP*
You can change application programs delivered by SAP without registration using the Modification Assistant
Before you can change the program, you must request a key for the object in the SAP New Web front-end
Modification of SAP objects
Customer's own developments
No manual operations are necessary. Everything is performed automatically
ABAP Dictionary objects are not handled separately
The modified objects must be adjusted to match the standard version whenver SAP delivers new versions of the objects
After each upgrade, the new SAP objects are available as an active version
Only ABAP Dictionary tables, data elements, and domain are adjusted during the upgrade
A BAdi always has exactly one interface in which the methods of the enhancement are defined.
More than one implementation can exist for BAdis that are not used on a multiple basis
BAdis can contain menu enhancements
If a default implementation exists for a BAdi, this will always be run
If you have filter-dependent BAdis, there can always be only one active implementation for a filter value
You must enter the include in the program and also specify the addition AS ICON in the WRITE statement.
You must enter include in the program
You must specify the addition FORMAT AS ICON in the WRITE statement
By maintaining the corresponding customizing table and by using the addition CURRENCY in the WRITE statement
This takes place automatically, provided the checkbox 'CURRENCY output' is ticked in the pgoram attributes
By saving the currency amounts with decimal places in the database
REPORT TEST NO STANDARD PAGE HEADING. skip to line 20. position 10. write:/ 'Name:', /'Address'.
REPORT TEST NO STANDARD PAGE HEADING. skip to line 20. position 10. write:/ 'Name:', /'Address:' under "Name'.
REPORT TEST NO STANDARD PAGE HEADING. skip to line 20. position 10. write:/ 'Name:'. write /'Address:'.
REPORT TEST NO STANDARD PAGE HEADING. skip to line 20. position 10. write:/ "Name:", /10 "Address:".
REPORT TEST. skip to line 20. position 10. write:/ "Name:", "Address" under "Name".
NODE_00, Node_01 Node_21.
NODE_00, Node_02, Node_21.
NODE_00, Node_01, Node_02.
The event is executed each time all the dependent data records for a node_00 data record have been delivered in to the program
The event is executed each time after the event GET node_02
The event is not executed
The event is executed only if no data record is found for node_00
Yes, if at least one PAI module exists for teh su-screen container
Yes, if at least one required entry field exists on one of the tab pages
All the elements of a screen always have the same context menu
You set context menus within a subprogram ON_CTMENU_
The key combination Shift-F10 on a screen always calls a context menu
You set context menus using the command SET PF-STATUS.
The check module must be called using: FIELD field_name MODULE check_module.
The check module must be called using: FIELD field_name MODULE check_module MESSAGE Ennn.
The module must output an E-type message or W-type message
An I-type message must be output.
The list buffer must first be read (READ LIST).
You have to program the command LEAVE to LIST-PROCESSING.
You have to program the two command CALL SELECTION-SCREEN and LEAVE TO LIST-PROCESSING.
You must place the command LEAVE TO LIST-PROCESsING at the end of the PAI of the respecitve screen.
...on a screen always have a corresponding function key.
...in an application toolbar always have a corresponding function key
...with function code E cause program termination
...in an application toolbar always have a function code.
The screen is displayed. But no inputs are possible
Processing continued with the calling screen
The screen in question is not called
Screen display is suppressed
Neither the respective PBO module nor any of the subsequent PBO modules are processed
For each screen, the user can choose only one radio button
Clicking a radio button always triggers a PAI
Only the selected ratio buttons have the value 1 for PBO in the field SCREENACTIVE
For each radio button group, the user can choose only one radio button.
You call sub-screens using the screen command CALL SUBSCREEN.
You call sub-screens using the ABAP command CALL SUBSCREEN
The statement LEAVE to SCREEN is not allowed in sub-screen flow logic
The sub-screens have their own OK code field
The "cancel" function must have the function code "BACK'.
There is no way to do this: required entry fields must always be filled first
No special actions are required
You must temporarily switch off the required entry for the fields concerned within the LOOP AT SCREEN. ... ENDLOOP.
The "CANCEL" function must be type 'E' and be handled in a module with the addition AT EXIT-COMMAND.
Only full-screens can have a subsequent screen.
You can define screens only in programs of type M
On a screen, you can only output fields with Dictionary reference
You assign each screen to exactly one program
At the event TOP-OF-PAGE
In a PBO modules of the corresponding screen
IN a PAI module of the corresponding screen
In the attributes of the corresponding screen.
Name equivalence is imperative for field transprot between ABAP and screen.
Field transport from ABAP to the screen generally takes place before the first PBO module of the screen.
Field transport from the screen to ABAP is delayed if you have a FIELD statement
Dictionary structure on the screen requires a TABLES statement in ABAP.
Combine all the radio buttons in to a group
Create a common function code for all the radio button
Assign all the radio buttons to the same modification group
Enclose all entire radio buttons in a frame
When exactly one field within the CHAIN has a value other than its initial value
When a new entry has been made for at least one field within the CHAIN
When a new entry has been made for all fields in the chain
When the value of at least one field within CHAIN is other than its initial value
Both fields must have the same name
Both fields must have the same data element
Both fields must have the same domain
Table with text table
A different search help
The data element name
The name of a program variable created with DATA.
The name of a structure field from the ABAP Dictionary
The name of a structure field from the ABAP Dictionary if a suitable TABLES statement exists in the program
The name of a program type created with TYPES.
The structure determines the sequence in which the GET events must be executed in the program
The structure determines the read sequence of the logical database
The node names in the structure are always the names of database tables
... are temporary if they refer to table control fields.
...are permanent if they refer to attributes of the whole table control
...must be executed at the PAI screen event.
... must be executed with LOOP AT SCREEN. ... ENDLOOP.
You set SCREEN-ACTIVE to 1 and SCREEN-INPUT to 0.
You set SCREEN-ACTIVE to 1 and SCREEN-INVISIBLE to 1.
You set SCREEN-ACTIVE to 0 and SCREEN-INVISIBLE does not matter.
You set SCREEN-INVISIBLE to 1 and SCREEN-ACTIVE does not matter.
A BAdi method can be called by one program only
If the BAdi is flagged as reusable, no filter dependency can be defined
A Business Add-in always has exactly one interface.