Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Input field to restrict user typing

Former Member
0 Kudos
455

Hi,

I am having a input field , with f4 help associated to it. I would like the user to select values only from f4 help , but dont want the user to type the content in input field . how can i restrict this ?

11 REPLIES 11

kostas_tsioubris
Contributor
0 Kudos
247

Hi,

make your field appear as a listbox.

Kostas

Former Member
0 Kudos
247

Hi Jey,

This F4 help is a standard one.. or you have created it?

If this is a standard one.. then you can validate the user entry with the master data in AT SELECTION-SCREEN event.

Thanks and Best Regards,

Vikas Bittera.

0 Kudos
247

Hi,

In the f4 help , i have created my own search help and send it to the function module 'F4IF_FIELD_VALUE_REQUEST' with the optional parameter "MULTIPLE_CHOICE = 'X'. bcoz user can select more than one values.

For ur info , i am not using selection-screen( using dialog programming screens) .

0 Kudos
247

Hi,

Then also it is very easy..

Do something like this..

You must be passing an internal table to the function module to display the F4 help..

1) Move the logic for filling the internal table in the INITIALIZATION event.

2) Let the F4 function module be in the same AT VALUE-REQUEST event.

3) Now, in the AT SELECTION-SCREEN event, if the user has put any value, then just check that this value is in the internal table of F4 help or not..

If not, then give an error message to use F4 help..

Thanks and Best Regards,

Vikas Bittera.

0 Kudos
247

Hi,

Then also it is very easy..

Do something like this..

You must be passing an internal table to the function module to display the F4 help..

1) Move the logic for filling the internal table in the INITIALIZATION event.

2) Let the F4 function module be in the same AT VALUE-REQUEST event.

3) Now, in the AT SELECTION-SCREEN event, if the user has put any value, then just check that this value is in the internal table of F4 help or not..

If not, then give an error message to use F4 help..

Thanks and Best Regards,

Vikas Bittera.

0 Kudos
247

Hi,

I am not sending the internal table to show the f4 help. I am creating my own search help like the follwing.

CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'

EXPORTING

tabname = 'TABLE1'

fieldname = 'NAME'

searchhelp = 'SEARCH_HELP'

MULTIPLE_CHOICE = 'X'

0 Kudos
247

Hi Ganesh,

check the demo program DEMO_DYNPRO_F4_HELP_MODULE

you have to write the code in PROCESS ON VALUE-REQUEST.

PROCESS ON VALUE-REQUEST.
  FIELD CARRIER MODULE VALUE_CARRIER.
  FIELD CONNECTION MODULE VALUE_CONNECTION.

MODULE VALUE_CARRIER INPUT.

  CALL FUNCTION 'F4IF_FIELD_VALUE_REQUEST'
       EXPORTING
            TABNAME     = 'DEMOF4HELP'
            FIELDNAME   = 'CARRIER1'
            DYNPPROG    = PROGNAME
            DYNPNR      = DYNNUM
            DYNPROFIELD = 'CARRIER'.

ENDMODULE.

MODULE VALUE_CONNECTION INPUT.

  CALL FUNCTION 'DYNP_VALUES_READ'
       EXPORTING
            DYNAME             = PROGNAME
            DYNUMB             = DYNNUM
            TRANSLATE_TO_UPPER = 'X'
       TABLES
            DYNPFIELDS         = DYNPRO_VALUES.

  READ TABLE DYNPRO_VALUES INDEX 1 INTO FIELD_VALUE.

  SELECT  CARRID CONNID
    FROM  SPFLI
    INTO  CORRESPONDING FIELDS OF TABLE VALUES_TAB
    WHERE CARRID = FIELD_VALUE-FIELDVALUE.

  CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
       EXPORTING
            RETFIELD    = 'CONNID'
            DYNPPROG    = PROGNAME
            DYNPNR      = DYNNUM
            DYNPROFIELD = 'CONNECTION'
            VALUE_ORG   = 'S'
       TABLES
            VALUE_TAB   = VALUES_TAB.

ENDMODULE.

0 Kudos
247

Hi chandra sekar,

kindly read my question again.

0 Kudos
247

Hi Jey,

Then do one thing.. just see wht this search help have.. i mean to say how this table has the joins defined..

In your program, you must have the same data the search help hold in an internal table..

You can write the same in the initialization event..

And then check if the user entry is there in the internal table or not..

Thanks and Best Regards,

Vikas Bittera.

Former Member
0 Kudos
247

Hi

In field attributes after Name and Text there will be a field Dropdown:

Select that as ListBox.

Regards

Surya

0 Kudos
247

Hi,

In the f4 help , i have created my own search help and send it to the function module 'F4IF_FIELD_VALUE_REQUEST' with the optional parameter "MULTIPLE_CHOICE = 'X'. bcoz user can select more than one values. so list box is not possible.