fmWorkMate, Makes FileMaker work

Website teething problems still. Downloads mostly now on GitHubContact me if you have needs or questions!

This blog has been discontinued 🧐 ... Keep up to date on MrWatson's new blog page 🤩

MrWatson's OLD Blog

MrWatson's Blog

fmCheckMate-XSLT goes open source!

Posted by Russell Watson on 27 August, 2018 at 21:10 Comments comments (1)

fmCheckMate-XSLT has just gone open source!

Download the latest version from GitHub

Get it - use it - like it - transform your work - love it!



The world's fastest and most powerful FileMaker Layout Analyser - fmCheckMate

Posted by Russell Watson on 14 October, 2017 at 1:35 Comments comments (0)

The fmCheckMate Layout Analyser finds your FileMaker layout errors - FAST!

Broken Buttons

Broken Calculations

Floating objects

Objects lost inside containers

Quoted or copied object names

Local CSS

Problem anchoring

and more

and more

and more

and more

Check it out here.

Get fmWorkMate + fmCheckMate XSLT from the downloads page

New release of fmWorkMate and fmCheckMate XSLT

Posted by Russell Watson on 13 October, 2016 at 1:50 Comments comments (0)

A Just-In-Time-Update ready for the start of the german FileMaker Conference in Salburg!

fmCheckMate Improved


  • The fmCheckMate text result is being improved with search + replace functions and search-term highlighting as in the XML editor (work in progress).
  • fmCheckMate Layout Analysis has been improved - find objects lost in sliders and tab controls.

Step by step to an indespensible tool!


FMK 2016

Check out my sessions today at the FMK 

  • 11:00 - 12:30 "Surviving the Themes and Styles Jungle” / Überleben im Design- und Stil-Dschungel
  • 14:00 - 15:30 Ein serverseitiges Script (SSS-)Framework


I wish everybody at the FMK 2016 a great experience! 



Fantastic new release of fmWorkMate makes your FileMaker work better than ever!

Posted by Russell Watson on 8 October, 2016 at 19:05 Comments comments (1)

Prettier, smarter, more useful than ever before!

After two years since the last official release, the new fmWorkMate doesn't just have a pretty face, but is packed with powerful, unique and indispensable tools to make your daily File-Making more joyful, make you more productive and make your product more polished.

Layout Analysis

The new fmCheckMate Layout Analysis function is the king of analysis tools for instant layout analysis!

Find broken field references, commented out calculations, duplicate object names, floating objects, anchoring errors, editable value lists, and much, much more!

Find more errors in layouts than you can possibly imagine - almost instantly with a copy and a paste!

What's the difference?

 The revamped fmTextDiff tool compares your code more easily and intuitively than ever.       

- Compare text or FileMaker objects directly from the clipboard
- Drop files to compare their contents automatically.
- Diff fmxmlsnippets, or analysis results directly from fmCheckMate.


...and a pile more stuff!

The Mac version is online now; I hope to get the windows version ready for my presentations at the Developer Conference in Salzburg.

Happy Making FileMaker Work!


New release of fmWorkMate & fmCheckMate XSLT

Posted by Russell Watson on 13 June, 2014 at 11:25 Comments comments (0)

This release of fmWorkMate has a whole bunch of new stuff including support for fm13 themes!


Here is a summary of the recent improvements:

2 brand new tools!


  • fmClipboardViewer - lets you browse the contents of your clipboard
  • fmTextDiff - compares two files using an online service - for those of us who don't use TextMate ;-)


fmCheckMate now supports Themes!


  • 4 new XSLT Transformations let you inspect, analyse and compare your themes.
  • The XSLT Chooser has been REALLY simplified:

  • With XSLTs categorized into AnalysisChange Transformation, it is MUCH easier to find and identify the transformation you need.
  • The object types are now named in plain english, and the function names are clearer (instead of CamelCase).
  • You can also create your own XSLT Library! (or someone you know who knows a little XSLT 1.0)

    • Just create a neighboring folder called "", 
    • add an xsl folder to it, 
    • copy an XSLT over from fmCheckMate and 
    • rename the file using the following format:


      You can see the existing xslt files for examples

    • modify the XSLT // good luck ;-)
    • Save the XSLT file
    • In fmCheckMate open the XSLT Chooser and reimport the XSLT.
    • For example:

      The file: ~/Documents/

      Would display as:    Analyse   |   Scriptstep   |   Unused variables   |



fmSyntaxColorizer has had a major overhaul, is more dynamic and now has quick-switching between palettes. Enter f: to check out the function list!

And and handfull of other small improvements:


  • fmTextConverter has a button to swap the Search and Replace fields
  • fmPluginMate (fmp12) displays the plugin data more clearly & has clearer menus and shortcut-keys
  • Simple Calculator has some new functions (UTF-conversion and (q:)oute function to convert an FM-calculation into a string)


To read about ALL the changes: please read the fmWorkMate_Changes.txt file when you download fmWorkMate

One more thing ...

All tools now have a built in online help function (at last!) - now I just have to fill out the help pages ;-)


Happy File-Making :-)




P.S. I've at last published my blog article "fmLogAnalyser - never miss another bug!" (from January) - Don't miss it!

New release of fmWorkMate

Posted by Russell Watson on 3 June, 2014 at 8:55 Comments comments (2)

A new release of (Mac version) fmWorkMate and the fmCheckMate XSLT library is available. :-)

2 new tools, and LOADS of improvements

More about it later...

New release of fmCheckMate XSLT

Posted by Russell Watson on 14 November, 2013 at 10:25 Comments comments (0)

There's a new release of the fmCheckMate XSLT Library now available on the Downloads page.

Biggest change: Transformation names have been made (a little) less cryptic.

Step by step we make our way to perfection! :)

Greets from around the globe!


fmCheckMate Ready? Get Set, Go!

Posted by Russell Watson on 13 November, 2013 at 19:45 Comments comments (1)

Getting set up and started with fmCheckMate is now super-easy-peasy with new defaults, a new settings menu, and an improved XML Editor menu.

For a start fmCheckMate now starts up in Internal XML-Editor mode, so that newcomers can get to grips straight away with their fmxmlsnippets.

And with the new XML Editor Settings menu you get a great overview of your settings - and changing them is A SIMPLE SINGLE CLICK - with your mouse or with an easy-to-remember shortcut key.

Moreover, the XML Editor menu has been revamped:


  • Functions are much more logically grouped,
  • The new Clipboard menu shows all functions that interact with the clipboard,
  • The Find and Replace Menu has also been reorganised to make it even easier to find the functions and remember the keys.


One final snazzy touch: each tool file now has its correct icon in the Finder.

New Release of fmWorkMate (Mac) is available, as ever, on the Downloads page.

Happy Checking Mate! ;-)


Transform you code faster with fmCheckMate

Posted by Russell Watson on 30 October, 2013 at 19:50 Comments comments (0)

I'm doing some very intensive FileMaker code transformations at the moment - porting masses of Mail-Sync code from FileMaker 12 back into our old FileMaker 11 solution, so the focus for this release has been getting things transformed fast and efficiently with fmCheckMate (on Windows).

Thus, in this release the XSLT chooser has been pepped up: 

  • New shortcut keys for selecting one of the top 5 transformations quickly
  • Your favourite transformations remain at the top, even after an update, because the usage statistics are now stored in user preferences!


AND, most importantly, the Windows version works better.

SO: fmWorkMate for Mac and Win released - get it on the Downloads page 


Good night!


Line numbers are IN - fmSyntaxColorizer+fmCheckMate are OUT!

Posted by Russell Watson on 29 October, 2013 at 16:25 Comments comments (0)

Get the new releases of fmSyntaxColorizer and fmWorkMate from the Downloads page!

If you haven't seen the Line Numbers in FileMaker Scripts yet, then get moving and get the latest MBS Plugin!

With the newest release of fmSyntaxColorizer it is just ONE CLICK easy locating of those bugs quicker than ever!

No more senseless searching, scrolling and screaming!

And, seeing as line numbers are so handy, I've also built a function into fmCheckMate to add line numbers to your text result:

or even to your filemaker xml fmxmlsnippet:


Press SHIFT+COMMAND+0 (zero) to toggle the line number on and off to discover exactly where your lines are.

 (In the XML-Editor you may want to first press SHIFT+COMMAND+H in order to format the XML one step-a-line)

Enjoy knowing where you are!


fmWorkMate is the answer to your cross platform copying problems

Posted by Russell Watson on 25 September, 2013 at 20:30 Comments comments (0)

As the folks over at FileMakers fmdev Technet Site noticed,

Copying and pasting Scripts or Script lines from Mac to Remote PC is not easy and does not always work.

Apple Remote Desktop, TeamViewer, Remote Desktop Connection, Cord, et al can copy text cross-platform (usually), but often stumble when trying to copy FileMaker objects directly across the divide.

Well, here we know the answer to the problem, and it's called fmCheckMate, the heart of the fmWorkMate toolbox.

The solution is VERY EASY:


1. Install fmCheckMate on the local computer                 2. Install fmCheckMate on the remote computer


3. Copy FM objects here       4. CLICK here       -^v->      5. CLICK there      6. Paste FM Objects in the remote DB



ONLY TWO EXTRA CLICKS in fmCheckMate (one local + one remote) are necessary.


fmCheckMate has bridged the divide and the FileMaker objects have jumped the gap!


But of course, fmCheckMate is only a fraction of the story: In the forum thread you can read my original comments, as to: Why fmWorkMate the ideal toolkit is to help FileMaker developers support & develop bug-free remote solutions.



Happy remote supporting!





fmCheckMate gets some new funky stuff

Posted by Russell Watson on 11 September, 2013 at 20:50 Comments comments (0)

There is a new version of fmWorkMate on the downloads page, with some nice goodies in the fmCheckMate tool.

I'm working on a huge conversion task at the moment; porting FileMaker 12 stuff back onto old FM 11 versions, which means that the focus of this release is on improving the pace of the work flow, that means

  • improved menus, 
  • useful keyboard shortcuts and 
  • more intuitive flow through the data.

 Both the XSLT Chooser and the Text Result Viewer have been honed into efficient tools:

XSLT Chooser

Text Result Viewer

The text statistics really help to find problem characters in your code - or even in any text: just paste it in the text viewer and press command-8.

Have fun. New XSLTs should be coming soon.


At last fmCheckMate XSLT (BETA) is released

Posted by Russell Watson on 1 September, 2013 at 16:40 Comments comments (0)

OK, it's not polished, it is not error-free, but it's here and it's mind-blowing.

fmCheckMate XSLT Library (BETA) is now available for download on the downloads page.

The fmCheckMate XSLT Library upgrades fmCheckMate from a Super-Tool to a Mega-Tool.

For those who are new here: fmCheckMate is the main tool in the fmWorkMate toolbox for converting copied FileMaker objects to XML and back.

Important notice before we go any further: 

The fmCheckMate XSLT Library is work in progress, this means:

  • Some things work, and some things don't (& it's not terribly well documented)
  • It is not guaranteed to do a) what it says, b) what you expect, c) what I expect, d) any good. But it might.
  • The bits of it I use are in a "it works for me" state - please help me to get it into a "it works for you" state!
  • If you have questions, suggestions, input, corrections, uncertainties or anything else, please contact me (e.g.: using the contact button on this website)


Here's how to use it:

  1. If you don't have fmWorkMate yet, download that first from the downloads page.
  2. Download the fmCheckMate XSLT Library from the downloads page.
  3. Unzip it to your documents folder. (~/Documents/CheckMate)
  4. Start fmWorkMate and then fmCheckMate.
  5. Copy some FileMaker objects and use fmCheckMate to convert them to XML (an fmxmlsnippet).
  6. Press Command+T (on Windows Ctrl+T) to open the XSLT Transformation window.
    (Note: If you are updating your version of the fmCheckMate XSLT Library press the reload button)
  7. Click an interesting looking transformation (see note below on abbreviations used in the names).
  8. If the result is an anlysis just look at, copy or save the text.
  9. If the result is a further fmxmlsnippet, press the [-> FM] button to convert the result back to FileMaker objects then paste them back into FileMaker.


About the XSLT file names

The XSLT files names have the following form:


The SourceType and ResultType describe the type of object expected: 

  • XMAA - Any/All FileMaker object types
  • XMLO - FileMaker 11 Layout Objects
  • XML2 - FileMaker 12 Layout Objects
  • XMTB - FileMaker Table Definitions
  • XMFD - FileMaker Field Definitions
  • XMSC - FileMaker Scripts
  • XMSS - FileMaker Script steps


Note: Script step (XMSS) transformations often also work correctly on scripts. Ditto Fields and tables.

The following terms are also used:

  • Text.List - Produces a list of information, usually limited to one result per line
  • Text - some other text result. 


To get the text of a script:
  1. Copy one or more scripts in FileMaker
  2. Open fmWorkMate and switch to fmCheckMate (or press Command 2)
  3. In fmCheckMate press the big [convert] button (or press Command+2 again)
  4. Press Command+T to open the XSLT transform chooser
  5. Select XMSS > Text.List Indented
=> You get a numbered list of the script steps (one line per step).

To get a list of all ID fields with serial numbers:
  1. Copy one or more tables in FileMaker
  2. Open fmWorkMate and switch to fmCheckMate (or press Command 2)
  3. In fmCheckMate press the big [convert] button (or press Command+2 again)
  4. Press Command+T to open the XSLT transform chooser
  5. Select XMFD > Text.List FieldsWithSerialnumbers

=> You get a list of the serial fields.

To change column-oriented table processing scripts (using Replace Field Contents) to record-oriented loops:


  1. Copy the Replace Field Contents in FileMaker
  2. Open fmWorkMate and switch to fmCheckMate (or press Command 2)
  3. In fmCheckMate press the big [convert] button (or press Command+2 again)
  4. Press Command+T to open the XSLT transform chooser
  5. Select XMSC = XMSC ExplodeReplaceFieldContentsToLoop
  6. Click the [-> FM] button (or press Command+Alt+V) to convert the fmxml back to FileMaker objects
  7. Paste the script steps back into the FileMaker script
=> Voilá, you now have a record-loop with Set Field instead of Replace Field Contents.


There is a whole bunch of other functions, ... I guess I'll be posting more about the available functions as people start using and enquiring about them.

Have fun, and let me know how it goes!


New release of fmWorkMate

Posted by Russell Watson on 27 June, 2013 at 19:40 Comments comments (0)

A new beta release of fmWorkMate is available on the downloads page.

fmWorkMate now has a built in ((slightly) intelligent) XSLT Transformation chooser (thanks for the good idea Peter! :-)

I guess I had better get round to publishing the XSLT Library soon, so that the chooser has something to choose!

>watch this space< ! (or the next one ;-)


fmWorkMate: Overview of Functions

Posted by Russell Watson on 17 June, 2013 at 18:40 Comments comments (0)

Here is the presentation from pauseOnError Berlin 2013:

fmWorkMate and it's 10 tools are presented in a 5-minute FileMaker presentation, showing a typical day in the life of a typical FileMaker programmer.

The presentations fully automated, at least on a mac; just press the play button and let your mac present you the information you need!

Note 1: If you don't have the MBS plugin, you may have to dismiss the odd error message here or there.

Note 2: The presentation was optimied for a MB-Pro Retina 13" monitor - if yours is too small, you may wish to zoom out using the view menu