Code: Alles auswählen.
report z_test.
types: begin of ty_tab,
tablename type sobj_name,
end of ty_tab.
types: begin of ty_feldn,
tablename type fieldname,
end of ty_feldn.
tables: tadir, dd03l.
constants:
c_tabn type dfies-fieldname value 'P_TABN-LOW',
c_feldn type dfies-fieldname value 'P_FELDN-LOW',
c_vorg type char1 value 'S'.
data:
it_tabname type standard table of ty_tab,
it_feldname type standard table of ty_feldn,
it_return1 type standard table of ddshretval,
it_return2 type standard table of ddshretval,
lv_tabn type tadir-obj_name.
parameters: p_tabn like tadir-obj_name.
parameters: p_feldn like dd03l-fieldname.
parameters: p_anz type int4 default '50'.
at selection-screen on value-request for p_tabn.
select distinct obj_name from tadir into table it_tabname
where pgmid = 'R3TR'
and object = 'TABL'.
if sy-subrc = 0.
sort it_tabname by tablename.
endif.
call function 'F4IF_INT_TABLE_VALUE_REQUEST'
exporting
retfield = c_tabn
value_org = c_vorg
tables
value_tab = it_tabname
return_tab = it_return1
exceptions
parameter_error = 1
no_values_found = 2
others = 3.
at selection-screen on value-request for p_feldn.
if p_tabn is initial.
call function 'GET_DYNP_VALUE'
exporting
i_field = 'P_TABN'
i_repid = sy-repid
i_dynnr = sy-dynnr
* I_CONV_INPUT = ' '
* I_CONV_OUTPUT = ' '
changing
o_value = lv_tabn.
else.
lv_tabn = p_tabn.
endif.
select distinct fieldname from dd03l into table it_feldname
where tabname = lv_tabn
and keyflag = ''.
if sy-subrc = 0.
sort it_feldname by tablename.
endif.
call function 'F4IF_INT_TABLE_VALUE_REQUEST'
exporting
retfield = c_feldn
value_org = c_vorg
tables
value_tab = it_feldname
return_tab = it_return2
exceptions
parameter_error = 1
no_values_found = 2
others = 3.
start-of-selection.
break-point.
end-of-selection.
Code: Alles auswählen.
call function 'F4IF_INT_TABLE_VALUE_REQUEST'
exporting
dynpprog = sy-cprog "<<<<<<<<<<<<<<<<<
dynpnr = sy-dynnr "<<<<<<<<<<<<<<<<<
dynprofield = 'P_TABN' "<<<<<<<<<<<<<<<<<
retfield = c_tabn
value_org = c_vorg
tables
value_tab = it_tabname
return_tab = it_return1
exceptions
parameter_error = 1
no_values_found = 2
others = 3.