Syntax der Werteformatierung

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

Startseite >  SPS-Datei: Darstellung > Werteformatierung (Formatieren von numerischen Datentypen) >

Syntax der Werteformatierung

Die Syntax für die Werteformatierung lautet:

 

([präfix-zeichen]feld[suffix-zeichen][{feld-option1,feld-option2,...}])+

 

wobeipräfix-zeichen und suffix-zeichen optionale Definitionen sind, um die Ausrichtung und die Anzeige positiver/negativer Symbole zu steuern;
feld jede Datentyp-spezifische Formatierung und jeder Text sein kann und
{feld-option(en)} ein optionaler Qualifier ist, mit dem zusätzliche Formatierungsoptionen aktiviert werden können.

 

Erklärung der Definitionssyntax

Die Werteformatierungsdefinition ist folgendermaßen zusammengesetzt:

 

Die Definition besteht aus einem oder mehreren Feldern. So hat die Definition TT Monat JJJJ drei Felder.
Felder können direkt hintereinander angezeigt werden oder durch die folgenden Zeichen getrennt werden: Leerzeichen, Bindestrich, Komma, Doppelpunkt, Punkt oder  einen Textstring innerhalb von doppelten Anführungszeichen. So sind z.B. die Felder TT und Monat in der Definition: TT-Monat' im Jahr 'JJJJ durch einen Bindestrich getrennt und die Felder Monat und JJJJ sind durch einen in einfache Anführungszeichen gesetzten Textstring getrennt.
Ein Feld kann optionale Präfix- und/oder Suffix-Zeichen haben. Z.B: <+###,##0.00.
Ein Feld kann eine oder mehrere optionale Feldoptionen haben. Die Feldoption(en) für jedes Feld muss/müssen innerhalb einer einzigen geschwungenen Klammer stehen und darf/dürfen nicht durch ein Leerzeichen vom Feld getrennt sein. Mehrere Feldoptionen für ein einziges Feld werden durch ein "," (Komma) getrennt. In der Definition: TT Monat{uc,ro} JJJJ sind die Buchstaben uc und ro innerhalb der geschwungenen Klammer z.B. Feldoptionen für das Feld Monat.

 

Beispiele

Beispiel für eine Werteformatierung für einen xs:decimal Datentyp:

 

"$"(##0.00)

 

Beispiele für die Ausgabe wären:

 

$ 25.00

$ 25.42

$267.56

 

Beispiel für die Werteformatierung für einen xs:date Datentyp:

 

TT Monat{uc,ro} JJJJ

 

wobeiuc und ro Feldoptionen sind, damit das Feld Monat in Großbuchstaben angezeigt wird und schreibgeschützt ist.

 

Ein Beispiel für die Ausgabe wäre:

 

24 SEPTEMBER 2003

 

Feldtypen

Ein Feldtyp stellt eine Komponente des Datums dar und gibt an, wie diese Komponente zu formatieren ist. Die Formatierung des Feldtyps kann mittels Präfixen und Suffixen  sowie Feldoptionen geändert werden. In der folgenden Tabelle sind die verfügbaren Feldtypen aufgelistet. Beachten Sie, dass es im Dropdown-Menü des Dialogfelds "Werteformatierung" typspezifische und nur-Feld-spezifische Werteformatierungsdefinitionen gibt. Sie können eine dieser Definitionen auswählen und sie wie gewünscht durch Hinzufügen von Präfixen, Suffixen und/oder Feldoptionen ändern.

 

 

Feldtyp

Erklärung

#

Leerzeichen, wenn an dieser Stelle keine Ziffer steht

0

Null, wenn an dieser Stelle keine Ziffer steht

.

Dezimaltrennzeichen

,

Tausendertrennzeichen

Y

Jahr

y

Jahr (Basis = 1930); siehe Anmerkung unten

MM

Monat muss eine Länge 2 haben

DD

Tag muss eine Länge 2 haben

W

Wochennummer

d

Wochentagnummer (1 bis 7)

i

Tag im Jahr (1 bis 366)

hh

Stunde (0 bis 23), muss eine Länge 2 haben

HH

Stunde (1 bis 12), muss eine Länge 2 haben

mm

Minute, muss eine Länge 2 haben

ss

Sekunde, muss eine Länge 2 haben

AM

AM oder PM

am

am oder pm

AD

AD (n.Chr.) oder BC (v.Chr.)

ad

ad (n.Chr.) oder bc (v.Chr.)

CE

CE oder BCE

ce

ce oder bce

 

 


 

 

Feldtyp

Erklärung

Weekday

Wochentag (Sunday, Monday...)

WEEKDAY

Wochentag (SUNDAY, MONDAY...)

weekday

Wochentag (sunday, monday...)

Wkd

Wochentag  (Sun, Mon...)

WKD

Wochentag (SUN, MON...)

wkd

Wochentag (sun, mon...)

Month

Monat (January, February...)

MONTH

Monat (JANUARY, FEBRUARY...)

month

Monat (january, february...)

Mon

Monat (Jan, Feb...)

MON

Monat (JAN, FEB...)

mon

Monat (jan, feb...)

 

 

Anmerkungen zur Feldlänge und der Länge des eingegebenen Strings

Beachten Sie bitte die folgenden Punkte zur Länge von Datenkomponenten:

 

Länge von Datumsfeldern: Bei Verwendung von Feldern wie z.B. MM, DD, HH, hh, mm, und ss müssen diese in der Definition die Länge 2 haben. Bei Verwendung der Felder y oder Y wird die Länge der Ausgabe durch die Anzahl der y oder Y Zeichen in der Definition festgelegt. Wenn Sie z.B. YYY angeben, wäre die Ausgabe für einen Wert 2006 006; bei einer Definition YYYYYY wäre die Ausgabe 002006. Siehe auch Basisjahr weiter unten.

 

Erweitern der Feldlänge: Das * Symbol (Sternchen) dient dazu, die Länge eines nicht-semantischen numerischen Felds (Ganzzahlen, Dezimalzahlen, usw.) zu erweitern.  Bei Dezimalzahlen kann es auf beiden Seiten des Dezimalpunkts (bzw. Kommas) stehen. So wird z.B. mit der Werteformatierung *0.00* sichergestellt, dass wie in der Formatierung definiert, an den leeren Stellen Nullen für eine Zahl angezeigt werden sowie eine beliebige Anzahl an Stellen links und rechts vom Dezimalpunkt bzw. -komma.

 

 

Eingabelänge in der Authentic-Ansicht: Wie der Inhalt eines Node in der Authentic-Ansicht angezeigt wird, hängt von der Werteformatierung für diesen Node ab. Aus diesem Grund ist der Benutzer der Authentic-Ansicht nicht in der Lage, mehr Zeichen als in der Werteformatierungsdefinition erlaubt, einzufügen. Auf diese Art können Sie die Eingabe in der Authentic-Ansicht einschränken. Beachten Sie jedoch, dass, wenn die Länge eines Werts, der bereits vorher im XML-Dokument vorkam, größer ist, als in der Formatierungsdefinition angegeben, dennoch der gesamte Wert angezeigt wird.

 

Anmerkung:Wenn in einem Feld kein Text dargestellt wird, kann dies an Ihren Regionseinstellungen in Windows liegen. Windows gibt einen leeren String für das Feld AM/PM zurück, wenn die Sprache auf Deutsch gesetzt ist.

 

Präfixe und Suffixe

Mit Hilfe von Präfixen und Suffixen können Sie die Textausrichtung und die positive/negative Darstellung von Feldern ändern. In der folgenden Tabelle sehen Sie eine Liste dieser Präfixe und Suffixe.

 

 

Präfix

Suffix

Erklärung

<


Ausrichtung linksbündig; Standard für Text. Bei Zahlen, die standardmäßig rechtsbündig ausgerichtet sind, ist dies von Bedeutung, wenn es eine feste Anzahl vorangestellter Leerzeichen gibt.

>


Ausrichtung rechtsbündig; Standardeinstellung bei Zahlen.

?


Minuszeichen neben einer Zahl, wenn es sich um eine negative Zahl handelt; andernfalls kein Präfix. Dies ist die Standardeinstellung bei Zahlen.

<?


Minuszeichen linksbündig ausgerichtet bei negativen Zahlen; andernfalls kein Präfix. Minuszeichen, gefolgt von linksbündig ausgerichteter Zahl.

<?>


Minuszeichen linksbündig ausgerichtet bei negativen Zahlen; andernfalls kein Präfix. Rechtsbündig ausgerichtete Zahl.

-

-

Minuszeichen neben der Zahl bei negativen Zahlen; andernfalls Leerzeichen; wird vor der Zahl angezeigt (Präfix); wird nach der Zahl angezeigt (Suffix).

<-

>-

Minuszeichen bei negativen Zahlen; andernfalls Leerzeichen. Zahl und Zeichen nebeneinander. Links ausgerichtet (Präfix); rechts ausgerichtet (Suffix).

<->


Minuszeichen linksbündig ausgerichtet bei negativen Zahlen; andernfalls Leerzeichen. Zahl ist rechtsbündig ausgerichtet.

+

+

Neben der Zahl wird immer ein Plus- oder Minuszeichen angezeigt; vor der Zahl (Präfix), nach der Zahl (Suffix).

<+

>+

Neben der Zahl wird immer ein Plus- oder Minuszeichen angezeigt, linksbündig ausgerichtet (Präfix), rechtsbündig ausgerichtet (Suffix).

<+>


Plus- oder Minuszeichen wird immer linksbündig, Zahl rechtsbündig angezeigt.

(

)

Klammern bei negativen Zahlen; andernfalls Leerzeichen. Neben der Zahl.

<(


Klammern bei negativen Zahlen; andernfalls Leerzeichen. Neben der Zahl. Linksbündig.

<(>


Klammern bei negativen Zahlen; andernfalls Leerzeichen. Linke Klammer linksbündig; Zahl und recht Klammer nebeneinander und rechtsbündig.

[

]

Klammern bei negativen Zahlen; andernfalls nichts. Neben der Zahl.

*

*

Erweiterbare Anzahl von Stellen auf der linken Seite (Präfix) oder auf der rechten Seite (Suffix)

_

_

Leerzeichen

^

^

Füllzeichen (in den Optionen definiert)


th

Ordnungszahl in Englisch (st, nd, rd oder th)


TH

Ordnungszahl in Englisch (ST, ND, RD oder TH)

 

 

 

Feldoptionen

Mit Hilfe von Feldoptionen können Sie komplexe Änderungen an Feldern vornehmen. Die folgenden Optionen stehen zur Verfügung:

 

 

Option

Erklärung

uc

In Großbuchstaben schreiben

lc

In Kleinbuchstaben schreiben

left

Linksbündig

right

Rechtsbündig

ro

Schreibgeschützt (XML); Bearbeitung ist nicht zulässig

edit

Das Feld kann bearbeitet werden (standardmäßig aktiv)

dec=<char>

Geben Sie ein Zeichen für den Dezimalpunkt ein (Standardeinstellung Punkt)

sep=<char>

Geben Sie ein Zeichen für das Stellentrennzeichen ein (Standardeinstellung Komma)

fill=<char>

Füllzeichen definieren

base=<year>

Basisjahr für Jahr-Felder (siehe Anmerkung unten)

pos

Nur positive Zahlen anzeigen; Eingabe von negativen Zahlen ist zulässig

Mit Hilfe der Feldoptionen wird die Zahlenformatierung für europäische Sprachen generiert, in denen Punkte und Kommas anders als im Englischen verwendet werden, z.B. 123.456,75 statt wie im Englischen 123,456.75.

 

Um diese Formatierung zu definieren wäre die Werteformatierung: ###,###.##{dec=,,sep=.}

 

Beachten Sie, dass im Feld die englische Formatierung beibehalten wird, während mit den Feldoptionen dec und sep das Dezimalsymbol und das Kommastellentrennzeichen definiert werden. Wenn kein Dezimalsymbol und Kommastellentrennzeichen definiert ist werden die regionalen Einstellungen des Windows-Betriebssystems (Systemsteuerung | All Items | Region | Format) verwendet.If the decimal symbol and digit separator are not specified, these characters will default to decimal symbol and digit separator of the regional settings of the Windows OS (Control Panel | Alle Elemente | Region | Format).

 

Anmerkung zum Basisjahr

Bei Verwendung von Kurzformaten (wie yy und YY) definiert das Basisjahr, dass das Jahrhundert entfernt wird. So könnte z.B. die Feldoption Basisjahr in der Definition DD-MM-YY{base=1940} verwendet werden. Wenn der Benutzer einen Wert eingibt, der gleich oder größer als die letzten beiden Stellen des Basisjahrs ist, welche als zweistellige Ganzzahl betrachtet werden, so ist das Jahrhundert dasselbe wie das des Basisjahrs. Wenn der vom Benutzer eingegebene Wert kleiner ist als der Ganzzahlwert der letzten beiden Stellen, ist das Jahrhundert das Jahrhundert des Basisjahres plus 1. Wenn Sie als Basisjahr z.B. base=1940 einstellen, so wird bei Eingabe von 50 durch den Benutzer der Authentic-Ansicht, in das XML-Dokument der Wert 1950 eingegeben; wenn der Benutzer 23 eingibt, wird in das XML-Dokument der Wert 2023 eingegeben.

 

Beachten Sie die folgenden Punkte:

 

Obwohl normalerweise als Kurzformat für das Jahr eine 2-stellige Zahl verwendet wird, können bei Angabe eines Basisjahres auch Jahresformate mit einer oder drei Stellen verwendet werden.
Datentypen, bei denen Kurzformate verwendet werden können, sind: xs:date, xs:dateTime, xs:gYear, und xs:gYearMonth.
Stellen Sie bei Definition des Eingabeformats für eine automatische Berechnung sicher, dass im Dialogfeld "Werteformatierung" der richtige Datentyp ausgewählt ist. (Der ausgewählte Datentyp sollte der des Ergebnisses der automatischen Berechnung sein.)
Bei Verwendung des Feldtyps yy ist das Standardbasisjahr 1930. Dieser Wert wird außer Kraft gesetzt, wenn Sie explizit ein Basisjahr definieren.
Wenn der Feldtyp YY ohne Angabe eines Basisjahres verwendet wird, kann der Benutzer der Authentic-Ansicht nur die letzten beiden Stellen des vierstelligen Jahreswerts ändern; die ersten beiden Stellen bleiben im XML-Dokument unverändert.

 

 

 

 


© 2019 Altova GmbH