cancel
Showing results for 
Search instead for 
Did you mean: 

Scroll Bar issue in OVS Help?

Former Member
0 Kudos

Dear All,

I am using Select Options with OVS help, But i am not getting Scrollbar. For other applications it is working fine.

But for this only i am getting this issue, Any help on this please??

Thanks,

Venkat.

Accepted Solutions (0)

Answers (2)

Answers (2)

Harsh_Bansal
Contributor
0 Kudos

Hi Venkat,

I just created one for testing purpose and got following output -

So, not scrollbar but there are options to move one by one, page by page or directly to end/top.

PS - Please let me know if you somehow get the scroll bars too..would like to know

Regards,

Harsh Bansal

Former Member
0 Kudos

Dear All,

Please any help onthis?

Thanks,

Venkat.

Former Member
0 Kudos

METHOD user_ovs .
* declare data structures for the fields to be displayed and
* for the table columns of the selection list, if necessary
   TYPES:
     BEGIN OF lty_stru_input,
*   add fields for the display of your search input here
       user_name TYPE string,
     END OF lty_stru_input.
   TYPES:
     BEGIN OF lty_stru_list,
*   add fields for the selection list here
       user_id TYPE zuser_id,
       first_name TYPE zfirst_name,
       last_name TYPE zlast_name,
       sapname TYPE char12,
     END OF lty_stru_list.

   DATA: ls_search_input  TYPE lty_stru_input,
         lt_select_list   TYPE STANDARD TABLE OF lty_stru_list,
         ls_select_list   TYPE  lty_stru_list,
         lt_select_list1   TYPE STANDARD TABLE OF lty_stru_list,
         ls_select_list1   TYPE lty_stru_list,
         ls_text          TYPE wdr_name_value,
         lt_label_texts   TYPE wdr_name_value_list,
         lt_column_texts  TYPE wdr_name_value_list,
         lv_window_title  TYPE string,
         lv_table_header  TYPE string.

   FIELD-SYMBOLS: <ls_query_params> TYPE lty_stru_input,
                  <ls_selection>    TYPE lty_stru_list.

   CASE ovs_callback_object->phase_indicator.

     WHEN if_wd_ovs=>co_phase_0"configuration phase, may be omitted
*   in this phase you have the possibility to define the texts,
*   if you do not want to use the defaults (DDIC-texts)

       ls_text-name = `USER_NAME`"must match a field name of search
       ls_text-value = `Search User`. "wd_assist->get_text( `001` ).
       INSERT ls_text INTO TABLE lt_label_texts.

       ls_text-name = `USER_ID`"must match a field in list structure
       ls_text-value = `User ID`. "wd_assist->get_text( `002` ).
       INSERT ls_text INTO TABLE lt_column_texts.

       ls_text-name = `FIRST_NAME`"must match a field in list structure
       ls_text-value = `First Name`. "wd_assist->get_text( `002` ).
       INSERT ls_text INTO TABLE lt_column_texts.

       ls_text-name = `LAST_NAME`"must match a field in list structure
       ls_text-value = `Last Name`. "wd_assist->get_text( `002` ).

       INSERT ls_text INTO TABLE lt_column_texts.
       lv_window_title = 'User Search'.
*      lv_table_header = wd_assist->get_text( `004` ).

       ovs_callback_object->set_configuration(
                 label_texts  = lt_label_texts
                 column_texts = lt_column_texts
                 window_title = lv_window_title
                 table_header = lv_table_header ).


     WHEN if_wd_ovs=>co_phase_1"set search structure and defaults
*   In this phase you can set the structure and default values
*   of the search structure. If this phase is omitted, the search
*   fields will not be displayed, but the selection table is
*   displayed directly.
*   Read values of the original context (not necessary, but you
*   may set these as the defaults). A reference to the context
*   element is available in the callback object.

       ovs_callback_object->context_element->get_static_attributes(
           IMPORTING static_attributes = ls_search_input ).
*     pass the values to the OVS component
       ovs_callback_object->set_input_structure(
           input = ls_search_input ).


     WHEN if_wd_ovs=>co_phase_2.
*   If phase 1 is implemented, use the field input for the
*   selection of the table.
*   If phase 1 is omitted, use values from your own context.

       IF ovs_callback_object->query_parameters IS NOT BOUND.
******** TODO exception handling
       ENDIF.
       ASSIGN ovs_callback_object->query_parameters->*
                               TO <ls_query_params>.
       IF NOT <ls_query_params> IS ASSIGNED.
******** TODO exception handling
       ENDIF.

*     call business logic for a table of possible values
*     lt_select_list = ???
       REPLACE ALL OCCURRENCES OF '*' IN <ls_query_params>-user_name  WITH '%' .
       IF <ls_query_params>-user_name IS NOT INITIAL.
         DATA lv_len TYPE i.
         DATA lv_query TYPE string.
         lv_len = strlen( <ls_query_params>-user_name ).
         IF lv_len GT 8.
           lv_query = <ls_query_params>-user_name+0(7).
*          CONCATENATE lv_query '%' INTO lv_query.
           <ls_query_params>-user_name = lv_query.
         ELSE.
           lv_query = <ls_query_params>-user_name.
*          CONCATENATE lv_query '%' INTO lv_query.
           <ls_query_params>-user_name = lv_query.
         ENDIF.
         SELECT user_id first_name last_name sapname FROM zuser INTO CORRESPONDING FIELDS OF TABLE lt_select_list1.
         LOOP AT lt_select_list1 INTO ls_select_list1  WHERE user_id CS <ls_query_params>-user_name
           OR first_name CS <ls_query_params>-user_name OR   last_name CS <ls_query_params>-user_name OR sapname CS <ls_query_params>-user_name.
           APPEND ls_select_list1 TO lt_select_list.
         ENDLOOP.
       ELSE.
         SELECT user_id first_name last_name  FROM zuser INTO CORRESPONDING FIELDS OF TABLE lt_select_list.
       ENDIF.



       ovs_callback_object->set_output_table( output = lt_select_list ).

     WHEN if_wd_ovs=>co_phase_3.
*   apply result
       DATA lv_uname TYPE string.
       DATA lv_fname TYPE string.




       IF ovs_callback_object->selection IS NOT BOUND.
******** TODO exception handling
       ENDIF.

       ASSIGN ovs_callback_object->selection->* TO <ls_selection>.
       IF <ls_selection> IS ASSIGNED.
         ovs_callback_object->context_element->set_attribute(
                                name  = `user_id`
                                value = <ls_selection>-user_id ).
         CONCATENATE  <ls_selection>-last_name ',' INTO lv_fname.
         CONCATENATE  lv_fname <ls_selection>-first_name INTO lv_uname SEPARATED BY space.
         ovs_callback_object->context_element->set_attribute(
                                name  = `USER_NAME`
                                value lv_uname ).

         DATA lv_sapname TYPE char12.
         CALL FUNCTION 'ZUSER_READ_USER_SAPNAMES'
           EXPORTING
             iv_userid  = <ls_selection>-user_id
           IMPORTING
             ev_sapname = lv_sapname.

         ovs_callback_object->context_element->set_attribute(
                                name  = `SAPNAME`
                                value lv_sapname ).


*      or
*        ovs_callback_object->context_element->set_static_attributes(
*                               static_attributes = <ls_selection> ).

       ENDIF.
   ENDCASE.

Here is the Output..