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: 

Search help for screen fields in module pool

Former Member
0 Kudos

Hi All,

I have a screen in Module pool which has 3 input fields, each input field is attached to the same search help.

These fields are from ztable . I have created a search help USING these 3 fields. All the 3 fields are marked for IMPORT and EXPORT.

So whenever i click F4 on any of the above 3 fields, It will display search help popup and returns some rows...But the values are transfered back only for 1 fields ..i.e for the first field only .

I want that ...as soon as i select any of the row from Search hit list..all the 3 columns should get populated with corresponding fields from that row.

I require it this way as user wants to select based on * selection.Ex: as then every this related to that should be popped up.

Pls help ASAP

Thanks,

9 REPLIES 9

Former Member
0 Kudos

u need to write down the code for that

DATA : SCR_FIELDS LIKE DYNPREAD OCCURS 0 ,

SCR_FIELDS-FIELDNAME = 'FIELDNAME'.

SCR_FIELDS-FIELDVALUE = VALUE.

SCR_FIELDS-STEPL = LINE NO.

APPEND SCR_FIELDS.

CALL FUNCTION 'DYNP_VALUES_UPDATE'

EXPORTING

DYNAME = PROGRAM NAME

DYNUMB = SY-DYNNR

TABLES

DYNPFIELDS = SCR_FIELDS

EXCEPTIONS

INVALID_ABAPWORKAREA = 1

INVALID_DYNPROFIELD = 2

INVALID_DYNPRONAME = 3

INVALID_DYNPRONUMMER = 4

INVALID_REQUEST = 5

NO_FIELDDESCRIPTION = 6

UNDEFIND_ERROR = 7

OTHERS = 8.

Regards,

Alpesh

0 Kudos

Hi Alpesh,

where do i need to write this code .

Former Member
0 Kudos

hi ,

you can use function module F4IF_INT_TABLE_VALUE_REQUEST

or

can follow these simple steps for search help:

go to se11==> put some name after ticking search help radiobutton==> create==>

then tick " elementery search help " and press enter ===>then put description and table name in selection method ===>then put the field on which u want search help

in search help parameter==> tick IMP EXP ==> write 1 in lpos and spos===>save and activate===> double click on table name ===> select that field and press search help tab above===> then copy

i hope it will help u a lot

thaks and regards

rahul sharma

Former Member
0 Kudos

I require it this way as user wants to select based on * selection.Ex: * as * then every this related to that should be popped up.

0 Kudos

For that u have to implement the logic in serach help.

Use below select statement:

CONCATENATE: '%' input1'%' INTO p_search.
SELECT SINGLE objid FROM p1000 INTO p1000-objid,
WHERE MC_STEXT LIKE p_search.

Regards,

Former Member
0 Kudos

u will have to create your own screen help

in pai

PROCESS ON VALUE-REQUEST.

FIELD field_name MODULE GET_data.

Edited by: Alpesh on Sep 17, 2008 2:19 PM

0 Kudos

Alpesh,

i didnt get if i can use search help ie assign it to screen fields and then in pov i need to write a module and call the FM given by you in it.

0 Kudos

If you use zsearch help no need of POV.

Regards

0 Kudos

This is how i got.

data:l_shlp type SHLP_DESCR,

l_rc type sy-subrc,

w_DDSHRETVAL type DDSHRETVAL ,

ls_shintf LIKE LINE OF l_shlp-interface,

t_DDSHRETVAL type TABLE OF DDSHRETVAL.

DATA: dyname LIKE d020s-prog,

dynumb LIKE d020s-dnum.

DATA: BEGIN OF dynpfields OCCURS 3.

INCLUDE STRUCTURE dynpread.

DATA: END OF dynpfields.

CALL FUNCTION 'F4IF_GET_SHLP_DESCR'

EXPORTING

SHLPNAME = 'YTESTDMSSB'

SHLPTYPE = 'SH'

IMPORTING

SHLP = l_shlp .

ls_shintf-valfield = 'X'.

MODIFY l_shlp-interface FROM ls_shintf TRANSPORTING valfield

WHERE shlpfield = 'SNNTX'.

MODIFY l_shlp-interface FROM ls_shintf TRANSPORTING valfield

WHERE shlpfield = 'SBRTX'.

MODIFY l_shlp-interface FROM ls_shintf TRANSPORTING valfield

WHERE shlpfield = 'SBSTX'.

MODIFY l_shlp-interface FROM ls_shintf TRANSPORTING valfield

WHERE shlpfield = 'ENPTX'.

MODIFY l_shlp-interface FROM ls_shintf TRANSPORTING valfield

WHERE shlpfield = 'PLANT_CODE'.

CALL FUNCTION 'F4IF_START_VALUE_REQUEST'

EXPORTING

SHLP = l_shlp

DISPONLY = ' '

MAXRECORDS = 500

MULTISEL = 'X'

CUCOL = SY-CUCOL

CUROW = SY-CUROW

IMPORTING

RC = l_rc

TABLES

RETURN_VALUES = t_DDSHRETVAL

.

IF l_rc = 0.

LOOP AT t_DDSHRETVAL INTO w_DDSHRETVAL.

CASE w_DDSHRETVAL-fieldname.

WHEN 'SNNTX'. "W_SNNTX = w_DDSHRETVAL-fieldval.

dyname = sy-repid.

dynumb = sy-dynnr.

dynpfields-fieldname = 'W_SNNTX'.

dynpfields-fieldvalue = w_DDSHRETVAL-fieldval.

APPEND dynpfields.

WHEN 'SBRTX'. "W_SBRTX = w_DDSHRETVAL-fieldval.

dyname = sy-repid.

dynumb = sy-dynnr.

dynpfields-fieldname = 'W_SBRTX'.

dynpfields-fieldvalue = w_DDSHRETVAL-fieldval.

APPEND dynpfields.

WHEN 'SBSTX'. "W_SBSTX = w_DDSHRETVAL-fieldval.

dyname = sy-repid.

dynumb = sy-dynnr.

dynpfields-fieldname = 'W_SBSTX'.

dynpfields-fieldvalue = w_DDSHRETVAL-fieldval.

APPEND dynpfields.

WHEN 'ENPTX'. "W_ENPTX = w_DDSHRETVAL-fieldval.

dyname = sy-repid.

dynumb = sy-dynnr.

dynpfields-fieldname = 'W_ENPTX'.

dynpfields-fieldvalue = w_DDSHRETVAL-fieldval.

APPEND dynpfields.

WHEN 'PLANT_CODE'. "W_ENPTX = w_DDSHRETVAL-fieldval.

dyname = sy-repid.

dynumb = sy-dynnr.

dynpfields-fieldname = 'W_WERKS'.

dynpfields-fieldvalue = w_DDSHRETVAL-fieldval.

APPEND dynpfields.

ENDCASE.

ENDLOOP.

CALL FUNCTION 'DYNP_VALUES_UPDATE'

EXPORTING

dyname = dyname

dynumb = dynumb

TABLES

dynpfields = dynpfields.

ENDIF.