KEINE Freigabe der macOS Version Sequoia für tomedo®
Alle Hinweise und Informationen finden Sie unter folgendem Link.

Guten Abend, 

ich suche nach dem Syntax, mit dem ich die Funktionen IF oder IF_THEN im Zusammenhang mit einsetzen kann. Mein Vorhaben:

Formular heisst: "PatF_Akut"

Das Feld "Hauptbeschwerde" im Formular ist ein multichoice Ankreuzfeld mit 5 Auswahlmöglichkeiten, die ich nacheinander abfragen will 1=Fieber, 2=Atemwegsbeschwerden usw... ALSO - ich formuliere es mal in Normalsprache: 

IF im Formular PatF_AKut das Feld Hauptbeschwerde entspricht 1 (oder muss man den gewählten Ausdruck = Fieber nehmen ??), dann (Schreibe: Fieber seit "Feld_Fieber_seit" Tagen, lasst sich gut senken "Feld_Fieber_senkbar" ... usw), ansonsten ignoriere alle Fieberfelder..

wie man die einzelnen Felder ausliest, und in den Textbaustein einträgt, habe ich schon rausgefunden.. ich müsste sozusagen nur die WENN-DANN-ANSONSTEN Syntax erfahren. Ich würde dann einfach in die DANN - Klammer alle Dinge tun, die zum Fieber gehören. Ansonsten wird ja nicht benötigt, 

Danach käme die Abfrage von Hauptbeschwerde 2 mit den einzelnen Feldern, so dass unterm Strich eine kurze prägnante Zusammenfassung des PatF entsteht, wobei nur die inhalte übernommen werden, die auch wirklcih ausgefüllt wurden. 

Würde man wirklcih alle Inhalte übernehmen, so wird ein verschachteltes Formular irgendwann im Report sehr unübersichtlich. - und es soll ja in der Akutsprechstunde eine Hilfe sein, sich innerhalb von wenigen Augenblicken über das Problem zu informieren. 

vielen Dank!

mfg

M. Schönbeck

Gefragt vor in Frage von (310 Punkte)
0 Punkte

1 Antwort

Hallo,

die Syntax einiger Kommandos in tomedo - v.a. der mächtigeren - ist tatsächlich unübersichtlich. Ich befürchte, dass Sie sich die Mühe machen müssen, die Erläuterungen (hier zum Kommendo "if") genauer zu studieren. Das, was Sie wollen wird auch recht unünersichtlich und man kann durch ein falsch gesetztes Leerzeichen Stunden an einem Problem vergeuden. Als Anfang kann ich Ihnen den Tipp geben mit folg. Kommando zu beginnen und weiter zu experimetrieren. Ich würde auch eher ein CustomKarteieintrag verwenden, da dort mMn die Möglichkeiten größer/vielfältiger sind.

$[if karteiEintragValue_withArgs PatF_Akut customKarteiEintragEntries.Hauptbeschwerde _ N zs_equals Fieber 'Fieber, lässt sich gut senken']$

Ich bin rel. sicher, dass im "Ausgabewert" des if Kommandos wie Zollsoft es nennt (hier die Zeichenkette "Fieber, lässt sich gut senken") keine anderes Feld referenziert werden kann - bitte hier selbst testen. Ich würde es hier so lösen:

$[if karteiEintragValue_withArgs PatF_Akut customKarteiEintragEntries.Hauptbeschwerde _ N zs_equals Fieber 'Fieber seit']$$[if karteiEintragValue_withArgs PatF_Akut customKarteiEintragEntries.Feld-Fieber-seit _ N zs_not_equal <leer>  ' ']$$[Feld-Fieber-seit]$$[if karteiEintragValue_withArgs PatF_Akut customKarteiEintragEntries.Feld-Fieber-seit _ N zs_not_equal <leer>  ' Tagen']$

Erklärung: zuerst wird geschaut, ob das Feld Hauptbeschwerde Fieber enthält und dann der Text "Fiebr seit" ausgegeben, danach wenn das Feld "Feld-Fieber-seit" nicht leer ist eine Leerzeichen und dann die Anzahl der der Tage (= Inhalt des Feldes "Fedl-Fieber-seit") danach wieder wenn das Feld "Feld-Fieber-seit" nicht leer ist die Zeichenkette "seit Tagen" mit einem Leerzeichen vorne.

Achtung, ich habe das alles nicht getestet, sondern aus meinen Lösungen entnommen. Sie müssen es an Ihre Bedürfnisse anpassen!

Hier zum Schluss eine Ausschnitt aus meiner Lösung, die die Eingaben im CustomKarteieintrag "OP" auswertet und den OP-Bericht vorausfüllt. Soll nur demonstrieren, dass es SEHR unübersuchtlich werden kann :-)

 

OP: $[if karteiEintragValue_withArgs OP customKarteiEintragEntries.opArzt1 _ N zs_not_equal <leer> 'Phakoemulsifikation mit Einsatz einer Hinterkammerlinse']$$[if karteiEintragValue_withArgs OP customKarteiEintragEntries.opArzt2 _ N zs_not_equal <leer> 'Intravitreale Medikamentengabe (IVOM)']$
$[if karteiEintragValue_withArgs OP customKarteiEintragEntries.opIOLart _ N zs_not_equal <leer> 'IOL: ']$$[karteiEintragValue_withArgs OP customKarteiEintragEntries.opIOLart _ N]$$[if karteiEintragValue_withArgs OP customKarteiEintragEntries.opIOL _ N zs_not_equal <leer> ' ']$$[karteiEintragValue_withArgs OP customKarteiEintragEntries.opIOL _ N]$$[if karteiEintragValue_withArgs OP customKarteiEintragEntries.opIOL _ N zs_not_equal <leer> ' dpt ']$$[karteiEintragValue_withArgs OP customKarteiEintragEntries.opIOLb _ N]$$[if karteiEintragValue_withArgs OP customKarteiEintragEntries.opMedi _ N zs_not_equal <leer> 'Medikament: ']$$[karteiEintragValue_withArgs OP customKarteiEintragEntries.opMedi _ N]$

 

Noch eine kleine Erläuterung: folgen 2 Kommandos direkt aufeineander $[xxxxx]$$[xxxxx]$ dann wird keine Leerezeichen dazwischen von tomedo gesetzt, lassen sie 3 "$[xxxxx]$   $[xxxxx]$" dann setzt tomedo auch genau 3, machen sie einen Zeilenumbruch, dann macht es tomedo auch. Ist für die Formatierung der Ausgabe wichtig!

Ich hoffe, das hilft. Sonst gerne Ihre Details posten.

Beantwortet vor von (4.3k Punkte)
0 Punkte
17,732 Beiträge
25,894 Antworten
46,240 Kommentare
22,052 Nutzer