‎2007 May 11 7:00 AM
Hi freinds,
I have two parameters on selection-screen TEMPLATE & CRITERIA GROUP
based on the template selected ,the criteria groups belonging to that template should come as F4 help for criteria group.
I Have the logic to get the criteria groups for a template.But i dont know where to use
kindly explain me
Thanks & Regards,
sunitha.p
‎2007 May 11 7:27 AM
hi,
use criteria in At Selection Screen event and
template in At Selection Screen on value request event. or use relevant Function module
‎2007 May 11 7:02 AM
use event AT SELECTION-SCREEN ON VALUE-REQUEST FOR field1.
and fm F4IF_INT_TABLE_VALUE_REQUEST
A.
‎2007 May 11 7:08 AM
hi,
check this example you will get idea of how to get f4 help
TABLES: mara, makt.
DATA mat LIKE mara-matnr.
DATA: BEGIN OF itab OCCURS 0,
matnr LIKE mara-matnr,
END OF itab.
DATA : BEGIN OF btab OCCURS 0,
maktx LIKE makt-maktx,
END OF btab.
DATA : return LIKE ddshretval OCCURS 0 WITH HEADER LINE.
SELECT-OPTIONS: so_matnr FOR mara-matnr,
so_maktx FOR makt-maktx.
INITIALIZATION.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_matnr-low.
PERFORM matnr.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_matnr-high.
PERFORM matnr.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_maktx-low.
PERFORM maktx.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR so_maktx-high.
PERFORM maktx.
&----
*& Form matnr
&----
text
----
FORM matnr.
REFRESH itab.
SELECT matnr FROM mara INTO TABLE itab.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'MATNR '
dynprofield = 'P_MATNR '
dynpprog = sy-repid
dynpnr = sy-dynnr
value_org = 'S'
TABLES
value_tab = itab
return_tab = return.
mat = return-fieldval.
UNPACK mat TO mat.
so_matnr = return-fieldval.
REFRESH return.
CLEAR return.
ENDFORM. "matnr
&----
*& Form maktx
&----
FORM maktx.
REFRESH btab.
SELECT maktx FROM makt INTO TABLE btab WHERE matnr = mat AND spras =
sy-langu.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
retfield = 'MAKTX'
dynprofield = 'SO_MAKTX '
dynpprog = sy-repid
dynpnr = sy-dynnr
value_org = 'S'
TABLES
value_tab = btab
return_tab = return.
so_maktx = return-fieldval.
REFRESH return.
CLEAR return.
ENDFORM. "maktx
‎2007 May 11 7:08 AM
hi,
chk this sample code.
REPORT zresh_f4.
data: dynfields type table of dynpread with header line.
data: return type table of ddshretval with header line.
selection-screen begin of block b1 with frame title text-001 .
selection-screen begin of line.
PARAMETERS: P_BUKRS type T001-BUKRS.
selection-screen comment 30(20) BUTXT for field p_bukrs.
selection-screen end of line.
selection-screen end of block b1.
at selection-screen output.
if butxt is initial.
select single butxt into butxt
from t001
where bukrs = p_bukrs.
endif.
at selection-screen on value-request for p_bukrs.
call function 'F4IF_FIELD_VALUE_REQUEST'
exporting
tabname = 'T001'
fieldname = 'BUKRS'
dynpprog = sy-cprog
dynpnr = sy-dynnr
dynprofield = 'P_BUKRS'
tables
return_tab = return
exceptions
field_not_found = 1
no_help_for_field = 2
inconsistent_help = 3
no_values_found = 4
others = 5.
read table return with key fieldname = 'P_BUKRS'.
* Add it back to the dynpro.
dynfields-fieldname = return-retfield.
dynfields-fieldvalue = return-fieldval.
append dynfields.
* Get the company code from db and add to dynpro
data: xt001 type t001.
clear xt001.
select single * into xt001
from t001
where bukrs = return-fieldval.
dynfields-fieldname = 'BUTXT'.
dynfields-fieldvalue = xt001-butxt.
append dynfields.
* Update the dynpro values.
call function 'DYNP_VALUES_UPDATE'
exporting
dyname = sy-cprog
dynumb = sy-dynnr
tables
dynpfields = dynfields
exceptions
others = 8.
start-of-selection.Regards
Reshma
‎2007 May 11 7:10 AM
Hi,
there are tow ways to show F4 help. 1. using itab. 2. referring db table field.
for ur requiremetn u should use itab.
i am giving sample codes for it ... u must fill itab based on ur condition.
F4 help using internal table example:
DATA: BEGIN OF LI_FABGRP OCCURS 0,
FABGRP LIKE ZAPO_FABGRP-FABGRP,
BEGDA LIKE ZAPO_FABGRP-BEGDA,
END OF LI_FABGRP.
DATA : T_RETURN TYPE STANDARD TABLE OF DDSHRETVAL WITH HEADER LINE,
L_RETFIELD TYPE DFIES-FIELDNAME.
parameters : S_FABGR like ZAPO_FABGRP-FABGRP.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_FABGR.
SELECT FABGRP BEGDA FROM ZAPO_FABGRP INTO table LI_FABGRP.
SORT LI_FABGRP BY FABGRP ASCENDING BEGDA DESCENDING.
* Henter de mulige fabriksgrupper med nyeste BEGDA *indenfor hver
DELETE ADJACENT DUPLICATES FROM LI_FABGRP COMPARING FABGRP.
L_RETFIELD = 'FABGRP'.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = L_RETFIELD
DYNPPROG = SY-REPID
DYNPNR = '1000'
DYNPROFIELD = 'S_FABGR'
VALUE_ORG = 'S'
MULTIPLE_CHOICE = ' '
TABLES
VALUE_TAB = LI_FABGRP
RETURN_TAB = T_RETURN
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3.Jogdand M B
‎2007 May 11 7:27 AM
hi,
use criteria in At Selection Screen event and
template in At Selection Screen on value request event. or use relevant Function module
‎2007 May 11 7:28 AM
hi
good
create two F4 search help in se11 and use those two fields into that.
Create F4 Search Help->
http://help.sap.com/saphelp_nw04/helpdata/en/a5/3eca044ac011d1894e0000e829fbbd/content.htm
thanks
mrutyun^