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
11-2 Developer’s Guide
Using the FileMaker JDBC Driver
You can use the FileMaker JDBC Driver with any Java compiler or
RAD tool to connect with your database while you build the code for
your Java application or applet. After the Java application or applet
has been created, the FileMaker JDBC Driver must be present with
the files or included within the code in order for the application or
applet to communicate with the database.
To use the FileMaker JDBC Driver, your Java application or applet
must register the driver with the JDBC driver manager and you must
specify the correct JDBC URL from within the application or
applet.You need the JDBC URL to make the connection to the
database.
About the FileMaker JDBC Driver
The FileMaker JDBC Driver is a JDBC 1.2 API compatible driver
designed to work with the Java Development Kit (JDK) 1.3. It is a
Type 4 driver — a native protocol, pure Java driver that converts
JDBC calls directly into the network protocol used by the database
management system. This type of driver offers all the advantages of
Java including automatic installation (for example, downloading the
JDBC driver with an applet that uses it). The driver will work with
JDK 1.3 and Java 2 as long as you only use JDBC 1.2 calls in a
Java 2 environment.
Note Although the driver implements the entire JDBC 1.2 API, it
cannot be classified as a true JDBC-compliant driver because it
supports only a subset of SQL that matches the capabilities of
FileMaker Pro, and is therefore not fully SQL-92 Entry Level
compliant.
The FileMaker JDBC Driver is packaged as a Java archive file (with
the .jar filename extension) containing a collection of class files. The
archive file is named Fmpjdbc12.jar. The path to the file is:
FileMaker JDBC Driver > Fmpjdbc12.jar
The driver class and main entry point for the driver is named:
com.fmi.jdbc.JdbcDriver
Note The FileMaker JDBC driver as well as JDBC Examples were
updated since the release of FileMaker Developer 5.0v1. The
FileMaker JDBC driver now supports JRE 1.3. If you are using the
example files from FileMaker Developer 5.0v1, please replace them
with the example files on this CD. Three major changes to the JDBC
driver are:
1. The FileMaker JDBC driver now supports JRE 1.3
2. Corrected a problem where blank repeating fields were not
handled properly
3. Fixed problem where the specified column order was lost after the
first query.
Using a JDBC URL to connect to your database
In Java, most resources are accessed through URLs (Uniform
Resource Locators). A JDBC URL is used to identify the database so
the FileMaker JDBC Driver can recognize and establish a connection
with the database.
The JDBC URL consists of three main parts separated by colons:
jdbc:<subprotocol>:<subname>
The first part in the JDBC URL is always the JDBC protocol
(“jdbc”). The subprotocol is the driver name or the name of the
mechanism that supports multiple drivers. In this case, the
subprotocol is fmpro, which is registered with Sun Microsystems,
Inc. The subname is the IP address of the machine that is hosting
FileMaker Pro.
The FileMaker JDBC Driver connects to FileMaker Pro through an
HTTP connection. The subname in the JDBC URL includes an
HTTP protocol (such as HTTP or HTTPS), an IP address or domain
name, and an optional port number preceded by a colon.