Datum anpassen
So kannst du ein Datum Aufschlüsseln und wieder zusammensetzen z.B. für einen Dateinamen oder Titel.
CONCATENATE sy_datum+6(2) '.' sy-datum+4(2) '.' sy-datum(4) INTO gs_kopf-erdat.
ATA: gs_pa0006 TYPE pa0006.
DATA: gf_jahr TYPE c LENGTH 4,
gf_monat TYPE c LENGTH 2,
gf_tag TYPE c LENGTH 2,
gf_datum TYPE sy-datum.
gf_jahr = sy-datum(4).
gf_monat = sy-datum+4(2).
gf_tag = sy-datum+6(2).
CONCATENATE gf_tag '.' gf_monat '.' gf_jahr INTO gf_datum.
gf_jahr = form_values-c_h_8.
gf_monat = form_values-c_h_7.
CONCATENATE gf_jahr gf_monat gf_tag INTO gf_datum.
SELECT SINGLE * FROM pa0006 INTO gs_pa0006
WHERE pernr = form_values-c_h_2
AND subty = '1'
AND begda <= gf_datum
AND endda >= gf_datum.
"*******************************************************************
"* Datum konvertieren
"*******************************************************************
CLEAR gf_date_ext.
CALL FUNCTION 'CONVERT_DATE_TO_EXTERNAL'
EXPORTING
date_internal = gs_data-begda
IMPORTING
date_external = gf_date_ext
EXCEPTIONS
date_internal_is_invalid = 1
OTHERS = 2.
IF sy-subrc <> 0.
gf_date_ext = gs_data-begda.
ENDIF.
Hier noch ein anderes Beispiel. Hier sieht man auch das man wenn man ein CONCATENATE macht wie man ein Leere Zeichen einfügen kann wenn man z.B. SEPARATED BY SPACE nicht nutzen kann wenn man zum Beispiel nur nachdem Komma ein Leerzeichen einfügen will.
"Datendeklaration
DATA: gs_pa0006 TYPE pa0006.
DATA: gf_jahr TYPE c LENGTH 4,
gf_monat TYPE c LENGTH 2,
gf_tag TYPE c LENGTH 2,
gf_datum TYPE sy-datum.
************************************************************************
* Korrespondenzadresse andrucken
************************************************************************
"Monat für den das Formular ausgestellt wurde ermitteln
gf_tag = sy-datum+6(2).
gf_jahr = form_values-c_h_8.
gf_monat = form_values-c_h_7.
CONCATENATE gf_jahr gf_monat gf_tag INTO gf_datum.
"Als Adresse des Mitarbeiters immer den aktuellen Adresstyp 1
"„Korrespondenzadresse“ ausgeben
SELECT SINGLE * FROM pa0006 INTO gs_pa0006
WHERE pernr = form_values-c_h_2
AND subty = '1'
AND begda <= gf_datum
AND endda >= gf_datum.
"Feld im Formular befüllen.
CONCATENATE gs_pa0006-pstlz ',$' gs_pa0006-ort01 ',$' gs_pa0006-stras
INTO form_values-c_h_4.
"Gib hier an wieviel $ (Dollarzeichen) gelöscht werden sollen.
DO 2 TIMES.
REPLACE '$' WITH space INTO form_values-c_h_4.
ENDDO.