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
Contents vii
Example 1: Looking at the FileMaker Pro Explorer application 11-8
Setup requirements 11-9
Install the example and the FileMaker JDBC Driver 11-9
Open and share your databases via the Web 11-9
Run the FileMaker Pro Explorer application 11-9
View the source code of the example 11-10
Example 2: Creating the JBuilder Inventory application 11-11
Install the example and FileMaker JDBC Driver 11-11
Set up JBuilder to use the FileMaker JDBC Driver 11-11
Open and share the Inventory.fp5 database 11-11
Start a new JBuilder project 11-11
Create the data module 11-12
Design the data module 11-12
Test the data module 11-13
Generate the application 11-13
Example 3: Creating the Visual Cafe Inventory application 11-15
Install the example and the FileMaker JDBC Driver 11-15
Set up Visual Cafe to use the FileMaker JDBC Driver 11-15
Open and share the inventory_db database 11-15
Create a new Visual Cafe project 11-15
Chapter 12
Understanding external function plug-ins
About external functions 12-1
About the plug-in example file 12-1
Contents of the FMExample Plugin folder 12-2
Contents of the EFP API folder 12-2
Contents of the Resources folder 12-2
Contents of the Source folder 12-2
Installing, enabling, and configuring the example plug-in 12-3
Description of the FMExample plug-in’s external functions 12-4
Using the example plug-in 12-4
Customizing the plug-in example 12-6
Customizing FMExample.r 12-6
Customizing FMExample.rc 12-6
Customizing FMPrefs.c 12-6
Customizing FMMain.h 12-6
Customizing FMFunct..h 12-6
Customizing FMFunct.c 12-6
Requirements for writing an external function plug-in 12-7
Required code files 12-7
Required resource files 12-7
Feature string syntax 12-8
Requirements for the plug-in’s main entry point 12-9
External function naming conventions 12-10
FileMaker Pro messages sent to the plug-in 12-10
The Initialization message 12-11
The Shutdown message 12-11
The Idle message 12-11
The External Function message 12-12
The Preferences message 12-12
Debugging your plug-in 12-13
Avoiding potential Mac OS resource conflicts 12-13
Providing documentation for your plug-in 12-13
Registering your plug-ins 12-13
Steps for registering your external function plug-in 12-13
Revising a registered plug-in 12-14
Appendix A
Feature comparison of the
runtime application and FileMaker Pro
Application and document preferences A-1
Toolbar comparison A-3
Menu command comparison A-3
Ignored script steps A-6
Stored registry settings A-6