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: 

Error while closing F4 help window

Former Member
0 Kudos

I have used FM F4IF_INT_TABLE_VALUE_REQUEST, to add F4 help to input element of my screen, but when I try to select a value from the list or close the input help window, the control goes to dump with following error message:

The program attempted to issue a " " message during "F4" processing.

This is an illegal operation.

The program was terminated.

I am using the following code:

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

retfield = 'LIFNR'

dynpprog = sy-repid

dynpnr = sy-dynnr

dynprofield = 'WA_YCT3-LIFNR'

value_org = 'S'

TABLES

value_tab = it_lfa1

EXCEPTIONS

parameter_error = 1

no_values_found = 2

OTHERS = 3.

IF sy-subrc = 1.

RAISE parameter_error.

ELSEIF sy-subrc = 2.

RAISE no_values_found.

ELSE.

MESSAGE 'Unknown error occured while processing request' TYPE 'E'.

ENDIF.

ENDMODULE.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi Das,

In your function dynpprog = sy-repid replace with dynpprog = sy-cprog. And check whether all declarations is been done or not for the definations in the function.

And for the time been try to declare a variable for dynprofield and test that may work.

Hope my helps you.

Cheers!!

8 REPLIES 8

Former Member
0 Kudos

Hi Das,

In your function dynpprog = sy-repid replace with dynpprog = sy-cprog. And check whether all declarations is been done or not for the definations in the function.

And for the time been try to declare a variable for dynprofield and test that may work.

Hope my helps you.

Cheers!!

0 Kudos

Hi Balu,

I have tried your suggestion, but it doesn't work.

Thanks.

0 Kudos

Hi Das,

This time i have tried one code and i am able to get the F4 help for LIFNR field correctly. Copy paste the code and execute it will work....

data: begin of itab occurs 0,

lifnr like lfa1-lifnr,

end of itab.

DATA : return like ddshretval occurs 0 with header line.

data: begin of dynpfields occurs 0.

include structure dynpread.

data: end of dynpfields.

parameters: p_lifnr like LFA1-LIFNR.

Initialization.

AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_LIFNR.

REFRESH ITAB.

SELECT lifnr FROM lfa1 INTO TABLE ITAB.

call function 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

retfield = 'lifnr'

dynprofield = 'P_lifnr'

dynpprog = sy-REPID

dynpnr = sy-dynnr

value_org = 'S'

TABLES

value_tab = ITAB

return_tab = return.

p_lifnr = return-fieldval.

refresh return.

clear return.

Hope my answer helps you.

Cheers!!

0 Kudos

Hi Das,

Let me own is it working fine or not.

0 Kudos

Hi Balu,

I have tried the same but no luck, I still have the same problem, my program is of type module pool.

0 Kudos

Hello Sai,

You are raising error message on sy-subrc = 0 ( Succcessful case ) also.

if sy.subrc 1..

..

if sy-subrc 2..

else..

(( At this place your control goes even in case of success ))

endif.

Regards,

Abhishek

0 Kudos

Hi,

Can you pass your TOP and PBO declarations completely so that i will try to debug and find the error. No need to send F4_int_table...function code i will view from first post. There is no luck in this world it all depends on our concentration and focus thats it. I will solve your issue post the code.

Cheers!!

0 Kudos

You are right Abhishek.

Thanks,

Sai.