cancel
Showing results for 
Search instead for 
Did you mean: 

Multiple Selection in F4 help

daniel_humberg
Contributor
0 Kudos

Unlike BSP, WebDynpro have a very nice integration of F4 helps from DDIC.

I wonder if F4 helps also support multiple selection.

So, can the user select multiple lines in the result list, and transfer all back to the calling screen?

How can I switch this on in the F4 help? By setting the cardinality of the context node?

How is the selection transferred back to the calling screen?

Must there be a table with multiple editable lines, into which the selected elements are transferred? Or can retrieve the selected elements programmatically?

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi daniel,

You can do your Requirement in OVS . OVS allow multiple selection in F4 you can enable the multiple selection buy seting the

table_multi_select = 'X' in ovs set_configuration method .

Look at the below sample code

ovs_callback_object->set_configuration(
               label_texts = l_texts
               group_header = 'Record Found'
               window_title = 'Employee No '
               table_header = 'Active Status '                     
               col_count    = 1
               table_multi_select = 'X' ). " this will enable you to select multiple record in OVS

if you want to display the selected values in table UI elememt then declare your context node

and bind the selected value

look at the piece of coding for get the selected value

declaration

field-symbols: <query_params> like l_struc_input,
                        <selection>    like l_tab_output.

in case 3

when if_wd_ovs=>co_phase_3.
      if ovs_callback_object->selection is not bound.
*******TODO exception
      endif.
      assign ovs_callback_object->selection->* to <selection>.
      if <selection> is assigned.
        l_spfli_node->bind_table( <selection> ).  " here bind your values to your node
      endif.
  endcase.

Regards

Chinnaiya P

daniel_humberg
Contributor
0 Kudos

Hi Chinnaiya,

thx for the valuable information.

I already have some existing DDIC F4 helps.

Is there a way to somehow wrap the OVS around existing DDIC search helps?

Regards, Daniel

Former Member
0 Kudos

Hi daniel ,

You can do your requirement in one more way by implementing the Search help exits .

For eg :

Search Help PREM will give the list of Employee , but you want only the employee with the status 'Active ' in this case you can create a serch help exit .

Create seach help exit.

Take z copy of Function module F4IF_SHLP_EXIT_EXAMPLE .

Declare all the Parameters "see some example by using where used list

inside that FM you can find the piece of coding . uncommend thePerform and write your logic inside the perform

IF CALLCONTROL-STEP = 'SELECT'.
   PERFORM STEP_SELECT TABLES RECORD_TAB SHLP_TAB
                       CHANGING SHLP CALLCONTROL RC.  " write your logic in this perform 
   IF RC = 0.
     CALLCONTROL-STEP = 'DISP'.
   ELSE.
     CALLCONTROL-STEP = 'EXIT'.
   ENDIF.
    EXIT. "Don't process STEP DISP additionally in this call.
  ENDIF.

For formatting your Result internal table . pass your final int table to below mention FM

*Formating the result table
CALL FUNCTION 'F4UT_RESULTS_MAP'
* EXPORTING
*   SOURCE_STRUCTURE         =
*   APPLY_RESTRICTIONS       = ' '
  TABLES
    SHLP_TAB                 = p_shlp_tab
    RECORD_TAB               = p_record_tab
    SOURCE_TAB               = LT_PA0002   " Final internal table 
  CHANGING
    SHLP                      = p_shlp
    CALLCONTROL              = P_CALLCONTROL
 EXCEPTIONS
   ILLEGAL_STRUCTURE        = 1
   OTHERS                   = 2
          .

For mor information on Search Help Exit Refer the bellow link

http://help.sap.com/saphelp_bw/helpdata/en/cf/21ee52446011d189700000e8322d00/content.htm

Regards

Chinnaiya P

Edited by: chinnaiya pandiyan on May 26, 2010 6:43 PM

Edited by: chinnaiya pandiyan on May 26, 2010 6:47 PM