kevin frank + associates


Custom Development
| Other Services | Portfolio | Demo Files | Anchor/Buoy

Filemaker 8-11 | Earlier Versions | User Group Presentations

FileMaker Demo Files

As of November 2010, I am no longer updating this portion of my web site. For newer demo files, and extended explanations and commentary, I encourage you to visit my blog: www.filemakerhacks.com

Below are some demonstration files that illustrate various FileMaker concepts. These files are provided on an "as is" basis (use at your own risk). Feel free to pull them apart and see how they work.

Demo Name

FM Version

Selective Modification Timestamp
added 2 Mar 2010
Have you ever wished for a modification timestamp that would only update if a user manually edited a field? -- a timestamp that would not update based on scripted actions, or non-field-based activity like creating, duplicating or importing records? This can be achieved in a variety of ways, but the technique here uses a simple auto-enter calc (courtesy of Nick Orr at BaseElements).

Zip
8 or later

Reporting in Browse Mode
This zip archive contains two demos: v1 shows how changing the sort order can automatically produce different summary reports in a table view in browse mode. The v2 demo uses a list view for summary reporting, with or without the "body" part (actually a sub-summary part in disguise), and also shows a way to perform a pseudo-search on summary quantities.

Zip
10 or later

Set and Clear Repeating Field via Lookup
If you need to quickly set or clear a bunch of field reps, check out this demo.

Zip
8 or later

Shadow Reporting
If you use The Separation Model with multiple Interface files (e.g., one for data entry and another for reporting), and you've been looking for a way to transfer a found set of records from one Interface file to another, look no further.

Zip
8 or later

Dwindling Value Lists
Useful for scheduling people or resources... the idea is that once you've picked an item from a pop-up list, that item should disappear from the pop-up list so you don't accidentally enter it a second time. Prior to FM 10, you needed to use either a button or a plug-in to update the value list properly.

Zip
10 or later

Shootout at the Checkbox Corral
Just for fun... requires FM 8 or later. Based on the same concept as the Dwindling Value Lists demo above.

Zip
8 or later

Highlight Current List Row - FM 10 version
Uses a script trigger, a variable and conditional formatting to highlight the current list row.

Zip
10 or later

Magic Invoice
Uses script triggers to update an Invoice sub-total. The benefit, of course, is that the sub-total is indexable, and therefore fast to search.

Zip
10 or later

Conditional Summary Report Headers
Co-authored with Jason DeLooze, this is a new approach to handling awkward breaks in summary reports. Requires FM 9 or later. Make sure to read the included "Read Me" PDF. 

Zip
9 or later

Highlight Current List Row - FM 9 version
Based on an Advisor Tip by Ray Cologon. A scriptless method to highlight the current list row. Uses conditional formatting, so requires FileMaker 9 (however, this technique could be applied to ;FM8 by using a calculated container field instead instead of conditional formatting).

Zip
9 or later

Classroom Averages
Have you ever wanted FileMaker to average subsummarized values? It takes a bit of a work around because FileMaker doesn't offer any obvious way to accomplish this. This demo uses the GetSummary function where necessary, and contains a number of different counts and averages.

Zip
8 or later

Sub-Totals and Separation
A number of users in various online forums have observed that when one uses the separation model, relational aggregates do not always update in a timely manner. This demo provides some work arounds.

Zip
8 or later

Counting Unique
Five methods for counting unique entries under a variety of circumstances.

Zip
8 or later

Conditional Sub-Summaries
This one makes perfect sense when you see it, but is a mouthful to try to explain. Say you have sales data, and you want to run a summary report by sales status and sales person, but for one particular status, you want to additionally summarize by sub-status. This demo, co-authored with Mark Rubenstein, shows a technique to accomplish this (cleanly) within a single summary report.

Zip
8 or later

Preserving/Restoring found sets
A simple technique for preserving and restoring found sets.

Zip
8 or later

Simple "Fast Summaries"
Based on the ground-breaking "Fast Summary" techniques of Mikhail Edoshin -- this demo shows how to very quickly generate a summary report in a text field without ever leaving browse mode.

Zip
8 or later

Auto-Format Child Data in Portal based on Parent
This demo was created in response to a challenge on one of the lists: for a given contact record, in a portal show all other records from the same state, but bold the records that are from the same county -- no scripting allowed. I don't think this would have been possible prior to FM 8, but $$ variables make it a piece of cake. Rev: 8/22/06 -- Mac-incompatabilities now resolved and  portal redraws now improved thanks to tips from Jason DeLooze & C. J. Weigand.

Zip
8 or later

Dynamic Replace
Have you ever wished you could easily transform a bunch of fields in your database without either having to do it manually or by having to "hard code" a bunch of script steps? This demo shows how a script can walk its way through all the fields on a dedicated layout, apply a desired transformation, and then stop once all the fields have been processed.

Zip
8 or later

Simple Filtered Portals
Some basic ways to filter portals, using multipredicate relationships and "theta joins" (joins where the relational operator is something other than "=").

Zip
8 or later

Household Mail Labels
It's a common problem: You have multiple contact records per household, but you don't want to send multiple pieces of mail to that household -- furthermore, you'd like all contact names to appear on the one mail label that you do generate. Here is one approach that avoids self-join relationships, and therefore is "found-set friendly."

Zip
8 or later

Linear List of Values in a Repeating Field
Two methods to accomplish this -- one using ValueListItems() and the other using a recursive custom function.

Zip
8 or later

Absolute Layout References
Wouldn't it be nice if there were some way to target a layout by its internal ID? This demo includes two custom functions -- one to get the layout ID, and one to translate it to the current layout number so your scripts can "go" to it.

Zip
8 or later

International Addressing
This demo shows an approach to dealing with the "interational addressing" conundrum -- namely, how to correctly format mail labels to be acceptable to non-U.S. post offices. Thanks to the Evaluate function, it's not as complicated as you might think.

Zip
8 or later

Repeating Lookups
Three simple, but progressively more complex, examples of things you can do with repeating fields and lookups. Thanks to Ugo Di Luca for suggesting the calculated self-join aggregate in the child table.

Zip
8 or later

My School -- courtesy of Jimmy Jones
A nice example of, among other things, a) how a single "people" table can accommodate multiple roles, and b) scripted navigation

Zip
8 or later

State-Awareness
Buttons that grey-out, and/or change text, depending on the "state" of your solution... plus a way to make it really obvious to your users when they're in Find mode.

Zip
8 or later

Contact Locator
Locate and navigate to matching records via a filtered portal... includes "clickable sortable" column headers and sort indicators, for both portal and list views.

Zip
8 or later

Flexible Naming
Two techniques to allow your users to specify which comes first in a concatenated name field: the business or the individual.

Zip
8 or later

Portal Sorting
Utilizes a number of new-to-FM7 features, including multipredicate relationships, script parameters, and a global calculation.

Zip
8 or later

Strange Arguments
Zero and/or negative numbers can be used as arguments for a number of FileMaker functions. This demo also shows how the Floor and Ceiling functions can be coerced into accepting a precision argument.

Zip
8 or later

WinControl -- app window utility for FMP/Win
Note: this utility is not being maintained... recent reports indicate it is not compatible with Vista or Windows 7.

This utility allows you to manipulate the FileMaker Pro application window (or any other application window) in the following ways: activate, size/position/center, minimize, maximize, restore, close. File is in .fp5 format, but can be easily converted to .fp7.

FMP: 5/6/7/8
Zip

 

home