Documente Academic
Documente Profesional
Documente Cultură
ALV stands for ABAP List Viewer. ALV gives us a standard List format and user interface to all our ABAP reports.
ALV is created by a set of standard function modules provided by SAP.
Sorting of records
Filtering of records
If you'll use the ALV you have to add TYPE-POOLS : SLIS. command at the beginning of your code.
SLIS_LAYOUT_ALV,
SLIS_T_FIELDCAT_ALV
SLIS_T_LISTHEADER,
SLIS_T_EVENT,
SLIS_SELFIELD.
he user can programmatically set the initial (default) variant for list display.
The default variant can be found using the function module 'REUSE_ALV_VARIANT_DEFAULT_GET'.
A list of possible events is populated into an event table (I_EVENTS) when this table is passed from the function
module REUSE_ALV_EVENT_NAMES_GET. The return table from this function module contains all the possible
events.
Display options
- Exceptions
- Totals
- Interaction
- Detail screen
- Color
- Other
REUSE_ALV_GRID_DISPLAY
What is sort internal table options in ALV ?
- tabname : Only relevant for hierarchical-sequential lists. Name of the internal output table.
- group : '* ' = new page at group value change ,'UL' = underline at group value change
Import parameters
EXPORTING
i_callback_program = sy-repid
i_callback_user_command = 'USER_COMMAND'
*User actions on ALV
CASE r_ucomm.
*User clicks a transaction code and that tcode is called from ALV
WHEN '&IC1'.
Endform.
ALV Types
REUSE_ALV_GRID_DISPLAY
REUSE_ALV_LIST_DISPLAY
key-header01 = 'TABNAME'.
key-item01 = 'TABNAME'.
EXPORTING
i_callback_program = sy-cprog
is_layout = it_layout
it_fieldcat = it_fieldcat
is_keyinfo = key
TABLES
t_outtab_header = it_dd02l
What is a report?
Interactive report
Classic reports
In classic reports,we can see the output in single list where as in interactive reports we can see the output in
multiple list.
These are the most simple reports. Programmers learn this one first. It is just an output of data using the Write
statement inside a loop.
Classical reports are normal reports. These reports are not having any sub reports. IT IS HAVING ONLY ONE
SCREEN/LIST FOR OUTPUT.
AT-SELECTION-SCREEN: This event triggers after proccesing user input still selection screen is in active mode.
START OF SELECTION: Start of selection screen triggers after proceesing selection screen.
The user can Interact with the report. We can have a drill down into the report data.
We can have a basic list (number starts from 0) and 20 secondary lists (1 to 21).
AT LINE-SELECTION
AT USER-COMMAND
AT PF<key>
AT LINE-SELECTION : This Event triggers when we double click a line on the list, when the event is triggered a new
sub list is going to be generated. Under this event what ever the statements that are been return will be displayed
on newly generated sub list.
How Many types of Tables are there in Data Dictionary and what they.
Ans: 3
Transparent table
Ans: No
What is meant by buffering and how many types of bufferings are there.
Pricing Tables starts with A* like A001, A002, A900 like that.
MKPF, MSEG
To allow users to maintain table using SM30 transaction you use Table Maintenance generator.
What is the difference between at selection screen and at selection screen output?
AT SELECTION-SCREEN OUTPUT is like Process Before Output Event. This would get triggered before screen is
displayed. This can be used to make fields invisible/visible based on selection.
AT SELECTION-SCREEN: This would be triggered if you hit any thing (Enter, Drop-Down, Help, Execute) after the
selection screen is displayed.
AT SELECTION-SCREEN OUTPUT
In ALV’s how would you get default values in the selection screen?
Create a variant in the ALV Report with what ever columns you would like to see and set sort criteria and column
widths and save as a default variant.
You could get the default variant by calling FM REUSE_ALV_VARIANT_DEFAULT_GET
Create all the Domains and Data elements as needed using Txn SE11.
Enter all the fields (MANDT must be the first field) and appropriate data elements or Built in Types for each field.
Make sure you select the Primary Key for this table.
In the Field Catalog table, you set the HOTSPOT property of the field to X
What is use of REUSE_ALV_FIELDCATALOG_MERGE?
Using this function module, you can get the Field catalog for a given Internal table or DD Structure. Once you get the
Field catalog, you could change the properties of each field.
In Interactive reports, HIDE statement stores the value of that field for that line. If the user places the cursor on a
line and click on some thing those values are automatically populated to that hidden fields.
What is the Difference between select single and select up to one row?
SELECT SINGLE can be used if you know the full key to select a record. If you do not have the full Key to select and
you are interested in one single row, you could use SELECT UPTO 1 ROWS. If you use a SELECT SINGLE with out a
full key, you would get a warning message in Extended Program checks.
If you do not have the full Key to select and you are interested in one single row, you could use SELECT UPTO 1
ROWS..
There is an Index created by default for the Primary Key of the table and that is called Primary Index. If you create,
any other index that is called Secondary Index for that table. Secondary Indexes are created to improve the
performance of SELECT statements.
How to create secondary index?
Click on Indexes and select fields and create a secondary index. Note: Always try to include MANDT as the first field
unless you have a reason..
What are the Events in the report and the order in which they trigger?
INITIALIZATION
AT SELECTION-SCREEN OUTPUT
AT SELECTION-SCREEN
AT SELECTION-SCREEN ON HELP-REQUEST
AT SELECTION-SCREEN ON VALUE-REQUEST
START-OF-SELECTION
END-OF-SELECTION
TOP-OF-PAGE
What is an ABAP Memory and SAP Memory and How to use them?
ABAP memory is a memory area that all ABAP programs within the same internal session can access using the
EXPORT and IMPORT statements.
SAP memory is a memory area to which all main sessions within a SAPgui have access. You can use SAP memory
either to pass data from one program to another within a session, or to pass data from one session to another.
Application programs that use SAP memory must do so using SPA/GPA parameters (also known as SET/GET
parameters).
TOP-OF-PAGE event will be triggered when the first ULINE, WRITE or SKIP statement occurs in a program.
SKIP provides empty space between lines, while RESERVE executes a page break on the current page if the number
of lines between current line and the page footer is less than the number specified in RESERVE statement.
SKIP generates a blank line, while the NEW-LINE causes the control to move to next line.
20
What is the name of the system variable that holds the contents of the selected line in interactive
reporting?
SY-LISEL
SAP provides support in the form of Notes also and this is called OSS. Can check the link Sree provided.
Just for an example if you face any error in your system. Then there is error number associated with the error. Then
you can search for the OSS not for the error number, and the note will give you possible solution to your problem.
We should not write commit statement inside the user exit or badi...standard alone will handle the commit work ....
What is the command to be used to transfer the data from one internal table to another internal.
We can use APPEND for copying data from one ITAB to another ITAB by keeping in a loop. But it is not efficient.
Instead we can use as follows:
ITAB1[]=ITAB2[].
How can validate input values in selection screen and which event was fired?
At selection-screen is an event, which is used to validate the selection screen input fields, if you want to validate the
particular input field we use at selection-screen on event.
Data element is the collection of domain with short description, whereas domain is collection of datatype and
length.
Domain contains only technical attributes (data type , size) where as Data Element contains Technical attribute as
well as Semantic attributes(Field description).
What is the difference between Internal table with header line and with out header line.
Internal table with header line is nothing but work area name as well as internal table name is same, whereas
internal table without header line is nothing but work area name as well as internal table name is different.
FOR INTERNAL TABLE WITH HEADER we need not create work area. But not advisable because the user may get
confused what is work area and what is internal table since they both will be having same names.
Load of program is the first triggering event in the classical reports, where as abaper point of view initialization is
the first triggering event.
LOAD-OF-PROGRAM which gets triggered internally in the SAP system, then the event INITIALIZATION gets trigger.
Binary search is a searching algorithm in which the whole data in spitted into two parts and searching is started
from one of the part. In normal search data is searched linearly from top to bottom which is less efficient than
binary search.
Binary search is used to get the more data from internal table instead of linear search ,and binary search is the
faster and efficient .
What is diffrence between ON Change of & At New Field??Select Single * from & select Upto 1 rows
ON CHANGE OF & AT NEW FIELD OF: Both triggers when a new record is found in table. But we can use AT NEW
FIELD only in loops and ON CHANGE OF can be used any where. SELECT SINGLE * & SELECT UPTO 1: ...
On change of and at new field are the internal table events. the significant difference between them are on change
of can be used in any loop but at new field can be used only in internal table loop.
While printing, 10 columns are printing in first page and the next 4 cols in next page, how do u
resolve this to accommodate all the 14 columns in a single page?
Not line size .. increase line-count
Report dont need any event to execute the output.if we we put start-of-selection there is no compulsory to use end-
of-selection. End-of-selection is used when we want to execute some output even when some exception occurs to
skip start-of-selection.
however, if we don't explicitly write any event, system implicitly starts with start of selection event.In case of
database selection, it is a good practice of use end-of-selection event.
Text elements makes program easier to maintain program texts in different languages.
check table is nothing but master table that u will create with valid set of values.
value table it provides the list of values and it will automatically proposed as a check table while creating foreing
key relationship
- STANDARD TABLE:
The key is, by default, set to NON-UNIQUE. You may not use the UNIQUE addition.
- SORTED TABLE:
Unlike stadard tables, sorted table have no default setting for the uniqueness attribute. If you do not specify either
UNIQUE or NON-UNIQUE, the system defines a generic table type, where uniqueness is irrelevant. You can use
generic types to specify the type of generic subroutine parameters.
- HASHED TABLE:
Hashed tables have no default setting. You must use the UNIQUE addition with hashed tables. You may not use
NON-UNIQUE.
'Refresh' is the keyworld which clears the contents of an internal table body.
COLLECT allows you to create unique or summarized datasets. The system first tries to find a table entry
corresponding to the table key. The key values are taken either from the header line of the internal table itab, or
from the explicitly-specified work area.
If the system finds an entry, the numeric fields that are not part of the table key (see ABAP number types) are
added to the sum total of the existing entries. If it does not find an entry, the system creates a new entry instead.
1) top-down approach
2) bottom-up approach
The secondary list is also called the stacked list and it will be shown on the entire screen if we don’t write its
coordinates of the command window.
When it’s the right time to utilize the command GET CURSOR in interactive lists?
The command GET CURSOR will be utilized when the hidden information is not enough for tracing the selected
line,
The start and the finish of the main processing logic, which is default for every ABAP/4 application; the statements
from START-OF-SELECTION to END-OF-SELECTION are executed automatically, there is no requirement for having
END-OF-SELECTION. Every procedural statement in ABAP applications are dependent by default on the START-OF-
SELECTION.
The index of the actual list is found in the system field SY-LSIND ,
SY-LSIND is the index of the presently made list( in the time of the actual event-0).
SY-LISEL represents the content of the line that invoked the event.
SY-CUROW represents the place in the window that the line which invoked the event has (beginning from 1).
SY-CUCOL is the place in the window where the column that invoked the event is found (beginning from 2).
TOP-OF-PAGE event will be triggered when the first ULINE, WRITE or SKIP statement occurs in a program.
SKIP provides empty space between lines, while RESERVE executes a page break on the current page if the number
of lines between current line and the page footer is less than the number specified in RESERVE statement.
SKIP generates a blank line, while the NEW-LINE causes the control to move to next line