FileMaker Tips

Saying Goodbye to Global Glitches

globals list in field definitions

Now that there is no longer a global field type in FileMaker 7, I find that I often forget to go to the storage tab and click the Use global storage check box. Then later I find out the hard way. Something doesn’t work and after all sorts of investigations I figure out that my global field isn’t really a global. I feel pretty silly and have wasted valuable time.

Something that helps me avoid this is naming my global fields so that they all group together. In FileMaker 6, I was happily putting an underscore in front of each of my global fields like this: _InvoiceNum. That conveniently sorted my globals to the bottom of the alphabetical sort order where my clients wouldn’t stumble over them very often. In FileMaker 7, the underscore sorts to the top, so I’ve chosen to put a zg in front of the field name like this: zg_InvoiceNum. Not pretty, but it accomplishes my purpose.

I now can periodically just go to the bottom of my table field lists as I am developing and scan through the Options column of my globals to make sure they are all set as globals. Such a scan would be a great checklist item before turning over a solution to your client. I put it on my checklist.

FileMaker Tips Migrating to FM7

FileMaker 7 Migration Tip: Use FileMaker 6 too

ToolBoxIcon_smallI should have started doing this sooner. I’ve found that the FileMaker 6 versions of files I’m migrating to 7 are really handy. I can be in the Database Design dialog of 7 and switch to FileMaker 6 and open the Define relationships dialog for the file I’m working on without disturbing my 7 dialog.

One of the chores of moving FileMaker 6 files into a single file 7 solution is fixing calculations that break in FMrobot because the relationships they are based on aren’t defined yet in 7. What you get is a commented out calculation with the FM6 relationship name. I can open up the 6 Define Relationships dialog for that named relationship and see which fields I need to connect in 7 to make my calculation work.

To save time, I’ve made screenshots of the Define Relationships dialogs in 6 so I have a list of the names of the relationships and matching fields. I widen the dialog columns first so that I can see the full relationship and field names. Then I keep those lists in one corner of my screen for reference as I work in 7, creating relationships in the database dialog. Works great.

Another help is to open up the files you are migrating in 7 and use them for reference – this is also where you’ll do your copying and pasting of layouts. So when I’m working with the Jobs table in my single-file database, I have the 7 version of the individual Jobs file open too. Looking at the simpler Relationships diagram for this single table is much easier on the eye – especially if you spend a little while organizing that diagram. I color-coded my individual file diagrams, so they were very usable for reference (this was when I thought I was going to release a multi-file 7 solution). Since the names are inherited from 6, it’s easy to see the 7 version working and then replicate that in the single-file diagram.

As you might imagine, a big 20″ screen or two screens can be an advantage here. If you’ve got the real estate, have these open:

Textedit: you’ll want a text editor handy to hold copied calculations, relationships and field names.

Preview to see your screenshots of FM6 define relationships screens

FileMaker 6 versions of the files you are migrating.

FileMaker 7 versions of the individual files you are migrating. I keep them stacked up to the side so I can open them while having my single-file 7 database open as the main event.

This set-up will make you quite efficient. If you can spare the change, Waves in Motion’s Analyzer 4 can be helpful too. More on that later.

FileMaker Tips

FileMaker 7: Printing Field Definitions

ToolBoxIcon_smallIf you’ve had trouble printing field definitions in FileMaker 7, it’s because the functionality has moved and improved. The print button is now in the field list under Define Database in the lower left corner.

The second thing to know to avoid frustration is that the Print button only prints selected fields. If one field is selected, only one field will print. If you want the full list of field definitions, just select all (Cmd-A or Cntrl-A) when in the field list and click the Print button.

You can now be selective about which field definitions you print. It’s not an all or nothing proposition anymore. Just shift-click to select a group of fields and cmd-click to select individual fields.

Now you can save trees when you print field definitions. You don’t have to print out a really long list just to see a few calculations in hard copy. Another benefit that developers will appreciate is that you can give your customer a selective list of field definitions for documentation or training purposes. That could be handy.

FileMaker Discoveries FileMaker Tips FileMaker Utilities

FileMaker 7 Custom Functions Rock

FM_Dev7_BoxI just got a big smile on my face a minute ago. I’ve been careful not to put spaces into table, field, layout and table occurrence names in building Studio Manager 7 because web publishing and other IT tools can’t handle spaces. So much for user friendly!

I’m using underscores instead of spaces. It’s readable but geeky. But sometimes I want to display something with spaces instead of the underlines. For example, I put the base Table name on each layout. Since I expect to need this ability to use spaces instead of underlines often, I decided to create a custom function for it.

You need the developer version of FileMaker 7 which I have (it’s free if you are a FileMaker Solutions Alliance member and otherwise costs an extra $200 over the basic version).

It takes about 2 seconds to create a custom function like this. You just choose File/Define–>Custom Functions and then name it, name any parameters you need and put in the calculation which in this case looks like this: Substitute ( text ; “_” ; ” ” ). I named the function subSpace.

I got the smile on my face after using my custom function to get the underscores out of the table name with this calculation: TableName = subSpace(gTable).

I forgot to mention that I had already created a Custom Function for Get(LayoutTableName). That’s where the gTable comes from.

At the most basic level, these custom functions serve as great little *Type-It-For-Me* shortcuts. I’ll be covering Custom Functions more in the future as I find really useful ones to share.

FileMaker Tips

Stretching FileMaker 7 Table Occurrences


It’s easy to run out of room on your Relationships Graph. Wouldn’t it be nice to be able to easily widen or narrow table occurrences (TOs)? You can move and resize TOs using the arrow keys. In this example, the Contact TO has been widened using Control-Shift-Right arrow. The Phone TO has been narrowed using Control-Shift-Left arrow.

You can also select the TOs with the keyboard by typing the letter of the TO in this case typing p selects the Phone TO and c selects Contact.

Moving TOs

Here I just typed p to select the Phone TO and then typed Control-Right arrow to move the Phone TO over a bit to the right and then Control-Down arrow to move it down a bit. Couldn’t be any easier! [I created these two tables for an exercise in Learn FileMaker Pro 7 by Jonathan Stars which I reviewed on August 5th.]

FileMaker Facts FileMaker Resources FileMaker Tips

New FileMaker 7 Graph Rules Video


Matt Petrowsky has done it again. He released a free one hour video on Saturday that walks you through a particularly confusing aspect of relationship creation in Filemaker 7. The video article is called Graph Rules – Four rules to remember and is available at the ISO FileMaker Magazine site.

I recommend this video for anyone who is grappling with how the relationships diagram works. If you are knowledgeable about FileMaker, you probably will get more out of this than if you are a newcomer because you have habits to break. But he’s managed to make it work for either audience by covering basic principles in the first part and then tackling a tricky *rule* later on.

Matt includes a free download with before and after file examples so you can practice and experiment with the first and doublecheck yourself with the second.

His four rules are a little hokey but effective:

1. There shalt not be any circular references. Thou must have a start and an end between table occurrences.

2. Thou shalt have as many table occurrences as needed. The key to the graph is organization.

3. From wherest thou is, if thine eyes cannot see what thouest desire, another TO is what ye may aspire.

4. Along thy relationship chain, any given TO knows of all others but only through his brother.

Right now, if you plan to do even moderately sophisticated development with FileMaker 7, you probably need all the help and repetition you can get. Take the hour. I followed along while lying on my couch with my Powerbook.