AppleScript asynchron ausführen

27. August 2013

Wenn ein AppleScript aus FileMaker heraus gestartet wird, wartet FileMaker solange, bis das AppleScript fertig ausgeführt wurde und setzt dann die eigene Script-Ausführung fort. In vielen Fällen ist das erwünscht, wenn z.B. auf ein bestimmtes Script-Ergebnis gewartet werden muss, welches anschließend weiter verarbeitet werden soll.

Problem: Script-Aufruf blockiert FileMaker

Manchmal ist es jedoch unnötig oder sogar hinderlich, wenn der Script-Ablauf in FileMaker durch das gestartete AppleScript blockiert wird. In diesen Fällen wäre es hilfreich, wenn man das AppleScript “asynchron” starten könnte, so dass beide Scripte parallel abgearbeitet werden können. In diesem Fall kann das FileMaker-Script bereits enden, während das AppleScript noch weiter läuft.

Mit den Bordmitteln von FileMaker lässt sich dieses Verhalten nicht ohne weiteres erreichen. Der Befehl “AppleScript ausführen” kennt keine Option für die asynchrone Ausführung.

Machbar wäre dies allerdings mit dem Befehl “Event senden”, welcher wahlweise die Option zum Abschalten anbietet “Beendigung des Events abwarten”. Leider hat Apple in den neueren OSX Versionen das Dateiformat der AppleScript-Dateien in sogannte “Pakete” geändert. Dies sind Ordner, welche weitere Datei-Ressourcen enthalten, im Finder jedoch als ausführbare Dateien angezeigt werden. Speichert man ein AppleScript als “Programm” ab, so wird der gespeicherte Paket-Ordner – obwohl richtig dargestellt – im Auswahl-Dialog des FileMaker Befehls “Event senden” nicht mehr erkannt. Hier handelt es sich offensichtlich um einen Bug in FileMaker (siehe FileMaker Forum).

Event senden Optionen

Workaround

Mit einem kleinen Trick ist allerdings möglich, das gewünschte Verhalten trotzdem zu erreichen. Der Ablauf gestaltet sich dann folgendermassen:

Wir bauen uns ein Starter-Script innerhalb von FileMaker mit Hilfe des Befehls “AppleScript ausführen”. Das Starter-Script übergibt die Kontrolle an ein Shell-Script, welches das AppleScript über die Systemfunktion ‘osascript’ ausführt. Indem die Standard-Ausgabe auf “DevNull” umgeleitet wird, verhält sich das gestartete Script wie ein Hintergrundprozess!
Einzige Einschränkung: Als Hintergrundprozess darf das Script keine GUI-Interaktionen erzeugen. Dialoge müssen daher z.B. an den Finder delegiert werden (siehe Beispiel-Datei).

Hier nochmal der Ablauf schematisch:

  1. per ‘do shell script’ wird ein Shell-Sript gestartet
  2. per ‘osascript’ wird eine externe AppleScript-Datei ausgeführt
  3. mit dem Zusatz ‘&>/dev/null&’ (Standard-Out umleiten auf DevNull) verhält sich der Script-Aufruf wie ein Hintergrund-Prozess

So sieht der fertige Befehlsaufruf des Starter-Scripts aus:

do shell script "osascript " & the quoted form of(POSIX path of "/Users/myaccount/Desktop/Test.scpt") & " &>/dev/null&"

So kommt das Kommando in der Unix-Befehlszeile an:

osascript "/Users/myaccount/Desktop/Test.scpt" &>/dev/null&

Beispiel-Datei

Nachfolgend gibt es eine Beispiel-Datei zum Download, welche das unterschiedliche Verhalten (synchron/asynchron) verdeutlicht. Das beigefügte ZIP-Archiv enthält die FileMaker-Demo im Format .fp7 und .fp12 sowie eine AppleScript-Datei “Test.scpt”, welche zum Start der Demo auf den Desktop kopiert werden muss.

In der FileMaker-Beispieldatei sind zwei Scripte enthalten, die sich per Copy&Paste in eigene Anwendungen übertragen lassen:

  • AppleScript asynchron als Hintergrund-Prozess starten [Dateipfad]
  • AppleScript synchron starten mit warten auf Scriptende [Dateipfad]

Mit Hilfe des Auswahlfelds “Scriptmode” und dem Button “Demo-Script starten” in der Demo-Datei lassen sich beide Varianten testen.

AppleScript asynchron FileMaker Demo

Download Demo-Ordner:
AppleScript-asynchron.zip (25 KBytes)

weitere Infos

Hintergrund-Infos zu den verwendeten Techniken finden sich unter folgenden Links:

Hinweis: sofern auf dem Computer eine ältere Version der Adobe-Suite installiert ist, kann es bei der Verwendung des Befehls ‘osascript’ zu Fehlermeldungen wegen inkompatibler Libraries kommen. In diesem Fall sollte die aktuelle 64-Bit Version des ‘Adobe Unit Types.osax’ installiert werden (siehe Link).

Systemweite FileMaker Suche über das Dienste-Menu mit Automator

21. Mai 2013

Automator Ablauf als Dienst anlegen

Wer eine FileMaker Lösung als Kernstück seiner Aufgabenbearbeitung verwendet, kennt sicher dieses Szenario: Unzählige Male am Tag kopiert man aus E-Mails oder Internetseiten einen Begriff oder eine Artikelnummer, um in der FileMaker Datenbank danach zu suchen.

Das geht dann ungefähr so: Text in E-Mail auswählen, kopieren, FileMaker nach vorne holen, passende Datenbank auswählen, Suchfunktion aktivieren, Text einsetzen, Suche starten, Ergebnis anzeigen. Wie schön wäre es, wenn sich diese aufwändige Prozedur ohne die ganzen Zwischenschritte quasi auf Knopfdruck erledigen ließe. Die gute Nachricht: Wer auf einem Mac arbeitet, dem kann geholfen werden! Für solche Zwecke hat Apple in seinem OS-X-Betriebssystem die sogenannten „Dienste“ eingebaut. Diese können kontextbasiert z.B. einen ausgewählten Text verarbeiten, egal in welchem Programm man sich gerade befindet.

Mit einer trickreichen Vorgehensweise lassen sich Funktionsaufrufe eines Dienstes direkt an FileMaker weiterreichen und dort verarbeiten. Alles, was man dazu braucht, bringt Mac OS X bereits mit.

Durch die Kombination von Automator, AppleScript, Dienste-Menu, Systemeinstellungen für Tastatur-Optionen und einem passenden FileMaker-Script lässt sich ein individuelles Tastaturkürzel anlegen, mit dem aus (fast) jedem Programm heraus eine FileMaker-Suche für den gerade ausgewählten Text gestartet werden kann.

Eine detaillierte Anleitung mit zahlreichen ScreenShots und Beispiel-Script findet sich als Artikel in der aktuellen Ausgabe 2/2013 des FileMaker Magazins. Den Artikel gibt es außerdem hier zum Download als PDF-Dokument:

PDF Download
PDF-Download (3,9 MB)

CSS Tricks in FileMaker: Switch Buttons iOS Style

22. März 2013

Die Demo-Datei zeigt Switch-Buttons im iOS Style.
Die Buttons lassen sich anklicken und ändern dann ihren visuellen Status. Gleichzeitig wird der Wert im zugehörigen Statusfeld geändert.
Das ganze funktioniert auch umgekehrt – wenn der Wert manuell eingetragen wird, wechselt der Switch seine Position.

Die Darstellung basiert auf WebViewer Objekten, die eine simple HTML-Checkbox mit etwas zusätzlichem CSS beinhalten. Je nachdem welcher Wert im Statusfeld steht, wird die Checkbox als angekreuzt dargestellt oder leer. Der CSS-Code verleiht der Checkbox dann das gewünschte Aussehen im iOS Style – siehe dazu nachfolgend verlinkter Blog-Eintrag von Lea Verou.

Weitere Infos zu den technischen Grundlage der Steuerung in FileMaker finden sich in der Demo-Datei (siehe Link).

Der CSS-Code setzt eine HTML5-kompatible Webengine voraus (daher nicht kompatibel mit älteren Windows-Versionen). Die Demo-Datei funktioniert jedoch problemlos unter OSX und iOS mit den FileMaker Pro Versionen 10,11 und 12; bzw. FileMaker GO 11 und 12.

Die Demo basiert auf einem CSS-Showcase von Lea Verou – siehe Link:
http://lea.verou.me/2013/03/ios-6-switch-style-checkboxes-with-pure-css/

Viel Spaß damit!

FileMaker-Datei zum Download (82 KBytes)
iOS Switch Demo.fp7

100% automatisierte Katalog-Produktion

13. Oktober 2012

Anbei die Präsentationsfolien meines Vortrags auf der FileMaker-Konferenz 2012 in Salzburg. Den kompletten Vortrag – inkl. 5 Extra-Kapitel zum Thema Database-Publishing – gibt es hier als PDF Download.

FMK2012 Vortrag FileMaker Databasepublishing

FMK2012 Vortrag – FileMaker Database-Pulishing (PDF 15 MBytes)

Vortragsfolien Vorschau - 100% automatisierte Katalog-Produktion

100% automatisierte Katalog-Produktion
Welche Strategie passt zu welchem Publishing-Projekt?

Kurzbeschreibung: Im Database-Publishing gibt es unterschiedliche Strategien und Konzepte, um eine Aufgabenstellung bestmöglich umzusetzen. In diesem Vortrag erfahren Sie zunächst wichtige Grundlagen für die Herangehensweise an ein Database-Publishing-Projekt. Je nach Strategie kann FileMaker den Publishing-Prozess bei verschiedenen Aufgaben unterstützen.

Im Praxisteil wird eine Lösung aus dem Ersatzteilehandel vorgestellt, mit deren Hilfe wöchentlich mehrere hundert Katalogvarianten aus einem umfangreichen Produktbestand vollautomatisch generiert werden. Einige besondere Herausforderungen wie Mehrsprachigkeit, unterschiedliche Produktsegmente für unterschiedliche Kundengruppen, kundenspezifische Preisregeln und dynamisch generierte Layoutobjekte werden aufgezeigt und die dahinter stehenden Programmiertechniken innerhalb von FileMaker erläutert.

Weiterhin werden eine Reihe nützlicher Tricks für die Generierung von Katalogen gezeigt, wie z.B. die dynamische Erzeugung von Schlagwortregistern mit Seitennummern oder die Einbettung von unsichtbaren Sprungmarken für die Stichwortsuche im PDF.

Der Vortrag bietet sowohl dem Publishing-Experten nützliche Entscheidungshilfen durch die Vermittlung von Grundlagenwissen aus der Praxis. Darüber hinaus werden auch fortgeschrittene Programmiertechniken für den versierten FileMaker-Entwickler vorgestellt.

FileMaker als Multitalent für komplexe Schnittstellen

17. Juni 2011

Anbei die Präsentationsfolien meines Vortrags auf der FileMaker-Konferenz 2011 in Hamburg. Wer nicht dabei sein konnte, oder sich die Details in Ruhe noch einmal durchlesen möchte, kann hier den kompletten Vortrag als PDF herunter laden.

FMK2011: Vortrag FileMaker Schnittstellen

FMK2011 Vortrag – FileMaker Schnittstellen (PDF 11 MBytes)

Vortragsfolien Vorschau - FileMaker als Multitalent für komplexe Schnittstellen

FileMaker als Multitalent für komplexe Schnittstellen
Daten- und Prozessintegration am Beispiel einer E-Commerce-Plattform

Kurzbeschreibung: Im Praxiseinsatz wird die FileMaker Lösung schnell unentbehrlich, sodass der Unternehmenserfolg maßgeblich von ihr abhängig ist. Dabei ist es oft von zentraler Bedeutung, dass die FileMaker Lösung auch in andere betriebliche Prozesse eng integriert wird.

Am Beispiel einer umfangreichen Lösung aus dem Autoteile-Großhandel werden verschiedene Schnittstellen für Stammdaten-Updates, Buchhaltung, Zahlungsverkehr, Versandlogistik, Katalog-Erzeugung bis hin zum Betrieb einer komplexen E-Commerce-Plattform erläutert.

Im heterogenen Umfeld unterschiedlicher Betriebssysteme und Software-Landschaften kommen verschiedene technische Anbindungen zum Einsatz.

Es werden grundlegende Strategien für die Planung und den Betrieb sowohl manueller als auch automatisierter Schnittstellen aufgezeigt. Daher bietet der Vortrag über den speziellen Anwendungsfall hinaus zahlreiche Ideen und Anknüpfungspunkte für die Entwicklung und Erweiterung eigener Lösungen.

Warum die YouTube App unter iOS nervt…

17. April 2011

iOS YouTube App

“Quality by Design” – das mag die Leitline gewesen sein, mit der Apple seine eigenen iOS Apps konzipiert und umgesetzt hat. Eine Auswirkung davon ist die Grundeinstellung in der YouTube App, immer HD-Qualität abzuspielen, wenn eine Verbindung über WLAN existiert und das jeweilige Video in der entsprechenden Auflösung vorliegt.

Das ist natürlich vom Grundgedanken richtig – schließlich haben iPhone und iPad brilliante Displays, wo Videos in HD-Qualität ihre Stärken voll ausspielen könn(t)en. Wäre da nicht die Tatsache, dass auch im Jahre 2011 immer noch zahlreiche unterversorgte Gebiete mit schmalen DSL-Bandbreiten zu kämpfen haben. Da sich HD-Video jedoch inzwischen als Standard zu etablieren scheint, kommt man als Nutzer mit schmaler DSL-Bandbreite immer öfter in die Situation, dass der Bildschirm minutenlang leer bleibt, und man das Video irgendwann wegklickt, weil die Warterei einfach nervt! Hier dauert das Laden meist länger, als die eigentliche Dauer des Videos…

Dummerweise hat Apple keine Option in den Einstellungen vorgesehen, die HD-by-Default-Option abzuschalten. Für die genannten Fälle wäre hingegen eine Small-Bandwidth-by-Default-Option mehr als hilfreich.

Es mag der Arroganz Apples oder dem hartnäckigen Zukunftsglauben der Entwickler dort geschuldet sein – frei nach dem Motto “Es ist nur eine frage der Zeit, bis alle Nutzer flächendeckend über Zugänge mit hoher Bandbreite verfügen.” Während in manchen deutschen Metropolen bereits Zugänge mit 50MBit und mehr verfügbar sind, gibt es leider immer noch viele Randgebiete, in denen 1MBit und weniger die Regel sind. Hier haben Politik und Netz-Monopolisten leider Fakten geschaffen, die auch einer noch so zukunftsgläubigen Entwickler-Attitüde mit gleicher Hartnäckigkeit trotzen.

Als Benutzer muss man allerdings nicht länger der Dumme sein und in die Röhre schauen. Denn YouTube selber hat dieses Thema wesentlich eleganter und nutzerfreundlicher gelöst. Auf der mobilen YouTube-Website prangt unter jedem Video ein großer HQ-Button (HQ = High Quality), der sich schnell und einfach bei Bedarf deaktivieren lässt.

m.youtube.com

Diesen Umstand kann man sich zu Nutze machen und einfach über Safaris Bookmark-Option die mobile Site http://m.youtube.com/ als Icon auf dem Start-Bildschirm installieren. Dadurch eröffnet sich quasi durch die Hintertür eine einfache Möglichkeit, auch mit schmalbandigem Netzzugang weiterhin YouTube-Videos auf iPhone und iPad spontan genießen zu können.

Nachtrag: Um die App für Links komplett zu deaktivieren, sei auf den folgenden Artikel hingewiesen
YouTube-App abschalten: Video-Links in Safari öffnen

Auf Bildschirmorientierung reagieren mit FileMaker Go

08. Februar 2011

Wenn man Lösungen mit FileMaker Go auf iPad und iPhone entwickelt, wird man zwangsläufig mit der Fragestellung konfrontiert, wie man auf die wechselnde Bildschirmorientierung der Devices angemessen reagieren kann. Je nachdem, ob das Gerät im Hochformat oder Querformat gehalten wird, kann die für die Bildschirminhalte zur Verfügung stehende Auflösung variieren.

Dazu gibt es zunächst 2 Methoden, um die Formatierung von Objekten automatisch beim Orientierungswechsel anzupassen:

1. Im Layoutmodus mit der Objekt-Infopalette an den gewünschten Objekten die Verankerungspunkte rechts und unten aktivieren. Dadurch wird die Objektgröße von Feldern o.ä. automatisch an die zur Verfügung stehende Bildschirmgröße angepasst. Dies funktioniert auch beim Wechsel der Bildschirmausrichtung auf dem selben Layout auf den iOS-Devices.

2. Mit bedingter Formatierung und der Formel “Get ( WindowContentWidth ) > 480″ kann man z.B. die Textgröße für iPhone-Layouts automatisch anpassen, um die Lesbarkeit zu vergrößern.

Soweit so gut – was tut man nun aber, wenn man auch Inhalte abhängig von der Layoutausrichtung automatisch anpassen möchte?

Dazu werden in der beigefügten Demo-Datei 2 Techniken vorgestellt:

Über bedingte CSS-Formatierungen im WebViewer werden je nach Bildschirmorientierung automatisch selektive Inhalte angezeigt. Dazu wird Gebrauch von einem speziellen Selektor “orientation:” gemacht, welcher von den aktuellen WebKit-Versionen für diese Zwecke unterstützt wird.
Weiterführende Infos zu diesem Thema finden sich unter den folgenden Links:

Mit FileMaker-Bordmitteln lässt sich dieses Verhalten ebenfalls ausnutzen. Dazu dient die m.E. viel zu wenig beachtete Funktion “LiesLayoutobjektAttribut”. Wer einmal in der FileMaker-Hilfe die zugehörigen Erläuterungen liest, wird schnell das Potential dieser Funktion erkennen!

Mit Hilfe eines mit Ankerpunkten auf dem Layout platzierten Objekt sowie einer entsprechenden Formel lässt sich sehr einfach und direkt die Fenster- bzw. Bildschirmorientierung auf iPad/iPhone bestimmen. Dies funktioniert unter FileMaker Pro sogar “on the fly”, d.h. während man noch das Fenster mit dem Resize-Anfasser verändert, werden im FileMaker-Fenster bereits die geänderten Inhalte angezeigt.

Schritt 1: Ein Objekt (z.B. einfach ein Rechteck) wird flächendeckend auf dem Layout platziert. Dann werden in der Info-Palette die folgenden Einstellungen für das Objekt gemacht:

Der Objektname muss vergeben werden (hier der Buchstabe “o”), damit die Formel in Schritt 2 anschließend auf das Objekt zugreifen kann.

Die Ankerpunkte werden für alle vier Seiten gesetzt, damit sich das Objekt automatisch an die Layout-/Fenstergröße anpasst.

Schritt 2: Über eine Formel wird die Objektgröße – Breite und Höhe – abgefragt. Mit dem Vergleich Breite > Höhe wird entschieden, ob als Ergebnis Querformat oder Hochformat angezeigt werden soll:

FileMaker Formelfeld

Nun können anhand des berechneten Wertes weitere Aktionen erfolgen. In der Beispieldatei greift optional ein aktivierter OnTimer-Scripttrigger auf das Ergebnis zu und präsentiert nach jedem Orientierungswechsel des Layouts eine Meldung. Natürlich sind auch subtilere Aktionen denkbar, wie das Anpassen bedingter Formatierungen oder Verstecken/Anzeigen von Objekten auf dem Layout mittels Portaltrick o.ä.

Die beiden hier beschriebenen Verfahren können mit der beigefügten Demo-Datei ausprobiert werden – siehe nachfolgender Link:

LayoutOrientierung.fp7
Download der Demodatei (70 KBytes)

FileMaker Datenbank-Entwicklung für iPhone + iPad

06. November 2010

Hier die Vortragsfolien meiner Präsentation vom BarCamp Braunschweig am 6.11.2010 als PDF-Datei zum Download.

Im PDF enthalten ist eine kleine Sammlung von Links für den Einstieg ins Thema…

FileMaker Vortrag (PDF 0,9 MBytes)

Tipp gegen unverschämte Roaming-Gebühren im Ausland: Trekstor mobiler 3G-WLAN-Router

25. August 2010

Zwar geht die EU-Kommission inzwischen gegen den Irrsinn astronomischer Roaming-Gebühren vor, jedoch sieht das in der Praxis oft noch anders aus. Zumal sich die angestrebte Deckelung der Gebühren ja hierbei wohl zunächst nur auf EU Mitgliedsstaaten auswirken wird.

Erst im Juni diesen Jahres konnte ich leidvolle Erfahrungen bei einem Aufenthalt in der Schweiz machen. Zwei Telefonate von meinem iPhone nach Deutschland und ein kurzer Internetzugriff – um die Lage zu checken, als das Flugzeug bei der Heimreise 3 Stunden lang auf dem Rollfeld fest saß – schlugen sich anschließend mit unerfreulichen 180 EUR auf der Mobilfunkrechnung nieder.

Vergangene Woche nun mußte ich geschäftlich für ein paar Tage nach Schweden. Zwar hatte ich gehört, dass die Möglichkeit bestünde, ein Zugangspaket für einzelne Länder im Datenroaming bei T-Mobile hinzuzubuchen, jedoch hatte ich mich nicht mehr rechtzeitig vor der Abreise um alle Details kümmern können.
Stattdessen stieß ich zufällig auf eine andere interessante Möglichkeit: Die Nutzung eines mobilen G3-WLAN-Routers mit einer Prepaid-Datenkarte.

TrekStor Portable WLAN HotSpot

So wird z.B. der Trekstor WLAN HotSpot Router für derzeit knapp 136 EUR angeboten. Aus reiner Neugier bestellte ich diesen als Backup-Option für den mobilen Datenzugang auf einer Messeveranstaltung in Schweden. Die schwedischen Kollegen hatten zwar im Vorfeld geeignete Surfsticks mit schwedischen Mobilfunkkarten für die Messerechner besorgt. Aber die Option, bis zu 5 Geräte auf einem Zugang per WLAN anschließen zu können erschien mit interessant genug, um dies einmal in der Praxis auszuprobieren.

Da ich zeitig vor Ort war blieb noch etwas Luft für einen kurzen Stadtbummel vor Messebeginn. Ich ging in das erstbeste Mobilfunkgeschäft in der Fußgängerzone von Helsingborg und fragte nach einer Prepaid-Datenkarte. Man bot mir eine Karte von “3Mobil” mit 1 Woche Zugang und 5 GByte Datenvolumen für 99 SEK an, was umgerechnet ca. 10 Euro entspricht. Der freundliche Herr im Geschäft kannte den mobilen Router aus eigener Erfahrung und half mir gleich noch beim Einrichten des Geräts für die erste Inbetriebnahme.

10 Minuten später konnte ich bereits mit meinem iPhone über das WLAN des mobilen Routers im Internet surfen!

Unterm Strich hat sich die Anschaffung also bereits beim ersten Einsatz voll rentiert. 4 Tage Nutzung in Schweden für pauschal 10 EUR Verbindungsgebühr sind nahezu ein Schnäppchen! Ein mitreisender Kollege zahlte 15 EUR pro Tag für die Datenoption in Schweden mit seinem iPhone-Vertrag bei T-Mobile.

In diesem Sinne kann ich die Anschaffung des Trekstor-Geräts uneingeschränkt empfehlen! Die Nutzung war relativ unkompliziert. Über ein Web-Interface lassen sich die Grundeinstellungen des Routers direkt über Safari auf dem iPhone vornehmen. Zum laden des Akkus eignet sich der USB-Ladestecker des iPhones, so dass zusätzliches Zubehör entfällt. Bis zu 5 Geräte können gleichzeitig auf das eigene WLAN zugreifen. Der Name des WLANs und das Passwort für den Zugriff lassen sich selbstverständlich nach eigenen Wünschen konfigurieren. Da man unterwegs nicht immer auf öffentliche WLAN-Zugänge (z.B. in Hotel oder Flughafen) zugreifen kann, ist der mobile Router eine höchst willkommene Ergänzung.

Bestellmöglichkeit bei amazon.de: Trekstor tragbarer WLAN HotSpot Router silber

Update: Der Trekstor Router wird inzwischen nicht mehr angeboten. Dafür gibt es zahlreiche Alternativen schon ab Preisen zwischen 30 bis 50,- EUR.

Nachtrag: eine Übersicht zu mobilen Datentarifen in Skandinavien gibt es hier:
Mobile Internet Datentarife im hohen Norden

FileMaker Demo: Magic Clock

11. August 2010

Frage an alle ambitionierten FileMaker-Entwickler:
Ist es möglich, eine Digitaluhr in FileMaker zu realisieren, die so aussieht wie ein typischer Radiowecker?

FileMaker Demo: Magic Clock

OK, werden jetzt einige sagen – ist ja kein Problem…
Na gut, erhöhen wir den Schwierigkeitsgrad etwas:
Ist es möglich, eine funktionsfähige Digitaluhr in FileMaker zu realisieren, welche komplett ohne Datensätze, Felder, Scripte, CustomFunctions, Webviewer, Plugins, etc. auskommt?

Um die Antwort vorweg zu nehmen: Ja, es geht!
Die beigefügte Demo-Datei zeigt ein Konzept, welches eine Datenanzeige ohne Felder direkt auf dem FileMaker-Layout umsetzt. Der Trick dabei ist die Verwendung von sogenannten “Platzhaltervariablen”. Dieses sind Layoutobjekte, ähnlich wie die schon früher bekannten “Merge Fields”, mit denen sich Daten direkt auf dem Layout platzieren lassen. Das besondere daran, es handelt sich hierbei nicht um die Daten aus Datenbankfeldern, sondern um Daten aus globalen Variablen.
Nun lässt sich die Idee noch weiter treiben, in dem die Inhalte des Layout-Objekts überhaupt nicht mehr aus einer Variable kommen, sondern direkt in einer Berechnungsformel der bedingten Formatierung des jeweiligen Layoutobjekts erzeugt werden.
Zum einen basiert die gezeigte Demo darauf, dass in der Berechnungsformel direkt auf die Statusfunktion Hole(SystemUhrzeit) zugegriffen wird. Zum anderen sorgt die bedingte Formatierung der Elemente dafür, dass je nach geliefertem Wert das gesamte Objekt seine Hintergrundfarbe wechselt und damit eine Darstellung im Stil einer 7-Segment-Anzeige simuliert wird.
Die gesamte Logik zum Rendern der Ziffern und zur Zerlegung der Uhrzeit auf mehrere Stellen wird dabei komplett in den Formeln zur bedingten Formatierung abgewickelt. Dadurch kommt die Lösung ohne jegliche Datensätze, Felder oder Scripte aus!

OK, nicht ganz werden einige nach Betrachtung der Demo nun sagen – es sind ja doch 2 Scripte enthalten… das stimmt zwar, allerdings dienen diese einzig dazu, einen OnTimer-Script-Trigger zu installieren, welcher 1x pro Sekunde ausgeführt wird. Dieser OnTimer-Script macht dann nichts weiter, als den Bildschirm zu aktualisieren, damit die Uhr weiterläuft. Die Demo würde aber auch ohne die beiden Scripte beim Aufrufen des Layouts immer die aktuelle Uhrzeit anzeigen.

Ein weiterer Vorteil dieses Konzepts: Die gesamte Uhr-Darstellung lässt sich ohne weiteres einfach per Copy&Paste auf ein anderes Layout in einer anderen Datenbank-Datei kopieren und behält dabei Ihr volle Funktionsfähigkeit.

Natürlich ist die Frage berechtigt, warum man zu einer Datenbank greifen soll, um die Uhrzeit darzustellen. Das können andere Tools viel besser!
Hier geht auch nicht in erster Linie um die Uhrzeit, sondern um das Konzept, wie man ohne Datenfelder innerhalb von FileMaker dynamische Inhalte auf dem Layout darstellen kann. Die Idee lässt sich prinzipiell auch für andere Zwecke abwandeln. Viel Spaß damit!

Magic Clock.fp7
Download der Demodatei (96 KBytes)

Hinweis: Die Platzhaltervariablen wurden zwar erst mit Version 11 von FileMaker Pro eingeführt. Die Demo läuft jedoch auch mit Version 10 und natürlich auch mit FileMaker Go (Datei kann direkt mit dem o.g. Link in FM GO auf dem iPhone oder iPad geladen werden)