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
8-8 Developer’s Guide
First, you create a startup script to hide the Instant Web Publishing
interface. Then you create buttons in the layouts to navigate the web
site and perform database functions. To bypass the Instant Web
Publishing home page, you use a custom home page that contains a
redirect statement for opening the database layout in a particular
instant web page.
Overview of using a database layout as the Instant Web
Publishing home page
To create a custom home page that uses a database layout for the
interface:
1. In Layout mode in FileMaker Pro, design the layout for your
custom home page. Create script buttons for every type of interaction
you want the web user to be able to do on this page. (See
“Using
script buttons in Instant Web Publishing” on page 8-8.)
2. Create a startup script that hides the Instant Web Publishing
interface. (See “Suppressing the Instant Web Publishing interface”
on page 8-11.)
3. Enable the Web Companion and configure it for Instant Web
Publishing.
4. Set up file sharing for the database through the Web Companion
(see “Sharing the database via the Web” on page 8-5), and click Set
Up Views in the File Sharing dialog box.
5. In the Web Companion View Setup dialog box, choose either Soft
Gray, Lavender, Wheat, or Blue and Gold 1 for the web style. Then
specify the layout you want used for each view (instant web page).
6. Choose Edit menu > Preferences > Document .
Mac OS X: Choose FileMaker Developer application
menu >Preferences > Document
7. Set up FileMaker Pro to switch to the layout you created in step 1
and perform the startup script you created in step 2 when the
database opens.
When the database is opened in the web browser, the layout that you
select for the Switch to Layout option in the Document Preferences
dialog box overrides all layouts selected in the Web Companion
View Setup dialog box for file sharing.
8. Create a web page with a redirect statement that bypasses the
built-in Instant Web Publishing home page and displays your custom
layout in the browser. (See
“Bypassing the Instant Web Publishing
home page” on page 8-12.)
9. Configure the Web Companion to open the web page as the
default home page. (See “Specifying a custom home page as the
default” on page 8-6.)
Now when you enter your computer’s IP address or “localhost” in
the web browser, the Web Companion will display the database
layout for your custom home page in the browser window.
Using script buttons in Instant Web Publishing
You can provide special script buttons in your FileMaker Pro layout
to work with Instant Web Publishing. When web users click on a
button in the browser, the script’s URL is sent to the Web
Companion as a FileMaker CGI request.
If the script is a single script step, an onClick JavaScript event
handler is executed and a URL is generated containing the current
state information in the browser and information from the script step
extracted by the Web Companion.
If the script contains multiple script steps, state information from the
first three supported steps is extracted to construct a JavaScript state
object (scriptState) that encapsulates the result of the executed script.
The resulting information is passed to the JavaScript runtime
application (Instant Web Publishing), which interprets the state
object, builds the resulting URL, and sends the CGI request to the
Web Companion.