MySQL UND Filemaker Pro?

7

Ich habe einen Kunden, der Filemaker für ein paar Dinge in seinem Büro nutzen möchte und vielleicht möchte ich eine Web-App erstellen.

Das letzte Mal, dass ich filmte, dachte oder auch nur davon hörte, war Filemaker vor etwa zehn Jahren, und ich glaube mich zu erinnern, dass ich es nicht als Backend einer anspruchsvollen Web-App verwenden möchte Ich denke daran, zu versuchen, sie auf MySQL zu verkaufen.

Wird ihre Filemaker-Datenbank jedoch mit MySQL kommunizieren? Irgendeine Idee, wie man sie am besten von Filemaker herunterspricht?

    
Eli 24.03.2009, 21:09
quelle

3 Antworten

9

Sie können es schwer haben, sie aus FileMaker zu rekrutieren, weil es eigentlich ein ziemlich cleveres Werkzeug für die Erstellung kleiner, hausinterner Datenbankanwendungen war und es eine sehr treue Benutzerbasis hatte. Aber Sie haben recht - es ist kein gutes Werkzeug, um eine Webanwendung zu erstellen.

Ich hatte ein ähnliches Problem mit einem Client, der immer noch eine benutzerdefinierte dBase IV-Anwendung verwendet. Glücklicherweise hat das CPAN-Archiv von Perl Module zum Reden mit allem . Also schrieb ich ein Skript, das jede Nacht die gesamte dBase-IV-Datenbank exportierte und als Satz von schreibgeschützten Tabellen in MySQL hochlud.

Leider musste MySQL 30 Minuten jede Nacht heruntergefahren werden. (Es war eine große Datenbank, und wir mussten den freien Text in HTML umwandeln.) Also wechselten wir zu PostgreSQL und führten das gesamte Datenbank-Update als eine einzige Transaktion durch.

Aber was ist, wenn Sie Lese-Schreib-Zugriff auf die FileMaker-Datenbank benötigen? In diesem Fall haben Sie mehrere Möglichkeiten, die meisten davon sind schlecht:

  1. Erstellen Sie ein bidirektionales Synchronisationstool .
  2. Entfernen Sie FileMaker vollständig. Wenn die FileMaker-Datenbanken des Kunden trivial sind, kann dies relativ einfach sein. Ich würde damit beginnen, einen schnellen und verdorbenen Klon ihrer wichtigsten Datenbanken zu schreiben und sie in einem Webbrowser zu demonstrieren.
  3. Der Client wird möglicherweise am besten von einer FileMaker-basierten Webanwendung bedient. Wenn ja, verweisen Sie sie an Google .

Aber wie verkaufen Sie den Kunden nach einer bestimmten Wahl? Es ist wahrscheinlich am besten, die Kosten und den Nutzen jeder Wahl darzustellen und den Kunden entscheiden zu lassen, welches für sein Geschäft am besten ist. Sie könnten den Job verlieren, aber Sie werden einen guten Ruf für ehrliche Beratung haben, und Sie werden nicht in ein Projekt involviert, das schlecht zu Ihrem Kunden passt.

    
emk 24.03.2009, 22:28
quelle
8

Wir entwickeln Lösungen mit FileMaker und PHP / MySQL. Unsere Empfehlung ist, die Web-App in einer Web-App-optimierten Technologie wie MySQL zu betreiben.

Nachdem das gesagt wurde, hat FileMaker eine solide PHP-API. Wenn die Web-App relativ leichte Anforderungen hat (z. B. im eigenen Haus), dann nutzen Sie das und sparen Sie sich die Mühe der Synchronisation.

Die ESS-Technologie von FileMaker ermöglicht es FileMaker, eine SQL-Datenbank als Backend-Datenquelle zu verwenden, die Ihnen zwei Optionen bietet:

  1. Verwenden Sie ESS als eine gute Möglichkeit, um direkt in FileMaker zu synchronisieren - auf diese Weise haben Sie eine "native" Datenquelle, mit der Sie innerhalb der FileMaker-Lösung arbeiten können.

  2. Verwenden Sie ESS, damit FileMaker als Berichts- / Data Mining- / Casual-Abfrage- und Bearbeitungswerkzeug direkt in den MySQL-Tabellen verwendet werden kann - das funktioniert wunderbar.

Wir haben festgestellt, dass die Entwicklung einer ausgefeilten Anwendung in FileMaker mit ESS / MySQL-Backend sehr schwierig ist. Ob Sie nun 1 oder 2 von oben auswählen, hängt davon ab, wie hoch und anspruchsvoll die Verwendung von FileMaker ist.

Ansonsten hat SyncDek einen guten Ruf als Drittanbieter-Lösung für die Automatisierung der Synchronisierung.

    
DFCraig 15.04.2009 13:05
quelle
5

Ich habe ähnliche Probleme angegangen und ein paar Lösungen gefunden, die emk nicht erwähnt hat ...

  1. FileMaker kann eine Verbindung zu externen SQL-Datenquellen (ESS) herstellen, sodass Sie ODBC verwenden können, um eine Verbindung zu einer MySQL-Datenbank (oder einer anderen Datenbank) herzustellen und Daten gemeinsam zu nutzen. Weitere Informationen finden Sie hier . Wir haben es ausprobiert und fanden es ziemlich langsam, um ehrlich zu sein
  2. Syncdek ist ein Produkt, das angeblich Datenreplikation und Datenübertragung zwischen Filemaker, MySQL und anderen strukturierten Quellen ermöglicht.
  3. Es ist möglich, Filemakers Instant Web Publishing als Web-Service zu verwenden, den Ihre App dann pushen kann und Daten durchziehen. Wir haben dafür ein paar Wrapper in python und php
  4. Sie können einen Trigger in die FileMaker-Datenbank setzen, so dass Sie bei jeder Änderung eines Datensatzes (oder eines Teils eines Datensatzes, an dem Sie interessiert sind) einen Webdienst aufrufen können, der eine MySQL- oder memcached-Version dieser Daten aktualisiert kann zugreifen.

Ich fand, dass Leute FileMaker mögen, weil es ihnen eine sehr visuelle Schnittstelle zu ihren Daten gibt - es ist sehr einfach, ziemlich große in sich abgeschlossene Anwendungen ohne zu viel Entwicklungswissen zu machen. Wenn es jedoch um die Zusammenarbeit mit vielen Benutzern oder um die Präsentation dieser Daten in einem anderen Format als der FileMaker-Anwendung geht, war die Leistung ein echtes Problem.

    
Mark Streatfield 25.03.2009 09:08
quelle