GISX 3 - Administratordokumentation : Formatdefinition

Die Formatdefinition erfolgen in XML. Es empfiehlt sich folgende Deklaration:

<?xml version="1.0" encoding="UTF-8"?>
<Format xmlns="http://www.geograt.de/namespaces/gisx3/dialogdefinition/1.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
...	
</Format>

Die Formatdefinition wird im Unterverzeichnis "formats" abgelegt und muss die Dateiendung ".xml" besitzen. Zudem darf nur eine Formatdefinition existieren, diese muss "formatDefinition" heißen, da diese ansonsten nicht berücksichtigt wird.

Beispiel für eine Formatdefinition:

<?xml version="1.0" encoding="UTF-8"?>
<Format xmlns="http://www.geograt.de/namespaces/gisx3/dialogdefinition/1.0"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
	<formatDefinition>
		<name>testDate</name>
		<type>
			<date>
				<dateFormat>
					<date>medium</date>
				</dateFormat>
			</date>
		</type>
	</formatDefinition>
	<formatDefinition>
		<name>testCurrency</name>
		<type>
			<currency>
				<unit>EUR</unit>
				<options>
					<style>decimal</style>
				</options>
			</currency>
		</type>
	</formatDefinition>
	<formatDefinition>
		<name>testNumber</name>
		<type>
			<number>
				<format>
					<style>decimal</style>
					<maximumFractionDigits>2</maximumFractionDigits>
					<minimumFractionDigits>3</minimumFractionDigits>
					<round>round</round>
					<useGrouping>true</useGrouping>
				</format>
			</number>
		</type>
	</formatDefinition>
</Format>

Es gilt:

Jeder <formatDefinition> Block hat zum jetzigen Zeitpunkt folgende Attribute:

Je nach <type> kann man folgende Formatdefinitionen vergeben:

type = date 

<dateFormat> := festlegen des gewünschten date-formates:

  • <date> := Datumsformat ohne Zeitangabe. Mögliche Werte mit Beispielen:
    • full := "Monday, November 1, 2010"
    • long := "November 1, 2010"
    • medium := Standardwert"Nov 1, 2010"
    • short := "11/1/10"
  • <datetime> := Datumsformat mit Zeitangabe. Mögliche Werte mit Beispielen:
    • full := "Monday, November 1, 2010 at 5:55:00 PM GMT-02:00"
    • long := "November 1, 2010 at 5:55:00 PM GMT-2"
    • medium := Standardwert"Nov 1, 2010, 5:55:00 PM"
    • short := "11/1/10, 5:55 PM"
  • <time> := Zeitangabe. Mögliche Werte mit Beispielen:
    • full := "5:55:00 PM GMT-02:00"
    • long := "5:55:00 PM GMT-2"
    • medium := Standardwert"5:55:00 PM"
    • short := "5:55 PM"
  • <skeleton> := Freie Datumsformatierungen nach folgendem Muster: 
skeletonGlobalize( "en" ).dateFormatter( skeleton )( new Date( 2010, 10, 1, 17, 55 ) )
{ skeleton: "E" }"Tue"
{ skeleton: "EHm" }"Tue 17:55"
{ skeleton: "EHms" }"Tue 17:55:00"
{ skeleton: "Ed" }"30 Tue"
{ skeleton: "Ehm" }"Tue 5:55 PM"
{ skeleton: "Ehms" }"Tue 5:55:00 PM"
{ skeleton: "Gy" }"2010 AD"
{ skeleton: "GyMMM" }"Nov 2010 AD"
{ skeleton: "GyMMMEd" }"Tue, Nov 30, 2010 AD"
{ skeleton: "GyMMMd" }"Nov 30, 2010 AD"
{ skeleton: "H" }"17"
{ skeleton: "Hm" }"17:55"
{ skeleton: "Hms" }"17:55:00"
{ skeleton: "M" }"11"
{ skeleton: "MEd" }"Tue, 11/30"
{ skeleton: "MMM" }"Nov"
{ skeleton: "MMMEd" }"Tue, Nov 30"
{ skeleton: "MMMd" }"Nov 30"
{ skeleton: "Md" }"11/30"
{ skeleton: "d" }"30"
{ skeleton: "h" }"5 PM"
{ skeleton: "hm" }"5:55 PM"
{ skeleton: "hms" }"5:55:00 PM"
{ skeleton: "ms" }"55:00"
{ skeleton: "y" }"2010"
{ skeleton: "yM" }"11/2010"
{ skeleton: "yMEd" }"Tue, 11/30/2010"
{ skeleton: "yMMM" }"Nov 2010"
{ skeleton: "yMMMEd" }"Tue, Nov 30, 2010"
{ skeleton: "yMMMd" }"Nov 30, 2010"
{ skeleton: "yMd" }"11/30/2010"
{ skeleton: "yQQQ" }"Q4 2010"
{ skeleton: "yQQQQ" }"4th quarter 2010"
{ skeleton: "GyMMMEdhms" }"Tue, Nov 30, 2010 AD, 5:55:00 PM"
{ skeleton: "Ehms" }"Tue 5:55:00 PM"
{ skeleton: "yQQQHm" }"Q4 2010, 17:55"
{ skeleton: "MMMEdhm" }"Tue, Nov 30, 5:55 PM"
{ skeleton: "yMMMdhm" }"Nov 30, 2010, 5:55 PM"

 

type = currency

<unit> := Festlegen des dreistelligen Währungscodes. (USD|EUR|CNY|JPY|GBP|BRL)

<options> := OPTIONAL. Es kann an dieser Stelle der Stil (<style>) einer Wertangabe formatiert werden:

  • symbol := Standardwert. Schreibt das Währungszeichen hinter die Währung (123 €)
  • accounting := ?????
  • code := Schreibt den Währungscode hinter die Währung (123 EUR)
  • name := Schreibt den Wert der Währung vollständig aus (anstatt € -> Euro)

 

type = number

<format> := festlegen der Formatierung eines nummerischen Wertes. Es muss hier mindestens ein Wert hinterlegt werden.

  • <style> := 

    • decimal := Standardwert. Anzeige des numerischen Wertes als Dezimalwert.
    • percent :=  Anzeige des numerischen Wertes in Prozent (0.0016 -> 0,2%)
  • <maximumFractionDigits> := Maximale Stellen nach dem Komma.

  • <minimumFractionDigits> := Mindestanzahl der Stellen nach dem Komma.

  • <round> := Runden des numerischen Wertes in folgender Form:

    • round := Standardwert. Arithmetisches Runden.
    • ceil := Aufrunden des Wertes.
    • floor := Abrunden des Wertes.
    • truncate := Abschneiden des Wertes.
  • <useGrouping> := 

    • true | false :=  Standardwert "true". Einstellung ob 1000er-Trennzeichen gesetzt werden sollen, oder nicht.