Vorsicht vor FileMaker-16-Neuerungen bei bestehenden Lösungen

filemaker-pro-16-advancedDie neue Version FileMaker 16 bietet eine Menge großartiger neuer Funktionen. Overlay-Fenster im Karten-Design, Kopieren von Wertelisten, neue Funktionen, eine REST API Schnittstelle und viele weitere neue Möglichkeiten.

Entwickler und Nutzer bestehender Lösungen sollten aufgrund der vielen Neuerungen vor einem Update prüfen, ob alle Funktionen wirklich wunschgemäß funktionieren. Das beinhaltet im besonderen zu prüfen, ob alle Layouts noch wie gehabt dargestellt werden. In FileMaker 16 wurden Scrollbalken entfernt, so daß Fenster etwas kleiner sind oder ggf. mehr Inhalte anzeigen. In der neuen Version wurde der Zoom-Kontrollbereich entfernt – sollten Sie diesen einsetzen, müssen Sie ggf. einen eigenen Zoom-Kontrollbereich integrieren. Einige Dinge werden mit FileMaker 16 auf Layouts anders dargestellt als mit FileMaker 15.

FileMaker Pro 16 Client kann freigegebene Datenbanken zerstören

Update am 2. September 2017: Unter bestimmten Umständen kann ein FileMaker Pro 16 Client FileMaker-Datenbanken zerstören, die auf einem FileMaker Server 15 oder 16 freigegeben werden. Dieser Fehler wurde von FileMaker bereits getestet und bestätigt. In der FileMaker-Community existiert ein entsprechender Beitrag zum Problem.

Dieses Problem kann auftreten, wenn eine Datenbank ausgeblendet (ohne Fenster) geöffnet wird, währenddessen die Verbindung verloren geht und daraufhin ein Reconnect stattfindet. Die Datenbank kann daraufhin gelöschte Scripts und korrupte Berechtigungen enthalten und ist nicht wiederherstellbar.

  • Mehrdateienlösung, eine oder mehrere Dateien „hidden“ geöffnet, manueller Reconnect nach Verbindungsabbruch: Fehler tritt auf.
  • Client nutzt Wi-Fi mit aktiviertem Auto-Reconnect unter obigen Bedingungen: Fehler tritt auf.
  • Wurden die Dateien versteckt („hidden“) geöffnet, angezeigt und wieder versteckt: Fehler tritt nicht auf.
  • Wenn keine der versteckten Dateien Scripts enthält, tritt der Fehler nicht auf.
  • Wenn kein Reconnect durchgeführt wird, tritt der Fehler nicht auf.

Tipp: Wenn Sie FileMaker Pro 16 als Client an einem FileMaker Server einsetzen, empfehlen wir, häufiger Backups zu erstellen und die Historisierung von Backups zu verlängern

Als Workaround wird empfohlen, grundsätzlich keine Datenbanken versteckt („hidden“) oder mit ausgeblendeten Fenstern zu öffnen. Es sollte außerdem vermieden werden, nach einem Verbindungsabbruch einen Reconnect auszuführen. Dies ist jedoch u.U. nicht immer möglich, weil FileMaker bei Verbindungsabbrüchen automatisch versucht, die Verbindung wiederherzustellen. Für dieses Problem existiert auch ein Thema im deutschsprachigen Forum des FileMaker Magazins.

Update auf FileMaker 16.0.2 veröffentlicht

Am 11. Juli 2017 hat FileMaker ein Update auf Version 16.0.2 für FileMaker Pro (Advanced) und FileMaker Server veröffentlicht. In der neuen Version wurden folgende Probleme behoben:

  • Nach dem Ausführen des Scriptschritts „Gehe zu Objekt“ an einem leeren Ausschnitt, der die Erstellung von Datensätzen nicht erlaubt, wurde der Fokus nicht auf den Ausschnitt gesetzt und der Scriptschritt gab den Fehlercode 101 („Datensatz fehlt“) zurück.
  • Wenn ein Datensatz geöffnet und unverändert wieder geschlossen wurde, erhöhte sich die interne Datensatzänderungszahl, die von der Funktion Hole ( DatensatzÄnderungenAnzahl ) zurückgegeben wurde.
  • Die Funktion CryptAuthCode gab falsche Ergebnisse für kodierte Texteingaben zurück.
  • Die Funktion JSONGetElement gab JSONBoolean- und JSONNumber-Ergebnisse als Text statt einer Zahl zurück.
  • Die Funktionen JSONGetElement und JSONListValues gaben das falsche Dezimaltrennzeichen für kommabasierte Gebietsschemas zurück.
  • Externe Scriptschritte evaluierten berechnete Werte für Wiederholungen nicht korrekt.
  • Der Scriptschritt „Variable setzen“ legte große Wiederholungswerte nicht korrekt fest.
  • Die Performance der Funktionen SortValues und UniqueValues wurde verbessert.
  • Unter bestimmten Umständen zeigten ESS-basierte Tabellen falsche Datensätze an.
  • Windows: Das Ziehen eines PNG-Bilds zwischen Containerfeldern funktionierte nicht richtig.
  • macOS: Der Script-Debugger änderte beim schrittweisen Durchgehen eines Scripts die Scrollposition und zeigte den aktiven Scriptschritt am unteren Rand des Anzeigebereichs.

Windows-Benutzeroberfläche ohne übergreifendes Fenster

Eine der größten Neuerungen in FileMaker 16 ist die Benutzeroberfläche unter Windows ohne übergreifendes Fenster. Dies sorgt vor allem beim Betrieb mit mehreren Bildschirmen für ein deutlich verbessertes Nutzererlebnis, kann bei bestehenden Lösungen aber zu Problemen führen.

FileMaker 16 unter Windows

Möglicherweise könnten einige Scripts nicht mehr funktionieren und müssen für diese Situation angepaßt werden. Die Menüleiste sollte mindestens in einem Fenster aktiv sein, denn wenn die Menüleiste in allen Fenstern ausgeblendet wurde, gibt es keinen Weg mehr sie zu nutzen.

Änderungen im FileMaker-Core

FileMaker 16 enthält einige interne Änderungen. WebViewer nutzen eine neue WebKit-Version auf dem Mac mit einer veränderten API. Christian Schmitz, Entwickler des MBS FileMaker Plugins, berichtet davon, daß alle Plugin-Funktionen für den WebViewer mit FileMaker 16 nicht mehr funktioniert haben. Auch wenn zwischenzeitlich fast alle Funktionen wieder zur Verfügung stehen, fehlen nach wie vor einige wichtige Dinge – beispielsweise gibt es noch ein Problem beim Drucken mit dem WKWebView-Objekt. Vor diesem Problem stehen auch einige Cocoa-Programmierer. Steigen Sie besser noch nicht auf FileMaker 16 um, wenn Ihre Lösung WebViewer-Inhalte drucken oder als PDF ausgeben soll.

Die fmp-URL-Funktion besitzt ab sofort eine neue Einstellung zur Berechtigung. Wenn Ihre Lösung fmp-URL-Funktionen nutzt, müssen Sie diese Berechtigung aktivieren, damit diese Funktion auch in FileMaker-16 zur Verfügung steht.

FileMaker 16 bietet externe Scriptschritte, die in Plugins definiert werden können. Auch wenn es sich dabei um eine sehr interessante Funktion handelt, wird diese zur Zeit noch nicht in das MBS FileMaker Plugin integriert, da das Plugin dann nicht mehr abwärtskompatibel ist und nicht mehr mit FileMaker 15 oder älter funktionieren würde. Der Scriptschritt würde in älteren Versionen als fehlend angezeigt, und nur ein Datenbank-Design-Report würde die ID des fehlenden Plugins anzeigen.

Aktualisierte Nutzungsbedingungen für FBA und VLA

Wenn Sie FBA-Mitglied sind (FileMaker Business Alliance) oder am VLA-Programm (Volume Licensing Agreement) von FileMaker teilnehmen, beachten Sie bitte die geänderten Nutzungsbedingungen. FBA-Mitglieder aus den USA benötigen beispielsweise ab sofort eine allgemeine Haftpflichtversicherung. Auch die Nutzungsbedingungen der im FBA-Programm enthaltenen Lizenz von FileMaker Pro Advanced haben sich geändert.

Alles in allem ist das Upgrade auf FileMaker 16 ein großer Schritt vorwärts für FileMaker und bietet eine Vielzahl neuer Funktionen, enthält hunderte von Fehlerkorrekturen und wird ganz sicher beim Wachstum der FileMaker-Gemeinschaft helfen.

Übersetzt mit freundlicher Genehmigung von Monkeybread Software.

Vorsicht beim Löschen von Portaldatensätzen

In einem Tech-Dokument teilt FileMaker mit, daß die Funktion „Gehe zu Objekt“ in FileMaker 16 anders funktioniert als in vorherigen Versionen. Beim scriptgesteuerten Löschen von Portaldatensätzen kann dies unter bestimmten Umständen zu Datenverlust führen. Wenn ein leeres Portal, dessen Beziehung keine Erstellung von Datensätzen erlaubt, das Ziel eines „Gehe zu Objekt“-Scriptschrittes ist, liefert der Scriptschritt den Fehlercode 101 („Datensatz existiert nicht“) zurück. Diese Änderung kann unter folgenden Bedingungen zu Datenverlust führen:

Ein Script zum Ändern oder Löschen von Portalzeilen enthält keine Fehlerbehandlung zum Sicherstellen, daß das Portal aktiv ist

  • Auf dem aktuellen Layout befinden sich mehrere Portale
  • Das erste Portal in der Erstellungsreihenfolge enthält Datensätze
  • Ein anderes Portal auf dem aktuellen Layout enthält keine Datensätze
  • „Erstellung von Datensätzen über diese Beziehung erlauben“ ist für das Portal ohne Datensätze deaktiviert

Beispiel-Szenario

Auf einem Layout befinden sich zwei Portale, „Portal A“ mit Datensätzen und „Portal B“ ohne Datensätze. Eine Schaltfläche auf dem Layout führt folgendes Script aus:

Gehe zu Objekt [Name: "Portal B"]

Gehe zu Ausschnittreihe [Gesamten Inhalt auswählen; Erster]

Ausschnittreihe löschen [ohne Dialogfeld]

In FileMaker 15 und früheren Versionen liefert „Gehe zu Objekt“ nach Auswahl des leeren Portals B keinen Fehler zurück, und darauf folgende Befehle werden nicht mehr ausgeführt. In FileMaker 16 liefert der Befehl [Gehe zu Objekt] den Fehler 101 zurück. Die darauf folgenden Befehle [Gehe zu Ausschnittreihe] und [Ausschnittreihe löschen] führt FileMaker daraufhin im jeweils nächsten Portal aus, in dem Datensätze vorhanden sind. Ohne Fehlerbehandlung im Script würde es also im Portal A (mit Datensätzen) zu Datenverlust führen, weil dann im Portal A der erste Datensatz gelöscht wird. Bei diesem Szenario muß also eine Fehlerbehandlung eingefügt werden:

Fehleraufzeichnung setzen [Ein]

Gehe zu Objekt [Name: "Portal B"]

Wenn [ Hole(LetzteFehlernummer ≠ 0) ]

   Aktuelles Script verlassen [ Hole(LetzteFehlernummer) ]

Sonst

   Gehe zu Ausschnittreihe [Gesamten Inhalt auswählen; Erster]

   Wenn [ Hole(LetzteFehlernummer) = 0 UND Hole(AktivesLayoutobjektName) = "Portal B" ]

      Ausschnittreihe löschen [ohne Dialogfeld]

   Ende (Wenn)

Ende (Wenn)

In diesem Beispiel wurde eine Fehlerbehandlung eingefügt, die zunächst prüft, ob ein Fehler aufgetreten ist. Wenn ja, wird das Script verlassen (Portal leer). Daraufhin wird überprüft, ob wirklich das Portal B aktiv ist. Wenn ja, wird der Datensatz im Portal gelöscht. FileMaker empfiehlt dringend, Scripte auf diese Konstrukte zu überprüfen und durch eine Fehlerbehandlung zu erweitern.

Funktion „Fenster anpassen“ in FileMaker Runtimes unter Windows

Im Forum des FileMaker Magazins ist bekannt geworden, daß die Funktion „Fenster anpassen [Alles anzeigen]“ in FileMaker 16 Runtime-Lösungen unter Windows Probleme verursachen kann. Die Nutzung dieses Befehls kann in einer FileMaker 16 Runtime-Lösung unter Windows reproduzierbar Abstürze verursachen oder den Start der Runtime verhindern mit der Fehlermeldung „FileMaker Pro Runtime funktioniert nicht mehr“. Dieses Problem tritt nur in einer Runtime-Lösung unter Windows auf, jedoch nicht in FileMaker Pro 16 unter Windows.

 

Diesen Beitrag bewerten:

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne (2 Stimmen, Durchschnitt: 4,50 von 5)
Loading...

Über den Autor

Markus Schall
Entwicklung von FileMaker-Datenbanken seit 1994, Modifikation und Erweiterung von FileMaker-Lösungen, Konvertierung von FileMaker-Datenbanken von .fm, .fp3, .fp5 (FileMaker 2-6) oder .fp7 (FileMaker 7-11) zu .fmp12 (FileMaker 12-16), Schnittstellen zu Drittsystemen wie Onlineshops, CMS oder andere Datenbanken. Entwicklung individueller FileMaker-Datenbanksysteme auf Basis des gFM-Business-Frameworks mit persönlicher Beratung aus Oldenburg. Betreiber des Online-Fachportals goFileMaker.de, Entwickler des CRM- und Warenwirtschaftssystems gFM-Business. Mitglied in der FileMaker Business Alliance, FileMaker Developers Subscription und FMM Experte. Gewinner eines FMM Award 2011, vergeben durch das FileMaker Magazin.

Schreiben Sie einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.