Ansicht
Dokumentation

ABENCDS_DATE_TIME_CONVERSIONS_V2 - CDS DATE TIME CONVERSIONS V2

ABENCDS_DATE_TIME_CONVERSIONS_V2 - CDS DATE TIME CONVERSIONS V2

RFUMSV00 - Advance Return for Tax on Sales/Purchases   CL_GUI_FRONTEND_SERVICES - Frontend Services  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- CDS-View-Entität, Datums-/Zeitkonvertierungen

... TSTMP_TO_DATS(tstmp,tzone,clnt,on_error)
  $| TSTMP_TO_TIMS(tstmp,tzone,clnt,on_error)
  $| TSTMP_TO_DST(tstmp,tzone,clnt,on_error)
  $| DATS_TIMS_TO_TSTMP(date,time,tzone,clnt,on_error)
  $| TSTMPL_TO_UTCL(tstmpl,on_error,on_initial)
  $| TSTMPL_FROM_UTCL(utcl,on_null)
  $| DATS_TO_DATN(dats,on_error,on_initial)
  $| DATS_FROM_DATN(datn,on_null)
  $| TIMS_TO_TIMN(tims,on_error)
  $| TIMS_FROM_TIMN(timn,on_null) ...


Varianten:

1. ... TSTMP_TO_DATS(tstmp,tzone,clnt,on_error)

2. ... TSTMP_TO_TIMS(tstmp,tzone,clnt,on_error)

3. ... TSTMP_TO_DST(tstmp,tzone,clnt,on_error)

4. ... DATS_TIMS_TO_TSTMP(date,time,tzone,clnt,on_error)

5. ... TSTMPL_TO_UTCL(tstmpl,on_error,on_initial)

6. ... TSTMPL_FROM_UTCL(utcl,on_null)

7. ... DATS_TO_DATN(dats,on_error,on_initial)

8. ... DATS_FROM_DATN(date,on_null)

9. ... TIMS_TO_TIMN(tims,on_error)

10. ... TIMS_FROM_TIMN(time,on_null)

Wirkung

In einer CDS-View-Entität führen diese Funktionen Konvertierungen zwischen Datums- und Zeitangaben und Zeitstempelformaten durch.

Die Funktionen haben positionale Parameter, denen beim Aufruf Aktualparameter zugeordnet werden müssen. Es gibt derzeit keine optionalen Parameter. Als Aktualparameter können passende Felder einer Datenquelle, Literale, Parameter, Pfadausdrücke, eingebaute Funktionen, Ausdrücke, oder Reuse-Ausdrücke mit $projection angegeben werden. An die Parameter on_error, on_initial und on_null können ausschließlich Literale übergeben werden. Wenn ein Aktualparameter den Null-Wert enthält, gibt jede Funktion einen Null-Wert zurück.

Die Konvertierungen erfolgen nach dem ABAP-spezifischen Regelwerk für Zeitzonen. Die zugehörigen DDIC-Datenbanktabellen müssen richtig gefüllt sein.

Hinweise

  • Konvertierungen, die noch nicht durch eingebaute CDS-Konvertierungsfunktionen unterstützt sind, können durch die entsprechenden HANA-Funktion in AMDP oder Native SQL ermöglicht werden.
  • Typisierte Literale sind für die Datentypen Datum, Uhrzeit und Zeitstempel verfügbar. Mit typisierten Literalen können alle Parameterpositionen mit Literalen befüllt werden.

Variante 1

... TSTMP_TO_DATS(tstmp,tzone,clnt,on_error)


Wirkung

Die Funktion TSTMP_TO_DATS extrahiert aus einem Zeitstempel im Argument tstmp das lokale Datum für die in tzone angegebenen Zeitzone.

Der Aktualparameter tstmp muss vom eingebauten Datentyp DEC der Länge 15 ohne Nachkommastellen sein und einen gültigen Zeitstempel im Format YYYYMMDDHHMMSS enthalten. Für tzone muss ein Aktualparameter vom Typ CHAR der Länge 6 angegeben werden, der eine gültige Zeitzone enthält oder initial ist. Bei einer initialen Zeitzone wird keine Zeitverschiebung berechnet. Der Aktualparameter clnt muss vom eingebauten Dictionary-Typ CLNT sein und eine gültige Mandantenkennung enthalten. Diese Mandantenkennung wird bei der Auswertung der Systemtabellen des Regelwerks für Zeitzonen verwendet. Der Rückgabewert ist vom eingebauten Datentyp DATS.

Der Aktualparameter on_error steuert die Fehlerbehandlung. Er muss vom eingebauten Datentyp CHAR der Länge 10 sein und muss einen der folgenden Werte haben:

  • "FAIL", ein Fehler führt zu einer Ausnahme
  • "NULL", ein Fehler führt zur Rückgabe des Null-Werts
  • "INITIAL" ein Fehler führt zur Rückgabe des Initialwerts

Die Groß-/Kleinschreibung wird berücksichtigt. Ein falsch angegebener Wert führt zu einer Ausnahme.

Variante 2

... TSTMP_TO_TIMS(tstmp,tzone,clnt,on_error)


Wirkung

Die Funktion TSTMP_TO_TIMS extrahiert aus einem Zeitstempel im Argument tstmp die lokale Zeit für die in tzone angegebenen Zeitzone.

Für die Aktualparameter tstmp, tzone, clnt und on_error gilt das Gleiche wie bei der Funktion TSTMP_TO_DATS. Der Rückgabewert ist vom eingebauten Datentyp TIMS.

Variante 3

... TSTMP_TO_DST(tstmp,tzone,clnt,on_error)


Wirkung

Die Funktion TSTMP_TO_DST extrahiert aus einem Zeitstempel im Argument tstmp die Sommerzeitmarkierung für die in tzone angegebenen Zeitzone. Diese ist "X", wenn der Zeitstempel für die Zeitzone in der Sommerzeit liegt, ansonsten initial.

Für die Aktualparameter tstmp, tzone, clnt und on_error gilt das Gleiche wie bei der Funktion TSTMP_TO_DATS. Der Rückgabewert ist vom eingebauten Datentyp CHAR der Länge 1.

Variante 4

... DATS_TIMS_TO_TSTMP(date,time,tzone,clnt,on_error)


Wirkung

Die Funktion DATS_TIMS_TO_TSTMP konstruiert aus einem in date angegebenen lokalen Datum und einer in time angegebenen lokalen Zeit der in tzone angegebenen Zeitzone einen Zeitstempel. Die Sommerzeit wird implizit berücksichtigt.

Der Aktualparameter date muss vom eingebauten Datentyp DATS sein und ein gültiges Datum enthalten. Der Aktualparameter time muss vom eingebauten Datentyp TIMS sein und eine gültige Zeit enthalten. Für die Aktualparameter tzone, clnt und on_error gilt das Gleiche wie bei der Funktion TSTMP_TO_DATS.

Der Rückgabewert ist vom eingebauten Datentyp DEC der Länge 15 und stellt einen ABAP-spezifischen Zeitstempel in einer gepackten Zahl dar.

Variante 5

... TSTMPL_TO_UTCL(tstmpl,on_error,on_initial)


Wirkung

Die Funktion TSTMPL_TO_UTCL konvertiert den Zeitstempel tstmpl vom ABAP-Dictionary-Typ TIMESTAMPL in den eingebauten Dictionary-Typ UTCLONG.

Der Aktualparameter für den Formalparameter tstmpl muss vom eingebauten Datentyp DEC der Länge 21 ohne Nachkommastellen sein und einen gültigen Zeitstempel im Format YYYYMMDDHHMMSS enthalten.

Für den Aktualparameter on_error gilt das Gleiche wie für die Funktion TSTMP_TO_DATS.

Der Aktualparameter on_initial definiert die Behandlung von Argumenten mit Initialwerten. Er muss vom eingebauten Datentyp CHAR der Länge 10 sein und muss einen der folgenden Werte haben:

  • "FAIL", ein Initialwert führt zu einer Ausnahme
  • "NULL", ein Initialwert führt zur Rückgabe des Null-Werts
  • "INITIAL", ein Initialwert führt zur Rückgabe des Initialwerts

Die Groß-/Kleinschreibung wird berücksichtigt. Ein falsch angegebener Wert führt zu einer Ausnahme.

Hinweis

Die Funktion TSTMPL_TO_UTCL ist eine rein technische Typkonvertierung und führt keine Zeitzonenberechnungen durch.

Variante 6

... TSTMPL_FROM_UTCL(tstmpl,on_null)


Wirkung

Die Funktion TSTMPL_FROM_UTCL konvertiert den Zeitstempel utcl vom eingebauten Dictionary-Typ UTCLONG in den eingebauten ABAP-Dictionary-Typ TIMESTAMPL. Es ist das Gegenstück zur Variante 5.

Der Aktualparameter für den Formalparameter utcl muss vom eingebauten Datentyp UTCLONG sein und soll einen gültigen Zeitstempel enthalten.

Der Aktualparameter on_null definiert die Behandlung von Null-Werten als Argumenten. Er muss vom eingebauten Datentyp CHAR der Länge 10 sein und muss einen der folgenden Werte haben:

  • "FAIL", ein Null-Wert führt zu einer Ausnahme
  • "NULL", ein Null-Wert führt zur Rückgabe des Null-Werts
  • "INITIAL", ein Null-Wert führt zur Rückgabe des Initialwerts

Die Groß-/Kleinschreibung wird berücksichtigt. Ein falsch angegebener Wert führt zu einer Ausnahme.

Beim initialen Parameter utcl, wird 0 zurückgegeben.

Hinweis

Die Funktion TSTMPL_FROM_UTCL ist eine rein technische Typkonvertierung und führt keine Zeitzonenberechnungen durch.

Variante 7

... DATS_TO_DATN(dats,on_error,on_initial)


Wirkung

Die Funktion DATS_TO_DATN konvertiert ein Datum dats vom eingebauten ABAP-Dictionary-Datentyp DATS in den eingebauten ABAP-Dictionary-Typ DATN.

Der Aktualparameter für den Formalparameter dats muss vom eingebauten Datentyp DATS sein und ein gültiges Datum im Format YYYYMMDD enthalten. Für die Aktualparameter on_error und on_initial gilt das Gleiche wie für die Funktion TSTMPL_TO_UTCL (Variante 5, siehe oben).

Hinweis

DATN ist ein neuer Dictionary-Typ, der einen realen Datumstyp in einer Datenbank darstellt. DATS ist hingegen ein alter Dictionary-Typ. Er wird auf einer Datenbank als zeichenartiges Feld instanziiert. DATS und DATN sind nicht austauschbar und eine Konvertierung ist für die Verwendung bestimmter Funktionen notwendig.

Variante 8

... DATS_FROM_DATN(datn,on_null)


Wirkung

Die Funktion DATS_FROM_DATN konvertiert ein Datum datn vom eingebauten ABAP-Dictionary-Datentyp DATN in den eingebauten ABAP-Dictionary-Typ DATS. Es ist das Gegenstück zur Variante 7.

Der Aktualparameter für den Formalparameter datn muss vom eingebauten Datentyp DATN sein und ein gültiges Datum im Format YYYYMMDD enthalten. Für den Aktualparameter on_null gilt das Gleiche wie für die Funktion TSTMPL_TO_UTCL (Variante 6, siehe oben).

Hinweis

DATN ist ein neuer Dictionary-Typ, der einen realen Datumstyp in einer Datenbank darstellt. DATS ist hingegen ein alter Dictionary-Typ. Er wird auf einer Datenbank als zeichenartiges Feld instanziiert. DATS und DATN sind nicht austauschbar und bestimmte Funktionen verlangen eine Konvertierung.

Variante 9

... TIMS_TO_TIMN(tims,on_error)


Wirkung

Die Funktion TIMS_TO_TIMN konvertiert die Zeitangabe tims vom ABAP-Dictionary-Typ TIMS in den ABAP-Dictionary-Typ TIMN.

Der Aktualparameter für den Formalparameter tims muss vom eingebauten Datentyp TIMS sein und eine gültige Zeit im Format HHMMSS enthalten. Für den Aktualparameter on_error gilt das Gleiche wie für die Funktion TSTMPL_TO_UTCL (Variante 1, siehe oben).

Hinweis

TIMN ist ein neuer Dictionary-Typ, der einen realen Datumstyp in einer Datenbank darstellt. TIMS ist hingegen ein alter Dictionary-Typ. Er wird auf einer Datenbank als zeichenartiges Feld instanziiert. TIMS und TIMN sind nicht austauschbar und bestimmte Funktionen verlangen eine Konvertierung.

Variante 10

... TIMS_FROM_TIMN(timn,on_null)


Wirkung

Die Funktion TIMS_FROM_TIMN konvertiert die Zeitangabe timn vom ABAP-Dictionary-Typ TIMN in den ABAP-Dictionary-Typ TIMS. Es ist das Gegenstück zur Variante 9.

Der Aktualparameter für den Formalparameter timn muss vom eingebauten Datentyp TIMN sein und eine gültige Zeit im Format HHMMSS enthalten. Für den Aktualparameter on_null gilt das Gleiche wie für die Funktion TSTMPL_TO_UTCL (Variante 6, siehe oben).

Hinweis

TIMN ist ein neuer Dictionary-Typ, der einen realen Datumstyp in einer Datenbank darstellt. TIMS ist hingegen ein alter Dictionary-Typ. Er wird auf einer Datenbank als zeichenartiges Feld instanziiert. TIMS und TIMN sind nicht austauschbar und bestimmte Funktionen verlangen eine Konvertierung.

Beispiel

In der folgenden CDS-View-Entität werden das Datum, die Zeit und die Sommerzeitmarkierung des aktuellen UTC-Zeitstempels über die Konvertierungsfunktionen TSTMP_TO_DATS, TSTMP_TO_TIMS und TSTMP_TO_DST extrahiert. Die Werte der Spalten DATS1 und TIMS1 der DDIC-Datenbanktabelle DEMO_EXPRESSIONS werden mit der Konvertierungsfunktion DATS_TIMS_TO_TSTMP zu einem Zeitstempel zusammengesetzt. Die Konvertierungsfunktionen der Varianten 5 bis 10 konvertieren Zeitstempel, Datumsangaben und Zeitangaben zwischen unterschiedlichen Typen. Das Programm DEMO_CDS_DATE_TIME_VE greift auf die View zu und zeigt das Ergebnis an.






TXBHW - Original Tax Base Amount in Local Currency   Fill RESBD Structure from EBP Component Structure  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 26393 Date: 20240523 Time: 175424     sap01-206 ( 291 ms )