Skip to Content
author's profile photo Former Member
Former Member

ALV input field Event.

hi all,

i am using input field in alv table . i want to handle ON ENTER event .

I tryed all the events. But it not working.

ON_AFTER_CONFIG

ON_CELL_ACTION

ON_CLICK

ON_DATA_CHECK

ON_FUNCTION

ON_LEAD_SELECT

is thee some other thing to be added.

Thanx

Vivekananthan.S

Edited by: vivekananthan sellavel on Feb 26, 2009 12:37 PM

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

3 Answers

  • author's profile photo Former Member
    Former Member
    Posted on Feb 26, 2009 at 12:29 PM

    Hi,

    Had you checked with this.

    calss name:CL_WD_INPUT_FIELD

    method name:NEW_INPUT_FIELD

    Parameter name: ON_ENTER

    Check once with this.

    Regards,

    sarath

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Feb 26, 2009 at 12:53 PM

    The Events of inner UI elements are not exposed directly as they normally would be if they were standalone. Generally you can capture them using either the

    ON_DATA_CHECK:

    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/c8/6c80dbedfe42d1a93f8e6df1d7244a/frameset.htm

    This gets trigger for any press of ENTER, so it generally works like the Input Field onEnter.

    You could also consider ON_CELL_ACTION:

    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/45/12093591152464e10000000a1553f7/frameset.htm

    It is a higher level Event that encompasses both ON_DATA_CHECK and ON_CLICK.

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Feb 26, 2009 at 01:18 PM

    hi,

    I can give example for one of the ALV action 'ON_FUNCTIONu2019.The one i marked in bold will help achieving your requirement.

    I have used the standard component u2018salv_wd_tableu2019 in my application and will be able to give example by adding a button named 'NEW__BUTTON' .

    In the WDDOINIT method of the component controller, use the following code to define column name, your own buttons, visible column for the same component usage.

    DATA:

    lr_salv_wd_table_usage TYPE REF TO if_wd_component_usage,

    lr_salv_wd_table TYPE REF TO iwci_salv_wd_table.

    *Check ALV component usage

    lr_salv_wd_table_usage = wd_this->wd_cpuse_alv( ).

    IF lr_salv_wd_table_usage->has_active_component( ) IS INITIAL.

    lr_salv_wd_table_usage->create_component( ).

    ELSE.

    lr_salv_wd_table_usage->delete_component( ).

    lr_salv_wd_table_usage->create_component( ).

    ENDIF.

    *Get ALV component

    lr_salv_wd_table = wd_this->wd_cpifc_alv( ).

    wd_this->mr_table type ref to CL_SALV_WD_CONFIG_TABLE.

    *Get ConfigurationModel from ALV Component

    wd_this->mr_table = lr_salv_wd_table->get_model( ).

    *Set table settings

    DATA:

    lr_table_settings TYPE REF TO if_salv_wd_table_settings.

    lr_table_settings ?= wd_this->mr_table .

    lr_table_settings->set_visible_row_count( '5' ).

    lr_table_settings->set_width( '100%' ).

    DATA:

    lr_header TYPE REF TO cl_salv_wd_header,

    l_header_text TYPE string.

    lr_header = lr_table_settings->get_header( ).

    l_header_text = cl_wd_utilities=>get_otr_text_by_alias( 'NEW__BUTTON' ).

    lr_header->set_text( l_header_text ).

    lr_header->set_tooltip( l_header_text ).

    "lr_table_settings->set_selection_mode( cl_wd_table=>e_selection_mode-multi_no_lead ).

    *Set functions

    IF wd_this->mb_no_maintain NE abap_true.

    DATA:

    lr_function TYPE REF TO cl_salv_wd_function,

    lr_fe_button TYPE REF TO cl_salv_wd_fe_button,

    l_btn_text TYPE string.

    *Add the button here for validation on the top of the ALV

    *This is where you add the buttons on the same ROW.

    lr_function = lr_functions->create_function( 'NEW__BUTTON' ).

    CREATE OBJECT lr_fe_button.

    l_btn_text = cl_wd_utilities=>get_otr_text_by_alias( 'NEW__BUTTON' ).

    lr_fe_button->set_text( l_btn_text ).

    lr_fe_button->set_tooltip( l_btn_text ).

    lr_function->set_editor( lr_fe_button ).

    After defining the buttons 'NEW__BUTTON' , handle the actions for the same using the method u2018LIST_ACTIONu2019 which should have the event as u2018ON_FUNCTIONu2019, controller as u2018interface controlleru2019 and component use as the name you have given say u2018ALVu2019.

    In the method u2018LIST_ACTIONu2019, handle the actions as below. This method will have the following importing parameters.

    WDEVENT Importing CL_WD_CUSTOM_EVENT

    R_PARAM Importing IF_SALV_WD_TABLE_FUNCTION

    method list_action .

    case r_param->id .

    when 'NEW__BUTTON'.

    "Do the validation here-"

    endcase.

    endmethod.

    Thanks,

    Rajkumar.S

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.