

Let’s switch to our editor and write some code. If you have trouble, here’s a pre-built package provided by Actual Technologies. Watch out: when you compile it, you need to link it with the iODBC libraries instead of the unixODBC libraries. Either install it via pip install pyodbc or build it yourself. To connect to our FileMaker database we need the open source Python module pyodbc. We give it a name, set the host (in our case localhost) and choose the database we want to connect to (before finishing the wizard, click on “Test” to verify the connection is OK). The process of configuring the DSN is straight forward. Click on “Add” in either the User DSN or System DSN section and select FileMaker ODBC as the driver. In the ODBC Manager we can now create our data source name (DSN). For that we open the menu under File -> Sharing -> Enable ODBC/JDBC…, switch ODBC/JDBC Sharing on and then allow all users or the users of the privilege set that we have created in the previous step. It is important that we check the fmxdbc extended privilege for the chosen privilege set. Create a new user account (we will use that for our connection string later on) in FileMaker and assign it a privilege set (if you’re just testing, choose the to prevent access rights issues). Now that the driver is installed we need to prepare the actual FileMaker file for being accessed via ODBC. After a successful installation, we should be able to see it in our ODBC Manager. FileMaker Pro 15 Advanced/Extras/xDBC/ODBC Client Driver Installer/FileMaker ODBC.pkg

To connect to FileMaker via ODBC we need the FileMaker ODBC driver. ODBC Manager/Administrator (for convenience).

So what to do when you want to work with FileMaker data but still run your algorithms in python? This article helps you setup an ODBC connection, read the data from a FileMaker data source and transform it into a Pandas DataFrame. Analyzing that data or running machine learning algorithms on it is often impractical to do in FileMaker itself due to the lack of available modules, data structures as well as for performance considerations (although it can be a fun exercise, as constraints make you creative :-)).

I wrote a Python wrapper to make it easier: python-fmrestĪ lot of my clients have a substantial amount of their data in FileMaker databases. You may also be interested in accessing your FileMaker database via the new Data API.
