📜 Protokolldesigner

1. Import vorgefertigter Protokolle

1.1 In den Einstellungen “Protokolldesigner” auswählen

1.2 Im Protokolldesigner “Import” auswählen

1.3 Importieren

Danach Auswählen, ob der Import durch eine Datei oder über einen Link oder QR-Code durchgeführt werden soll

1.3.1. Bei “Datei”

Hier kann eine ZIP-Datei, welche Sie zuvor lokal exportiert oder gespeichert haben, aus dem Download-Ordner des Tablets/Smartphones eingelesen werden

1.3.2. Bei “Link/QR-Code”

Hier kann direkt ein Link eingeben oder QR-Code eingescannt werden

2. Editieren einer Vorlage

Nur ab der Comfort Version sind selbst angepasste Protokollvorlagen verwendbar.

2.1 Protokollvorlage kopieren

Bevor Sie Veränderungen in der Protokollvorlage vornehmen, empfiehlt es sich die Vorlage zuvor zu klonen:

Klonen/Kopieren eines bestehendes Protokolls

2.2 HTML-Text kopieren

Kopieren Sie den HTML Code aus dem Feld “Protokollvorlage”.

Achten Sie hierbei, dass der komplette Text übernommen wird. (Bei Windows: kompletten Text mit STRG+A markieren und mit STRG+C kopieren)

2.3 HTML-Code im Editor anpassen

Nun können Sie die Vorlage in einem HTML Editor einfügen und beliebig anpassen

Beispiel: https://html5-editor.net/

In diesem Beispiel wird der “Anlass der Prüfung” und die “Vorschrift” im Protokoll geändert.

 

 

2.4 HTML-Code in Remote-Master-Protokollvorlage einfügen

Nach dem Editieren den angepassten Code vollständig kopieren und den alten Code im Feld “Protokollvorlage” ersetzen.

 

3. Zusätzliche Informationen

3.1 Vorhandene Datenfelder

3.2 Vorhandene Funktionen

3.2.1 Beispiel für einen Zähler mit einer Variablen

<!-- initialize the variable --> <div expr="vars['counterMeas'] = 0"></div> <div expr="vars['counterVis'] = 0"></div> <div loop="n of data['nodes']"> <div loop="s of data['n']['sessions']"> <!-- Lets count all the visuals --> <div loop="m of data['s']['visuals']"> <div expr="vars['counterVis'] = vars['counterVis'] + 1"></div> </div> <!-- Lets count all the measurements --> <div loop="m of data['s']['onlyMeasurements']"> <div expr="vars['counterMeas'] = vars['counterMeas'] + 1"></div> </div> </div> </div> <!-- print the result --> <div>Measurements: {{vars['counterMeas']}}</div> <div>Visuals: {{vars['counterVis']}}</div>

3.2.2 Beispiel für das Auslesen aller Prüfer, welche an einer Prüfung teilgenommen haben

<div>All technicians:</div> <div loop="t of data['techniciansNames']">{{data['t']}}</div> <div loop="n of data['nodes']"> <div loop="s of data['n']['sessions']"> <div>Session {{data['s']['session']['id']}} technicians:</div> <div loop="t of data['s']['session']['technicians']">{{data['t']['name']}}</div> </div> </div>

 

3.3 Cascading Style Sheets - CSS

Das Layout der Seite wird nicht nur durch HTML-Code bestimmt, sondern sehr wesentlich auch durch CSS-Code.

 

3.3.1 break-inside (

Zitat von https://developer.mozilla.org/en-US/docs/Web/CSS/break-inside :

The break-inside CSS property sets how page, column, or region breaks should behave inside a generated box. If there is no generated box, the property is ignored.

Die CSS -Eigenschaft break-inside legt fest, wie sich Seiten-, Spalten- oder Bereichsumbrüche innerhalb einer generierten Box verhalten sollen. Wenn keine generierte Box vorhanden ist, wird die Eigenschaft break-inside ignoriert.

Beispiel: tr { break-inside: avoid; }