Developer’s Guide
Table Of Contents
- Contents
- Chapter 1 Introducing FileMaker Developer 5
- Chapter 2 Customizing your database solution
- About the custom solution examples
- Using the FileMaker Developer Tool
- Binding your databases into a runtime database solution
- Displaying databases in Kiosk mode
- Renaming your databases
- Removing design access to your databases
- Customizing the About, Help, and Scriptsmenus
- Adding the FileMakerPro extension to database filenames
- Saving your settings in the Developer Tool
- Chapter 3 Preparing files for a custom solution
- About the Relational Example
- General steps for preparing your solutionfiles
- Issues to consider before creating a runtime database solution
- Opening files in Kiosk mode
- Design tips for navigating in Kiosk mode
- Creating startup scripts
- Using button image samples
- Documenting your database solution
- Design tips for cross-platform solutions
- Creating a consistent appearance
- Simulating outline and shadow text styles
- Using common character sets
- Designing text layouts for cross-platform solutions
- Using a common color palette
- Using graphics in cross-platform solutions
- Using QuickTime movies in cross-platform solutions
- Showing the status bar in Windows
- Using separate scripts for printing
- Using the Status (CurrentPlatform) function
- Creating platform-specific scripts
- Protecting your runtime database solutionfiles
- Testing before and after creating yoursolution
- Converting and upgrading solution files
- Chapter 4 Distributing FileMakerPro runtime database solutions
- Chapter 5 Creating custom layout themes
- Chapter 6 Publishing your database on the Web
- Moving forward using open web standards
- Using the FileMakerPro Web Companion
- Displaying a custom home page
- Using a custom home page with Instant Web Publishing
- Monitoring your site
- Exporting data to a static HTML page
- Testing your site without a networkconnection
- Opening password-protected databasesremotely
- Using the Web Security Database
- Chapter 7 Using FileMakerPro XML to deliver your data
- About the XML examples
- General process for custom web publishing using XML
- Generating an XML document
- Using the FMPDSORESULT grammar
- Using the FileMakerPro Extended XMLgrammars
- About UTF-8 encoded data
- Generating FileMakerPro CGI requests for an XML document
- Using style sheets with your XMLdocument
- Comparing CSS, XSLT, and JavaScript
- Looking at the XML Inventory example
- Chapter 8 Using Java and JDBC to deliver your data
- About the JDBC examples
- About JDBC
- Using the FileMaker JDBC Driver
- SQL supported by the FileMaker JDBCDriver
- FileMakerPro support for Unicodecharacters
- About the FileMaker JDBC Driver interfaces and extensions
- Example 1: Looking at the FileMakerPro Explorer application
- Example 2: Creating the JBuilder Inventoryapplication
- Example 3: Creating the Visual Cafe Inventory application
- Using the FileMaker Java classes
- Chapter 9 Custom web publishing using CDML
- About the CDML examples
- General steps for custom web publishing using CDML
- About CDML format files
- Generating FileMakerPro CGI requests using CDML
- Using the CDML Tool and templates
- New and modified CDML tags
- About the CDML Reference database
- Creating error messages
- Using an encoding parameter with a CDML replacement tag
- Planning your web site
- Chapter 10 Writing external function plug-ins
- About the plug-in examples and templates
- Installing, enabling, and configuring FileMakerPro plug-ins
- Using external functions in a calculation
- Requirements for writing an external function plug-in
- FileMakerPro messages sent to theplugin
- Debugging your plug-in
- Avoiding potential MacOS resourceconflicts
- Providing documentation for your plug-in
- Naming and registering your plug-ins
- Appendix A Feature comparison of the runtime application and FileMakerPro
- Appendix B Valid names used in CGI requests for FileMaker XML data
- Generating a –find, –findall, or –findany request
- Generating a –view request
- Generating a –new request
- Generating an –edit request
- Generating a –delete request
- Generating a –dbnames request
- Generating a –layoutnames request
- Generating a –scriptnames request
- Generating a –dbopen request
- Generating a –dbclose request
- Specifying parameters for the request
- db (Database)
- lay (Layout)
- format (Format)
- recid (Record ID)
- modid (Modification ID)
- lop (Logical operator)
- op (Comparison operator)
- max (Maximum records)
- skip (Skip records)
- sortfield (Sort field)
- sortorder (Sort order)
- script (Script)
- script.prefind (Script before Find)
- script.presort (Script before Sort)
- styletype (Style type)
- stylehref (Style href)
- password (Database password)
- field name (Name of specific field)
- Appendix C FileMaker Pro values for error codes
- Index
9-10
Developer’s Guide
Modified CDML tags
–errorfmtfield
(variable)
Used in conjunction with the –recid variable tag or with
global fields to pull error format file information from a
field in the database instead of an HTML file in the Web
folder
Required parameter: –recid (for non-global fields)
–modid
(variable)
Detect record modification collisions by including the
–modid variable with the –edit action tag. If the
modification ID does not match in an –edit request, then
a new error code 306 is returned (see appendix C,
“FileMaker Pro values for error codes”).
New CDML replacement tags Description
[FMP-CurrentModID]
(replacement)
Used in conjunction with the –modid
request parameter to replace with the
record’s current internal modification ID.
The [FMP-If] tag supports the
CurrentModID and CurrentRecID
parameters as numeric types.
[FMP-CurrentPortalRowNumber]
(replacement)
Replace with the number of the current
portal row.
Use this tag within the [FMP-Portal]
looping tag.
[FMP-CurrentRepeatNumber]
(replacement)
Replace with the number of the current
repetition in a repeating field.
Use this tag within the [FMP-Repeating]
looping tag.
[FMP-ElseIf]
(replacement)
Replace with specified data if the
conditions of the [FMP-If] are not met.
Use this tag with the [FMP-If] tag and a
conditional operator.
New CDML
variable tags Description
[FMP-IncludeField: fieldname]
(replacement)
Replace with specific field data.
For –view requests, the specified field
must be a global field.
For all other requests, you must include
the –recid request parameter (except for
global fields).
[FMP-InlineAction]
(replacement)
Lets you send multiple requests to your
database from within a single format file.
The –format request parameter (CDML
variable tag) is ignored within the inline
request.
[FMP-Log]
(replacement)
Lets you specify comments to be recorded
in the Info.log file each time the page that
contains this tag is accessed through the
Web Companion . (See “Monitoring your
site” on page 6-8 for information.)
Modified CDML tag Description
-token
(variable)
You can use multiple tokens by specifying a
number from 0 to 9 after a period in the variable,
for example, -token.3.
[FMP-CurrentToken]
(replacement)
This replacement tag will now accept a parameter
value of 0 to 9, for example, [FMP-
CurrentToken: 3].
[FMP-If: CurrentToken]
(modified parameter)
The currenttoken parameter of the [FMP-If] tag
can now include a number from 0 to 9, for
example [FMP-If:
CurrentToken:3.eq.{CurrentToken:4}].
[FMP-If:
CurrentPortalRowNumber]
(new parameter)
Use this parameter with the [FMP-If] tag to
specify a number for the current portal row within
the [FMP-Portal] looping tag.
New CDML replacement tags Description