User command for checkbox in alv grid output

Hi,
Does anyone knows the user command for checkbox in alv grid display. My requirement is to have a column for checkbox in alv output. When the user checks the checkbox, a pop-up dialog box will appear. This dialog box was created in screen painter. I can't find the user command for this. Please help.
Thanks in advance.

Hi,
there r two ways for creating checkbox col on the ALV grid.
1.)  take an extra field in your internal table i.e 
data:
   checkbox type c.
loop at internal_table into wa.
checkbox.
endloop.
or
the fieldcatalog attribute
2.) wa_fcat-checkbox = 'X'.
append wa_fcat to t_fcat.
clear wa_fcat.
if itab-checkbox = 'X'.
call screen <dialogbox screen number>.
endif.
regards
ravi

Similar Messages

  • F4 - Help for field in ALV Grid Output

    Hi,
    I generated a report which gives output in ALV Grid output.
    In the output, 1 of the field is editable.Here, for this field I need to have my own F4-Help.
    I think the procedure to be followed is:--
    Create a Search Help in SE11.
    Link the Search Help to the editable field.
    Please let me know if its the correct procedure.
    I f yes, how can I link user defined Search Help to the editable field?
    Thanks,
    Shivaa........

    Hi siva,
    you can also do that way.
    while filling the fieldcatalog use the parameter F4AVAILABL
    for more info check
    F4 help in ALV Grid...
    f4 help for a field in alv grid
    hope it helps you
    Thanks!
    Edited by: Prasanth on Mar 6, 2009 3:59 PM

  • How to handle user command method in module ALV Grid

    HI Experts,
                     I have 3 containers grid. 
                     GR_GRID              TYPE REF TO CL_GUI_ALV_GRID,
                     GR_GRID1              TYPE REF TO CL_GUI_ALV_GRID,
                     GR_GRID2              TYPE REF TO CL_GUI_ALV_GRID.
                     Please advise me how can I insert, save, delete 3 Module ALV Grid in method user command. How can i get which grid button (save, insert, delete) is clicked and how can i control those grid.
                    Thks in advance.
    CLASS LCL_EVENT_RECEIVER DEFINITION.
      PUBLIC SECTION.
        METHODS :
            HANDLE_TOOLBAR
                  FOR EVENT TOOLBAR OF CL_GUI_ALV_GRID
                                IMPORTING E_OBJECT E_INTERACTIVE SENDER,
            HANDLE_USER_COMMAND
                  FOR EVENT USER_COMMAND OF CL_GUI_ALV_GRID
                                IMPORTING E_UCOMM,
            HANDLE_DATA_CHANGED
                    FOR EVENT DATA_CHANGED OF CL_GUI_ALV_GRID
                          IMPORTING ER_DATA_CHANGED
                                    E_ONF4
                                    E_ONF4_BEFORE
                                    E_ONF4_AFTER,
            HANDLE_DOUBLE_CLICK
                     FOR EVENT DOUBLE_CLICK OF CL_GUI_ALV_GRID
                     IMPORTING E_ROW
                               E_COLUMN,
            HANDLE_HOTSPOT_CLICK
                      FOR EVENT HOTSPOT_CLICK OF CL_GUI_ALV_GRID
                           IMPORTING E_ROW_ID
                                     E_COLUMN_ID
                                     ES_ROW_NO.
    ENDCLASS. "(LCL_EVENT_RECEIVER DEFINITION) 
    METHOD HANDLE_USER_COMMAND.
         CLEAR G_CODE.
        G_CODE = E_UCOMM.
        CASE G_CODE.
          WHEN 'INSERT'.
            MESSAGE 'insert' TYPE 'I'.
           APPEND INITIAL LINE TO GT_MAIN.
          WHEN 'SAVE'.
           MODIFY ZTNBOOK FROM GT_MAIN.
            MESSAGE 'save' TYPE 'I'.
          WHEN 'DELETE'.
           DELETE FROM ZTNBOOK WHERE B_ID EQ GT_ZTBOOK-B_ID.
            MESSAGE 'delete' TYPE 'I'.
        ENDCASE.
        IF NOT G_CODE IS INITIAL.
      PBO, PAI
         CALL METHOD CL_GUI_CFW=>SET_NEW_OK_CODE
           EXPORTING
             NEW_CODE = G_CODE.
         CLEAR G_CODE.
        ENDIF.
      ENDMETHOD.

    Hi,
    Before posting, Search in SDN.
    See the below tread it will help you.
    Re: Get table for cl_gui_alv_grid

  • In ME2N  report for PO- How to get or add Vendor name in ALV grid output

    Hl Everyone
    How to get  or add Vendor Name and payment terms in the ALV grid output for the follwing reports like ME2N and ME2V.
    cuurently i am in 4.7 E version.
    Kindly suggest..........
    thanks in advance
    Regards
    Prashanth

    Hi Pankaj
    I knew that vendor name field is avaiable in ECC versions, but how to get the same field(vendor name) in 4.7 E vesion.
    Kindly suggest
    Regards
    Prashanth

  • How to add user command to drop down list in output screen for OALV Report

    Hi Experts,
    I have created a report by using OALV.
    in Output screen i have  added drop down for one filed with 2 values.
    when i select  value from the drop down list the  program should trigger and the next field should be update.
    so it is possiable to add a user command for the drop down list in output screen.
    if so please help me .
    Regards,
    Rathan

    HI,
    Check the Demo program BCALV_EDIT_06 with having the DATA_CHANGED event still you can capture the changed data. This event will help you.
    or you can go for this code..
    data: it_f4 type lvc_t_f4,
            wa_f4 type lvc_s_f4.
            wa_f4-FIELDNAME = 'CONNID'.
            wa_f4-REGISTER = 'X'.
            wa_f4-GETBEFORE = 'X'.
            wa_f4-CHNGEAFTER = 'X'.
            append wa_f4 to it_f4.
    "register F4 event
      CALL METHOD g_alv_grid_ref->register_f4_for_fields
        EXPORTING
          it_f4  = it_f4.
    "Once you try to pick the value HANDLE_DATA_CHANGED event will be triggered
    "Definition
         methods:
         handle_data_changed FOR EVENT data_changed OF cl_gui_alv_grid
                                  IMPORTING er_data_changed e_onf4 e_onf4_before e_onf4_after,
    "Implementation
    METHOD handle_data_changed .
        DATA: ls_mod_cells TYPE lvc_s_modi.
        IF e_onf4_before = 'X'.
          MESSAGE 'Data changed before F4' TYPE 'I'.
        ENDIF.
        IF e_onf4 = 'X'.   "if event triggered by F4
          MESSAGE 'Data changed on F4' TYPE 'I'.
        ENDIF.
        IF e_onf4_after = 'X'.
          MESSAGE 'Data changed after F4' TYPE 'I'.
        ENDIF.
       "here you know which cell was modified
        LOOP AT er_data_changed->mt_mod_cells INTO ls_mod_cells.
         "just example test case, here you can implement your code for modified cells
          IF ls_mod_cells-value >=5.
            CALL METHOD er_data_changed->add_protocol_entry
              EXPORTING
                i_msgid     = 'SABAPDOCU'
                i_msgty     = 'E'
                i_msgno     = '888'
                i_msgv1     = 'Only numbers below 5 are possibe'
                i_msgv2     = 'Please correct'
                i_fieldname = ls_mod_cells-fieldname
                i_row_id    = ls_mod_cells-row_id.
            CALL METHOD er_data_changed->modify_cell
              EXPORTING
                i_fieldname = ls_mod_cells-fieldname
                i_row_id    = ls_mod_cells-row_id
                i_value     = space.
          ENDIF.
        ENDLOOP.
      ENDMETHOD.                    "handle_data_changed
    Edited by: sum_it2 on Nov 21, 2011 10:07 AM

  • Click checkbox on alv grid

    hi all,
    Is there any way to handle the single click/tick on checkbox. Is there user command on that? For now, if we will click on the checkbox, the changes made on it does not reflect. I checked on the debugging mode, checkbox is not populated/ marked even if it was ticked by the user.
    thanks in advance.

    Hi Akira,
    For Controling  Check Box , you have to use grid display using customised  Container screen.
    From there you can control check Box .
    CREATE OBJECT custom_container
         EXPORTING container_name = o_container.
      CREATE OBJECT o_grid
               EXPORTING i_parent = custom_container.
    Form for building the fieldcatalog
      PERFORM build_fieldcat CHANGING it_fieldcat.
    Form for excluding the unwanted functionalities from the toolbar.
      PERFORM exclude_tb_functions CHANGING it_exclude.
    Method for displaying the ALV grid.
      CALL METHOD o_grid->set_table_for_first_display
        EXPORTING
          is_layout            = it_layout
          it_toolbar_excluding = it_exclude
        CHANGING
          it_fieldcatalog      = it_fieldcat
          it_outtab            = it_final.
      CREATE OBJECT o_event_receiver.
    Setting the event handlers for events toolbar, usercommand and datachange.
      SET HANDLER o_event_receiver->catch_toolbar FOR o_grid.
      SET HANDLER o_event_receiver->catch_user_command FOR o_grid.
      SET HANDLER o_event_receiver->catch_datachange FOR o_grid.
    Set editable cells to ready for input.
      CALL METHOD o_grid->set_ready_for_input
        EXPORTING
          i_ready_for_input = 1.

  • Displaying the selected rows in ALV Grid output

    Hi Experts,
    I am developing one interactive ALV Grid report where user can process the selected records/rows from the ALV Grid output.
    for displaying the ALV Grid, I have used the class CL_GUI_ALV_GRID class. I am working on ECC 6.0 system.
    when I select any records/rows from output and then press any Application Toolbar button, PAI and then PBO modules of the screen gets executed as per the normal flow.
    however After PBO, when same ALV output comes, all the selected/highlighted rows appear as unselected, that means I want to retain the ALV
    rows selection during the round trip.
    please advise.
    Regards,
    Jagesh

    Hi,
    Feiyun Wu is correct.
    Get_selected_rows and set_selected_rows are the methods to be used .
    Some code:
    Note the sequence of code:
    FORM set_gui_alv_grid_1 .
      DATA: wa_layout TYPE lvc_s_layo ,
            wa_print TYPE lvc_s_prnt .
      DATA: it_sort TYPE lvc_t_sort ,
            wa_sort TYPE LINE OF lvc_t_sort .
      DATA: it_fieldcatalog TYPE lvc_t_fcat.
      IF gui_custom_container_1 IS INITIAL .
        CREATE OBJECT gui_custom_container_1
          EXPORTING
            container_name = 'GUI_CUSTOM_CONTAINER_1'
          EXCEPTIONS
            cntl_error                  = 1
            cntl_system_error           = 2
            create_error                = 3
            lifetime_error              = 4
            lifetime_dynpro_dynpro_link = 5
            OTHERS                      = 6 .
        IF sy-subrc <> 0.
        ENDIF.
        PERFORM get_field_catalog
          USING gc_log_group_1
          CHANGING it_fieldcatalog  .
        CREATE OBJECT gui_alv_grid_1
          EXPORTING i_parent = gui_custom_container_1.
        CREATE OBJECT ob_event_receiver_1
          EXPORTING log_group = gc_log_group_1 .
    * registers the event handlers
        SET HANDLER ob_event_receiver_1->handle_toolbar      FOR gui_alv_grid_1 .
        SET HANDLER ob_event_receiver_1->handle_user_command FOR gui_alv_grid_1 .
        SET HANDLER ob_event_receiver_1->print_top_of_page   FOR gui_alv_grid_1 .
        SET HANDLER ob_event_receiver_1->hotspot_click       FOR gui_alv_grid_1 .
        wa_layout-cwidth_opt = abap_true .
    *   wa_layout-excp_fname = gc_excp_fname .
    *   wa_layout-ctab_fname = gc_ctab_fname.
    *   wa_layout-excp_led   = abap_true .
        CALL METHOD gui_alv_grid_1->set_table_for_first_display
          EXPORTING
            is_layout       = wa_layout
            is_print        = wa_print
            i_save          = 'A'
            is_variant      = gs_disvariant_1
          CHANGING
            it_sort         = it_sort
            it_fieldcatalog = it_fieldcatalog
            it_outtab       = it_alv_grid_1.
      ELSE .
        CALL METHOD gui_alv_grid_1->refresh_table_display.
    * Restore selections
        CALL METHOD gui_alv_grid_1->set_selected_rows
          EXPORTING
            it_index_rows = ob_event_receiver_1->it_rows.
    * Restore position
        CALL METHOD gui_alv_grid_1->set_scroll_info_via_id
          EXPORTING
            is_col_info = ob_event_receiver_1->wa_col
            is_row_no   = ob_event_receiver_1->wa_roid.
      ENDIF.
    ENDFORM .                    "set_gui_alv_grid_1
    Regards.

  • How to send the ALV GRID output to spool by using the print button in std t

    How to send the ALV GRID output to spool by using the print button in standard tool bar.
    We have created a button in the va02 transaction.  If user click on the button the new screen will be display on that screen we are populating the alv grid output using the oops concept.  But i am unable to send the output to spool using the print button in the standard tool bar.
    I am able to display the Print parameter dialog box but i am not able to send it to spool.
    Kindly help.
    Thanks In Advance.
    G.V.Ramana

    Hi Shaik,
    There is not properties button in my print screen.
    MODULE user_command_0900 INPUT.
        WHEN 'EXCEL'.
          PERFORM excel_download.                              
        WHEN 'PRI'.
          PERFORM print_output.
    form Print_output.
    CALL FUNCTION 'RSPO_LIST_LAYOUT_FITS'
               EXPORTING
                    columns        = 80
                    device         = 'ANY '
                    lines          = 65
                    maxpenality    = 1999
               TABLES
                    layouts        = lt_layouts1
               EXCEPTIONS
                    unknown_device = 1
                    OTHERS         = 2.
          IF sy-subrc = 0.
            LOOP AT lt_layouts1.
              IF lt_layouts1-penality < 1000        AND
                 lt_layouts1-penality < l_min_penality.
                l_layout       = lt_layouts1-layout.
                l_min_penality = lt_layouts1-penality.
              ENDIF.
            ENDLOOP.
            IF NOT l_layout IS INITIAL.
              CALL FUNCTION 'GET_PRINT_PARAMETERS'
                   EXPORTING
                        mode                   = 'CURRENT'
                        line_size              = 80             "#EC *
                new_list_id            = l_new_list_id
                        no_dialog              = l_no_dialog
                        layout                 = l_layout
                   IMPORTING
                        out_archive_parameters = rs_arc_params
                        out_parameters         = rs_pri_params
                        valid                  = l_valid
                   EXCEPTIONS
                        archive_info_not_found = 1
                        invalid_print_params   = 2
                        invalid_archive_params = 3
                        OTHERS                 = 4.
              IF sy-subrc NE 0.                                 " INS SLIN
              ENDIF.                                            " INS SLIN
              IF rs_pri_params-linsz LT 80 OR
                 rs_pri_params-linsz LT gt_stack-s_lprint-width.
                gt_stack-print_line_break = 'X'.
              ELSE.
                CLEAR gt_stack-print_line_break.
              ENDIF.
              IF l_valid NE 'X'.
                rs_pri_params = ls_pri_params_sav.
                rs_arc_params = ls_arc_params_sav.
              ENDIF.
            ENDIF.
          ENDIF.
    endform.                    " Print_output
        CALL METHOD gv_cost_tot_alv_grand->set_table_for_first_display
                EXPORTING
                   is_layout         = gs_layout_cost_tot_grand
                CHANGING
                   it_fieldcatalog   = gt_fcat_cost_tot_grand[]
                   it_outtab         = gt_cost_tot_grand[].
    Please check my code

  • Need to choose fields from alv grid output and send mail

    Hi,
    I need to choose few orders from alv grid output and send mail as PDF for chosen orders.
    Suggest if possible and how.

    Moderator message - Please do not post your requirements and ask the forum to do your work for you - post locked
    Rob

  • ALV Grid output

    Hi,
    I have one issue on ALV Grid output.
    Some times we will not have any values to display in ALV Grid output.
    In such cases we usually have to display 'No Data found' in report output message(Below report header).
    How to acheive this as all my ALV grid fields are of less length.
    Note: Message should be displayed below ALV Header (Where we usually get 1st record to be displayed).
    What is the solution for the same!
    Thanks,
    Deep.

    Hello Deep,
    You can try with,
    MESSATE 'Data not Found' TYPE 'I'.
    Bye
    Gabriel P.-

  • How to append ALV grid output to LIST output

    Hi,
    I am working with Basis AUDIT MANUAL report for which i have to integrate around 50 standard transactions (SM37,SM35...etc) output and make it into one single report.
    On execution of my report i have to get all the 50 transaction outputs sequentially.
    Some standard transactions have ALV list display output and some have GRID display.I can able to append only list outputs by submit program and exporting list to memory.
    Please suggest me how to get Alv grid output in midst of list output.
    Regards
    Kalpana.

    You should post your question to the ABAP forum:
    ABAP Development

  • Push Button in Every record in ALV grid output

    Dear Experts,
    I need to print a push button in first column of every record in ALV grid output. How ?
    No OOPS concepts please.
    Thanks,
    Siva.

    For this requirement, you have to copy the standard PF status of the ALV output. Do as below :-
    1) Go to SE41
    2) Enter the program name as SAPLKKBL
    3) In the field status enter STANDARD_FULLSCREEN
    4) Click on STATUS button on the application toolbar.
    5) Enter the name of your Program & a new status name.
    6) Click on COPY.
    This way the standard status will be copied to the custom status & call the same status in your program using SET PF STATUS statement. Then double click on the custom status name & you will be navigated to SE41, there you can add you new button on the application tool bar & assign a function code, which you can program by enabling the export parameter I_CALLBACK_USER_COMMAND of the Function module REUSE_ALV_GRID_DISPLAY.
    Just a sample code snippet for your reference :-
    FORM USER_COMMAND USING L_UCOMM LIKE SY-UCOMM
    LS_SELFIELD TYPE SLIS_SELFIELD.
    CASE L_UCOMM.
    WHEN 'your function code goes here'.
    Do further processing.
    This way you will have the standard PF status alongwith your button as well.
    Edited by: Kumar Manas Mishra on Jan 29, 2010 1:03 PM

  • Set cursor in ALV grid output

    Hi guys,
    I generated a report which gives out put in ALV grid.
    In the ALV grid output, I have some editable fields.
    Lets suppose, there are some editable fields with no data in it.
    I have userdefined pushbutton in Application toolbar, when I press the pushbutton the cursor should go to the empty field in the ALV grid output.
    Can this be possible through SET CURSOR statement?
    Thanks,
    Shivaa......

    Hi,
        You can set the cursor field on the output list that too for the output fields which are vissible on the screen only.
    syntax
    SET CURSOR 11 3.   ---> 11Coloumn and 3 line
    for dynamically setting cursor, first you have to search for the empty fields then set the cursor dynamically.
    look at this help document it might be helpful
    http://help.sap.com/saphelp_nw70/helpdata/EN/9f/dba47e35c111d1829f0000e829fbfe/content.htm
    Regards
    Bala KRishna

  • Menu in ALV grid output

    Hi all,
    Iam in need of a code that may help me out to get my cuztomized menu for my alv grid output.
    Please give your suggestions,
    Thanks,
    Rajesh.

    Hello Rajesh,
    First copy the standard ALV GUI Status STANDARD_FULLSCREEN to an ZSTANDARD_FULLSCREEN and make ur changes.
    FOr this u have
    DATA:g_callback_user_command TYPE slis_formname,
    g_callback_pf_status_set TYPE slis_formname.
    g_callback_pf_status_set = 'ZSTANDARD_FULLSCREEN'.
    g_callback_user_command = 'ALV_USER_COMMAND'.
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
       EXPORTING
           I_INTERFACE_CHECK              = ' '
           I_BYPASSING_BUFFER             =
           I_BUFFER_ACTIVE                = ' '
         i_callback_program             = g_progname
         i_callback_pf_status_set       =
    g_callback_pf_status_set
    i_callback_user_command = g_callback_user_command       I_STRUCTURE_NAME               =
         is_layout                      = g_r_layout
         it_fieldcat                    = g_t_fieldcat
           IT_EXCLUDING                   =
           IT_SPECIAL_GROUPS              =
           IT_SORT                        =
           IT_FILTER                      =
           IS_SEL_HIDE                    =
           I_DEFAULT                      = 'X'
            i_save                         = 'A'
           IS_VARIANT                     =
           IT_EVENTS                      =
           IT_EVENT_EXIT                  =
         is_print                       = g_r_print
           IS_REPREP_ID                   =
            i_screen_start_column          = g_screen_start_column
            i_screen_start_line            = g_screen_start_line
            i_screen_end_column            = g_screen_end_column
            i_screen_end_line              = g_screen_end_line
         IMPORTING
           E_EXIT_CAUSED_BY_CALLER        =
           ES_EXIT_CAUSED_BY_USER         =
        TABLES
          t_outtab                       = p_t_liste
       EXCEPTIONS
         program_error                  = 1
         OTHERS                         = 2
    FORM alv_user_command USING r_ucomm     LIKE sy-ucomm
                                rs_selfield TYPE slis_selfield.
      CASE r_ucomm.
        WHEN '&IC1'.
    *--- Hotspot selektion
          CASE rs_selfield-sel_tab_field.
    *------ Material
            WHEN 'T_MAT-MATNR'.
              READ TABLE t_mat INDEX rs_selfield-tabindex.
              PERFORM call_mm02 USING t_mat-matnr.
            WHEN 'G_T_LISTE-PSPID' OR 'G_T_HEADER-PSPID'.
    *------ Projekt
    Click auf Projekt -> Projekt anzeigen (CJ20)
              SET PARAMETER ID 'PSP' FIELD rs_selfield-value.
              SET PARAMETER ID 'PRO' FIELD space.
              CALL TRANSACTION 'CJ20' AND SKIP FIRST SCREEN.
            WHEN 'G_T_LISTE-POSID'.
    *------ PSP-Element
    Click auf PSP Element -> PSP Element anzeigen (CJ12)
              SET PARAMETER ID 'PSP' FIELD space.
              SET PARAMETER ID 'PRO' FIELD rs_selfield-value.
              CALL TRANSACTION 'CJ12' AND SKIP FIRST SCREEN.
            WHEN 'G_T_LISTE-STTXT_INT'.
    *------ Systemstatus
             g_sttxt_int = rs_selfield-value.
    G_T_LEGENDE erfüllen
             PERFORM f_fill_g_t_legende_int.
             g_r_layout-window_titlebar = 'Systemstatus'(004).
             PERFORM f_status_legende_popup.
            WHEN 'G_T_LISTE-STTXT_EXT'.
    *------ Anwenderstatus
             g_sttxt_ext = rs_selfield-value.
    G_T_LEGENDE erfüllen
             PERFORM f_fill_g_t_legende_ext.
             g_r_layout-window_titlebar = 'Anwenderstatus'(005).
             PERFORM f_status_legende_popup.
            WHEN 'G_T_LISTE-ICON'.
    *------ Status Detail
             PERFORM f_fill_g_t_status_detail USING rs_selfield-tabindex.
             PERFORM f_status_detail_popup.
          ENDCASE.
        WHEN 'MTNR'.
          READ TABLE t_mat INDEX rs_selfield-tabindex.
          PERFORM call_mm02 USING t_mat-matnr.
        WHEN 'INFO'.
          READ TABLE t_mat INDEX rs_selfield-tabindex.
          CALL SCREEN 900 STARTING AT 20 5
                          ENDING AT 100 20.
      ENDCASE.
    ENDFORM. "ALV_USER_COMMAND
    Hope this will solve ur problem.
    Reward if helps.
    Vasanth
    Message was edited by: Vasanth M

  • Set editable/non-editable checkbox in alv grid

    Hi all,
    How to set a checkbox in alv grid in editable/non-editable. i am using alv gird display function module for this. i tried to used method  cl_gui_alv_grid=>mc_style_disabled. but its not working. is it possible to have this functionality in grid? please help. thanks in advance.

    Hi,
    Try like this.
    CALL METHOD gr_alvgrid->set_table_for_first_display
    EXPORTING
    I_BUFFER_ACTIVE =
    I_CONSISTENCY_CHECK =
    I_STRUCTURE_NAME =
    IS_VARIANT =
    I_SAVE =
    I_DEFAULT = 'X'
    is_layout = gs_layout
    IS_PRINT =
    IT_SPECIAL_GROUPS =
    IT_TOOLBAR_EXCLUDING =
    IT_HYPERLINK =
    CHANGING
    it_outtab = gt_list[]
    it_fieldcatalog = gt_fieldcat
    IT_SORT =
    IT_FILTER =
    EXCEPTIONS
    invalid_parameter_combination = 1
    program_error = 2
    too_many_lines = 3
    OTHERS = 4
    regards
    Rajesh kumar

Maybe you are looking for