Custom Web Publishing Guide

Table Of Contents
38 FileMaker Server Advanced Custom Web Publishing Guide
Switching layouts for an XML response
The –lay query parameter specifies the layout you want to use when requesting XML data. Often, the same
layout is appropriate for processing the data that results from the request. In some cases, you might want to
search for data using a layout which contains fields that, for security reasons, don’t exist in another layout
you want to use for displaying the results. (To do a search for data in a field, the field must be placed on the
layout you specify in the XML request.)
To specify a different layout for displaying an XML response than the layout used for processing the XML
request, you can use the optional
–lay.response query parameter.
For example, the following request searches for values greater than 100,000 in the Salary field on the Budget
layout. The resulting data is displayed using the
ExecList layout, which does not include the Salary field.
http://192.168.123.101/fmi/xml/fmresultset.xml?–db=employees&–lay=Budget&Salary=100000&Salary.op=gt&–find
&–lay.response=ExecList
Understanding how an XML request is processed
There are several query parameters that affect the processing of an XML request and the generation of an
XML document.
Here is the order in which FileMaker Server and the Web Publishing Engine process an XML request:
1. Process the –lay query parameter.
2. Set the global field values specified in the query (the “.global=” portion of a URL).
3. Process the –script.prefind query parameter, if specified.
4. Process the query commands, such –find or –new.
5. Process the –script.presort query parameter, if specified.
–script.param (pass a parameter value to the
script specified by –script)
Optional with –script
–script.prefind (perform script before –find,
–findany, and –findall)
Optional with –find, –findany, –findall
–script.prefind.param (pass a parameter value
to the script specified by –script.prefind)
Optional with –script.prefind
–script.presort (perform script before sort) Optional with –find, –findall
–script.presort.param (pass a parameter
value to the script specified by
–script.presort)
Optional with –script.presort
–skip (skip records) Optional with –find, –findall
–sortfield.[1-9] (sort field) Optional with –find, –findall
–sortorder.[1-9] (sort order) Optional with –find, –findall
–stylehref (stylesheet HREF) Optional with all query commands (to specify a stylesheet URL for
–styletype)
–styletype (stylesheet type) Optional with all query commands (to specify client-side stylesheet)
Use these query parameter names With these query commands