I’ve often looked at FileMaker’s ‘best practices’ on and off over the years. And have settled on a hybrid system that works for me. Especially when I take over a system that’s up and running and designed by someone else, then I can easily recognise my work.

TABLES
• I always spell them in capitals. And if I use 2 words join them together with an underscore.

TABLE OCCURRENCES/RELATIONSHIP DIAGRAM
• I put all the base tables on the left, which all layouts are based on (and only ever based on)
• I then use the anchor/buoy method to pull in related data. I never did get the hang of selector/connector ;(
• I label the table the t/o is based upon in CAPS and the table the layout is based upon (and interim tables) in lowercase

• The whole point of doing it this way, is that when you are on any layout you can very easily see the related data, via a relevant table path, all listed alphabetically and logically. So you always pick the right t/o
• And, what’s better, it works in every context too. Shame about the misspelling of propertry!

LAYOUTS
• I number all my layouts.
• It makes life so much easier, especially when talking with a user over the phone.
– ‘The number field isn’t big enough to show the figure’! they say. To which I ask ‘Which layout are you on?’
– ‘The one that shows the amounts…’ You can then imagine the game of how many questions can I ask before I’m on the same layout? To which the answer is always not enough.

So I’ve stopped playing this game by numbering all my layouts in the top left (eg 6) and calling them ‘6 whatever…’. I then immediately know where they are, and what they are looking at. I also don’t have to remember the layout name or syntax when searching for it because all I have to remember is a number.

SCRIPTS
• Likewise I number them based upon the layout they are on ie layout 6 script number 4 is ‘6.4 followed by what ever dribble I want to write’. The dribble doesn’t matter as it’s the ‘6.4’ that’s unique.
• It makes finding them and not confusing them with others so much better.
• There’s also a bit of extra evolved extra thinking here.
– PSOS (perform script on server) always gets put at the top of the list (easier to find in the server console)
– ‘n…’ are generic navigational script ie go to layout 1. If necessary I’ll enter a script parameter with an if step. ie if coming from this button go to the layout but do THIS find…
– ‘F… is again generic based upon finds