Developer’s Guide
Table Of Contents
- Chapter 1 Welcome to FileMaker Developer
- Chapter 2 Installing FileMaker Developer in Windows
- Chapter 3 Installing FileMaker Developer in the Mac OS
- Chapter 4 Creating a database solution
- Overview of preparing your solutionfiles
- Considerations for a runtime databasesolution
- Considerations for Kiosk mode
- Using scripts to control your solution
- Protecting your database solution files
- Providing user documentation
- 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
- Your responsibilities as a developer
- Testing before and after creating your solution
- Converting and upgrading solution files
- Chapter 5 Creating custom layout themes
- Chapter 6 Using the FileMaker Developer Tool
- About the solution examples
- Using the FileMaker Developer Tool
- Binding your databases into a runtime database solution
- Creating Kiosk-mode solutions
- Renaming your databases
- Removing design access to your databases
- Customizing the About, Help, and Scripts menus
- Adding the FileMaker Pro extension to database filenames
- Saving your settings in the Developer Tool
- Chapter 7 Distributing FileMaker Pro runtime database solutions
- Chapter 8 Publishing your database on the Web
- Types of web publishing
- Using the FileMaker Pro Web Companion
- Creating a custom home page
- Creating a custom home page for Instant Web Publishing
- Creating a custom web site using a database layout
- Web Companion support for Internet mediatypes
- Monitoring your site
- Exporting data to a static HTML page
- Testing your site without a network connection
- Opening password-protected databases remotely
- Chapter 9 Custom web publishing using CDML
- About the CDML examples
- General steps for custom web publishing using CDML
- About CDML format files
- Generating FileMaker Pro CGI requests using CDML
- Using the CDML Tool and templates
- About the CDML Reference database
- Creating error messages
- Using an encoding parameter with a CDML replacement tag
- Planning your web site
- Chapter 10 Using FileMaker Pro XML to deliver your data on the Web
- About the XML examples
- General process for custom web publishing using XML
- Generating an XML document
- Using the FMPDSORESULT grammar
- Using the FileMaker Pro Extended XML grammars
- About UTF-8 encoded data
- Generating FileMaker Pro CGI requests for an XML document
- Using style sheets with your XML document
- Comparing CSS, XSLT, and JavaScript
- Looking at the XML Inventory example
- Chapter 11 Using JDBC to deliver your data
- About the JDBC examples
- About JDBC
- Using the FileMaker JDBC Driver
- SQL supported by the FileMaker JDBC Driver
- FileMaker Pro support for Unicode characters
- About the FileMaker JDBC Driver interfaces and extensions
- Example 1: Looking at the FileMaker Pro Explorer application
- Example 2: Creating the JBuilder Inventory application
- Example 3: Creating the Visual Cafe Inventory application
- Chapter 12 Understanding external function plug-ins
- About external functions
- About the plug-in example file
- Installing, enabling, and configuring the example plug-in
- Description of the FMExample plug-in’s external functions
- Using the example plug-in
- Customizing the plug-in example
- Requirements for writing an external function plug-in
- FileMaker Pro messages sent to the plug-in
- Debugging your plug-in
- Avoiding potential Mac OS resourceconflicts
- Providing documentation for your plug-in
- Registering your plug-ins
- Appendix A Feature comparison of the runtime application and FileMaker Pro
- Appendix B Valid names used in CGI requests for FileMaker Pro 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
- Generating a -dup request
- Generating an -img 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-2 Developer’s Guide
General steps for custom web publishing
using CDML
In general, to publish your FileMaker Pro databases on the Web you
must have a TCP/IP connection to an intranet or Internet Service
Provider, the Web Companion must be enabled, and your databases
must be open and shared via the Web Companion. (For more
information, see
chapter 8, “Publishing your database on the Web.”)
1. Design your web site and how web users will interact with your
database. See “Planning your web site” on page 9-12 for ideas.
2. Create a format file for every type of interaction web users will
have with your database, for example, adding records to the
database. Use the CDML Tool to add tags to your format files and
use the format file templates provided by the CDML Tool as a
starting point. See
“Using the CDML Tool and templates” on
page 9-5 for information.
3. Create a custom home page for your web site that contains a link to
the first format file you want displayed and the path to the database.
See “Creating a custom home page” on page 8-5 and “Generating
FileMaker Pro CGI requests using CDML” on page 9-3 for
information.
4. Place the format files and the custom home page in the Web
folder, located inside the FileMaker Pro folder on your computer.
5. In FileMaker Pro, enable the Web Companion, open each
database that you’re publishing, and share it via the Web
Companion.
See “Enabling the Web Companion” on page 8-3 and “Sharing the
database via the Web” on page 8-5.
6. In the Web Companion Configuration dialog box, deselect Enable
Instant Web Publishing and choose your custom home page from the
Home Page pop-up menu if desired. (It must be located in the root
level of the Web folder.)
See “Setting Web Companion configuration options” on page 8-3
for information.
7. In a web browser, enter the IP address of the computer that’s
hosting the database.
If y
ou enclosed your pages within a site folder, enter the name of the
folder after the IP address. Otherwise, the Web Companion will
serve the home page that you specified in step
6.
Tip You can create an index page containing a link to every database
site that you’re publishing. Each link can contain the IP address and
site folder so that users don’t have to type it in their web browsers.
When web users click the link, the Web Companion will serve the
index.htm file located in the site folder. For example, an index page
might have these three links:
<P><A HREF="http://17.17.17.17/guest_book">Guest Book</A></P>
<P><A HREF="http://17.17.17.17/employee_database">Employees
</A></P>
<P><A HREF="http://17.17.17.17/shopping_cart">Shopping Cart</A>
</P>
About CDML format files
A format file is an HTML page containing CDML tags. CDML tags
are distinguished by a hyphen (-) or square brackets [ ]. In addition,
a format file may contain FileMaker Pro CGI requests in an HTML
form or HREF link.
For example, every HTML form in a format file that is requesting
data from the database begins with the FMPro form action and the
following hidden INPUT tags.
<FORM ACTION=“FMPro” METHOD=“POST”>
< INPUT TYPE=“hidden” NAME=“-db” VALUE=“Filename.fp5”>
< INPUT TYPE=“hidden” NAME=“-lay” VALUE=“Layout Name”>
< INPUT TYPE=“hidden” NAME=“-format”
VALUE=“Filename.htm”>