Template Substitutions in APEX

05.
Oktober
2016
Veröffentlicht von: Lisa Klimesch

Für einige der Universal Theme-Templates in APEX 5.0 sind die Template Substitutions besonders interessant - deswegen wollen wir diese Variablenart einmal genauer unter die Lupe nehmen...

In APEX lassen sich Variablen auf fünf verschiedene Arten referenzieren: 

  1. Substitution Strings in HTML Umgebungen (&APP_USER.)
  2. Bindvariablen für SQL oder PL/SQL Blöcke (:APP_ID)
  3. V/NV Funktionen im PL/SQL Kontext (V('APP_USER')
  4. Shortcuts für Regionen und Items ("HELP_TEXT") 
  5. Template Substitutions (#HOME_LINK#)

Für einige der Universal Theme-Templates in APEX 5.0 sind die Template Substitutions besonders interessant - deswegen wollen wir diese Variablenart einmal genauer unter die Lupe nehmen.

Wichtig ist dabei, dass die gewünschten Template Substitutions im aktuellen Template Ihrer Seite, Region, Liste, etc. enthalten sind, um sie in der Applikation definieren und nutzen zu können!

GLOBAL_NOTIFACTION und Favicons

Im Shared Components Menü "Application Definition Attributes" lässt sich so beispielsweise der Substitution String #GLOBAL_NOTIFICATION# im Seiten-Template füllen. Der dort eingefügte Text wird nun automatisch auf allen Seiten Ihrer Applikation angezeigt.

Auch sogenannte Favicons (das sind die kleinen Symbole in Ihrem Webbrowser-Tab oder der Adresszeile) können Sie an dieser Stelle ganz einfach für Ihre gesamte Applikation festlegen: Geben Sie als Substitution String "APP_FAVICONS" und den dazugehörigen Bildwert, verpackt in einem Link-Tag, an.

Voraussetzung ist hier der String #FAVICONS# im Seiten-Template!

Report Templates

Das Universal Theme in APEX 5.0 bietet uns einige neue Report-Templates - und auch hier kommen Substitution Strings zum Einsatz! 

In diesem Tipp zeigen wir die Nutzung von Report-Templates unter Verwendung von Substitution Strings am Beispiel des Templates "Timeline".

Template erkunden

Ein Blick in das entsprechende Template (Shared Components -> Templates -> Report Timeline) verrät, welche Substitution Strings grundsätzlich verfügbar sind und durch einen Report gefüllt werden können.

Die Strings in schwarzer Farbe stehen für Daten, die später im Report sichtbar dargestellt werden. In unserem Beispiel: #USER_AVATAR#, #USER_NAME#, #EVENT_DATE#, #EVENT_TYPE#, #EVENT_TITLE#, #EVENT_DESC#.

Substitution Strings in roter Farbe dagegen sind Teil von HTML Klassen und können zur HTML- und CSS Bearbeitung genutzt werden: #EVENT_MODIFIERS#, #USER_COLOR#, #EVENT_STATUS#, #EVENT_ICON#.

 

Erstellt man einen Bericht mit dem Report-Template "Timeline" und der simplen SQL Query:

select 1 from dual

so werden auch in der laufenden Applikation die im Template definierbaren Substitution Strings angezeigt:

Template befüllen

In der Report-Query können diese Substitution Strings nun als Spaltenaliasse verwendet und dadurch gefüllt werden:

select 

     'IQ'             as USER_AVATAR, 

     'Muniqsoft'      as USER_NAME, 

     '07.11.2016'     as EVENT_DATE, 

     'Kurs'           as EVENT_TYPE, 

     'APEX I'         as EVENT_TITLE, 

     'Grundlagen der Anwendungsentwicklung mit APEX' 

                      as EVENT_DESC, 

     'user_blue'      as USER_COLOR, 

     'kurs_status'    as EVENT_STATUS, 

     'fa-book'        as EVENT_ICON 

from dual;

Jetzt fehlt nur noch die Definition der CSS Klassenselektoren, die sich auf die HTML/CSS Substitution Strings #USER_COLOR# und #EVENT_STATUS# beziehen. Diese kann beispielsweise im Custom CSS Bereich des Theme Rollers oder in den Seiten-Eigenschaften unter CSS/Inline erfolgen:

.user_blue {
    background-color: #58D3F7;
}
.kurs_status {
    background-color: #82FA58;
}

Template verwenden

Und hier ist er, unser "Timeline"-Report: 

Und hier ist er, unser "Timeline"-Report: 

Anhand dieser Vorgehensweise können Sie natürlich auch alle anderen Report-Templates wie "Badge List", "Cards", "Comments" oder "Search Results" in Ihrer Applikation nutzen!

 

Weitere Erklärungen zu Substitutions Strings und Templates sowie Tipps und Tricks rund um APEX 5.0 erhalten Sie in unseren APEX-Opens internal link in current windowSchulungen (Grundlagen / Fortschritt / Neuerungen in APEX 5.1)!

Schauen Sie doch einfach mal vorbei! 

Jede Menge Know-how für Sie!

In unserer Know-How Datenbank finden Sie mehr als 300 ausführliche Beiträge zu den Oracle-Themen wie DBA, SQL, PL/SQL, APEX und vielem mehr.
Hier erhalten Sie Antworten auf Ihre Fragen.