Geist Interactive Wins Award at FileMaker DevCon 2015

Todd Geist, founder of Geist Interactive, was awarded the FBA Excellence Award for Development Leadership at the 2015 FileMaker Developer’s conference.  The award was given out for the work Todd did on evangelizing the Selector Connector Design Pattern.

I am honored to receive this award. Collaboration and sharing are an important part of building a thriving ecosystem to support the FileMaker Platform. I wish to thank Jason Young ( @terapicodata ) of SeedCode for the collaboration that lead to our codifying Selector Connector. In truth he deserves to share this award with me, for he contributed just as much as I did. I doubt Selector Connector would have become so popular with out him.

 – Todd Geist

This marks the second year in a row that Geist Interactive received an FBA Excellence Award.  Last year, Barcode Creator received the Commercial Product of the Year Award.

GoSign v3.5 Supports Scriptel Signature Pads

We are excited to announce the release of GoSign 3.5 with support for Scriptel Signature Pads. Scriptel has a complete line of signature capture devices that work on both Macs and PCs. With GoSign, these devices can now easily connect to any FileMaker Pro 12 or greater solution. This makes GoSign and Scriptel the perfect combination for FileMaker “point of sale” type solutions, or any other scenario where you need to capture signatures into your FileMaker solution.

Watch this video to see how easy it is.

Read more

Barcode Creator Updated to v1.2.0

The award winning Barcode Creator has been updated to v1.2.  This new version can generate QR codes faster than previous versions, and performs a more compact encoding of Japanese characters.  This minor update is recommended for users who are using QR codes or Japanese characters.

Its a free upgrade for all current users, who can log into their account at and download it today. If you didn’t get an account when you purchased, send an email to and we will get the new version to you. Please include the original email that was used to make the purchase.

Barcode Creator is the easiest way to create barcodes with FileMaker. It doesn’t need plugins, fonts, or servers. It works on the entire FileMaker platform. It supports FileMaker versions 12, 13 and 14.  It takes just a couple of minutes to install.

FileMaker Account

FileMaker QuickBooks Connector – fmQBO Released!

We are excited to finally and officially release fmQBO, our FileMaker to QuickBooks Online Connector.  You can use fmQBO to connect to QuickBooks Online with FileMaker Scripts.  It runs on Macs & PCs.  It also includes a free developer tool that actually writes some of the FileMaker Scripts for you. We worked hard to make fmQBO the most powerful and flexible FileMaker QuickBooks Online connection utility available.

Read more

Barcode Creator – Filemaker QR Codes

We are very excited to release Barcode Creator v1.1.  Last year, Barcode Creator won Commercial Product of the Year. But we didn’t stop there. Today it gets three new symbologies, including QR Code. It also gets a nice image rendering speed boost. Barcode Creator v1.1 is available today on our web store. Read more

One Spark Academy 2014

As many of you know, my wife and I founded a non profit learning center a few years back called One Spark Academy.  I wanted to update our friends, followers and supporters on the progress we have made in the 4 years since we got started, and to ask those of you have not already donated to our year-end campaign if you would consider doing so.  We are so close to our goal of raising $10,000, and you could be the one to put us over the top.

Read more

BaseElements Plugin gets JavaScript

Over the last couple of months, I have been working with Nick Orr at Goya to get a couple of things added to the BaseElements plugin, the biggest one being the ability to execute JavaScript without a web viewer.  Last week, Nick released version 3.0.0. with experimental support for doing just that. So thanks to Nick and Mark Banks for getting it out there. Its a great start!

Read more

filemaker quickbooks mac

FileMaker QuickBooks Mac Integration

We love FileMaker. We love QuickBooks Online. We also love Macs, and that proved to be a problem. The existing solutions for connecting FileMaker to Quickbooks Online required a Windows PC. The combination of FileMaker QuickBooks Mac was a problem. We decided to solve it. Read more

FileMaker Session Model Video

(Thanks to Naomi Fujimoto, you can read this post in Japanese)

Way back before FileMaker 7, Colleen Hammersly from Data Waves, and Wendy King came up with something called the “FileMaker Separation Model”. Part of that model involved only displaying data through relationships from a central file/table.  This pattern came to be called the “Session Model”, and this video is an explanation of its key concepts and its pros and cons.

Tight Control

Since everything is displayed through relationships there is no way for the user to see or edit records that aren’t explicitly made available by the developer.  Typically the developer closes and locks the status area, and puts everything under script control.  The user never sees find mode or list view.  Although you can assert tight control without it, the FileMaker Session Model is tightly controlled by default.

No Obvious Base Table

Every Layout in a FileMaker system needs a base Table Occurrence (TO).  If you are building a Layout to view “Contacts” you can build it right on a Contacts TO.  But what if you are building a “Home” screen or a “Dashboard”?  What TO do you base it on?  The FileMaker Session Model provides a special utility table called “Session,” for this purpose.  The Session TO  becomes the base for all the layouts you need that don’t have an obvious one. It turns out to be great for “Home” and “Dashboard” kinds of views, because often the data for these types of screens comes from many different tables.

Slide Panels and Other UI Goodies

Sometimes you want to switch from a Contact to an Invoice and use the cool slide panel for the effect.  If both Contact and Invoice can be displayed on the same layout, this is easy.  You just switch panels and select the record you want to display by creating or activating a relationship to it.

Why not use the FileMaker Session Model?

It’s not perfect. You don’t get List View, or Find Mode.  A more subtle impact is that your FileMaker Script Triggers have less focus.  They are fired based on the Session record and not the related record you might want them to be responding to.  I typically only build a part of my interfaces this way for these reasons.

Let’s Get Technical

The Session Record has one main job. It is to make sure that it can’t get locked by other users or browser tabs in the case of WebDirect.  It does this by having a unique record for each connection that is made to the Database. I say “connection” because if you just do it based on account name you’ll have problems with WebDirect, since every browser Tab is a new Database Connection.  So the same user can open up many separate connections to the database. And you don’t want them to share the same record or they can lock each other out. Here is what a FileMaker Session Model graph might look like. ( click on  the images to zoom )

FileMaker Session Model

FileMaker Session Model Relationship Graph. Note the use of relationships to display all records

It can also be used to select the records displayed through relationships, as we are doing here, by setting key fields in the table. But it doesn’t have to.  You can use it along with the SELECTOR model, if you want to be modular. And really! who doesn’t want to be more “mod”?  Here is what that looks like. ( click on  the images to zoom )

FileMaker Session Model

Session Model used with the Selector Model

In this case, the SELECTOR model handles selecting records for display and SESSION handles making sure that a record is available for each connection to the DB to prevent record locking.

I prefer this way of keeping things as modular as possible. It fits with the philosophy.

Example Files

Both the files I used in the video are available for download, here.

Thanks for watching. 🙂

FileMaker Selector Connector Video

Updated 11/24/2014 ( see below for whats changed )

Update 2/24/15 –  Jason Young wrote a great blog post about using Selector Connector with Seedcode Complete.

Wasn’t this called Universal Context?

This is a video of what was the Universal Context presentation I gave at Pause on Error last month.  The name however, had to go. It turns out that a “universal context” is only one of the features that kind of falls out of this graph architecture.  So we busted one model into two and came up with a “Selector Model” and a “Connector Model”.  I hope to put up something more definitive in the future, but I wanted to get this out quickly, because many nice people asked me to. 🙂 Read more