Die Sys-Makros liefern Angaben über das Programm und den Rechner. Sie sind überall verfügbar, weil sie keine Patienten- oder Ordinationsdaten brauchen.

Zwei davon – SysBedLeer und SysPicture – sind keine Datenmakros, sondern Steuermakros. Sie sind unten ausführlich beschrieben.


Übersicht

Makro

Bedeutung

SysDatum

Systemdatum (= Datum des Rechners, nicht das Ordinationsdatum – dafür OrdDatum)

SysZeitHM

Systemzeit im Format HH:MM

SysZeitHMS

Systemzeit im Format HH:MM:SS

SysStationId

Stationskennung der Arbeitsstation (Umgebungsvariable STATION, sonst LOC)

SysAppVersion

Version der Applikation

SysAppRelease

Release-Text der Applikation

SysAppDirectory

Installationsverzeichnis

SysAppCopyright

Copyright-Text

SysEuroKurs

Euro-Umrechnungskurs (13,7603)

SysBedLeer

bedingte Ausgabe – siehe unten

SysPicture

Bild einfügen – siehe unten


SysBedLeer – Text nur ausgeben, wenn Daten vorhanden sind

SysBedLeer prüft, ob ein Makro einen Wert liefert, und gibt einen Textteil nur dann aus. Damit vermeiden Sie leere Zeilen, Überschriften ohne Inhalt und Beistriche ins Leere.

Variante A – einzeilig (Word-Musterbrief, Script)

«SysBedLeer:Bedingung,Ausgabe»

Teil

Bedeutung

Bedingung

wird ausgewertet. Ist das Ergebnis leer, entfällt die gesamte Ausgabe.

Ausgabe

wird ausgegeben, wenn die Bedingung nicht leer ist. Darf selbst wieder Makros enthalten.

«SysBedLeer:«InpStatus»,Status: «InpStatus»»

Ergibt „Status:“ mit dem Text dahinter, wenn ein Text vorhanden ist – sonst gar nichts.

Weitere Beispiele:

«SysBedLeer:«PatCave»,ACHTUNG – Cave: «PatCave»»
«SysBedLeer:«PatSachAngegeben»,Sachwalter: «PatSachVorname» «PatSachZuname»»
«SysBedLeer:«PatTel1»,Tel.: «PatTel1»»

Getrennt wird beim ersten Beistrich. Im Bedingungsteil darf deshalb kein Beistrich vorkommen – also kein Makro mit mehreren Parametern. Falls Sie eines brauchen, definieren Sie es zuerst als Script-Variable und verwenden Sie dann den Variablennamen als Bedingung.

Variante B – als Block (interner Editor)

Im internen Editor wird SysBedLeer über zwei Felder als Klammer um einen ganzen Textabschnitt gelegt:

«SysBedLeer:AdrName»
… beliebiger Inhalt, auch mehrere Absätze, Aufzählungen und Tabellen …
«SysBedEnd»

So legen Sie den Block an:

  1. Cursor an den Beginn des Abschnitts stellen, Feld einfügen wählen und SysBedLeer auswählen. Der Editor schlägt SysBedLeer:??? vor.

  2. Das ??? durch den Namen des Makros ersetzen, das geprüft werden soll.

  3. Cursor an das Ende des Abschnitts stellen und dort das Feld SysBedEnd einfügen.

Ist das geprüfte Makro leer, wird beim Erzeugen des Dokuments der gesamte Block einschließlich Inhalt entfernt; eine dadurch leer gewordene Zeile wird gleich mitentfernt. Ist es befüllt, verschwinden nur die beiden Markierungsfelder und der Inhalt bleibt stehen.

Blöcke dürfen ineinander verschachtelt werden.

Grenzen von SysBedLeer

SysBedLeer kennt nur die Prüfung „nicht leer“. Es gibt

  • keine Verneinung („wenn leer, dann …“),

  • keinen Sonst-Zweig,

  • keinen Vergleich auf einen bestimmten Wert.

Für all das brauchen Sie einen Ausdruck – siehe nächster Abschnitt.


Wenn/Dann/Sonst: Ausdrücke

Ausdrücke können alles, was SysBedLeer nicht kann. Sie werden in die Zeichen <# und #> gesetzt; Makronamen stehen darin ohne Doppelklammern:

<#Cond(Bedingung, Dann, Sonst)#>

Beispiel: Empfängeradresse, ersatzweise die Adresse des Patienten

<#Cond(AdrName=="", PatAnschrift, AdrAnschrift)#>

Beispiel: Initialen des Patienten

<#Left$(PatZuname,1)+". "+Left$(PatVorname,1)+"."#>

Beispiel: Rechnen

<#Cond(PatKG=="" .or. PatCM=="", "", Str$(Val(PatKG)/((Val(PatCM)/100)*(Val(PatCM)/100)),0,1))#>

Bitte beachten:

  • Ausdrücke brauchen das Modul MOD_FORMELEVAL. Fehlt es, steht im Dokument kommentarlos N/A.

  • Ausdrücke werden vor den Makros in Doppelklammern ausgewertet. Das Ergebnis darf daher selbst wieder Makros enthalten.

  • Word ersetzt gerade Anführungszeichen durch typografische und macht den Ausdruck damit ungültig. Schreiben Sie den Ausdruck im Script-Editor – dort wird er sofort auf Syntax geprüft – und übertragen Sie ihn über die Zwischenablage.

  • Ausdrücke funktionieren im Word-Musterbrief, im Formulardesigner und in Listen. Im internen Editor funktionieren sie nicht direkt; dort definieren Sie den Ausdruck im Script als Variable (Var1=InpEmpf,#Cond(…)) und setzen im Dokument nur das Feld.


SysPicture – Bild einfügen

«SysPicture:Dateiname»

Bindet die angegebene Datei aus dem temporären Verzeichnis in das Dokument ein. Wird keine Dateiendung angegeben, gilt .BMP.

Typische Anwendungen:

Musterbrief

Makro

Inhalt

X-VID

«SysPicture:VID.JPG»

Video-Befund (Aufruf über Drucken im Kontextmenü des Befundes)

X-AC30

«SysPicture:AC30A»

Audiometrie-Kurve

X-AC30

«SysPicture:AC30S»

Sprachaudiogramm

X-SD26

«SysPicture:SD26A»

Audiometrie-Kurve

X-AT22

«SysPicture:AT22T»

Tympanometrie-Kurve

X-AT22

«SysPicture:AT22D»

Tympanometrie „Decay“

X-SD30

«SysPicture:SD30T»

Tympanometrie-Kurve

SysPicture wird sowohl von Word-Musterbriefen als auch vom internen Editor unterstützt.