Liebes Tomedo-Team,

mit dem if-Kommando ist das Generieren von Textpassagen über CustomKarteiEinträge sehr komfortabel möglich und spart sehr viel Zeit.

Besteht eine Möglichkeit 2 Bedingungen im Sinne von "$[if $[v1]$ UND $[v2]$..." miteinander zu verknüpfen?

Zusätzlich habe ich noch eine weitere Frage: GIbt es ein Kommando im if-Kommando für "ungleich"?

Viele Grüße, schönen Sonntag
Gefragt von (16.3k Punkte)
0 Punkte

3 Antworten

Hallo Herr Stenger

Meinen Sie so etwas mit zwei verknüpften Bedingungen?

$[if "$[V1]$" "Inhalt1" Text_1 $[V2]$_Text_Fortsetzung_Teil_2 $[V7]$_Text_Fortsetzung_Teil_3_]$

Wenn Variable 1 erfüllt ist (kann Zahl oder ein Text sein), dann erscheint Text_1 (wichtig die Blanks durch Unterstriche ersetzen). Sobald Variable 2 bzw. 3 erfüllt sind, wird der Text entsprechend fortgesetzt.

Es gibt kein Kommando für ungleich,das wäre4 auch unlogisch. Was soll denn geschrieben stehen wenn keine Bedingung erfüllt ist? Leider passiert dann meist etwas völlig unberechnebares in meinen If-Kommandos.Im Handbuch findet sich aber dazu folgendes, was Ihnen weiterhelfen dürfte:

Function("$[V1]$", "ifEqualTo:yes:no:", " $[V2]$", Text_1, "0" )

Oder

"ifGreaterAs:yes:no:"

"ifSmallerAs:yes:no:"

    Als 3. Parameter muss immer eine "0" drinstehen. Hier müßte ich auch rumprobieren bis es klappt oder ein Beispiel haben, mit dem man arbeiten kann. Viel wichtiger ist meines Erachtens der Vergleich von Zahlenwerten. Dann könnte man per Datenimport Meßwerte direkt im CustomKarteieintrag übernehmen und durch die definierten Bedingungen analysieren. 

    Leider ist nur ein Vergleich ob größer oder kleiner möglich, mehr als 2 Abstufungen bekommt man derzeit nicht hin. Man kann also keine Bereiche "von- bis" definieren. 

    Ich habe entsprechende Anfragen an Zollsoft gestellt, und es wurde als Wunsch aufgenommen.

    Grüße aus Husum

    CK

    Beantwortet von (22.5k Punkte)
    Bearbeitet von
    0 Punkte
    Vielen Dank für Ihre Antwort.

    meine Idee bei der Und-Verknüpfung war in etwa so $[if "$[v1]$" "text1" UND "$[v2]$" "text2" Dann_text]$

    So unlogisch finde "ungleich" nicht. Wenn ich z.B. in einem Auswahlfeld neben der Antwort "keine" weitere Antworten wie "gering", "mäßig", "viel" habe, ändert sich der gesamte Text. Dann muss ich nicht für jede Antwort einen Text hinterlegen und könnte die Antwort als Variable einfügen. Außerdem habe ich das Problem, dass es nicht funktioniert, wenn die Antwort aus mehreren Wörtern mit Leerzeichen besteht.

    Mit Function("$[V1]$", "ifEqualTo:yes:no:") hab ich auch schon gespielt, hat aber bei "Text" irgendwie nicht funktioniert (oder ich hatte einen Fehler drin).

    Ich gebe Ihnen recht, dass der Vergleich von Zahlenwerten ebenfalls extrem wichtig ist und es extrem vereinfachen würde.
    Hallo Herr Stenger,

    Für Problem 1 benötgen sie eigentlich kein if-Kommando. Das hört sich irgendwie kompliziert an und läßt sich möglicherweise einfacher lösen. Vielleicht ist das aber auch zu Abstrakt für mich, zeigen Sie doch mal ein Beispiel. Möglicherweise kann man auch einen Score erzeugen und den als If-Kommando setzen.

    Für Problem 2 ist es wichtig zu wissen, dass man anders als bei den Textfelderen auch mit Interpunktionszeichen und allen Sonderzeichen im Text arbeiten kann, sogar eine Gliederung ist möglich, weil harte und weiche Zeilenumbrüche umgesetzt werden. Sie müssen nur darauf achte,  keine Leerzeichen im Fließtext zu haben, die müssen durch einen Unterstrich ersetzt werden. Dann klappt es. Ich hjabe meine Befundzusammenfassung ins Forum gestellt. Das ist als Anschauungsmaterial gut geeignet. Der Voorteil der CustKareteieinträge ist der, das man damit Aktionskettenbedingungen formulieren kan, mit denen sich der gesamte Praxisablauf steuern läßt.

    Ich brauche in der Menuzeile deshalb nur noch 3 Icons und komme mit weniger als 10 Textbausteinen aus. Diese dienen eigentlich nur dazu Aktionsketten zu steuern, oder zur Übernahme von zusammengestzten textfeldern in bestimmte karteieinträge. Alles andere läuft dann von selbst.
    Durch Ihre Workflow-Anleitung bin ich ja auf die Idee gekommen bzw. wurde noch mehr ermutigt, eigene Karteieinträge zu erstellen. So bin ich dabei bzw. fast fertig einen Befund inkl Therapie für die Knie-Arthroskopie zu erstellen. Hieraus ein Beispiel für eine Anwendung einer "Ungleich"-Option $[if "$[rp]$" "keine" Suprapatellar_findet_sich_keine_Plica._ "medial" s_findet_sich_eine_Plica_medial_der_Patella._ "lateral" Es_findet_sich_eine_Plica_lateral_der_Patella._]$

    Auch wenn jetzt etwas off-topic bin ich auch im Rahmen der OP-Dokumentation am Arbeiten mit Aktionskette. Wenn ich eine Aktionskettenbedingung in eine Aktionskette einfüge und diese zutrifft, wird nur noch die Kette der Bedingungen ausgeführt. Ein Rückkehren zur ursprünglichen Kette ist nicht mehr möglich. das ganze passiert auch unabhängig davon was ich bei "Konfiguration" anklicke. Gibt es da eine Möglichkeit eine Kette mittels Bedingung in eine laufende Kette einzufügen, sodass die ursprüngliche Kette nach Beendigung der Bedingung wieder aufgenommen wird?

    Eigentlich geht das in Iherem Fall auch ohne if-Kommando beispielsweise so:

    $($[A1]$,LEERZEICHEN_BEGIN"Es findet sich"_ENDE" ")$$($[A2]$,LEERZEICHEN_BEGIN"Plica suprapatellaris"_ENDE". ")$

    Für A1 eine/keine 

    Für A2 medialis/lateralis

    Wenn Sie das lieber mit Kontrollkästschen machen, kann man auch ein Kontrollkästchen mit Textfeld nehmen und dabei mit versteckten Feldern arbeiten, die dann aber als Text übernommen werden obwohl etwas anderes angezeigt wird, das ist aber etwas tricky.

    Das if-Kommando ist bei langen Texten sinnvoll, indem man nur ein Schlagwort hat und dann Texte mit Gliederungen etc. übernimmt. Ausßerdem wird die Interpunktion richtig übernomme, sobald Sie aber ein Komma im Auswahlfeld haben funktioniert es nicht mehr. 

    Sehen Sie sich doch mal meinen karteieintrag "BZUS" im tauschcenter an. 

    Sie können auch gern Ihren Entwurf ins Tauschcenter stellen, ich schau dann bei Gelegenheit mal drüber. 

    Sie können wenn eine Aktionskette abgearbeitet ist eine weitere Kette durch eine Aktionsketten Bedingung starten.

    Eine Rückkehr ist nicht möglich. Ich empfehle aber anschließend einen Karteieintrag zu generieren, der automatisch durch das zusammengesetzte Textfeld aus dem CustomKarteEintrag befällt wird. Das hat den Vorteil, dass man den Text noch editieren kann.
    Mit versteckten Feldern arbeite ich auch schon. Wenn mein Knie-ASK Befund ausgereift ist, lade ich den auch für alle hoch.

    Ok, vielen dank für die Antwort bzgl der Aktionskette. Dann muss ich das anders lösen.  

    Das habe ich so gemacht: Aus jedem CustomKarteiEintrag generiere aus einem zusammengesetzten Feld einen Karteieintrag, der im Rahmen der Aktionskette geöffnet wird und noch ggf. angepasst werden kann.
    Wenn Sie dann auch noch beim erneuten Anlegen desselben CustomKarteieintrags in den wesentlichen Feldern eine Vorbefüllung festlegen, sehen Sie sofort welchen befund Sie beim vorherigen Mal erhoben haben, ohne die Vorbefunde in der Kartei zu öffnen, das beschleunigt die Erhebung neuer Befunde ungemein. Besonders lohnt sich das für Untersuchungsgänge, die sich in bestimmten Intervallen wiederholen. Wenn man dann noch einen Zeitstempel im Formular versteckt, der im neuen Formular angezeigt wird, weiß man sofort, wann der Vorbefund erhoben wurde.

    Ich habe sämtliche Untersuchungsgänge auf solche CustomKarteieinträge umgestellt und benötige seitdem so gut wie keine Textbausteine mehr. Allerdings kostet esviel Zeit und Geduld, aber es lohnt sich. Schön wäre es, wenn Tomedo die Erstellung der CustomKarteieinträge etwas erleichtern würde indem ein Editor zur Verfügung gestellt wir, wie ich das von anderen Datenbankprogrammen wie Access oder Ninox kenne.
    Das mit dem Vorbefüllen und Datum des letzten Eintrags hatte ich mir von Ihrem Beispiel angeschaut. Ich hatte einen Eintrag für die Untersuchung des Knies "gebaut" und diesen bereits auch letzte Woche schon in das Tauschcenter hochgeladen.

    Ich stimme auch zu, dass das Gestalten relativ umständlich ist und vereinfacht werden könnte.
    Noch ein wichtiger Hinweis:

    Manchmal stürzt Tomedoe ab oder es gehen beim Kopiervorgang Daten aus den zusammengesetzten Textfekdern verloren, deshalb immer eine Sicerungskopie anlegen und die letzten Inhate der zusammengesetzten Textfelder als Textdokumet abspeichern. Hab gerade mit Kollegen Kampmanntelefoniert, dem das gesamte Textfeld verloren gegangen ist.

    Schaue mir Ihren Karteieinrag im Tauschcenter an und melde mich wieder
    Der Karteieintrag sieht schon ganz gut aus.

    Sie könnten anstatt der Kontrollkästchen jedoch eher Auswahlfelder nehmen, das würde Platz sparen.

    Es braucht  aber Zeit die Formulare an die eigenen Bedürfnisse anzupassen, aber es lohnt sich auf jeden Fall. Ich habe Corona genutz und mittlerweile sieht es bei mir so aus, dass jedes Feld irgendeine Aktionskette startet, sei es eine Verodnung oder eine Anleitung für den Patienten. Überweisunge, Einweisungen Nachrichten etc. lassen sich ebenfalls darüber steueren, Gestaltungsmöglichkeiten sind keine Grenzen gesetzt. Wir können uns gern einmal zu einer Teamviever Sitzung verabreden.
    Hallo Herr Stenger
    ich habe ihren Beitrag zum Anlass genommen mal was zu basteln. Ein kurzes Beispiel für den "Pulsstatus" habe ich in das Tauschcenter gestellt. Vielleicht können Sie das für Ihre Zwecke gebrauchen und umbauen.
    Ich hätte das lieber als Textmakro in einem if-Kommando eingebaut, leider ist das instabil und auch nach Auskunft von Herrn Thierfelder nicht so angedacht und technisch nicht so leicht umsetzbar.
    Aber es gibt immer mehrere Wege die zum Ziel führen.
    Vielleicht geben Sie mal eine Rückmeldung ob das Ihre Frage beantwortet.
    Hallo Herr Stenger,

    Ich habe einen weiteren Lösungsweg gefunden. Ein etwas anderer Ansatz. Dafür muss man zunächst für jede Bedingung eine Dezimalzahl erzeugen. Der Variablename gruppiert die Bedingungen, die Sie mit UND verknüpfen wollen. Jede Dezimalstelle codiert eine Bedingung.

    Anschließend summieren sie die Dezimalzahlen und erzeugen dadurch einen mehrstelligen Score. Jede Dezimalstelle kann 9 verschiedene Parameter codieren. Anschließend werten Sie den so erzeugten Score über ein if Kommando aus.

    Das habe ich am Beispiel des Pulsstatus in das Tauschcenter gestellt.

    VG aus Husum

    CK
    Beantwortet von (22.5k Punkte)
    Bearbeitet von
    0 Punkte
    Eine UND-Verknüpfung zweier Bedingungen geht allgemein mit einer Kombination aus if_then- und if-Kommando als
    $[if_then kommando1 wert1 if kommando2 wert2 Ausgabe]$.
    Eine ODER-Verknüpfung können Sie realisieren als Kombination aus einfachen if -Kommando und UND-Verknüpfung, also z.B.
    $[if kommando1 wert1 Ausgabe]$$[if_then kommando2 wert2 if kommando1 wert1 _ Ausgabe]$
    Im Fall von Custom-Karteieinträgen geht es zumindest für die UND-Verknüpfung einfacher - hier sollte
    $[if $[v1]$$[v2]$ zs_equals Erbebnisv1Ergebnisv2 Ausgabe]$ funktionieren.

    Die Ungleich-Option ist auch Teil des if-Kommandos (siehe Kommandoliste), die alternative Ausgabe steht, wenn vorhanden, am Ende des Kommandos:
    $[if kommando wert Ausgabe Ausgabe_für_ungleich]$
    Beantwortet von (15.9k Punkte)
    +2 Punkte
    Vieln Dank

    Wieder was dazu gelernt
    Mal eine Frage zur oben beschriebenen "und" Verknüpfung - leider funktioniert das Kommando unten bei mir nicht. Hat jemand eine Idee warum? Die Einzelbedingungen laufen, nur die Kombination scheitert an "3 statt 0 Argumente" Vielen Dank

    $[if_then customFormularEintrag IPSS IPSS_Summe N zs_less_then 19 if customFormularEintrag IPSS IPSS_Summe N zs_greater 8 milde_Symptomatik]$
    Für das if-then-Kommando ist der Zahlenvergleich noch nicht eingebaut. Allerdings sollte das in dem Fall auch mit einem einzigen if-Kommando gehen, da man die Fälle dort nacheinander prüfen kann:
    $[if customFormularEintrag IPSS IPSS_Summe N zs_less_then 8 <leer> zs_less_then 19 milde_Symptomatik]$
    (Beispiel nicht getestet)
    Vielen Dank, allerdings entsteht bei Werten außerhalb der Range (20+) eine Fehlermeldung. Um eine zusätzliche "und" Bedingung zu bekommen braucht man wieder das if_then Kommando.

    Können Sie bitte den Zahlenvergleich für if_then mit auf die Agenda setzen oder gibt es eine andere Lösung?
    Im CKE (und dann auf dem Formular) müsste ich eine Variable nur anzeigen lassen, wenn...

    Also: if .. dann Zeige nicht einen Text (das können wir), sondern eine Variable (die weiter obne im CKE schon steht.

    Der Hintergrund ist: ich lasse auch alle Impfbescheinigungen mit Erstimpfung einen Buchungscode drucken (in Abhängigkeit vom Impstoff - das ist meine erst IF Bedingung - Buchungscode aus Impfstoff). Der soll aber nur gedruckt werden, wenn ich Erstimpfung angeklickt habe und nicht Zweitimpfung.
    Geht das irgendwie?
    Oder sage ich im ersten Fall eine verschachtelte if Bedingung: IF Impfstoff ist .... und IF Feld Erstimpfung ist ....?

    Hallo Herr Müller

    Ich habe für die bedingung einen Scor im Impfdokument. Vielleicht können Sie damit was anfangen.

    11,936 Beiträge
    18,751 Antworten
    31,230 Kommentare
    6,338 Nutzer