[ABAP] Externes Datum in internes Datum wandeln

Variante 1 (cl_abap_datfm)

DATA: lv_int TYPE sy-datum.
DATA: lv_ext_datum TYPE string VALUE '01.01.2017'.

TRY.
    cl_abap_datfm=>conv_date_ext_to_int(
      EXPORTING
        im_datext   = lv_ext_datum
        im_datfmdes = cl_abap_datfm=>get_datfm( ) " Default Datumsformat holen
      IMPORTING
        ex_datint   = lv_int ).
  CATCH cx_abap_datfm_no_date .
  CATCH cx_abap_datfm_invalid_date .
  CATCH cx_abap_datfm_format_unknown .
  CATCH cx_abap_datfm_ambiguous .
ENDTRY.

WRITE: / lv_int.

Variante 2 (CONVERT_DATE_TO_INTERNAL)

DATA: lv_date TYPE d.

CALL FUNCTION 'CONVERT_DATE_TO_INTERNAL'
  EXPORTING
    date_external            = '20.02.2020'
  IMPORTING
    date_internal            = lv_date
  EXCEPTIONS
    date_external_is_invalid = 1.

WRITE: / lv_date.

Links