Variante 1 (cl_abap_stack_temperature)
* https://blogs.sap.com/2016/10/03/how-to-perform-data-aging-in-s4hana/
* Transaktion: DAGOBJ
* DAGPTC
* Flag für Historische Daten
DATA(lv_cold_access) = abap_true.
* Datum für Aging
DATA: lv_data_temperature TYPE data_temperature.
lv_data_temperature = sy-datum - 30.
TRY.
* data aging möglich (von db unterstützt und aktivgeschaltet)?
IF abap_true = cl_data_aging_state=>is_enabled( ).
IF abap_true = lv_cold_access.
* datenfilter setzen: alle daten sichtbar
cl_abap_stack_temperature=>set_cold( ).
ELSE.
IF lv_data_temperature IS INITIAL.
* datenfilter setzen: nur hot-daten sichtbar
cl_abap_stack_temperature=>set_hot( ).
ELSE.
cl_abap_stack_temperature=>set_temperature( lv_data_temperature ).
ENDIF.
ENDIF.
ENDIF.
CATCH cx_root INTO DATA(e_txt).
WRITE: e_txt->get_text( ).
ENDTRY.
Variante 2 (cl_abap_session_temperature)
* https://blogs.sap.com/2016/10/03/how-to-perform-data-aging-in-s4hana/
* Transaktion: DAGOBJ
* DAGPTC
* Flag für Historische Daten
DATA(lv_cold_access) = abap_true.
* Datum für Aging
DATA: lv_data_temperature TYPE data_temperature.
lv_data_temperature = sy-datum - 30.
TRY.
DATA(o_ses) = cl_abap_session_temperature=>get_session_control( ).
* Data Aging möglich (von DB unterstützt und aktivgeschaltet)?
IF abap_true = cl_data_aging_state=>is_enabled( ).
IF abap_true = lv_cold_access.
* Datenfilter setzen: Alle Daten sichtbar
o_ses->set_cold( ).
ELSE.
IF lv_data_temperature IS INITIAL.
* Datenfilter setzen: Nur HOT-Daten sichtbar
o_ses->set_hot( ).
ELSE.
o_ses->set_temperature( lv_data_temperature ).
ENDIF.
ENDIF.
ENDIF.
CATCH cx_root INTO DATA(e_txt).
WRITE: e_txt->get_text( ).
ENDTRY.