Skip to main content


Virtual List Basics

The conceptThe basic trick behind virtual lists is the wonderful GetValue() function. GetValue() takes two parameters: A list of return-delimited values A number specifying which value in the list to get

For example say you have a field in a single record called “List of Values” and it contains the following:

When that record is selected, GetValue ( MYTABLE::List of Values ; 4 ) will return “Doorknob”.

The brilliant idea is to replace the list of values stored in a field with a list in a global variable.

The basic implementation, part oneCreate a table called VIRTUALLIST. In it, define these two fields: VALUE NUMBER: a number field Value_calc: calc field returning text value, = “GetValue ( $$VALUES; VALUENUMBER )”. Make sure that this value is an unstored calculation.

Go to the layout for the VIRTUALLIST table and create some records. Later you can create hundreds or thousands, but right now just ten will do. Use ReplaceFieldContents to po…
Recent posts

Getting out of fullscreen mode in FileMaker Pro

In version 2 of Acquittal, our criminal defense case management app, we're doing some nifty stuff with windows, and that means we're finding out that even in FileMaker Pro 15, we still don't have quite all the tools we'd like for managing windows.  One problem is how to trap for the possibility that the user has switched into fullscreen mode. The other problem is how to get out of it.

Is this window in fullscreen mode?
This one's not too hard. This calc formula seems to do the trick:

Get ( WindowHeight ) = Get ( ScreenHeight ) and
Get ( WindowWidth ) = Get ( ScreenWidth)

That will return true if the window is in fullscreen mode, false if it's not.

Why does this matter? Because there are certain things that you can't do with a window if it's in fullscreen mode. In Acquittal, for example, there are times when we want to generate a second "sidecar" window, then display the main and sidecar windows side-by-side. Can't do it if the main window …

Airtable: I'll take that data to go

Will Porter's review of Airtable is online now at Macworld:

Rucksack TeXnology clients may be very interested in Airtable. It's a relational database management system that has many advantages. It's free to get started (and possibly free to stay with). On computers, it runs in any web browser in pretty much any operating system. On smart phones, at the moment it's available only for iOS devices, but an Android app is in the works and coming soon.

How's Airtable compare to FileMaker?

FileMaker is a much more powerful tool: not just a more powerful RDBMS, but a much more powerful application development system, that is, a more powerful user-interface builder.

But surprisingly often, you don't need the user-interface tools that FileMaker provides. You just need to store data for later retrieval. In that case, Airtable may beat the pants off F…

Capturing double-tap in FileMaker Go: Difficult but not impossible

N.B. The info in this article applies only to FileMaker 13 and 14. The problems that I complain of here may disappear, indeed, I hope they will disappear, in a future maintenance update to FileMaker 14. This info is good as of 5-20-15, but if you're reading this months later, check to see if the problems haven't since been fixed.

Written a database solution in FileMaker 13 or 14 that you are deploying on iOS devices, and want to distinguish double-taps from single-taps? For example, would you like a single tap on a record in list view simply to select the record, while a double-tap selects the record and views it in form view? Me, too.

So the way you're supposed to be able to do this is pretty straightforward (although it involves a little arithmetic). FileMaker Pro provides the basic tools in a layout script trigger OnGestureTap and a function Get(TriggerGestureInfo). In layout mode, you enable the OnGestureTap script trigger for the layout, and configure it to trigger a …

More about why I like the new navigation part in FileMaker Pro 14

I myself didn't completely "get" the navigation layout part at first. In this post I want to clarify a few things about the benefits of this new feature.

The new navigation layout part in FileMaker Pro 14 and FileMaker Pro 14 Advanced differs in two significant ways from the header/footer parts we've had since forever (and which we still have in 14):

Navigation parts don't zoomNavigation parts don't scroll out of sight
Well, it's a little messier than that, in reality. Let me elaborate on the messiness of it first, since the messiness may have some impact on why navigation parts took me a day or two to "get".

First potential confusion: objects in navigation parts don't zoom, but they are not completely inflexible. If you grab the edge of the window and make the window wider (I'm not talking about zooming the content, I'm talking about actually enlarging the window) then any objects in a navigation part that are anchored to both sides …

Correction of mistake in my review of FileMaker 14

There is a significant mistake in my Macworld review of FileMaker 14, published yesterday.

I spent a fair amount of time getting to know the new navigation layout part and in the process, coming to like it quite a bit. As I said in the review, at first glance, it looks like a duplicate of the header or footer layout part, but it's not. At the end of the relevant paragraph, I wrote this little summary:
I expect that FileMaker 14 developers will soon start using the navigation part for UI widgets like buttons, and will leave headers and footers for printed reports. I thought hard about the new navigation part; but I didn't give quite enough thought to how the old layout parts will and will not be affected by the new one.

The truth is, you will still want to put column field labels (on a list view layout) in a header part, so that they zoom with the body part. (This would apply to footers as well if you put any objects down there that need to stay aligned with the fields in the b…

Chrome becomes my default browser

Just discovered quite by accident that I can now zoom text in Chrome on the Mac (version 42) by double-tapping with two fingers. I gather this may have been added a little earlier this year but I only just noticed it. Anyway, that eliminates the last reason to keep using Safari, for me, anyway.

The other major advantage of Chrome is what Chrome calls "presentation mode". This provides true full-screen browsing, that is, the ability to fill the display with the contents of a single tab without menus, the bookmark bar, the location bar or visible tabs. Safari (version 8.0.5) can't do it at all. Opera Beta can do it, but does it badly. In Opera, once you hide the location bar, you can't type Cmd-L to enter a new URL. Presentation mode doesn't mean a lot to me on my iMac's big display, but on my 11" Macbook Air, getting rid of everything but the content area really makes a difference.

I'm getting closer to my dream: a world where all my hardware comes fr…