FileMaker and Web Services the easy way

I’ve worked on many FileMaker implementations that require integration with external systems, whether it is importing, exporting, posting or syncing data, usually with XML involved in there somewhere. I’ve had many discussions with FileMaker engineering staff at FileMaker DevCons over the years as well about where I would like to see FileMaker Pro expand in these areas.

FileMaker can do a good job and exporting and importing XML data, and with the importing of XML data you can also specify an HTTP address and with the use of variables you can by quite dynamic with setting up your XML imports. Unfortunately things are much more limited on the XML export side of the equation – you can only export XML data to a file location (although you can reference an XSLT stylesheet during the export to transform your XML which can be stored on a web server). To get that XML onto the web you need to look at other technologies available for FileMaker Pro, Windows or the Macintosh and hook into these.

I’ve previously used the Troi URL plugin to assist with doing an HTTP POST of xml data generated via an XML export with a stylesheet then read back into a FileMaker field, but a recent project required the use of Web Services to submit data via XML, which is something that hasn’t been easy to do until now. The new Web Services plugin from FM Nexus makes working with Web Services incredibly simple. As long as you can locate a WSDL file for the web service you do everything else within a FileMaker calculation. This blew me away the first time I got this working – working with web services has never been this easy before.

The plugin does require some additional overhead and maintenance, as you need to create a wsdl folder in the FileMaker extensions folder (where you would normally store the plugin) and put your wsdl’s inside there. There’s no automated way to easily distribute these that I know off, though I ended up creating a simple installer to install the plugin and the wsdl folder. All the XML is taken care of by the plugin and you typically just need to replace any placeholders with the appropriate field from your FileMaker table which couldn’t be any easier. I encountered a number of issues with empty/NULL values that required some additional logic in the FileMaker calculation and each wsdl/web service will probably have it’s own unique requirements, but generally you can work around these with existing FileMaker Pro calculation functions.

You can get all the info and download a demo of the plugin at the FM Nexus website. FileMaker Advisor magazine also did a review of the plugin (note the pricing of the plugin appears to have changed from the review – it’s gone up unfortunately).

7 replies
  1. Andrew Duncan
    Andrew Duncan says:

    Hi Scott,

    There’s no plugin that replaces the Web Services plug-in that I’m aware of. There are several that you can use to do HTTP POST/GET etc which can be used, including the Troi URL plug-in, ScriptMaster (http://www.360works.com/scriptmaster/) and the BaseElements Plugin (http://www.goya.com.au/baseelements/plugin).

    With these you will need to do more work in formatting the data to be sent to the web service as you don’t get the list of FileMaker functions that are parsed from the wsdl file, but it’s certainly possible to use one of these plugins to work with a web service.

    Hope this helps,
    Andrew

  2. Wayne
    Wayne says:

    We are a small nonprofit that serves thousands of homeless individuals in Dallas,TX.
    We use Filemaker to track details on each person we serve.
    In Filemaker 12, we generated an XML file (RSS) to feed digital signage at our facility. But now that we have upgraded to FM13, we can’t get it to work.
    We were generating a long string formatted as an RSS and writing that to a txt file. Is there a way to do this in 13? Or a better way?

  3. Andrew Duncan
    Andrew Duncan says:

    Hi Wayne,

    I would expect the same process to work in FileMaker v13 that worked in v12 as far as exporting XML data is concerned. Having said that we’ve encountered an issue with FileMaker Server v13’s XML parser with certain characters that we’re still looking into.

    One solution we’ve developed in the past is to use FileMaker Server and the PHP API to generate the RSS feed automatically – so you can just point the external service at the PHP page that returns the XML data in the required format. This means you don’t have to manually export the XML – you have FileMaker Server and PHP do it for you automatically.

    regards,
    Andrew

Comments are closed.