




DATA lt_sflight TYPE STANDARD TABLE OF sflight.
DATA ls_field_description LIKE LINE OF et_field_description.
eo_field_catalog = CAST #( cl_abap_tabledescr=>describe_by_data( p_data = lt_sflight ) ).
DATA(lo_sflight_line_descr) = CAST cl_abap_structdescr( eo_field_catalog->get_table_line_type( ) ).
LOOP AT lo_sflight_line_descr->components ASSIGNING FIELD-SYMBOL(<ls_sflight_line_descr>).
ls_field_description-name = <ls_sflight_line_descr>-name.
ls_field_description-allow_aggregation = abap_true.
ls_field_description-allow_filter = abap_true.
ls_field_description-allow_sort = abap_true.
APPEND ls_field_description TO et_field_description.
ENDLOOP.
data lt_sflight TYPE STANDARD TABLE OF sflight.
select * from sflight into corresponding fields of TABLE lt_sflight.
ct_data = lt_sflight.
ev_data_changed = abap_true.









DATA ls_sflight TYPE sflight.
eo_field_catalog_attr = CAST #( cl_abap_structdescr=>describe_by_data( ls_sflight ) ).


DATA mo_field_catalog TYPE REF TO cl_abap_structdescr.DATA mo_field_catalog TYPE REF TO cl_abap_structdescr. DATA lt_where_string TYPE rsds_where_tab.
IF io_event->mv_event_id = 'FPM_EXECUTE_SEARCH'.
DATA(lo_fpm_event_params) = NEW cl_fpm_parameter( ).
TRY.
cl_fpm_guibb_search_conversion=>to_abap_select_where_tab(
EXPORTING
it_fpm_search_criteria = it_fpm_search_criteria
iv_table_name = 'SFLIGHT'
io_field_catalog = mo_field_catalog
IMPORTING
et_abap_select_table = lt_where_string
).
CATCH cx_fpmgb.
RETURN.
ENDTRY.
lo_fpm_event_params->if_fpm_parameter~set_value( EXPORTING
iv_key = 'SEARCH_CRITERIA'
iv_value = lt_where_string ).
DATA(lo_fpm_event) = NEW cl_fpm_event(
iv_event_id = CONV #( 'EV_SEARCH_CRITERIA' )
io_event_data = lo_fpm_event_params
).
DATA(lo_fpm) = cl_fpm=>get_instance( ).
lo_fpm->raise_event( io_event = lo_fpm_event ).
data lt_sflight TYPE STANDARD TABLE OF sflight.
data lt_where_tab TYPe rsds_where_tab.
if iv_eventid->mv_event_id EQ 'FPM_START'.
select * from sflight into corresponding fields of TABLE lt_sflight.
ct_data = lt_sflight.
ev_data_changed = abap_true. "Nach jeder Datenänderung muss das Event auf true gesetzt werden
elseif iv_eventid->mv_event_id EQ 'EV_SEARCH_CRITERIA'.
CLEAR ct_data.
iv_eventid->mo_event_data->get_value(
EXPORTING
iv_key = 'SEARCH_CRITERIA'
IMPORTING
ev_value = LT_WHERE_TAB
).
select * from sflight into corresponding fields of TABLE lt_sflight where (lt_where_tab).
ct_data = lt_sflight.
ev_data_changed = abap_true.
endif.

You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
| User | Count |
|---|---|
| 55 | |
| 33 | |
| 23 | |
| 21 | |
| 19 | |
| 16 | |
| 15 | |
| 15 | |
| 15 | |
| 10 |