Arbeiten mit Datumswerten

www.altova.com Alle erweitern/reduzieren Dieses Kapitel drucken Vorherige Seite Eine Ebene nach oben Nächste Seite

Startseite >  SPS-Datei: Zusätzliche Funktionen >

Arbeiten mit Datumswerten

Wenn das Quelldokument Nodes für Datumswerte enthält, stehen Ihnen über die Datentypen xs:date oder xs:dateTime aus dem zugrundeliegenden XML-Schema die  leistungsstarken XPath 2.0/3.0-Funktionen zur Bearbeitung von Datum und Uhrzeit zur Verfügung (siehe Beispiele unten). StyleVision bietet zur Unterstützung der Datentypen xs:date oder xs:dateTime folgende Funktionen:

 

1.Eine grafische Datumswahl, über die der Benutzer der Authentic-Ansicht Daten im korrekten lexikalischen Format des Datentyps für diesen Node eingeben kann. Da die Datumswahl zur Dateneingabe dient, steht Sie nur in der Authentic-Ansicht zur Verfügung.
2.Eine breite Palette an Optionen zur Datumsformatierung über die Funktion Werteformatierung.

 

In den Unterabschnitten dieses Abschnitts mit den Titeln Verwendung der Datumswahl und Datumsformatierung sind diese StyleVision Funktionen näher beschrieben. Im restlichen Teil des Abschnitts erfahren Sie, wie Sie mit Hilfe von XPath 2.0 Berechnungen mit Datumswerten durchführen können.

 

Anmerkung: Datums- und Uhrzeitwerte können mit XPath 1.0 nicht bearbeitet werden. Sie können jedoch auch mit XPath 1.0 die Datumswahl verwenden, um sicher zu stellen, dass die Daten korrekt eingegeben werden und die Datumswerte mit Hilfe der Werteformatierung formatieren.

 

 


 

Datumsberechnungen mit XPath 2.0

Datumswerte können in automatischen Berechnungen mit Hilfe von XPath 2.0-Ausdrücken bearbeitet werden. Im Folgenden finden Sie einige Beispiele dafür, welche Ergebnisse Sie mit XPath 2.0 Ausdrücken erhalten können.

 

Mit Hilfe der XPath 2.0-Funktionen current-date() und current-dateTime() können Sie das aktuelle Datum bzw. das aktuelle Datum und die aktuelle Uhrzeit erhalten.
Datumswerte können voneinander subtrahiert werden. Z.B.: current-date() - DueDate hätte als Ergebnis den Wert xdt:dayTimeDuration; z,B. den Wert P24D, d.h. eine positive Differenz von 24 Tagen.
Mit Hilfe von XPath 2.0-Funktionen können Zeiteinheiten aus einer Zeitdauer extrahiert werden. Das Ergebnis von: days-from-duration(xdt:dayTimeDuration('P24D')) wäre die Ganzzahl 24.

 

Hier sehen Sie einen XPath 2.0 Ausdruck in einer automatischen Berechnung. Berechnet wird ein Zinssatz von 4 % für einen ausstehenden Betrag pro Tag. Das Ergebnis ist die Summe des ursprünglichen Betrags plus die angefallenen Zinsen:

 

 if                (current-date() gt DueDate)

 then        (round-half-to-even(InvoiceAmount +

                         (InvoiceAmount*0.04 div 360 *        
                                 days-from-duration((current-date() - DueDate))), 2))

 else        InvoiceAmount

 

Eine solche Berechnung wäre mit XPath 2.0 nur dann möglich, wenn das Element DueDate z.B. als Datentyp xs:date definiert wäre und wenn der Inhalt des Elements in lexikalisch korrekter Form eingegeben würde, also JJJJ-MM-TT[±HH:MM], wobei die Zeitzonenkomponente (durch das Präfix ±) optional ist. Mit Hilfe der Datumswahl stellen Sie sicher, dass das Datum in lexikalisch korrekter Form eingegeben wird.

 

 

 


© 2019 Altova GmbH