×
Menu

HTML Templates mit Mehrfachausfüllung

 
Hinweis: Die Templates mit Mehrfachausfüllung unterscheiden sich nur geringfügig von den normalen HTML Templates für Steckbriefe. Daher sollte zunächst diese Sektion berücksichtigt werden.
 
Bereits bestehende oder neue Steckbriefe ohne Unterstützung für die Mehrfachausfüllung funktionieren weiterhin, auch wenn die Mehrfachausfüllung in der Abfrage aktiviert wurden, jedoch kann hier weiterhin nur eine Instanz abgebildet werden.
Templates sollten nur dann angepasst werden, wenn der Anwendungsfall Daten mehrerer Modulinstanzen des gleichen Typs innerhalb eines einzelnen Steckbriefes erfordert. Bitte setzen Sie sich für genauere Informationen mit INDEC in Verbindung.
 
 
Die Steckbrieffunktion mit Mehrfachausfüllung stellt einige spezielle Anforderungen an den Aufbau von HTML Templates und Variablen sowie das eingebundene JavaScript. Dies sollte Vor dem Erstellen der Templates berücksichtig werden, da es sonst bei der Umsetzung zu Problemen kommen kann. Innerhalb der Templates müssen für die Mehrfachausfüllung spezielle XHTML Tags definiert werden, welche zur Laufzeit vom GOBENCH IQ Ausgelesen und die Variablen innerhalb dieser Tags ersetzt werden. Auch ist der Aufbau der Template Variablen nicht identisch mit normalen Templates für Steckbriefe, dies ist nötigt um die verschiedenen Variablentypen in einem Template mischen zu können.
 

JavaScript

 
Im Unterschied zu normalen Steckbrief Templates ist es für solche mit Mehrfachausfüllung erforderlich zwei JavaScript-Dateien einzubinden und diese auch korrekt aus dem HTML-Dokument oder einer weiteren JavaScript-Datei zu initialisieren.
 

Einbinden der Datei(en)

Aufruf der Funktion

<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="../../web/_js/defaultFactSheet.js"></script>
factSheet.initFactSheet($("#[id des Tags mit den Daten]").text());
Das Einbinden sollte im Head-Bereich des HTML Dokuments erfolgen, da nur so das korrekte Funktionieren sichergestellt werden kann. Die Reihenfolge sollte darüber hinaus auch nicht verändert werden!
Der Funktionsaufruf dient dazu den Steckbrief zu initialisieren und entsprechende Platzhaltervariablen zu ersetzten. Der Aufruf muss erfolgen, sollte jedoch erst nach dem einbinden der Dokumente im HTML Dokument erfolgen, erfolgt dieser in einer separaten Datei, so muss diese nach den links sichtbaren eingebunden sein.
 
Hinweis: Die Daten für das Template kommen aus speziellen Variablen, welche im nächsten Abschnitt erläutert werden. Der Text "[id des Tag mit den Daten]" muss mit der entsprechenden ID des HTML Tags mit den Daten ersetzt werden.
 
 

Template Variablen

 

Zunächst gilt es zu beachten, dass für Steckbriefe mit Mehrfachausfüllung spezielle Daten aus dem GOBENCH IQ nötig sind, diese können mithilfe von Sondervariablen beim Erstellen des Templates in den Steckbrief geschrieben werden.

 

Spezielle Variablen

 
Je nachdem ob das Template für ein Modul oder System gedacht  können die Entsprechenden Variablen genutzt werden, um die Daten aus dem System zu laden. Dies  führt jeweils dazu, dass zunächst alle Daten als JSON in das Template gerendert werden. Hier gilt es zu beachten, dass die jeweilige Modul-/System-ID genutzt werden muss, um auf die Daten zuzugreifen, diese findet sich innerhalb der Modul-/Systemadministration. Sollten keine Daten gefunden werden, so bleibt die entsprechende Stelle im HTML leer.
 
[MD]
Module Data
Moduldaten als JSON String. Kann für Module benutzt werden, liefert auch alle Subinstanzen zurück, wenn entsprechende Rechte vorhanden sind.
[GMD]
Global Module Data
Systemdaten als JSON String. Inclusive aller Subinstanzen, wenn die erforderlichen Rechte bestehen.
 
 

Aufbau der Variablen

 
Normale Template Variablen sind wie folgt aufgebaut (Startzeichen)[(Typ)]([(Zusatzoption0)][(Zusatzoption1)][(Zusatzoption2)])(Feldindex)(Endzeichen).
Grundsätzlich ist dieser Aufbau auch bei Variablen für die Mehrfachausfüllung gegeben, jedoch werden hier das bekannte Startzeichen "$" und das  bekannte Endzeichen "!" vertauscht, um die Validität der Variablen und die Cross-Funktionalität beider Variblentypen zu gewährleisten.
Auch stehen bestimmte Optionen nicht zur Verfügung und die Option die Sprache anzugeben fällt vollkommen weg, daher könnte eine Variable für Templates mit Mehrfachausfüllung so aussehen: ![FD][O]27$. Die wegfallenden Optionen belaufen sich grundsätzlich auf die Bereichsgrafiken, welche in dieser Form nicht unterstützt werden und einige anderen welche nur selten erforderlich sind. Allerdings sind die meisten Optionen für die die entsprechenden Datentypen wie auf dieser Seite gelistet verfügbar.
 

Datenplatzhalter (Data-Templates)

 
Data-Templates sind sozusagen Templates innerhalb der Templates, denn diese dienen Dazu auf Basis dynamischer Daten eine vorgefertigte (statische) Struktur mehrmals mit verschiedenen Daten zu erstellen und so die Flexibilität und Wartbarkeit der Steckbriefe mit Mehrfachausfüllung zu verbessern. Grundsätzlich gibt es zwei Typen der Data-Templates, welche jeweils eine einfache Funktionsweise haben. Allerdings wird hierfür eine spezielle Syntax erforderlich, da die Templates entsprechend von der internen Funktion erkannt und umgesetzt werden müssen.
 
Hinweis: Die HTML-Struktur der Data-Templates wird bereits beim Rendern der Daten aus dem eigentlichen HTML entfernt. Ineinander verschachteltet Templates können möglicherweise nicht korrekt erkannt werden!
 

Normale Data-Templates

 
Normale Data-Templates dienen dazu für jede einzelne Instanz dupliziert zu werden, diese Duplizierung erfolgt auf Basis der verfügbaren Modulinstanzen. Sind also 10 Modulinstanzen in einem Steckbrief mehrfach ausgefüllt, so werden auch 10 Instanzen der normalen Data-Templates mit den jeweiligen Moduldaten generiert.
 

Struktur

Erklärung

<data-template class="data-template">
     <!--Beliebieges HTML mit Template Variablen-->
    <div class="news-content-img">
         <img class="news-content-img-c" src="![FD][P]3457$" alt="![FL]3457$" />
         <p class="news-content-img-desc">![FD][O]3475$</p>
    </div>
</data-template>
Die CSS-Klasse dient dazu das Data-Template genauer zu identifizieren und bei bedarf stylen zu könnnen.
 
 

Singleton Templates

 
In machen Fällen werden spezifische Daten aus einer Modulinstanz benötigt und trotzdem noch Daten aus weiteren (gleichartigen) Instanzen. Für diese Fall können Singleton Templates genutzt werden, diese Templates referenzieren auf eine spezielle Instanz und können nur Daten aus dieser abbilden. Ist keine Instanz angegeben, so werden die Daten aus der ersten verfügbaren Instanz geladen.
 

Struktur

Erklärung

<data-template class="data-template singleton" data-instance-id="8">
     <!--Beliebieges HTML mit Template Variablen-->
    <div class="news-content-img">
         <img class="news-content-img-c" src="![FD][P]3457$" alt="![FL]3457$" />
         <p class="news-content-img-desc">![FD][O]3475$</p>
    </div>
</data-template>
Der Zugriff auf die Daten erfolgt innerhalb von Singleton Templates wie in normalen, jedoch werden diese Templates nicht kopiert.
 
Hinweis: Die "data-instance-id" ist nicht identisch mit der Instanz-ID der Modulinstanz, sondern mit der Position der Instanz in den Daten des Steckbriefs.