Ansicht
Dokumentation

ABENCDS_F1_TIMESTAMP_FUNCTIONS - CDS F1 TIMESTAMP FUNCTIONS

ABENCDS_F1_TIMESTAMP_FUNCTIONS - CDS F1 TIMESTAMP FUNCTIONS

ROGBILLS - Synchronize billing plans   rdisp/max_wprun_time - Maximum work process run time  
Diese Dokumentation steht unter dem Copyright der SAP AG.
SAP E-Book

- Zeitstempelfunktionen

... TSTMP_IS_VALID(tstmp)
  $| TSTMP_CURRENT_UTCTIMESTAMP()
  $| TSTMP_SECONDS_BETWEEN(tstmp1,tstmp2,on_error)
  $| TSTMP_ADD_SECONDS(tstmp,seconds,on_error) ...


Varianten:

1. ... TSTMP_IS_VALID(tstmp)

2. ... TSTMP_CURRENT_UTCTIMESTAMP()

3. ... TSTMP_SECONDS_BETWEEN(tstmp1,tstmp2,on_error)

4. ... TSTMP_ADD_SECONDS(tstmp,seconds,on_error)

Wirkung

Diese Funktionen führen in einer CDS-View Operationen mit Argumenten des eingebauten Datentyps DEC der Länge 15 bzw. des Datenelements TIMESTAMP aus. Der Inhalt eines solchen Arguments wird als ABAP-spezifischer Zeitstempel in einer gepackten Zahl interpretiert.

Die Funktionen haben mit der Ausnahme von TSTMP_CURRENT_UTCTIMESTAMP 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 oder Ausdrücke angegeben werden. An den Parameter on_error können ausschließlich Literale übergeben werden. Wenn ein Aktualparameter den Null-Wert enthält, gibt jede Funktion außer TSTMP_IS_VALID einen Null-Wert zurück.

Hinweise

  • Die Zeitstempelfunktionen ermöglichen die Bearbeitung von Zeitstempeln, die im ABAP-spezifischen Format als gepackte Zahl in Datenbanktabellen abgelegt sind, auf der Datenbank. Wie in ABAP fassen andere Zugriff auf solche Felder diese als normale numerische Werte auf.

Variante 1

... TSTMP_IS_VALID(tstmp)


Wirkung

Die Funktion TSTMP_IS_VALID stellt fest, ob ein Argument tstmp einen gültigen Zeitstempel im Format YYYYMMDDHHMMSS enthält. Der Aktualparameter muss vom eingebauten Datentyp DEC der Länge 15 ohne Nachkommastellen sein. Das Ergebnis ist vom Datentyp INT4. Ein gültiger Zeitstempel ergibt den Wert 1 alle anderen Eingabewerte inklusive des Null-Werts ergeben den Wert 0.

Variante 2

... TSTMP_CURRENT_UTCTIMESTAMP()


Wirkung

Die Funktion TSTMP_CURRENT_UTCTIMESTAMP gibt einen UTC-Zeitstempel nach POSIX-Standard zurück. Das Ergebnis ist vom Datentyp DEC der Länge 15 ohne Nachkommastellen.

Hinweise

  • Bei mehrfacher Verwendung der Funktion TSTMP_CURRENT_UTCTIMESTAMP innerhalb einer View ist nicht garantiert, dass jeder Aufruf innerhalb eines Datenbankzugriffs das gleiche Ergebnis hat. Spätere Aufrufe können entsprechend spätere Zeitstempel liefern.

Variante 3

... TSTMP_SECONDS_BETWEEN(tstmp1,tstmp2,on_error)


Wirkung

Die Funktion TSTMP_SECONDS_BETWEEN berechnet die Differenz zweier Zeitstempel tstmp1 und tstmp2 in Sekunden. Die Aktualparameter müssen vom eingebauten Datentyp DEC der Länge 15 ohne Nachkommastellen sein und gültige Zeitstempel im Format YYYYMMDDHHMMSS enthalten. Ungültige Zeitstempel führen zu einem Fehler. Wenn tstmp2 größer als tstmp1 ist, ist das Ergebnis positiv im umgekehrten Fall negativ.

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 4

... TSTMP_ADD_SECONDS(tstmp,seconds,on_error)


Wirkung

Die Funktion TSTMP_ADD_SECONDS addiert seconds Sekunden auf einen Zeitstempel tstmp. Der Aktualparameter tstmp muss vom eingebauten Datentyp DEC der Länge 15 ohne Nachkommastellen sein und einen gültigen Zeitstempel im Format YYYYMMDDHHMMSS enthalten. Ein ungültiger Zeitstempel führt zu einem Fehler. Der Aktualparameter seconds muss ebenfalls vom eingebauten Datentyp DEC der Länge 15 ohne Nachkommastellen sein. Negative Werte werden abgezogen. Wenn das Ergebnis ungültig ist, kommt es zu einem Fehler.

Der Aktualparameter on_error steuert die Fehlerbehandlung. Es gilt das Gleiche wie bei der Funktion TSTMP_SECONDS_BETWEEN. Mit einem zusätzlichen Wert "UNCHANGED" kann angegeben werden, dass ein Fehler zur Rückgabe des unveränderten Werts von tstmp führt.

Beispiel

Die folgende CDS-View wendet Zeitstempelfunktionen in der SELECT-Liste auf Spalten der Datenbanktabelle DEMO_EXPRESSIONS an. Das Programm DEMO_CDS_TIMESTAMP_FUNCTIONS greift mit SELECT auf die View zu. Die Spalte NUM1 der Datenbanktabelle wird mit einem Wert versehen, der als Sekunden auf einen Zeitstempel in der Spalte TIMESTAMP1 addiert wird. Zwischen dieser Summe und einem Zeitstempel, der von der Funktion TSTMP_CURRENT_UTCTIMESTAMP auf der Datenbank besorgt wird, wird die Differenz gebildet. Zwischen dem im ABAP-Programm und dem auf der Datenbank erstellten Zeitstempel kann eine Verzögerung wait eingebaut werden.






General Material Data   General Data in Customer Master  
Diese Dokumentation steht unter dem Copyright der SAP AG.

Length: 11249 Date: 20240606 Time: 112220     sap01-206 ( 145 ms )