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: 

Dialog Screen Input/Output field

Former Member
0 Kudos
687

All exports,

is there any way to let Input/Output filed in Dialog program, only can access data from Search help, but the user can not input data by manual, thank you for your help.

1 ACCEPTED SOLUTION

former_member194669
Active Contributor
0 Kudos
236

Kevin,

Please take a look at the FMs F4IF_INT_TABLE_VALUE_REQUEST and DYNP_VALUES_UPDATE.

8 REPLIES 8

former_member194669
Active Contributor
0 Kudos
237

Kevin,

Please take a look at the FMs F4IF_INT_TABLE_VALUE_REQUEST and DYNP_VALUES_UPDATE.

0 Kudos
236

How to use these two function, thank you very much

0 Kudos
236

Please search in this forum , you can find lot of threads related to this

For example

0 Kudos
236

Hi,

The function module F4IF_INT_TABLE_VALUE_REQUEST is mainly used for giving F4 help for any field in ur report.

Mandatory Parameters are nothing but thpse fields which are compulsorily to be entered at the selection screen while executing a report.i hope u were asking abt this mandatory parameters only.

check out my code,i hav used the same func module F4IF_INT_TABLE_VALUE_REQUEST .

types: begin of ty_seg,

sector type p9025-sector,

end of ty_seg.

data: it_seg type table of ty_seg.

constants:

c_zcode TYPE dfies-fieldname VALUE 'ZCODE',

c_segment TYPE help_info-dynprofld VALUE 'PR_SECT',

c_s TYPE c VALUE 'S' .

***F4 help for segment field.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR pr_sect.

SELECT zcode

FROM zcmt015_clevelf4

INTO TABLE it_seg

WHERE zfield = 'SECTOR'.

SORT it_seg BY sector.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

retfield = c_zcode

dynpprog = sy-repid

dynpnr = sy-dynnr

dynprofield = c_segment

value_org = c_s

TABLES

value_tab = it_seg

EXCEPTIONS

parameter_error = 1

no_values_found = 2

OTHERS = 3.

IF sy-subrc IS NOT INITIAL.

MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno

WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

ENDIF.

Go through this code , so that you can get some clear ideas,

Hope this will be useful for you.

Regards,

Dhanalakshmi L

Former Member
0 Kudos
236

kevin

u can use dypr_values_Read function modules to read the values and f4_int_help_Request to fetch the values...

there are demo programs for the same so go through them u ll get to know in detail.

former_member387317
Active Contributor
0 Kudos
236

Hi Kevin Leung,

You can use FM F4IF_INT_TABLE_VALUE_REQUEST to provide F4 help functionality for the input/output field in Module Pool Program...

But still user can write manual data...

The solution is ... If those are fixed values then create Dropdown List for it...

OR...

Do validation for the input/output field in PBO which will check whether the entry in the field by user is there in F4 help set of values or not...

If not then you can clear the value for the input/output filed and can display error or warning message as per your requirement...

Hope it will solve your problem..

Thanks & Regards

ilesh 24x7

ilesh Nandaniya

0 Kudos
236

HI, How to know that entry come from F4 help or manual input? tks

0 Kudos
236

first answer is correct (you may see an example in SE61 transaction for example, field "Document Class" is protected but F4 allows to select a value and the value is changed on the screen) : so, make your field output only, then program the F4 by yourself (using the PVR, call F4IF_INT_TABLE_VALUE_REQUEST to display list of values, the selected value is returned, and you update the screen field using DYNP_UPDATE_VALUES).

You have an example for PVR in sap library

But as says a®s, there are many threads discussing about that (each day)