Datumsformate applikationsweit defnieren

Mit diesem Beitrag möchte ich Ihnen zeigen, wie man ein allgemeines Datumsformat für die gesamte Anwendung in APEX definiert.

APEX bietet 3 Möglichkeiten, Datumsformate festzulegen.

  1. Festlegen eines globalen Datumsformats
  2. Festlegen einer Formatmaske über die Application-Definition
  3. Festlegen einer Formatmaske über ein Application-Item

Zu 1: Festlegen eines globalen Datumsformats

Über die Applikations-Defintion kann ein globales Datumsformat festgelegt werden. Dieses Format wird für alle Reportfelder automatisch benutzt. Bei Eingabefeldern muss dieses Format explizit zugewiesen verwenden.

Um dieses globale Datumsformat zu definieren gehen sie bitte wie folgt vor:

  • Shard Components -> Definition (unter „Application“) -> Globalization (Registerkarte)
    • Unter „Application Date Format“ können sie nun ein gültiges Format eintragen od. aus der Liste auswählen.
    • „Standard Report Columns“ übernehmen diese Einstellung automatisch.
    • Bei Eingabefeldern muss unter „Display as“ „Date Picker (use Application Date Format)“ ausgewählt werden.

Zu 2: Festlegen einer Formatmaske über die Application-Definition

Um dieses Format zu definieren gehen sie bitte wie folgt vor:

  • Shard Components -> Definition (unter „Application“)
  • Klicken sie bei den Quick-Links bitte auf „Substituations“ oder scrollen nach unten bis zur Region „Substitutaions“.
  • Erzeugen sie nun einen neuen Substitutaion String mit den folgenden Eingaben:
    • Substitutaion String: PICK_DATE_FORMAT_MASK
    • Substitutaion Value: <das gewünschte Format> (z.B.: DD.MM.RRRR)
    • Bei allen Report-und Eingabe-Datumsfelder muss nun „Date Picker (use application format mask)“ ausgewählt werden, damit dieses Format von APEX verwendet wird.

Bitte beachten:

Bei allen Report-Spalten wird das global eingestellte Standardformat, wie oben beschrieben, verwendet.

Wenn sie in den Reports ebenfalls das als Substitution String angelegte Format PICK_DATE_FORMAT_MASK verwenden möchten, müssen sie bei der entspr. Report-Spalte unter „Column Formatting“ im Feld „Number / Date Format“ den Substitutaion String, wie folgt, angeben: &PICK_DATE_FORMAT_MASK.

Bitte achten Sie hierbei besonders auf die „&Item.“-Notation!

Zu 3: Festlegen einer Formatmaske über ein Application-Item

Sie haben auch noch die Möglichkeit, eigene Formatmasken über ein Application-Item zu definieren. D.h. sie erstellen ein Application-Item, initialisieren dieses mit der gewünschten Formatmaske und können dies dann genauso wie einen Substitution String verwenden (zuvor erklärt).

Diese Variante bietet mehr Flexibilität und wird benötigt, wenn sie Datumsformate dynamisch zur Laufzeit ändern möchten.

Ein gutes Beispiel zur Verwendung ist die Lokalisierung (L10n). Bei der Lokalisierung wird das Datum z.B. für Amerika in einem anderen Format als in Deutschland verwendet.

Gehen Sie bitte wie folgt vor:

  • Shared Components -> Application Items
  • Klicken Sie auf „Create“, um ein neues Application Item zu erzeugen.
  • Geben Sie einen Namen ein, z.B. APPITM_PICK_DATE_FORMAT_MASK

Um dieses Application Item zu initialisieren,

  • klicken Sie in der Breadcrumb Region auf „Shared Components“ und dann auf „Application Computations“
  • Klicken Sie auf „Create“, um eine neue Computation zu erzeugen.
  • Geben Sie bei „Computation Item“ den Namen des zuvor angelegten Items an oder wählen es aus der Liste aus.
  • Wählen Sie einen „Computation Point“ aus. Hierbei bitte festlegen, wann die Initialisierung stattfinden soll.<br>Wenn Sie eine statische Wertzuweisung machen, wählen Sie am besten „On new Instance“ aus. D.h. dass diese Wertzuweisung nur beim Login ausgeführt wird. Möchten Sie diese Computation dynamisch unter gewissen Bedingungen ausführen, wählen Sie einen entspr. Wert aus.
  • Nun noch „Computation Type“ und die „Computation“ selbst eingeben, z.B.
    • Computation Type: Static Assignment
    • Computation: DD.MM.YYYY

Hinweis!

In meinem Beispiel habe ich die Formatmaske dynamisch geändert!

Über 2 Links auf der Seite kann die Sprache geändert werden (in F146_LANGUAGE_PREFERENCE). In der Computation zu meinem Date-Format frage ich ab, welche Sprache gerade eingestellt ist und setze die Format-Maske entsprechend.

Eine Antwort auf „Datumsformate applikationsweit defnieren“

  1. Pingback: Mehrsprachigkeit mit Oracle APEX – Oracle APEX – Erfahrungen – Tipps und Tricks

Schreibe einen Kommentar