To hide alv container
hi,
i have 3 alv grids in my screen.
based on selection screen i have to display the grids.
how can i hide one grid.
Hi,
Dop not create object of that container. I think this should leave blank space where container is declared.
Another way is to declare 3 different screens
first with 1 container
second with 2 containers
third with 3 containers.
Depending upon how many and which container you want to display call any one of the screen with corresponding container name.
Regards,
Mohaiyuddin
Similar Messages
-
Hi ,
I am trying to print the contents from the ALV Container,This is a pop-up screen
displaying details of the line selected in the ALV report.
Standard tool bar print button is available, and it works, but I also have the print icon in bottom of the screen , which should print the container contents.
Not sure what custom code shd go in for printing,
Looked into the std BCALV * programs, but no luck so far.
Appreciate any help.
Thank you
LalithaHi Joseph,
in my case these are the settings...
Just change your spool settings also ..
in my case
SAP Cover Page System Administrator: Default Settings
OS Covert Sheet System Administrator: Default Settings
ALV statastics NO
i think for your case ALV statastics is markes as YES is it true.
Can you change the settings.
Regards
Vijay -
Creat icon to display no of entries in ALV container
HI,
I have to display no of records on push button type icon,
it should directly display no of entries like'50 hits'.Need not to give any function code,we need not to click push button,it should display like text on button,
button should be added in alv container tool bar.
I am giving output in alv on subscreenHANDLE_TOOLBAR
FOR EVENT TOOLBAR OF CL_GUI_ALV_GRID
IMPORTING E_OBJECT E_INTERACTIVE.
define gloabal variable to populate the no of records.and use the variable
METHOD HANDLE_TOOLBAR.
DATA: LS_TOOLBAR TYPE STB_BUTTON.
* append a separator to normal toolbar
CLEAR LS_TOOLBAR.
MOVE 3 TO LS_TOOLBAR-BUTN_TYPE.
APPEND LS_TOOLBAR TO E_OBJECT->MT_TOOLBAR.
* append an icon to to save data
CLEAR LS_TOOLBAR.
MOVE 'TOTAL' TO LS_TOOLBAR-FUNCTION.
<b> MOVE ICON_SYSTEM_SAVE TO LS_TOOLBAR-ICON. "Choose your Icon</b>
MOVE 'Save' TO LS_TOOLBAR-QUICKINFO.
<b> MOVE V_VAR TO LS_TOOLBAR-TEXT.</b>
MOVE ' ' TO LS_TOOLBAR-DISABLED.
APPEND LS_TOOLBAR TO E_OBJECT->MT_TOOLBAR.
CLEAR LS_TOOLBAR.
* append a separator to normal toolbar
CLEAR LS_TOOLBAR.
MOVE 3 TO LS_TOOLBAR-BUTN_TYPE.
APPEND LS_TOOLBAR TO E_OBJECT->MT_TOOLBAR.
ENDMETHOD. "handle_toolbar
Before creating the ALV GRID object try to populate the variable V_VAR with no of records.
obvious you need to set the handler to appear in the toolbar.
Regards
vijay -
Capture ALV container event and change data in screen header
Hi,
I have a REPORT calling a custom screen with a header section and an ALV container displaying ITEMS.
<b>Situation:</b>
If I use the FILTER button on the ALV container, it works fine but I wish to capture the details, so that I can change my header data accordingly.
<b>Example</b>
e.g : Suppose the ALV container on the screen displays 4 lines of data.
So my header area displays '4' as the no of items displayed
Now when I use FILTER button on the ALV container, it then dispalys only '2' lines of data as per the filter criteria. Now how do I capture this details so that my header now displays 2 instead of 4.
Basically I want my HEADER data to get refreshed whenever I use the filter button to change the number of data lines dispalyed.
Hope I make some sense with the example.
Appreciate if you gurus could help ..
Thanks and Regards
RKCan you post your code.
Regards,
Rich Heilman -
I have editable alv container in a module pool which runs through transaction code.the problem is each time the editabale alv is displayed the old values remain....How can i refresh my alv container?
Hi Priya,
you can try with --
CALL METHOD grid->refresh_table_display.
CLEAR: gh_index.
Thanks,
Venkat -
Hi All,
Please anyone suggest me, how can I use text-editor in ALV container?
Means when i execute the program, i want to see editor screen.
Thanks
Amitsee
Custom Controls
A custom control is an area on a screen. You create them in the Screen Painter, and, like all other screen objects, they have a unique name. You use custom controls to embed controls. Controls are software components of the presentation server. Depending on the used SAP GUI, these are either ActiveX Controls or JavaBeans. They allow you to perform tasks, such as editing texts, locally on the presentation server. The control is driven by the application logic, which still runs on the application server.
The SAP Control Framework
The controls on the presentation server and the ABAP application programs on the application server communicate using the SAP Control Framework. The SAP Control Framework is programmed in ABAP Objects . It contains global classes that can be found in the class library under Basis ® Frontend Services. These classes encapsulate the communication between the application server and presentation server, which is implemented using Remote Function Call.
All application controls are encapsulated in a global class. You can find the SAP Basis controls in the Class Browser under Basis ® Frontend Services or Basis ® Component Integration. Programs that use controls on a screen work with the methods and events of the global classes that encapsulates them.
Container Controls
Before you can work with a custom control on a screen, you must assign a SAP Container Control to it. Container controls are instances of special global classes from the SAP Control Framework. The global class for custom controls is called CL_GUI_CUSTOM_CONTAINER. To link a custom control to a container control, pass the custom control name to the constructor of the container control when you instantiate it using CREATE OBJECT.
As well as using custom containers, you can link controls to a screen using a SAP Docking Container. This is encapsulated in the global class CL_GUI_DOCKING_CONTAINER. The SAP Docking Container does not place the control within a screen. Instead, it attaches it to one of the four edges. You can nest containers. For example, you can use the SAP Splitter Container (classes CL_GUI_EASY_SPLITTER_CONTAINER or CL_GUI_SPLITTER_CONTAINER) within other containers. This allows you to split a custom control or docking control into more than one area, allowing you to embed more than one control.
Application Controls
You must also create instances for the application controls that you want to place within your container - for example, a SAP Textedit Control (class CL_GUI_TEXTEDIT) or a SAP Tree Control (for which there is more than one global class - an example is CL_GUI_SIMPLE_TREE). When you instantiate the control, you pass a reference to the container in which you want to place it to the PARENT parameter of its constructor method. The container may be an instance of the class CL_GUI_CUSTOM_CONTAINER, but can also be an instance of one of the other SAP Container controls.
Control Methods
For information about control methods and their documentation, refer to the class definitions in the Class Builder or the SAP Library documentation. To minimize the network load between the application and presentation servers, method calls are buffered in the automation queue before being sent to the presentation server at defined synchronization points. One of the automatic synchronization points is the end of PBO processing. You can force a synchronization point in your program by calling a method that is not buffered, or by calling the static method FLUSH.
Control Events
Unlike screens, on which user interaction triggers the PAI event and control returns to the application server, user interaction on controls is not automatically passed back to the application server. If you want an event to be passed back to the application server, you must register it in your program using the special method SET_REGISTERED_EVENTS. For a list of the events that you can register for each control, refer to its wrapper class in the Class Builder. You can register two kinds of event handling using SET_REGISTERED_EVENTS:
System Events (Default)
The event is passed to the application server, but does not trigger the PAI. If you have registered an event handler method in your ABAP program for the event (using the SET HANDLER statement), this method is executed on the application server.
Within the event handler method, you can use the static method SET_NEW_OK_CODE of the global class CL_GUI_CFW to set a function code and trigger the PAI event yourself. After the PAI has been processed, the PBO event of the next screen is triggered.
The advantage of using this technique is that the event handler method is executed automatically and there are no conflicts with the automatic input checks associated with the screen. The disadvantage is that the contents of the screen fields are not transported to the program, which means that obsolete values could appear on the next screen. You can work around this by using the SET_NEW_OK_CODE method to trigger field transport and the PAI event after the event handler has finished.
Application Events
The event is passed to the application server, and triggers the PAI. The function code that you pass contains an internal identifier. You do not have to evaluate this in your ABAP program. Instead, if you want to handle the event, you must include a method call in a PAI dialog module for the static method DISPATCH of the global class CL_GUI_CFW. If you have defined an event handler method in your ABAP program for the event (using the SET HANDLER statement), the DISPATCH method calls it. After the event handler has been processed, control returns to the PAI event after the DISPATCH statement and PAI processing continues.
The advantage of this is that you can specify yourself the point at which the event is handled, and the contents of the screen fields are transported to the application server beforehand. The disadvantage is that this kind of event handling can lead to conflicts with the automatic input checks on the screen, causing events to be lost.
Related Information
For further information about controls, and in particular, help on troubleshooting and optimizing synchronization, refer to BC Controls Tutorial and BC SAP Control Framework.
Example
The following example shows the difference between system and application events.
REPORT demo_custom_control .
Declarations *****************************************************
CLASS event_handler DEFINITION.
PUBLIC SECTION.
METHODS: handle_f1 FOR EVENT f1 OF cl_gui_textedit
IMPORTING sender,
handle_f4 FOR EVENT f4 OF cl_gui_textedit
IMPORTING sender.
ENDCLASS.
DATA: ok_code LIKE sy-ucomm,
save_ok LIKE sy-ucomm.
DATA: init,
container TYPE REF TO cl_gui_custom_container,
editor TYPE REF TO cl_gui_textedit.
DATA: event_tab TYPE cntl_simple_events,
event TYPE cntl_simple_event.
DATA: line(256) TYPE c,
text_tab LIKE STANDARD TABLE OF line,
field LIKE line.
DATA handle TYPE REF TO event_handler.
Reporting Events ***************************************************
START-OF-SELECTION.
line = 'First line in TextEditControl'.
APPEND line TO text_tab.
line = '----
APPEND line TO text_tab.
line = '...'.
APPEND line TO text_tab.
CALL SCREEN 100.
Dialog Modules *****************************************************
MODULE status_0100 OUTPUT.
SET PF-STATUS 'SCREEN_100'.
IF init is initial.
init = 'X'.
CREATE OBJECT:
container EXPORTING container_name = 'TEXTEDIT',
editor EXPORTING parent = container,
handle.
event-eventid = cl_gui_textedit=>event_f1.
event-appl_event = ' '. "system event
APPEND event TO event_tab.
event-eventid = cl_gui_textedit=>event_f4.
event-appl_event = 'X'. "application event
APPEND event TO event_tab.
CALL METHOD: editor->set_registered_events
EXPORTING events = event_tab.
SET HANDLER handle->handle_f1
handle->handle_f4 FOR editor.
ENDIF.
CALL METHOD editor->set_text_as_stream
EXPORTING text = text_tab.
ENDMODULE.
MODULE cancel INPUT.
LEAVE PROGRAM.
ENDMODULE.
MODULE user_command_0100 INPUT.
save_ok = ok_code.
CLEAR ok_code.
CASE save_ok.
WHEN 'INSERT'.
CALL METHOD editor->get_text_as_stream
IMPORTING text = text_tab.
WHEN 'F1'.
MESSAGE i888(sabapdocu) WITH text-001.
WHEN OTHERS.
MESSAGE i888(sabapdocu) WITH text-002.
CALL METHOD cl_gui_cfw=>dispatch.
ENDCASE.
SET SCREEN 100.
ENDMODULE.
Class Implementations **********************************************
CLASS event_handler IMPLEMENTATION.
METHOD handle_f1.
DATA row TYPE i.
MESSAGE i888(sabapdocu) WITH text-003.
CALL METHOD sender->get_selection_pos
IMPORTING from_line = row.
CALL METHOD sender->get_line_text
EXPORTING line_number = row
IMPORTING text = field.
CALL METHOD cl_gui_cfw=>set_new_ok_code
EXPORTING new_code = 'F1'.
CALL METHOD cl_gui_cfw=>flush.
ENDMETHOD.
METHOD handle_f4.
DATA row TYPE i.
MESSAGE i888(sabapdocu) WITH text-004.
CALL METHOD sender->get_selection_pos
IMPORTING from_line = row.
CALL METHOD sender->get_line_text
EXPORTING line_number = row
IMPORTING text = field.
CALL METHOD cl_gui_cfw=>flush.
ENDMETHOD.
ENDCLASS.
The layout of screen 100 is:
The screen contains an output field field and a custom control called textedit.
The flow logic of screen 100 is:
PROCESS BEFORE OUTPUT.
MODULE status_0100.
PROCESS AFTER INPUT.
MODULE cancel AT EXIT-COMMAND.
MODULE user_command_0100.
The GUI status SCREEN_100 has the functions BACK, EXIT, and CANCEL (all with type E) and the function INSERT (normal function).
There is a local class event_handler defined in the program. It contains event handler methods for the F1 and F4 events of global class CL_GUI_TEXTEDIT. When you run the program, the classes CL_GUI_CUSTOM_CONTROL, CL_GUI_TEXTEDIT, and event_handler are instantiated in the PBO of screen 100.
The container control is linked to the custom control on the screen, and the instance of the textedit control is linked to this container. The F1 and F4 events of the textedit control are registered using the SET_REGISTERED_EVENTS method to ensure that they are passed to the application server when they occur. F1 is defined as a system event, F4 as an application event. The event handler methods of the handle instance of the class event_handler are registered as handlers for the events.
Before screen 100 is displayed, the program fills the textedit control with the contents of table text_tab . The user can edit the text while the screen is displayed. If the user chooses INSERT, the PAI event is triggered and the current text from the textedit control is copied into table text_tab.
If the user chooses F1 on the textedit control, the handle_f1 method is executed. This assigns the contents of the line to the field field: The method SET_NEW_OK_CODE triggers the PAI event. It is this that ensures that the PBO is processed, and the contents of field are sent to the screen.
If the user chooses F4 on the textedit control, the PAI event is triggered. The DISPATCH method is called, and this triggers the method handle_f4. This assigns the contents of the line to the field field: Since the PAI processing continues after the event, the PBO event follows, and the field contents are transferred to the screen.
The contents of the textedit control are not passed to the internal table text_tab either after F1 or after F4. The contents of the textedit control are therefore overwritten in the PBO event with the previous contents of text_tab.
http://help.sap.com/saphelp_nw2004s/helpdata/en/2a/755b94ca5911d299af5c9604c10e27/content.htm -
Hi, I have created an ALV with abap objects, and I am interested in sow or hide his buttons depending of other funcionality. Is this possible?
How can i do it?
Thanx!Hi,
Here is the sample code.
This form create the Docking container and the ALV grid.
perform f9000_objects_create.
Here the print icon will be excluded from tool bar
perform f9100_exclude_functions using : i_Exclude[] '&PRINT'.
FORM f9100_exclude_functions USING pexclude LIKE i_exclude
value(pfunction).
DATA: l_exclude TYPE ui_func.
l_exclude = pfunction.
APPEND l_exclude TO pexclude.
ENDFORM. " f9100_exclude_functions
Kindly reward points by clicking the star on the left of reply,if it helps. -
Hide alv grid PR custom subscreen
Hello All,
I have a custom subscreen on PR ( bulit via screen exit) with ALV grid and some screen elements ( to get input data from user) on it.
In create and change PR mode, I need to get the input ( could be multiple rows with the help of create next icon )from user and update ALV grid with the input values. But in PR display mode, I need to hide the ALV grid.
I tried using desctructor method FREE, but dint work.
Any suggestions?
Thanks,
ChandraI have a similiar problem:
I have a dynpro where there are different possibilities for ALV grids to be shown. I have 10 containers (that's the maximum number of ALV grids that can appear) and want to use the highest first. Now, it might be that I want to show another ALV in a container I have had an ALV before, therefore I must hide / delete / destroy the previous ALV in this container.
I use the FREE( ) method of the alv controls, I clear and free all references, but still, even after leaving and accessing the dynpro again, the ALV is shown. That's why I'd need some help here too...
Thanks in advance, Christopher -
Hide alv column of a standard tcode...
Hello Experts,
I was just given a task to hide a certain column in a standard tcode(LI14). So what
I tried first was to just create a transaction variant but it did not work since
the column that I need to hide is an alv list display. So I debugged the transaction
and it calls another standard program but it doesn't contain any ALV related FMs either in
the calling or the called program.
Anyone encountered this type of problem?Hi,
I just debug the standard transaction(LI14) and it calls another program that to my surprise, does not use ALV but uses WRITE statement instead. I asked our functional guy and he said that there are no config available for it. So I think I'll just create a custom program for this one. -
HI,
I am displaying my ALV grid in subscreen,i am using CALL METHOD g_alv_grid->set_table_for_first_display,it is working fine for first time but when user is changing input in first subscreen ,and click push button to call ALV grid in 2nd subscreen it is displaying previous records.how to clear the container ,I tried CALL METHOD g_alv_grid->refresh_table_display.but no result,Hi,
that means the problem is not with the REFRESH. since you are editing the grid the values are not updated to frontend. did you call this method in the PAI of the screen if not call this and try.
MODULE PAI INPUT.
CALL METHOD G_GRID->CHECK_CHANGED_DATA
IMPORTING
E_VALID = L_VALID.
CALL METHOD CL_GUI_CFW=>FLUSH.
CALL METHOD CL_GUI_CFW=>DISPATCH.
okcode hadnlings here...
CALL METHOD G_GRID->REFRESH_TABLE_DISPLAY
EXCEPTIONS
FINISHED = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDMODULE. "pai INPUT
Regards
vijay -
How to hide ALV column in webdynpro
Hi frnds,
I want to hide one columns in ALV output on webdynpro , give the procedure ...
Thanks & Regards,
Rajesh.jProcedure is :
a) Get ALV Model reference
b) Get list of ALV Columns
c) Loop at each column and set visibility
Code would be something like this
I'm storing ALV model reference in view attributes wd_this->alv_config_table of type ref to CL_SALV_WD_CONFIG_TABLE.
Data: lo_cmp_usage type ref to if_wd_component_usage.
DATA: lr_salv_wd_table TYPE REF TO iwci_salv_wd_table.
DATA: lr_column_settings TYPE REF TO if_salv_wd_column_settings,
lr_column TYPE REF TO cl_salv_wd_column,
lt_column type salv_wd_t_column_ref,
ls_column type salv_wd_s_column_ref.
*create an instance of ALV component
lo_cmp_usage = wd_this->wd_cpuse_OVERVIEW_EARNED_ALV( ).
* if not initialized, then initialize
if lo_cmp_usage->has_active_component( ) is initial.
lo_cmp_usage->create_component( ).
endif.
* get ALV component
lr_salv_wd_table = wd_this->wd_cpifc_OVERVIEW_EARNED_ALV( ).
wd_this->alv_config_table = lr_salv_wd_table->get_model( ).
lr_column_settings ?= wd_this->alv_config_table.
lt_column = lr_column_settings->get_columns( ).
loop at lt_column into ls_column.
CASE ls_column-id.
when 'POST_YEAR'.
ls_column-r_column->set_visible( if_wdl_core=>visibility_none ).
ENDCASE.
endloop. -
Hi All,
Greetings!!!
I have developed alv report using OOPS concept ,,currently am struck at 2 issues ..
1. the container is not exactly the same size for the display ,,i mean its not fitting properly in the display window ..
2. I have multiple records which are in both enable & disable mode for all fields ..,, now the problem is when I edit/enter some data in the rows which are in enable mode only those enabled records should be selected/picked up but not the other records which are in disabled mode ..,am using data_changed method for this purpose .., but its not getting fixed ..
Kindly suggest me the alternatives to get rid off from them..
Thanks in Advance..
Regards,
JackAbhijith had a solution here >> Re: screen in OO alv
-
Splitter ALV container + 2 layout definitions
Hello,
I wrote an ALV report using splitter container. In the upper part of my report I need to define a layout , and another one for the bottom part.
Also in my selection screen there are 2 parametrets for the upper and the lower layouts.
I have 1 problems :
B. when I use F4 functionalty from the selection screen for the upper part I get also layout of the lower part, and the samefor the lower part .
attach is a part of the code.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_lay01.
PERFORM f4_layouts USING if_salv_c_layout=>restrict_none CHANGING p_lay01.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_lay02.
PERFORM f4_layouts_sec USING if_salv_c_layout=>restrict_none CHANGING p_lay02.
FORM f4_layouts USING i_restrict TYPE salv_de_layout_restriction
CHANGING c_layout TYPE disvariant-variant.
DATA: ls_layout TYPE salv_s_layout_info,
ls_key TYPE salv_s_layout_key.
ls_key-report = sy-repid.
ls_layout = cl_salv_layout_service=>f4_layouts(
s_key = ls_key
restrict = i_restrict ).
c_layout = ls_layout-layout.
ENDFORM. " F4_LAYOUTS
FORM f4_layouts_sec USING i_restrict TYPE salv_de_layout_restriction
CHANGING c_layout TYPE disvariant-variant.
DATA: ls_layout TYPE salv_s_layout_info,
ls_key TYPE salv_s_layout_key.
ls_key-report = sy-repid.
ls_layout = cl_salv_layout_service=>f4_layouts(
s_key = ls_key
restrict = i_restrict ).
c_layout = ls_layout-layout.
ENDFORM. "
screen 100.
CREATE OBJECT g_custom
EXPORTING
container_name = 'CONTAINER'.
CREATE OBJECT o_splitter
EXPORTING
parent = g_custom
rows = 2
columns = 1.
CALL METHOD o_splitter->get_container
EXPORTING
row = 1
column = 1
RECEIVING
container = o_grid1.
CALL METHOD o_splitter->get_container
EXPORTING
row = 2
column = 1
RECEIVING
container = o_grid2.
cl_salv_table=>factory( EXPORTING r_container = o_grid1
IMPORTING r_salv_table = gr_table1
CHANGING t_table = gt_printout_main ).
cl_salv_table=>factory( EXPORTING r_container = o_grid2
IMPORTING r_salv_table = gr_table2
CHANGING t_table = lt_printout_second ).
cl_salv_table=>factory( IMPORTING r_salv_table = gr_table
CHANGING t_table = gt_alv_data1 ). "<tb> ).
lr_layout = gr_table1->get_layout( ).
lu_layout = gr_table2->get_layout( ).
*... §4.1 set the Layout Key
ls_key-report = sy-repid.
lr_layout->set_key( ls_key ).
lu_layout->set_key( ls_key ).
*... §4.2 set usage of default Layouts
lr_layout->set_default( abap_true ).
lu_layout->set_default( abap_true ).
*... §4.3 set Layout save restriction
lr_layout->set_save_restriction( if_salv_c_layout=>restrict_none ).
gs_test-layout = p_lay01.
lr_layout->set_initial_layout( gs_test-layout ).
lu_layout->set_save_restriction( if_salv_c_layout=>restrict_none ).
gs_test-layout = p_lay02.
lu_layout->set_initial_layout( gs_test-layout ).
lr_layout = gr_table2->get_layout( ).
lr_layout->set_save_restriction( if_salv_c_layout=>restrict_none ).
*... §4.1 set the Layout Key
ls_key-report = sy-repid.
CONCATENATE ls_key-report 'SEC' INTO ls_key-report.
lr_layout->set_key( ls_key ).
lr_layout->set_default( abap_true ).
gs_test-layout = p_lay02.
lr_layout->set_initial_layout( gs_test-layout ).
lr_events = gr_table1->get_event( ).
lu_events = gr_table2->get_event( ).
CREATE OBJECT ge_events.
SET HANDLER ge_events->on_user_command FOR lr_events.
SET HANDLER ge_events->on_double_click FOR lr_events.
CREATE OBJECT gu_events.
SET HANDLER gu_events->on_user_command FOR lu_events.
SET HANDLER gu_events->on_double_click FOR lu_events.
lr_selections = gr_table1->get_selections( ).
lr_selections->set_selection_mode( if_salv_c_selection_mode=>multiple ).
lu_selections = gr_table2->get_selections( ).
lu_selections->set_selection_mode( if_salv_c_selection_mode=>multiple ).
lr_columns = gr_table1->get_columns( ).
lr_columns->set_optimize( abap_true ).
lu_columns = gr_table2->get_columns( ).
lu_columns->set_optimize( abap_true ).
PERFORM create_toolbar.
PERFORM set_zebra_pattern.
PERFORM set_columns_technical USING lr_columns lu_columns.
PERFORM sort.
PERFORM add_button_to_pf_status.
*-> Display the grid, for this we use the DISPLAY method
CALL METHOD gr_table1->display.
CALL METHOD gr_table2->display.
Please advise.
Thanks
YifatHi Ifat
to access layouts for tab and bottom independantly, use the 'HANDLE' element of is_variant as follows
at selection-screen on value-request for p_tvar.
is_variant-report = sy-repid.
is_variant-handle = 'TOP'.
call function 'REUSE_ALV_VARIANT_F4'
exporting
is_variant = is_variant
i_save = 'A'
i_display_via_grid = 'X'
importing
es_variant = is_variant
exceptions
not_found = 1
program_error = 2
others = 3
if sy-subrc <> 0.
else.
p_tvar = is_variant-variant.
endif.
at selection-screen on value-request for p_bvar.
is_variant-report = sy-repid.
is_variant-handle = 'BOT'.
call function 'REUSE_ALV_VARIANT_F4'
exporting
is_variant = is_variant
i_save = 'A'
i_display_via_grid = 'X'
importing
es_variant = is_variant
exceptions
not_found = 1
program_error = 2
others = 3
if sy-subrc <> 0.
else.
p_bvar = is_variant-variant.
endif.
Regards
Joel -
Hello All,
Is there a way to HIDE a row in ALV object? (or any other). Not to delete the row, I mean, it still be there but not showed.
Thanks
EnriqueRefer:
[Showing and Hiding Data Rows for Calculations|http://help.sap.com/saphelp_nw04s/helpdata/en/43/4442f470cc1bcce10000000a1553f7/frameset.htm]
[Hiding Lines Between Columns and Rows|http://help.sap.com/saphelp_nw04/helpdata/en/91/e7eb40c4f8712ae10000000a155106/frameset.htm] -
can we hide a field in ALV...
chk these 2 options in fieldcatalog
<b>NO_OUT</b>
If you set this field, you hide the relevant column in the list. Nevertheless, the column is available in the field selection and can be interactively selected by the user as a display field. The ALV displays the contents of hidden fields on the detail screen for a row in the grid control.
wa_fieldcat-no_out = 'X'.
<b>TECH</b>
If this field is set, the relevant field is not displayed on the list and cannot be shown interactively. The field is only known in the field catalog. (For example, it must not be specified as a sorting criterion).
wa_fieldcat-tech = 'X'.
Message was edited by:
Chandrasekhar Jagarlamudi
Maybe you are looking for
-
Battery Life on MacBook Pro Retina 15" purchased 1 week ago
Hello Dear Community, About a month ago I purchased a MacBook Pro Retina 15" and after 1 week I noticed the battery was lasting for about 2-3 hours of web-browsing. It turned out the battery was defective and Apple sent me a new one. 4 days ago I rec
-
How do I install a scanner for HP Laserjet M2727 nf without the CD?
I have an HP Laserjet M2727 nf printer, scanner, copier. The printer and copier work fine, but I don't have the CD to install the scanner. Do you know how I can install it?
-
Hi, while creating third party sales order because of credit it is blocking when i remove the block in VKM3 again back to sales order here purchase org. is missing it is required field. If i give a purchase org. here and if i try to save again but o
-
Function Module for Excise and VAT Calculation
Dear All, I required one Function module for calculation of Excise % and amount of Invoice Verification Document. We are use TAXINN tax procedure. I am try to make Purchases Register where we required the Break up of Full tax amount as basic excise d
-
Iterator refresh issue : best approach?
Hi, I have a java based bean data control which has a list to be displayed as a table. I also have a method called addObject() which actually adds to the list. Now to get the newly added row one of the ways was to call the "Execute" opetation binding