Developer’s Guide
Table Of Contents
- Preface Introducing FileMaker Developer 5.5
- Chapter 1 Installing FileMaker Developer 5.5
- What you need to install FileMakerDeveloper
- System requirements for FileMaker Developer 5.5
- Networking requirements
- Web publishing requirements
- Requirements for advanced features (Windows)
- Requirements for advanced features (MacOS)
- Installing FileMaker Developer 5.5 in Windows
- Installing FileMaker Developer 5.5 in the MacOS
- New features in FileMaker Pro
- FileMaker Pro 5.5 and Mac OS X
- Contents of the FileMaker Developer 5.5 folder
- Contents of the Developer Extras folder on the FileMaker Developer 5.5 CD
- Read Me file
- Electronic documentation
- Abiding by the license agreement
- Registration and customer support
- About the TechInfo database
- Chapter 2 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 yoursolution
- Converting and upgrading solution files
- Chapter 3 Creating custom layout themes
- Chapter 4 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 Scriptsmenus
- Adding the FileMakerPro extension to database filenames
- Saving your settings in the Developer Tool
- Chapter 5 Distributing FileMakerPro runtime database solutions
- Chapter 6 Publishing your database on the Web
- Types of web publishing
- Using the FileMakerPro 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 networkconnection
- Opening password-protected databasesremotely
- 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 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
- 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 9 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 10 Understanding external function plug-ins
- About external functions
- About the plug-in example file
- Installing, enabling, and configuring the exampleplug-in
- Description of the FMExample plug-in’s externalfunctions
- Using the example plug-in
- Customizing the plug-in example
- 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
- Registering your plug-ins
- Appendix A Feature comparison of the runtime application and FileMakerPro
- Appendix B Valid names used in CGI requests for FileMakerProXMLdata
- 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 FileMakerPro values for error codes
- Index
Contents vii
Specifying driver properties in the URL subname 9-3
SQL supported by the FileMaker JDBC Driver 9-4
Using DbOpen and DbClose pseudo procedures 9-5
Using the RecordID pseudo column 9-6
Using the ModID pseudo column 9-6
SQL statement examples 9-7
Using a character escape 9-7
FileMaker data type mapping to JDBC SQL and Java
data types
9-7
FileMaker Pro support for Unicode characters 9-7
About the FileMaker JDBC Driver interfaces and extensions 9-8
Example 1: Looking at the FileMaker Pro Explorer application 9-8
Setup requirements 9-8
Install the example and the FileMaker JDBC Driver 9-9
Open and share your databases via the Web 9-9
Run the FileMaker Pro Explorer application 9-9
View the source code of the example 9-10
Example 2: Creating the JBuilder Inventory application 9-11
Install the example and FileMaker JDBC Driver 9-11
Set up JBuilder to use the FileMaker JDBC Driver 9-11
Open and share the Inventory.fp5 database 9-11
Start a new JBuilder project 9-11
Create the data module 9-12
Design the data module 9-12
Test the data module 9-13
Generate the application 9-13
Example 3: Creating the Visual Cafe Inventory application 9-14
Install the example and the FileMaker JDBC Driver 9-15
Set up Visual Cafe to use the FileMaker JDBC Driver 9-15
Open and share the inventory_db database 9-15
Create a new Visual Cafe project 9-15
Using the FileMaker Java classes 9-17
About the FileMaker Java Class Library 9-17
Looking at the Java applet examples 9-18
Chapter 10
Understanding external function plug-ins
About external functions 10-1
About the plug-in example file 10-1
Contents of the FMExample Plugin folder 10-2
Contents of the EFP API folder 10-2
Contents of the Resources folder 10-2
Contents of the Source folder 10-2
Installing, enabling, and configuring the example plug-in 10-3
Description of the FMExample plug-in’s external functions 10-3
Using the example plug-in 10-4
Customizing the plug-in example 10-5
Customizing FMExample.r 10-6
Customizing FMExample.rc 10-6
Customizing FMPrefs.c 10-6
Customizing FMMain.h 10-6
Customizing FMFunct..h 10-6
Customizing FMFunct.c 10-6
Requirements for writing an external function plug-in 10-6
Required code files 10-7
Required resource files 10-7
Feature string syntax 10-8
Requirements for the plug-in’s main entry point 10-9
External function naming conventions 10-10
FileMaker Pro messages sent to the plug-in 10-10
The Initialization message 10-11
The Shutdown message 10-11
The Idle message 10-11
The External Function message 10-12
The Preferences message 10-12
Debugging your plug-in 10-13
Avoiding potential Mac OS resource conflicts 10-13
Providing documentation for your plug-in 10-13
Registering your plug-ins 10-13