With the ABAP debugger, you can edit internal tables (for example append lines, delete lines, change contents
With ABAP debugger you can change the definition of the structure at run time
With the ABAP debugger you can create new data objects even if they are structures or internal tables.
With the ABAP debugger, you can edit and test i type variable.
With the ABAP debugger, you can add a column at the end of the internal table's column.
With ABAP debugger you can insert or delete an entry at run time
Business Server Pages(BSPs)
Classical Screens(dynpros) with controls(like the ALV Grid Control)
Module Pool Program
ABAP WebDynpro applications
ABAP Executable Program
ABAP Module Pool
ABAP Include Program
ABAP Subroutine Pool
Append fields to the table
Use append structures
Use a customer include
Use CI includes(Customizing Includes)
Insert new table fields
As a matter of principle , it is forbidden to assign a data object of type string to the content of type I.
To assign a value from a data object of type C to a data object of type P, the value must have the following form: 1234.5678
As a matter of principle , it is forbidden to assign a data object of type I to the contents of type STRING
A data object of type N may be used for calculations (although Type N is not the best type to do so)
Implicit conversion works for ABAP types only, not for dictionary types.
At the event TOP-OF-PAGE.
In the PBO module of corresponding screen
In the PAI module of corresponding screen
In the attribute of corresponding screen
Exactly one Component Controller
The text table zdepartmentt is linked with table zdepartment by a foreign key of type key fields of text table.
The text table zdepartmentt as at least one text field which is not a key field.
The text table zdepartmentt is a cluster tables
The text table zdepartmentt has same key fields as zdepartment plus one additional key field of data type LANG.
The dialog behavior, for instance selection screen appear or not
The interface, import and export parameter.
The selection method, from which table or view the data should come from
The attachment to a field, at which level search help should appear.
Documentation of the domain z_char_3.
Documentation of the data element z_carr_id
Documentation of the field carrid of the table zcarr.
An event block is introduced in an ABAP program using an event key word. It ends either implicitly when the next event block begins or another processing block is introduced (FORM or MODULE).
An event block is introduced in an ABAP program using an event key word and ends with the ‘END-OF-SELECTION’ statement.
The sequence in which events are called is determined by the runtime system. The sequence of event block in the program code is irrelevant.
Event block can have an interface and be called by ABAP statement. When they are called, all their interface parameters must be filled with values.
An AUTHORITY-CHECK statement with a return code not equal to 0.
A MESSAGE statement of type E.
A MESSAGE statement of type I.
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 moduel must output an E-type message or W-type message.
An I-type message must be output.
To address a component of the header line you can use the following : it-component = 'ABC'.
Internal tables with header lines are faster than internal tables without header lines
Instead of LOOP at IT ….. ENDLOOP one might as well use LOOP at it into it. …. ENDLOOP.
Two data objects with the same name exists , the internal table's body and header line, which is a structure of the row type of the table
To initialize this internal table's body you could use: CLEAR it.
Authorization checks are performed with the SELECT statement.
Authorization checks are performed with the authority-check statement.
The authorization check determines whether users have the necessary authorizations in their master records.
The authorization check is always refers to an authorization profile.
The system administrator defines which authorization checks are executed.
In the event block AT SELECTION-SCREEN.
In the event block GET SCARR.
In a PAI module of the selection screen.
In a PBO module of the selection screen.
Data object of ABAP type STRING initially takes up no spaces, If any data is put into it at runtime , it takes up exactly the space that is needed . If its cleared the value changes to spaces, but the previous length remains.
A data Object of type X has fixed length while data object of type XSTRING the length changes dynamically depending upon the length of the content
Type X is useful for working with bit information
You can compute date with the following DATA: old_date type d, new_date type d, old_date = sy-datum. new_date = old_date + 14.
There are four types of internal table: standard, sorted, hashed, and indexed tables.
You can use the INSERT TABLE statement to add data records to all types of internal table.
You can use an index to access hashed tables.
If not all key fields are qualified when a data record is read from an internal table with table key (READ ... WITH TABLE KEY ...), the statement returns the first suitable data record.
If you want to add an entry to a sorted table, the sort sequence must remain the same.
A development object (e.g. a program) must either be assigned to a package or be declared as a local object.
Local objects can only be transported at the very end of a project.
One important attribute of a package is the transport layer which determines the following systems for a regular transport of the packages' objects.
You can assign a transport layer to each type of development object.
One important attribute of the object directory entry of a development object is the original system. It is convenient to use the production system as the original system.
The cost for reading a data record from the hashed table do not depends upon number of entries in the table.
If the field symbol is assigned with READ … ASSIGNING statement, the entry in the internal table can be changed directly using field symbols
If you have a standard table , searching an entry using a fully qualified key is faster than searching by index
The cost for reading a data record are higher for a large number of entries in a sorted table than for a large number of entries in a standard table
If the field symbol is used to access the content of an internal table, the data record is not copied to the work area.
You need to program the check at the event AT SELECTION-SCREEN, if there is any error an E type MESSAGE must be output.
You need to program the check at the event END-OF-SELECTION, if there is any error an E type MESSAGE must be output.
You need to program the check at the event AT SELECTION-SCREEN, if there is any error , processing must be interrupted with a STOP statement and an message type I must be output.
Maintain SCARR as the value table of the domain of SPFLI-CARRID.
Implement a search help that ensures that user can enter only correct values.
Implement a PAI module that check the user have entered correct values.
Define SCARR-CARRID as foreign key with check table SPFLI and foreign key as MANDT and CARRID
Define SPFLI-CARRID as foreign key with check table SCARR with foreign key as MANDT and CARRID
The inactive version can be seen only by the developer who has created it, that is there is no shared view of inactive versions
If the inactive version is activated , it becomes the new active version of the object at the very moment the old active active version becomes inactive version.
Inactive versions can be transported as long as they were originally created in development system.
If a program P1 calls program P2 from outside of the development environment and even if there is a inactive version of program P2 , still the active version of P2 will be called.
Use the statement TABLES: SDYN_CONN to declare the structure named SDYN_CONN in the top include of your program.
Use the statement GET FIELD SDYN_CONN in the PAI module user_command_100.
Use DATA statement to declare a structure SDYN_CONN in the top include of your program.
Use the statement GET FIELD in the PAI logic of the Dynpro.
Use the statement GET FIELD sdyn_book in the PAI logic of the Dynpro.
Use the DATA statement to declare a structure of type SDYN_BOOK in the Top-Include of the program.
Use the statement TABLES SDYN_BOOK to declare a structure with the name and type SDYN_BOOK in the Top-Include of the program.
Use the statement GET FIELD sdyn_book in the PAI module
If you have created a program ZP1 in system S01 in client 800 you can as well execute this program in client 801.
The repository is structured into applications and packages.
Applications and packages cannot be nested.
The repository objects are stored in a special file, the RepSe (Repository Sequential File), that has a privileged link to the system's kernel.
The New ABAP Debugger works with two external modes that are closely linked to each other (two-process debugging). Thereby the developer can always view the original program's behavior in one mode and debug the program in the other mode.
You can switch between Classical and New ABAP Debugger.
The New ABAP Debugger allows the comparison of strings, structures, and internal tables.
You can only switch New ABAP Debugger.
Write changes to the database with INSERT and MODIFY and a COMMIT or ROLLBACK WORK in each appropriate dialog step.
Use PERFORM … ON COMMIT in each appropriate dialog step and COMMIT WORK in the last dialog step.
Use CALL FUNCTION … IN UPDATE TASK in each appropriate and COMMIT WORK in the last dialog step.
Write changes to the database with INSERT and MODIFY and a COMMIT WORK in the last dialog step only.
Types for internal tables (table type)