Application Development and Automation 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: 
Read only

help for F4 help

Former Member
0 Likes
582

I paint a listbox on screen . I want to show three fields in the listbox . But only 2 field can be showed in the listbox. why?

The source code is :

module set_datalist input.

data:begin of itab occurs 0,

BNAME like USR02-BNAME,

GLTGV like usr02-gltgv,

GLTGB like usr02-gltgb,

end of itab.

select * from usr02 into corresponding fields of table itab.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

retfield = 'BNAME'

value_org = 'S'

TABLES

value_tab = itab

EXCEPTIONS

parameter_error = 1

no_values_found = 2

OTHERS = 3.

endmodule. " set_datalist INPUT

when itab has 2 fields ,for example

data:begin of itab occurs 0,

BNAME like USR02-BNAME,

GLTGV like usr02-gltgv,

  • GLTGB like usr02-gltgb, " delete the field

end of itab.

the listbox has value, but define 3 fields ,the listbox has no value,for example:

data:begin of itab occurs 0,

BNAME like USR02-BNAME,

GLTGV like usr02-gltgv,

GLTGB like usr02-gltgb,

end of itab.

My SAP version is 4.6c. Could you pls help me?

I paint a listbox on screen . I want to show three fields in the listbox . But only 2 field can be showed in the listbox. why?

The source code is :

module set_datalist input.

data:begin of itab occurs 0,

BNAME like USR02-BNAME,

GLTGV like usr02-gltgv,

GLTGB like usr02-gltgb,

end of itab.

select * from usr02 into corresponding fields of table itab.

CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'

EXPORTING

retfield = 'BNAME'

value_org = 'S'

TABLES

value_tab = itab

EXCEPTIONS

parameter_error = 1

no_values_found = 2

OTHERS = 3.

endmodule. " set_datalist INPUT

when itab has 2 fields ,for example

data:begin of itab occurs 0,

BNAME like USR02-BNAME,

GLTGV like usr02-gltgv,

  • GLTGB like usr02-gltgb, " delete the field

end of itab.

the listbox has value, but define 3 fields ,the listbox has no value,for example:

data:begin of itab occurs 0,

BNAME like USR02-BNAME,

GLTGV like usr02-gltgv,

GLTGB like usr02-gltgb,

end of itab.

My SAP version is 4.6c. Could you pls help me?

3 REPLIES 3
Read only

Former Member
0 Likes
558

HI,

try this code

&----


*& Report ZZZ_TESTING

*&

&----


*&

*&

&----


REPORT ZZZ_TESTING.

TYPE-POOLS: VRM.

DATA: NAME TYPE VRM_ID,

LIST TYPE VRM_VALUES,

VALUE LIKE LINE OF LIST.

TYPES: BEGIN OF T_BELNR,

LIFNR TYPE LIFNR,

BELNR TYPE BELNR_D,

END OF T_BELNR,

T_IT_BELNR TYPE STANDARD TABLE OF T_BELNR.

DATA: GIT_BELNR TYPE T_IT_BELNR,

GWA_BELNR TYPE T_BELNR,

G_BELNR TYPE BELNR_D,

G_COUNT TYPE I.

CLEAR: GWA_BELNR, G_BELNR, G_COUNT.

REFRESH: GIT_BELNR.

CALL SCREEN 1.

&----


*& Module FILL_DATA OUTPUT

&----


  • text

----


MODULE FILL_DATA OUTPUT.

G_COUNT = G_COUNT + 1.

IF G_COUNT = 1.

SELECT LIFNR BELNR

FROM BSIK

INTO TABLE GIT_BELNR

WHERE LIFNR = '0000000401'

OR LIFNR = '0000000425'.

LOOP AT GIT_BELNR INTO GWA_BELNR.

VALUE-KEY = GWA_BELNR-BELNR.

  • VALUE-TEXT = 'VENDORNAME'.

  • VALUE-TEXT = VALUE-TEXT + 1.

APPEND VALUE TO LIST .

ENDLOOP.

NAME = 'GWA_BELNR-BELNR'.

CALL FUNCTION 'VRM_SET_VALUES'

EXPORTING

ID = NAME

VALUES = LIST[].

ENDIF.

ENDMODULE. " FILL_DATA OUTPUT

&----


*& Module STATUS_0001 OUTPUT

&----


  • text

----


MODULE STATUS_0001 OUTPUT.

CASE SY-DYNNR.

WHEN '0001'.

SET PF-STATUS 'GUISTATUS'.

  • SET TITLEBAR 'TESTING'.

ENDCASE.

ENDMODULE. " STATUS_0001 OUTPUT

&----


*& Module USER_COMMAND_0001 INPUT

&----


  • text

----


MODULE USER_COMMAND_0001 INPUT.

CASE SY-UCOMM.

WHEN 'BACK'.

LEAVE TO SCREEN 0.

ENDCASE.

ENDMODULE. " USER_COMMAND_0001 INPUT

&----


*& Module display_value INPUT

&----


  • text

----


MODULE DISPLAY_VALUE INPUT.

G_BELNR = GWA_BELNR-BELNR.

ENDMODULE. " display_value INPUT

reward points if helpful

regards,

venkatesh

Read only

Former Member
0 Likes
558

John,

Declare : DATA: return_tab LIKE ddshretval OCCURS 0 WITH HEADER LINE.

then add return_tab = return_tab in your function module and check.

At the end after function module add :

IF sy-subrc = 0.

READ TABLE itab INDEX 1.

BNAME = return_tab-fieldval.

ENDIF.

Thanks,

Shweta

Read only

Former Member
0 Likes
558

John,

Declare : DATA: return_tab LIKE ddshretval OCCURS 0 WITH HEADER LINE.

then add return_tab = return_tab in your function module and check.

At the end after function module add :

IF sy-subrc = 0.

READ TABLE itab INDEX 1.

BNAME = return_tab-fieldval.

ENDIF.