MrWatson

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

At last fmCheckMate XSLT (BETA) is released

Posted by Russell Watson on 1 September, 2013 at 16:40

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:

{SourceType}_{ResultType}_Functionname.xslt

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. 

Examples

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.


Etc.

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!

 

Categories: fmCheckMate & XSLT, News & Releases

Post a Comment

Oops!

Oops, you forgot something.

Oops!

The words you entered did not match the given text. Please try again.

You must be a member to comment on this page. Sign In or Register

0 Comments