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
10-8 Developer’s Guide
Feature string syntax
The feature string must be 11 characters long for FileMaker Pro
plug-ins.
The first four characters of the feature string are the ID of the
FileMaker Pro plug-in. The ID must be unique for each plug-in and
must not begin with “
F,” “FM,” or “Web.” For the Mac OS, it is
recommended that you set the creator type of the plug-in to this same
value. The ID can only contain low-ASCII alphanumeric characters
(such as
0-9, A-Z, and a-z).
Note So that there will be a good chance of having a unique ID, you
should register the ID at the Apple Developer Support web site—
even if you won’t be creating a Mac OS version of your plug-in. To
register plug-in IDs, go to the developer support pages on the Apple
Computer web site at www.filemaker.com/developers/index.html
(see “Registering your plug-ins” on page 10-13).
//////////////////////////////////////////////////////////
//
// String Table
//
STRINGTABLE DISCARDABLE
BEGIN
128 FMExample /* Name of plugin as shown in calculation
dialog */
129 This is an example plug-in that demonstrates how to
write plug-ins. This comes with FileMaker Developer. /* De-
scription shown in application preferences panel in FileMaker
*/
131 Xmpl1YYYYnY /* Feature String = <4 char creator>
<always 1> <app prefs> <has external functions> <always Y>
<idle> <always n> <Win32s> */
144 Xpl-Version /* functionId 0 */
145 Xpl-NumToChar /* functionId 1 */
146 Xpl-CharToNum /* functionId 2 */
147 Xpl-Format /* functionId 3 */
148 Xpl-NumWords /* functionId 4 */
/* INSERT YOUR CODE HERE */
// 149 Xpl-MyNewFunctionNameHere /* functionId 8 */
kErrorMsg FMExample Plugin Error
kErrorBody error %li
kStrMsg FMExample Plugin
kStrBody %s
END
///////////////////////////////////////////////////////////
//////////////////
String table in FMExample.rc
resource STR# (kFMEX_RES_STRINFOID, purgeable) {
{ /* array StringArray: 4 elements */
/* [1] */
/* Name of plugin as shown in calculation dialog */
FMExample ,
/* [2] */
/* Description shown in application preferences
panel in FileMaker */
This is an example plug-in that demonstrates how
to write plug-ins. This comes with FileMaker
Developer. ,
/* [3] */
,
/* [4] */
/* Feature String = <4 char creator> <always 1>
<app prefs> <has external functions> <always Y>
<idle> <always n> <Win32s> */
Xmpl1YYYYnY
}
}; /* STR# kFMEX_RES_STRINFOID */
String table in FMExample.r