select options in web dynpro application

51
Use of Select Options and Search Help in Webdynpro Applications OVS Search Help use in Select Options Debesh

Upload: debesh-swain

Post on 13-Apr-2015

542 views

Category:

Documents


1 download

DESCRIPTION

OVS search help in select options

TRANSCRIPT

Page 1: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

OVS Search Help use in Select Options

Debesh

Page 2: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Create a test Application

Give a View name and a Window name

By Debesh Page 2

Page 3: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

For using select options we use a webdynpro component called WDR_SELECT_OPTIONS which has all the select options properties predefined inside it.

In the View create a View Conatiner UI element to hold the select options component.

By Debesh Page 3

Page 4: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 4

Page 5: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 5

Page 6: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Add a button a trigger a action

By Debesh Page 6

Page 7: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Get the controller of the select options in the view

By Debesh Page 7

Page 8: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

In side window embedded the Select Options inside the view container

By Debesh Page 8

Page 9: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Inside DOINIT of view instantiate the interface controller of the Select options to get its control

By Debesh Page 9

Page 10: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 10

Page 11: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Then initialize the select options by calling appropriate method

By Debesh Page 11

Page 12: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 12

Page 13: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Now create a range table for the select options

By Debesh Page 13

Page 14: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Now with the standard Select Options add the Field for which select options is needed

By Debesh Page 14

Page 15: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 15

Page 16: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Now the select option for the field is ready. To test the same create an application and test it.

By Debesh Page 16

Page 17: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 17

Page 18: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 18

Page 19: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Now for search help change the code for I_VALUE_HELP_TYPE ,CO_PREFIX_NONE to CO_PREFIX_OVS. Normally when we create node attribute we can provide search help in the properties. But for Select options we don’t have any predefined node so we can use OVS help here.

Now create a handler attribute for Select options and also create a handler method for the OVS

By Debesh Page 19

Page 20: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 20

Page 21: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Now to transfer select options value from one view to other, create a view attribute which refer to IF_WD_SELECT_OPTIONS. This variable will hold the select options value .We are going to export this in our outbound plug and use it in the next view to read the select option.

Here LV_VAR is a second variable for a field which we will create in the view later for a field VBTYP.

By Debesh Page 21

Page 22: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Now create a outbound plug and and export the two variable which we are going to use in next view.

Now assign the helper reference to the handler variable.

By Debesh Page 22

Page 23: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Fire the plug now.

By Debesh Page 23

Page 24: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 24

Page 25: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Now if you have remember we have added an variable VBTYP for that , we will create the field now in side view context

By Debesh Page 25

Page 26: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 26

Page 27: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 27

Page 28: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Now create the UI element

By Debesh Page 28

Page 29: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

The following logic is for dropdown values

By Debesh Page 29

Page 30: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Code :

method WDDOINIT .  data lo_cmp_usage type ref to if_wd_component_usage.  lo_cmp_usage =   wd_this->wd_cpuse_sel_op( ).  if lo_cmp_usage->has_active_component( ) is initial.    lo_cmp_usage->create_component( ).  endif.  DATA lo_INTERFACECONTROLLER TYPE REF TO IWCI_WDR_SELECT_OPTIONS .  lo_INTERFACECONTROLLER =   wd_this->wd_cpifc_sel_op( ).

  DATA lo_r_helper_class TYPE ref to if_wd_select_options.

By Debesh Page 30

Page 31: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

  lo_r_helper_class = lo_interfacecontroller->init_selection_screen(  )."wd_this->SEL_HANDLER  data : lr_range TYPE REF TO data.  CALL METHOD lo_r_helper_class->CREATE_RANGE_TABLE    EXPORTING      I_TYPENAME     =  'VBELN'*    I_LENGTH       =*    I_DECIMALS     =    RECEIVING      RT_RANGE_TABLE = lr_range      .

  CALL METHOD lo_r_helper_class->ADD_SELECTION_FIELD    EXPORTING      I_ID                         = 'VBELN'      IT_RESULT                    = lr_range      I_READ_ONLY                  = ABAP_FALSE      I_VALUE_HELP_TYPE            = IF_WD_VALUE_HELP_HANDLER=>CO_PREFIX_OVS

      ." Assign the handler reference to the declared attributewd_this->SEL_HANDLER = lo_r_helper_class.

  DATA lo_nd_dcat TYPE REF TO if_wd_context_node.  DATA lo_nd_dcat_temp TYPE REF TO if_wd_context_node_info.  DATA lo_el_dcat TYPE REF TO if_wd_context_element.  DATA ls_dcat TYPE wd_this->element_dcat.* navigate from <CONTEXT> to <DCAT> via lead selection  lo_nd_dcat = wd_context->get_child_node( name = wd_this->wdctx_dcat ).

  data : lt_dom TYPE STANDARD TABLE OF DD07V,         ls_dom like LINE OF lt_dom.  CALL FUNCTION 'DDUT_DOMVALUES_GET'    EXPORTING      NAME          = 'VBTYP'      LANGU         = SY-LANGU    TABLES      DD07V_TAB     = lt_dom    EXCEPTIONS      ILLEGAL_INPUT = 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.  else.    data tab   type wd_this->elements_dcat.

By Debesh Page 31

Page 32: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

    data entry like line of tab.    LOOP AT lt_dom INTO ls_dom.      entry-vbtyp = ls_dom-ddtext.      APPEND entry to tab.    ENDLOOP.    lo_nd_dcat->bind_table( new_items = tab ).  endif.endmethod.

method YHANDLE .   TYPES:BEGIN OF ty_help,         vbeln TYPE vbap-vbeln,        END OF ty_help.  DATA: ls_help TYPE ty_help,        lt_help TYPE STANDARD TABLE OF ty_help.  FIELD-SYMBOLS: <lt_ovs_result>     LIKE lt_help,        <lhelp>             LIKE LINE OF <lt_ovs_result>,        <lt_sel_opt_result> TYPE STANDARD TABLE.  CASE i_ovs_data-m_ovs_callback_object->phase_indicator.    WHEN if_wd_ovs=>co_phase_0. "Set Configuration    WHEN if_wd_ovs=>co_phase_1. "Preassign Entry Values    WHEN if_wd_ovs=>co_phase_2. "Fill Value List      SELECT vbeln FROM vbap        INTO CORRESPONDING FIELDS OF TABLE lt_help        UP TO 200 ROWS.      i_ovs_data-m_ovs_callback_object->set_output_table( output = lt_help ).      "Value Return    WHEN if_wd_ovs=>co_phase_3.      ASSIGN i_ovs_data-m_ovs_callback_object->selection->* TO <lhelp>.      ASSIGN i_ovs_data-mt_selected_values->* TO <lt_sel_opt_result>.      INSERT <lhelp>-vbeln INTO TABLE <lt_sel_opt_result>.    WHEN OTHERS.  ENDCASE.endmethod.

method ONACTIONGET_DET .  data : lv_type(60) TYPE c.  DATA lo_nd_dcat TYPE REF TO if_wd_context_node.  DATA lo_nd_dcat_temp TYPE REF TO if_wd_context_node_info.  DATA lo_el_dcat TYPE REF TO if_wd_context_element.  DATA ls_dcat TYPE wd_this->element_dcat.* navigate from <CONTEXT> to <DCAT> via lead selection  lo_nd_dcat = wd_context->get_child_node( name = wd_this->wdctx_dcat ).

By Debesh Page 32

Page 33: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

  data : lt_dom TYPE STANDARD TABLE OF DD07V,         ls_dom like LINE OF lt_dom.  CALL FUNCTION 'DDUT_DOMVALUES_GET'    EXPORTING      NAME          = 'VBTYP'      LANGU         = SY-LANGU    TABLES      DD07V_TAB     = lt_dom    EXCEPTIONS      ILLEGAL_INPUT = 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.  else.    CALL METHOD LO_ND_DCAT->GET_ATTRIBUTE      EXPORTING        NAME   = 'VBTYP'      IMPORTING        VALUE  = lv_type .READ TABLE lt_dom INTO ls_dom with key ddtext = lv_type.IF sy-subrc IS INITIAL.wd_this->lv_var = ls_dom-DOMVALUE_L.ENDIF.    endif.  wd_this->fire_to_sales_plg(    sel_handler =   wd_this->sel_handler " ref to if_wd_select_options    lv_var      =   wd_this->lv_var      " vbtyp  ).endmethod.

By Debesh Page 33

Page 34: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Now create the next view

We handle the export parameters of the plug in the handler method of the called view

By Debesh Page 34

Page 35: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Following is the procedure for ALV table display in webdynpro application

By Debesh Page 35

Page 36: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 36

Page 37: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 37

Page 38: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Add another context.

By Debesh Page 38

Page 39: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 39

Page 40: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

Design the view

By Debesh Page 40

Page 41: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 41

Page 42: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 42

Page 43: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 43

Page 44: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 44

Page 45: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 45

Page 46: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 46

Page 47: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

method HANDLEFROM_SELECTION .

  wd_this->get_var = sel_handler.  DATA: RT_DATA TYPE REF TO DATA.  FIELD-SYMBOLS: <FS_DATA> TYPE TABLE.  data : lt_range TYPE RANGE OF vbeln,         ls_range LIKE LINE OF lt_range.

  RT_DATA = WD_THIS->get_var->GET_RANGE_TABLE_OF_SEL_FIELD(             I_ID = 'VBELN' ).

* Assign it to a field symbol  ASSIGN  RT_DATA->* TO <FS_DATA>.  lt_range = <fs_data>.  READ TABLE lt_range INTO ls_range INDEX 1.  wd_this->vbeln_low = ls_range-low.

By Debesh Page 47

Page 48: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

  wd_this->vbtype = lv_var.  TYPES : BEGIN OF ty_vbap,      VBELN type  VBELN_VA  ,      POSNR type  POSNR_VA  ,      MATNR type  MATNR ,      matkl type  MATWA ,      netwr type  NETWR_AP  ,      waerk type  WAERK ,      werks type  WERKS_EXT ,      lgort type  LGORT_D ,      netpr type  NETPR ,           END OF ty_vbap.  DATA : lv_vbeln TYPE vbeln.  DATA : lt_vbap TYPE TABLE OF ty_vbap.  SELECT * INto CORRESPONDING FIELDS OF TABLE lt_vbap            from vbak as a INNER JOIN vbap as b            on a~vbeln = b~vbeln            WHERE a~vbeln in lt_range            and  vbtyp = wd_this->VBTYPE.  IF sy-subrc IS INITIAL.    DATA lo_nd_sales TYPE REF TO if_wd_context_node.    DATA lo_el_sales TYPE REF TO if_wd_context_element.* navigate from <CONTEXT> to <SALES> via lead selection    lo_nd_sales = wd_context->get_child_node( name = wd_this->wdctx_sales ).* @TODO handle not set lead selection    IF lo_nd_sales IS INITIAL.    ENDIF.* get element via lead selection    lo_el_sales = lo_nd_sales->get_element(  ).* @TODO handle not set lead selection    IF lo_el_sales IS INITIAL.    ENDIF.    lo_nd_sales->bind_table( lt_vbap ).  ENDIF.endmethod.

By Debesh Page 48

Page 49: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 49

Page 50: Select Options in Web Dynpro Application

Use of Select Options and Search Help in Webdynpro Applications

By Debesh Page 50