Übersicht
Wikipedia: AppleScript ist eine Skriptsprache von Apple, die ein Bestandteil von Mac OS ist. AppleScript dient dazu, Mac-OS-Programme zu automatisieren, zu erweitern und innerhalb eines Rechnernetzes fernzusteuern.
Über die Skripte Einstellungen können sowohl vorhandene als auch neue Skripte benutzt und zu definierten Zeitpunkten ausgeführt werden. Weiterhin können die Skripte selber per „Automator“ erstellt werden und über Schaltflächen ausgeführt werden. Diese Arbeitserleichterung ist vor allem bei monotonen, wiederkehrenden Arbeitsabläufen nützlich.
In tomedo® können Sie die Skriptverwaltung, in der Sie auch AppleScript finden, über den Pfad Admin → Skripte (Python- und AppleScripts) aufrufen.
Funktionen der Skriptverwaltung
- neues Skript erstellen ("+") oder ausgewähltes Skript löschen ("–")
- das gewählte Skript auf dem Rechner aktivieren / deaktivieren
- Name des Skriptes
- Tooltipp für das Skript (Erscheint als Hinweis über der Schaltfläche)
- Beschreibung des Skriptes (z.B. der Funktion des Skriptes)
- Aktivieren/Deaktivieren der Skriptausführung beim Start von tomedo®
- das Skript periodisch ausführen
- Skript über Schaltfläche in der Tagesliste, der Kartei oder in Formularen verfügbar machen (inklusive Hinzufügen eines Bildes für die Schaltfläche)
- Quellcode des Skriptes
- Skript jetzt ausführen (unabhängig davon, ob das Skript generell aktiviert oder deaktiviert ist)
Um neue Skripte zu erstellen, bietet es sich an, die Skripte vorher im AppleScript-Editor von OSX bzw. macOS zu schreiben und zu testen. Der Quellcode kann danach einfach in das entsprechende Feld in tomedo® kopiert werden.
Es gibt bereits viele vorgefertigte Skripte im Internet, die Sie zur Automatisierung nutzen können. Außerdem finden Sie eine große Menge an hilfreichen Anleitungen, wie Sie eigene AppleScripte schreiben können, um diese in tomedo® einzubinden.
Eine weitere Möglichkeit besteht darin, per Automator einen Arbeitsablauf aufzuzeichnen, diesen in ein AppleScript umzuwandeln (per Drag & Drop in Automator) und den resultierenden Quelltext danach in den tomedo®-Skript-Quellcode-Bereich zu kopieren.
AppleScripte nutzen in tomedo® mit Automator
Schritt 1: Ablauf mit Automator aufzeichnen (Erstellen von Leistungen und Diagnosen)
-
- Automator öffnen
- Arbeitsablauf aufzeichnen
Fertiger Arbeitsablauf:
Schritt 2: Ablauf zu Apple Script portieren
- AppleScript Panel per Drag & Drop zum Arbeitsablauf hinzufügen
- Automator-Aktionen per Drag & Drop in das AppleScript Panel ziehen
- Fertiges AppleScript (hier eventuell noch „delays“ entfernen)
Schritt 3: AppleScript in tomedo® integrieren
-
- In den Einstellungen ein neues Skript hinzufügen per „+“
- Skript Einstellungen vornehmen (z.B.: Name und Schaltflächen aktivieren)
- Skript Quelltext in das Quellcode-Feld kopieren
Schritt 4: Befehlszeile der Kartei verwenden
Um Karteieinträge oder andere Befehle der Kommandozeile der Kartei in den AppleScripts zu nutzen, können Sie den folgenden Quelltext adaptieren. Im ersten Absatz erfolgt ein Klick in die Kommandozeile (für den Fall, dass der Cursor noch nicht dort ist). Im zweiten Absatz werden die Tasten b, e, f gedrückt, um einen neuen Befund-Eintrag zu erstellen. Im dritten Absatz erfolgt ein Druck auf die Enter-Taste. Der vierte Absatz ist eine Fehlerbehandlungs-Routine für den Fall, dass etwas nicht funktioniert.
tell application „tomedo“ to activate
- — Auf das Kommandozeilen-Textfield klicken.
- set timeoutSeconds to 2.0
- set uiScript to „click text field 1 of window of application process \“tomedo\““
- my doWithTimeout(uiScript, timeoutSeconds)
- — ‚bef‘ eingeben, um einen neuen Befund-Eintrag zu erstellen
- set timeoutSeconds to 2.0
- set uiScript to „keystroke \“bef\““
- my doWithTimeout(uiScript, timeoutSeconds)
- set timeoutSeconds to 2.0
- set uiScript to „key code 36“ — Enter senden
- my doWithTimeout(uiScript, timeoutSeconds)
- on doWithTimeout(uiScript, timeoutSeconds)
- set endDate to (current date) + timeoutSeconds
- repeat
- try
- run script „tell application \“System Events\“ \n“
- & uiScript & „\n end tell“
- exit repeat
- on error errorMessage
- if ((current date) > endDate) then
- error „Fehler: „ & uiScript
- end if
- end try
- end repeat