FileMaker 8®

Converting FileMaker Databases
from Previous Versions© 2004–2005 FileMaker, Inc. All Rights Reserved.
FileMaker, Inc.
5201 Patrick Henry Drive
Santa Clara, California 95054
FileMaker is a trademark of FileMaker, Inc., registered in the
U.S. and other countries, and ScriptMaker and the ﬁle folder logo
are trademarks of FileMaker, Inc.

All persons and companies listed in the examples are purely
ﬁctitious and any resemblance to existing persons and companies
is purely coincidental.

FileMaker documentation is copyrighted. You are not authorized
to make additional copies or distribute this documentation
without written permission from FileMaker. You may use thisdocumentation solely with a valid licensed copy of FileMaker
software.

Credits are listed in the Acknowledgements document provided
with this software.
For more information, visit our web site at www.ﬁlemaker.com.
Edition: 01

Contents
Preface
Important

7

Chapter 1
Planning for database conversion
About this guide
Conversion overview
Converting simple files
Converting complex databases
Migrating data to a database designed in FileMaker Pro 7
Conversion checklist for complex databases
Special considerations for converting business-critical databases

9
9
9
9
10
10
18

Chapter 2
Converting your database files
Converting files
Converting a single file
Converting multiple files at once
Converting FileMaker Pro 1.x and 2.x databases

19
19
20
23

Chapter 3
Troubleshooting file conversion
Solving conversion problems
Using the conversion log file

25
26

Chapter 4
Changes that occur during conversion
Access privileges
Passwords
Groups
Sharing a database stored on a CD-ROM
File references
Document preferences
Hidden files
Preserving user dictionary information
Changes in layouts
Converted relationships
Change to how word breaks are determined
Two-digit date conversion

31
31
32
34
35
36
37
37
38
39
39
39

4

Converting FileMaker Databases from Previous Versions

Changes to sorting behavior
ASCII changed to Unicode
Accented characters
Sorted data and found sets
Sorting records by subsummary values
Indexes
Exporting in the Lotus character set
Printer settings (Windows)
Print Setup script step stored setup options (Windows)
Global fields
Number fields
Date and time fields
Container fields
Calculation fields
Functions that are renamed in FileMaker Pro 7
Japanese functions that are converted
Invalid characters and words in field names used in calculations
Parameter separators in calculations
Change to rules for allowed parameters in Get functions
FileMaker Pro 7 converts field types as needed before processing calculations
Operator precedence in calculations
Decimal precision in validated fields
Accelerated calculation evaluation
New rounding rules
New syntax for nested substitutions
Today function no longer supported
Text functions recognize text characters in number fields
Functions that are dependent on context
Functions that return filename extensions
Changes to the Mod function
Numeric expressions with text input
Boolean calculations
GetAsNumber function
Get(LastError) function
Get(UserName) function
Rotated fields
Scripts
Conversion of script steps
Script step behavior
Miscellaneous scripting changes

40
40
40
40
40
41
42
42
42
43
43
44
44
45
45
48
49
49
49
49
52
52
52
53
53
53
54
54
55
55
56
56
56
57
57
58
58
58
59
61

| Contents

Changes to databases that are published to the web
Instant Web Publishing
Custom Web PublishingMovies in FileMaker Pro 3.x or earlier
Schedule settings in FileMaker Server
Runtime solution files bound by the FileMaker Developer Tool

65
66
66
67
67
67

Chapter 5
Defining accounts and privilege sets for files protected by the Web
Security Database
Considering security for FileMaker Pro 7 databases
Planning secure access for files published on the web
Creating new accounts manually
Using ScriptMaker to create new accounts

69
69
71
71

Chapter 6
Considerations for associated files and interfaces
Security improvements require reconfiguration of associated files
Starting FileMaker Pro using a URL
References to objects whose names were changed during conversion
Plug-ins
LDAC and RDAC changed to ODBC/JDBC and FileMaker Server Advanced
ActiveX library renamed
Apple event changes in FileMaker Pro 7 (Mac OS)
New object model
Changes to functionality

75
75
75
75
76
77
77
78
78

Index

81

5

6

Converting FileMaker Databases from Previous Versions

Preface
Important
You only need to read this guide if you are converting database ﬁles from pre-7.0 versions ofFileMaker® Pro. If you are upgrading from FileMaker Pro 7 to FileMaker Pro 8, you do not need to convert
your ﬁles, because FileMaker Pro 7 and FileMaker Pro 8 share the same ﬁle format.
The following table contains information and changes related to ﬁle conversion since the 7.0 guide wasreleased. The remainder of this guide has not been updated for FileMaker 8.0.
See

Description of change

GeneralFileMaker Developer is now named FileMaker Pro Advanced.

Page 10“Migrating data to a database
designed in FileMaker Pro 7”

In FileMaker Pro 8, after converting, you can import records into a new table ina file, in order to create a table with the same schema as the source table. In thisway, you can consolidate formerly separate tables from a multi-file solution intoa single file, multi-table solution. Only the data and table will be imported (notlayouts, relationships, scripts, and so on).
In FileMaker Pro Advanced, you can either copy or import table schema from a
converted file. For more information, see the FileMaker Pro Advanced
Development Guide.

Page 19“Converting a single file”

In FileMaker Pro 8, text in the dialog box now says, “This file was created witha previous version of FileMaker Pro and must be converted to this version of
FileMaker Pro.”

Page 35“File references”

After converting databases from previous versions of FileMaker Pro, be sure toreview all file references in your solution, and delete the ones you don’t need.
The File References dialog box displays information like folder locations and
IP addresses, which can reveal information you don’t want to distribute.

Page 38“Changes in layouts”

If you have inserted a picture (Windows Metafile image) as part of a layout, youmust convert the file on a Windows machine to preserve the image. Thisbehavior is similar to the behavior described on page 44 explaining how
container fields that store Windows Metafile images get converted differently on
Windows than on Mac OS.

Page 49“Invalid characters and words
in field names used in
calculations”

In FileMaker Pro 8, the list includes the following characters:+ - * / ^ & = ≠ < > ≤ ≥ ( , ; ) [ ] \" :: $ }Page 57“Error codes that are no longer
used in FileMaker Pro 7”

In FileMaker Pro 8, this error code no longer appears:
1 904 Command can only be used in a file hosted under FileMaker Server

8Converting FileMaker Databases from Previous Versions

Chapter 1
Planning for database conversion
The file format of FileMaker® Pro has changed to support new features, such as multiple databasetables per file, changes to internal data storage, and changes in how scripts and functions work. To
use your existing files from previous versions with FileMaker 7 products, you must convert thesefiles to the new file format used in FileMaker Pro 7.

About this guideThis document contains conversion-related information for FileMaker Pro, FileMaker Developer,
and FileMaker Server.
Online Help provides comprehensive step-by-step instructions on FileMaker product features. You
can open Help from the Help menu in FileMaker products.
Important You can download PDFs of FileMaker 7 documentation from www.filemaker.com/
downloads. Any updates to this document are also available from the web site. For more
information on upgrade, conversion, and migration considerations, see www.filemaker.com for
TechInfo Knowledge Base articles and other resources.

Conversion overview
The method you use for updating your database for use with FileMaker Pro 7 depends on thecomplexity of your database and whether or not you can benefit by implementing new features
available in FileMaker Pro 7.

Converting simple files
If your database solution is fairly simple, you should be able to convert your files using the
instructions in “Converting your database files” on page 19 or as described in the FileMaker Pro
User’s Guide, test your converted files, and use them. For example, simple files that were built fromthe templates provided with your previous version of FileMaker Pro should convert accurately
without a lot of manual adjustment afterwards.

Converting complex databases
If you're converting a multi-file relational database created with features such as custom features
such as complex scripts, complex calculations, or a database that’s business-critical, you shouldplan your conversion based on the following seven-step process.
Note The “Conversion checklist for complex databases” on page 10 provides detailed tasks for thesix general conversion steps listed below. You might find it helpful use the checklist as a guide forthe conversion process.
1. Plan for conversion.

Determine which parts of your database might require special consideration and postconversion verification.
2. Prepare for conversion.

10

Converting FileMaker Databases from Previous Versions

Set up an environment in which you place converted files and store them as you work throughthe conversion process. Clean up current files, removing obsolete information and structures,such as scripts and layouts that are no longer used. Think about how you want to implement
database security in FileMaker Pro 7. Information about what changes in your file during
conversion is detailed in chapter 3, so you might want to browse through it before you convert
your files.
3. Convert files.

Using the procedures described in “Converting your database files” on page 19, convert yourfiles to FileMaker Pro 7 format.
4. Verify conversion changes.

Some databases need manual modification after conversion. Use “Verifying conversion
changes” on page 14 to make sure that all aspects of your files have been converted properly
and will produce intended results. Many items on the checklist won’t apply to all users, but it’sa good idea to review the entire list to make sure you don’t miss anything.
5. Test the converted database.

Before you start using converted databases, it’s very important that you test them thoroughly
to make sure every aspect has been converted successfully. You can use a subset of your data
for testing, but make sure the data you test is representative of all functionality included in the
database. For example, make sure that fields contain data that allows you to validate every
calculation in the database. Be sure to consider calculations that return results from fields,
calculations used to control which script steps are performed in a script, and calculations thatare used to control which records are displayed using privileges. In addition, be sure to test user
accounts, passwords, and privileges.
6. Populate the converted database with current data.
7. Delete test data and import data from converted copies of your current database.
8. Deploy the converted database

When you have completed the post-conversion tasks, tested the converted database, and are
confident that it is ready for use, start using it.

Migrating data to a database designed in FileMaker Pro 7
Because there are extensive changes and improved features in FileMaker Pro 7, it might make sense
to re-create your database in FileMaker Pro 7 rather than converting it in its current design andstructure. For example, when you convert a multi-file database, the files are not combined into asingle file with multiple, related tables. You may prefer to create a single new file in
FileMaker Pro 7 with all of the tables and relationships that you want, and then import data fromyour converted copies of your original files.
By designing your database in FileMaker Pro 7, you can remove obsolete functionality and get thefull benefit of the improvements made to FileMaker Pro.

Conversion checklist for complex databases
Use the following checklist to plan and complete your file conversion. If the task doesn’t apply toyour solution, check N/A (Not Applicable).

Planning for database conversion

11

Planning for conversion
Done

N/A

Task

■

■

Learn about how file sharing has changed in FileMaker 7. See “Access privileges” onpage 31. In addition, if your database is:1 hosted by FileMaker Server, familiarize yourself with the new features of
FileMaker Server 7 and plan how all of your databases currently hosted byFileMaker Server will be converted or migrated.
1 published to the web, see “Changes to databases that are published to the web” onpage 65 and the FileMaker Instant Web Publishing Guide or the FileMaker Server
Advanced Custom Web Publishing Guide.

■■

Determine whether you have the correct hardware and software to support the FileMaker
products you plan to use:
1 Check the system requirements in the Installation and New Features Guide for
FileMaker Pro 7 and FileMaker Developer 7 and make sure you have adequate
resources on the computer you plan to place the database (and all client computers in a
multi-user environment).
1 Make sure you have enough disk space for converted files. Converted files can require
more disk space than the original files if the same images are used in container fields
and on layouts. Files that contain many graphics that are not in JPEG or GIF format
could grow by as much as 50% to 75%.
1 If the database is shared by FileMaker Server, make plans to upgrade the server
computer to FileMaker Server 7 or FileMaker Server 7 Advanced and all clientcomputers to FileMaker Pro 7. Check the system requirements in the FileMaker Server
Administrator’s Guide and the FileMaker Server Advanced Web Publishing
Installation Guide, if you plan to use web publishing to host the database on the web.
Note Versions of FileMaker Pro previous to FileMaker Pro 7 can’t communicate with
FileMaker Server 7. If you are not planning to upgrade all databases to
FileMaker Pro 7, you need to acquire a separate server computer to host the databases
you are converting.
1 If the database is very large, consider acquiring a separate computer (or set ofcomputers) for conversion and testing activities.

■■

If you’re not planning to convert all shared databases to FileMaker Pro 7 before
deployment, consider how you plan to make multiple versions of FileMaker Pro andFileMaker Pro Server available to users.
1 Only one version of FileMaker Pro or FileMaker Server can host files on a single
computer. Therefore, a second computer for hosting files converted to version 7 (either
peer-to-peer using FileMaker Pro 7 and FileMaker Networking or FileMaker Server 7)
is required.
1 If you are planning to run your previous version of FileMaker Server,
FileMaker Developer, or FileMaker Pro simultaneously with version 7, seewww.filemaker.com for licensing restrictions.

■■

If the database is relational, account for all related files in your conversion plan. Filesfrom previous versions of FileMaker Pro will not interact with converted files.

12

Converting FileMaker Databases from Previous Versions

Done

N/A

Task

■

■

Determine if your database uses any associated files, such as third-party plug-ins, thatneed to be verified or updated for use with FileMaker Pro 7.

■■

Determine whether your should convert the existing files or migrate the database bycreating a new design in FileMaker Pro 7 and then import data. For information about fileconversion, review “Changes that occur during conversion” on page 31. For information
about enhancements and improvements made in FileMaker Pro 7, see the Installation and
New Features Guide for FileMaker Pro 7 and the FileMaker Pro User’s Guide.

■■

If your database has container fields that store Windows Metafile images (and certain
other images stored internally by FileMaker in a metafile format, such as OLE, SLD, or
TIFF metafile), perform the conversion on a Windows computer that has QuickTime
installed to preserve the images.
If you perform the conversion on a computer running Mac OS, you do not lose any data,but you cannot immediately drag, drop, copy, or paste the images to another container
field on a computer running Mac OS: you must first open the database on a Windows
computer and then view each record with a container field to convert the metafile images.

Important FileMaker, Inc. does not warrant the functionality of database solutions that rely on
undocumented behavior of FileMaker products. Databases that have exploited unintended
behaviors may not convert and function correctly in the FileMaker Pro 7 and FileMaker Server 7
environments. It is the responsibility of the database developer to verify and test the function of
converted solutions.

Preparing for conversion
Done

N/A

Task

■

■

If you are converting a database that contains a great number of records, consider cloning
it before conversion. See “Saving files” in FileMaker Pro Help.

Tip Converting a clone of your database is quicker than converting a database that
contains a lot of data. You can make modifications to the layouts, calculations, scripts inthe converted clone, convert the original database, and then import the data into the clone.
■■

Document your current database definitions to use as a reference as you review andmodify converted files.
1 Print your current field definitions, script definitions, and layouts
1 If you have FileMaker Developer 6, consider creating a Database Design Report. This
report details the structure of your database and could be more useful than printing
database information feature by feature.

■■

If your database is extremely complex or business-critical, diagram its structure and theflow of information through it identifying all layouts and reports. This diagram can serve
as your conversion roadmap during verification and testing.

Planning for database conversion

13

Done

N/A

Task

■

■

Prepare for security changes that will be required after conversion. The security model of
FileMaker Pro 7 is different and greatly improved, so existing security settings must be
redefined during conversion. See “Access privileges” on page 31 and the FileMaker
Security Guide.
1 Create a description of the security model used in the current database.
1 Determine if each user of your file should have a separate password or if passwords canbe shared.

■■

Prepare your conversion environment.
1 Create backups of the files you plan to convert and place them in a separate folder awayfrom the existing database that will continue to be used during conversion.
1 If you are converting multiple files that exist in a nested folder structure, create
destination folders in the same structure. See “Converting multiple files at once” onpage 20.
1 Set up dedicated folders for testing the converted database.
1 Consider setting up a separate computer (a self-contained environment) to use during
conversion.

■■

Examine the existing database and remove any obsolete definitions or structures, such as
passwords, scripts, layouts, and fields that are no longer used.

Tip If you have FileMaker Developer, creating a Database Design Report for youroriginal database can help identify areas that might benefit from pre-conversion clean-up.
■■

Review data for consistency and printer settings (Windows) in existing databases before
conversion. Some areas that benefit from pre-conversion clean-up are:
1 Two-digit dates. If pre-1900 or post-1999 years are entered in two-digit format, change
them to four-digit format. See “Two-digit date conversion” on page 39.
1 Date separators. If dates use an alphanumeric character or the time separator as a dateseparator, consider replacing date separators before conversion. For more information,
see “Date and time fields” on page 44.
1 Text in number fields. Determine whether text in numeric fields should be removed
before conversion. See “Text functions recognize text characters in number fields” onpage 54.
1 Calculation parameters from number fields. If parameters in calculations arenumber fields, was the expectation that alphabetic data returns a blank value or do
Boolean calculations expect “T,” “Y,” “F,” or “N”? See “Numeric expressions with text
input” on page 56.
1 Fonts. Windows: If layouts use non-TrueType fonts, consider switching to TrueType
fonts before conversion. For more information, see “Modified text styles and fontdisplay on layouts” on page 38.
1 Printer settings. Windows: Printer settings might be lost during file conversion. See“Printer settings (Windows)” on page 42.

14

Converting FileMaker Databases from Previous Versions

Done

N/A

Task

■

■

If the database uses associated files, such as plug-ins, that need to be updated forcompatibility with FileMaker Pro 7:
1 For databases protected by passwords, determine how the associated files will be
updated to support the account name and password model in FileMaker Pro 7.
Remember to review account and password settings in associated files, if you modify
accounts and passwords after file conversion.
1 For third-party plug-ins, contact the plug-in provider and verify that plug-ins have beencertified for use with FileMaker Pro 7. Obtain updated versions of plug-ins, if needed.
1 For databases that are published to the web and will be hosted by FileMaker Server 7
Advanced, obtain new web enabled plug-ins. (Plug-ins written to work with
FileMaker Pro 7 do not automatically support the new web publishing engine or serverplug-in environments.)
1 For other associated files that interact with FileMaker Pro, such as Apple events,
ActiveX, or ODBC/JDBC, verify and test files developed in-house and by third-parties.
For more information, see “Apple event changes in FileMaker Pro 7 (Mac OS)” on
page 77.

Converting files
Done

N/A

Task

■

■

If you are converting a FileMaker Pro 2.x or 1.x file, convert the file to FileMaker Pro 6
as described in “Converting FileMaker Pro 1.x and 2.x databases” on page 23.

■■

If you are converting a large database with an extensive index, consider skipping index
conversion. See “Indexes” on page 41.

■■

Convert single-file databases using the instructions for “Converting a single file” onpage 19.

■■

Convert a relational database or a group of files using the instructions for “Converting
multiple files at once” on page 20.

Verifying conversion changes
Done

N/A

Task

■

■

Review the Conversion.log file located in the folder that contains the converted files anddetermine areas of the converted database that might need special attention. See“Troubleshooting file conversion” on page 25.

■■

Using the security model description you created as you prepared for conversion, review
the accounts and privilege sets in the converted database and change passwords as needed
to improve security. “Access privileges” on page 31.

■■

Review converted file references and change any asterisks in remote file references todomain names or IP addresses. See “Wild card characters in converted file references” onpage 36.

Planning for database conversion

15

Done

N/A

Task

■

■

Using the database structure diagram that you created as you prepared for conversion,
eliminate redundant relationships in the relationships graph.

■■

If the database uses a user-defined dictionary, make sure it is being accessed afterconversion. See “Preserving user dictionary information” on page 37.

■■

If the database uses external functions, make sure they will evaluate properly. See“Accelerated calculation evaluation” on page 52.

■■

If records might contain alphabetic characters in number fields, determine if they need tobe modified. For example, if some records contain data with a leading T or Y to indicate“true” or a leading F or N to indicate “false,” the calculations that use these fields must be
modified manually. See “Number fields” on page 43.

■■

Determine if you want FileMaker Pro 7 to ignore case-sensitivity when sorting. See“Accented characters” on page 40.

■■

Determine if summary reports need to be manually adjusted. See “Sorted data and foundsets” and “Sorting records by subsummary values” on page 40.

■■

Determine if the database contains Get functions (converted from Status functions) that
contain calculations in parameters. See “Status functions changed to Get functions” onpage 46 and “Change to rules for allowed parameters in Get functions” on page 49.

■■

If the database includes calculations that use the Status(CurrentFilePath) function, you
might need to make adjustments to handle changes in local file path syntax. For example,
any If statements that evaluate the string returned from the Status(CurrentFilePath)function need to be adjusted to handle local files correctly. See “Status functions changed
to Get functions” on page 46.

■■

If the database uses the Mod function in a calculation, be aware that the definition of thisfunction has changed in FileMaker Pro 7. See “Changes to the Mod function” on page 55.

■■

If the database contains Japanese functions, determine whether you need to examine andmodify parameter specifications. See “Japanese functions that are converted” on page 48.

■■

Determine whether you want filename extensions to appear in calculation results andmake adjustments, if necessary. See “Functions that return filename extensions” onpage 55.

■■

Determine if the database contains calculations that might be dependent on the context ofthe current window. See “Functions that are dependent on context” on page 54.

■■

If the calculations in the database contain textual parameters when numeric parameters
are expected, review calculation results after conversion. See “Numeric expressions withtext input” on page 56.

■■

Determine if any script steps have text specified in ancillary dialog boxes. See “Somescript step options convert to calculations” on page 64.

■■

Determine if the database uses the Get(UserName) function to track user activities. See“Get(UserName) function” on page 57.

16

Converting FileMaker Databases from Previous Versions

Done

N/A

Task

■

■

Determine if certain database fields should be indexed.
1 If you converted the index, review it and make necessary adjustments to it. See“Indexes” on page 41.
1 If you didn’t convert the index, consider creating one.

■■If the database uses associated ActiveX files, reset the ActiveX library reference. See“ActiveX library renamed” on page 77.

■■

Review and adjust settings for ODBC/JDBC. See “LDAC and RDAC changed to ODBC/JDBC and FileMaker Server Advanced” on page 76.

■■

Verify third-party plug-ins are working correctly.

■■

Mac OS: Review and adjust settings for Apple events. See “Apple event changes in
FileMaker Pro 7 (Mac OS)” on page 77.

■■

If you plan to publish this database to the web, update settings to accommodate the new
web publishing model in FileMaker Pro 7. See “Changes to databases that are publishedto the web” on page 65, “Defining accounts and privilege sets for files protected by the
Web Security Database” on page 69.

■■

Determine if there are design changes you want to make to eliminate redundant or
obsolete items or implement new features before you begin testing the database.

Testing the converted database
Done

N/A

Task

■

■

If you cloned the database before conversion, import sample data that will allow you to
exercise all functionality in the database.
1 Whether you cloned the database or not, consider testing a subset of your data, but makesure the sample you test fully represents your data and allows you to exercise every
aspect of the database.
1 Disable all accounts except the Admin account and turn off indexing during testing.

■■Set up a back-up plan to save changes that you make to the database during testing to let
you revert to the last saved version without losing too much work, if you make mistakes.

■■

Test every aspect of the database. For example, test:
1 Access privileges for shared files (via FileMaker Server, FileMaker Network, Web
Publishing, or ODBC/JDBC)
1 Layouts (check all fonts and graphics)
1 Value lists
1 Buttons
1 Data entry fields (manual, auto-entry, and validation settings)
1 Calculations (trigger all calculations, including calls to external functions)
1 Reports (both online appearance and printed output)
1 Scripts

Planning for database conversion

17

Done

N/A

Task

■

■

If you converted a multi-user database, consider having a “test day” so many users cantest the converted database simultaneously.

Populate the converted database with current data
Done

N/A

Task

■

■

After testing is completed, delete all test data by deleting records or saving as a clone.

Tip Saving as a clone is a better method because the resulting files are more compressed.
Remember to save the clone to the correct destination folder, then remove the test file andremove “<space> clone” from the clone’s filename.
■■Shut down the pre-FileMaker Pro 7 database to ensure users make no changes as you
move data to the verified copy of the database or clone.

■■

Convert the database that contains current data. You can’t import data directly from aprevious version of FileMaker Pro, so you must convert the current database and transfer
the data to the verified copy of the database or clone.

Tip Skipping index conversion when you convert the database can save time.
■■

Import current data from converted copies of your current databases.
1 Determine if you want auto-enter values to be copied from the database or have theauto-enter calculation triggered when data is imported

Important Do not convert auto-enter values in a relational database. Doing so in a
relational database can disassociate the related fields.
■■

Reset automatically entered serial number options for fields based on current data.

■■

If you converted auto-enter values, populate new fields that contain auto-enter values.

■■

Adjust back-up schedule to normal operation settings, if necessary.

Deploy the converted database
Done

N/A

Task

■

■

Make sure all database users have FileMaker Pro 7 installed on their computers and thatuser-defined dictionaries are accessible. See “Preserving user dictionary information” onpage 37.

■■

Distribute new account name and password information for the converted database, if
necessary.

■■

Verify that associated files, such as plug-ins and Apple events, are communicating withthe “live” database.

■■

Announce that the converted database is available and online.

■■

Closely monitor activity to make sure you haven’t overlooked anything during testing.

18

Converting FileMaker Databases from Previous Versions

Special considerations for converting business-critical databases
If the database you are converting is essential to your business and you can’t take it off-line during
the time it takes to convert and test it, the following guidelines can help you plan for conversion.
For more information on upgrade, conversion, and migration considerations, seewww.filemaker.com for TechInfo Knowledge Base articles and other resources.

1 Use the checklists in “Conversion checklist for complex databases” on page 10 to prepare for
database conversion. Acquire a computer for conversion and a second dedicated server
environment for testing, and plan an extremely aggressive back-up schedule (every 15 to 30
minutes) so you can easily revert manual changes made after conversion.

1 If it is essential that you get the converted database online as quickly as possible, do not plan
design changes or feature enhancements at this time. Convert the database to FileMaker Pro 7
and verify it as described in this chapter before making it available to users. If you haveflexibility in the conversion and test period, consider whether this is a good time to make designchanges that take advantage of new features in FileMaker Pro 7.

1 If you have FileMaker Developer 7, generate a Database Design Report, which can help you
identify areas that might need manual manipulation as described in this document. This can beespecially helpful if you are converting a database that you didn’t design and develop yourself.

1 Ensure that when the converted database goes online, it contains current data, including any
changes or additions made during the conversion period.

Chapter 2
Converting your database files
FileMaker Pro 7 can convert files created with versions 3.x, 4.x, 5.x, and 6.x. If you have files
created using FileMaker Pro version 2.x or earlier, you must first convert them to one of the
supported formats. Then you can convert the files to FileMaker Pro 7 format as described in thisguide. For more information, see “Converting FileMaker Pro 1.x and 2.x databases” on page 23.

Converting files
When you convert files, FileMaker Pro 7 always preserves your original files and creates new,converted files in FileMaker Pro 7 format. The original files are not modified, and you can open
them in the previous version of FileMaker Pro that created them. The converted files can be opened
only in FileMaker Pro 7.
You can convert a single file or convert multiple files at once.

1 Use the single-file conversion method for stand-alone database files that don’t display related
data from other files. For more information, see the next section.

1 Use the multiple-file conversion method to convert all the files in a relational database. For more
information, see “Converting multiple files at once” on page 20.

Converting a single file
To convert and open a single file:
1. If the file you want to convert is currently open in the previous version of FileMaker Pro, close
the file.

Files that are open won’t convert properly.
2. Start FileMaker Pro 7.
3. Do one of the following:

1 If you see the Open New or Existing File dialog box, continue with step 4.
1 If you see the New Database dialog box, select Open an existing file, and then click OK.
1 If you don’t see any dialog box, choose File menu > Open.
4. In the Open dialog box, select the file to convert, and then click Open.
Note You can also begin conversion by dragging a file onto the FileMaker Pro 7 application
icon.

The Conversion dialog box appears, where you can rename the existing file prior to conversion.
FileMaker Pro automatically adds “Old” to the filename.

20

Converting FileMaker Databases from Previous Versions

5. Do one of the following:

1 Skip renaming the old file by clearing the checkbox named Rename old file and clicking OK.
It’s not necessary to rename the old file if it has an.fp5,.fp3, or.fmj extension because yourconverted file will have an .fp7 extension. In Windows, the filename extension .fp7 is added
to all converted files.

1 Rename the old file by entering the name you want and clicking OK. Do this if you’re using
the Mac OS, the file does not have an extension, and you want to continue using the existing
filename for the converted file.
The Name Converted File dialog box appears.
6. Enter the filename that you want for the new file.

If you renamed the old file in step 5, the default filename for the converted file is the original
filename (with a .fp7 extension, if the original file had an extension). If you did not rename theold file, the default filename is filename Converted.
7. Click Save to start the conversion.

If the file you’re converting is large, the File Format Conversion dialog box appears and shows
the progress of the conversion. You can save time when converting a large file by clicking Skip
when the index is being converted, which postpones index creation until later.
In most cases, FileMaker Pro converts the file and opens it. If conversion doesn’t work or error
messages appear, see “Solving conversion problems” on page 25.
8. Using a text editor such as Notepad (Windows) or TextEdit (Mac OS), open the Conversion.log
file located in the folder that contains your converted database.
Tip You can drag the Conversion.log file onto the FileMaker Pro 7 application to open it in
FileMaker Pro.

The conversion log contains conversion status messages and errors, which indicate whether you
need to make manual corrections to the converted file before using it. For more information about
the log file, see “Using the conversion log file” on page 26.

Converting multiple files at once
FileMaker Pro 7 can convert multiple files at the same time. You should use the multi-fileconversion method when you need to convert a database composed of multiple related files, or if
you simply have many FileMaker Pro files that you want to quickly convert without being
prompted to individually rename each file.
When you convert multiple files at the same time, FileMaker Pro prompts you to specify a folder
where you want the converted files to be saved, leaving your original files unchanged.
FileMaker Pro automatically names each converted file without prompting you, usually with thesame name as the original file except with a .fp7 extension added (Windows) or if the original file
has an extension (Mac OS). FileMaker Pro won’t overwrite any existing files in the folder. Instead,it adds a number to the end of the filename, and increments that number until a unique name isfound.
There are several ways that you can select the files that you want to conver. You can drag and drop
the files (or a folder containing the files) onto the FileMaker Pro 7 application icon, or you canselect multiple files in the FileMaker Pro Open dialog box.

Converting your database files

21

To convert multiple files at once:
1. If the files you want to convert are currently open in the previous version of FileMaker Pro,
close the files.

Files that are open won’t convert properly.
2. In Windows Explorer or in a Finder window (Mac OS) create a new, empty folder for theconverted files.
3. Do one of the following to select and open the files you want to convert:

1 Files method: In Windows Explorer or in a Finder window (Mac OS) select the files you
want to convert, and then drag them onto the FileMaker Pro 7 application icon.

1 Folder method: If a folder contains all of the files you want to convert, drag the folder onto
the FileMaker Pro 7 application icon. If you are converting a multi-file relational database inwhich files are organized in subfolders, you need to convert each folder separately. First
create new folders in the same structure for the converted files. Then convert files in
subfolders at the lowest level first by dragging the subfolder onto the FileMaker Pro 7
application icon and indicating the correct new destination folder when prompted. When all
related files in subfolders have been converted, use the “Files method” described above toconvert files located in the original parent folder.

1 Open dialog box method: In FileMaker Pro 7, choose File menu > Open, and select the files

you want to convert in the Open dialog box by holding down Ctrl (Windows) or 2 (Mac OS),and clicking each file. (You can also select a range of adjacent files by clicking the first fileand then Shift-clicking the last file in the range.) Then click Open.

22

Converting FileMaker Databases from Previous Versions

The Open Multiple files dialog box appears.

ChooseTo

Open all files and convert
when necessary

Open all FileMaker Pro files or files in a supported file format(such as tab-delimited text or a Microsoft Excel file) in the folder.
All other files are ignored.

Only open current FileMaker Pro files(no conversion)

Open only FileMaker Pro 7 files found in the folder. If files fromprevious versions are found in the folder, they are ignored. If you
choose this option, skip to step 6.

4. Click Specify, choose the folder where you want to save the converted files, and click OK(Windows) or Choose (Mac OS).
Important Do not choose a folder that contains any of your original files. If you do, thenconverted files may be renamed (by appending a number to the filename) to prevent theconverted files from replacing the original files. This renaming of files could cause filereferences to convert improperly, which affects relationships and other features that rely on filereferences.

If necessary, you can create a new, empty folder by clicking Make New Folder (Windows) or
New Folder (Mac OS).
5. Click Open in the Open Multiple files dialog box.

If the files you’re converting are large, the File Format Conversion dialog box appears andshows the progress of each conversion. You can save time when converting a large file byclicking Skip when the index is being converted, which postpones index creation until later.
FileMaker Pro 7 creates converted files in the folder you specified and opens them, leaving
your original files unchanged. In Windows, the filename extension .fp7 is added to all
converted files. In the Mac OS, the .fp7 extension is added to all converted files that previously
had an.fp3,.fp5, or.fmj extension.
6. Using a text editor such as Notepad (Windows) or TextEdit (Mac OS) open the Conversion.log
file located in the folder that contains your converted database files.

The log file contains conversion status messages and errors, which help determine whether you
need to make manual corrections to the converted files before using them. For more information
about the log file, see “Using the conversion log file” on page 26.

Converting your database files

23

Note If you later need to convert the same files again, make sure you convert the files into an empty
folder; move or delete any files from the previous conversion attempt, or create a new folder for the
next conversion. This prevents converted files from being renamed during the next conversion
which could cause file references to convert improperly.

Converting FileMaker Pro 1.x and 2.x databases
FileMaker Pro 7 cannot convert databases created with FileMaker Pro 1.x or 2.x. To use these files
with FileMaker Pro 7, you must convert them using FileMaker Pro 3.x, 4.x, 5.x, or 6.x, and thenconvert them again using FileMaker Pro 7.
Previous versions of FileMaker Pro for Windows can convert only 2.x files. If you need to convert
a 1.x file, convert the file on a Mac OS computer using FileMaker Pro 3.x, 4.x, 5.x or 6.x.
If you don’t have a previous FileMaker Pro application with which to do the conversion, you candownload a trial version of FileMaker Pro 6 from www.filemaker.com and use it to convert files.

24

Converting FileMaker Databases from Previous Versions

Chapter 3
Troubleshooting file conversion
Solving conversion problems
FileMaker Pro 7 can’t open my file
FileMaker Pro 7 can’t convert databases that were created with FileMaker Pro 1x or 2x. For more
information, see “Converting FileMaker Pro 1.x and 2.x databases” on page 23.
My file didn’t convert properly

1 Make sure the file is closed before you attempt to convert it.
1 If you are converting a copy of a file, make sure that the original file was closed before you
copied it. Otherwise, the copy will not convert correctly.

1 Check the Conversion.log file located in the conversion destination folder. See “Using theconversion log file” below.

1 Try recovering the file first using a previous version of FileMaker Pro and then convert the fileagain. See “Recovering files” in FileMaker Pro Help.
I received a consistency check or auto-repair message when I opened my original file using my previous
version of FileMaker Pro
Try recovering the original file using your previous version of FileMaker Pro, then open it using
the same version of FileMaker Pro before trying to convert with FileMaker Pro 7.
I’m not sure if the conversion was successful
Consult the Conversion.log file located in the same folder as the converted file and the “Conversion
checklist for complex databases” on page 10.
Note If you convert a database that used the Expense Report template, you might find two blanklayouts in your file. You can delete these layouts.

The converted file won’t accept my password
Passwords are case-sensitive in FileMaker Pro 7. Make sure you enter your password exactly as it
was created in a previous version of FileMaker Pro. If you are the owner of the original file or the
database administrator, open the original file using a previous version of FileMaker Pro and lookat the password in the Define Passwords dialog box. If you are not the owner of the file or the
database administrator, consult your database administrator for password information.
If you need to change a password, see “Editing existing accounts” in the FileMaker Pro 7 Help.
The converted file opens very slowly
The converted file could contain file references that point to external locations, which could bechanged to local paths, or wild card characters could be used in FileMaker Network (FMNET)
paths. For more information, see “Poor performance when opening files” and “Wild card charactersin converted file references” on page 36.

26

Converting FileMaker Databases from Previous Versions

Using the conversion log file
The conversion log reports conversion status and possible problems found during conversion, suchas fields with invalid names. In most cases, you can correct problems in converted files. If the log
file indicates that there is a problem that would be complicated and time-consuming to fix afterconversion, you may want to try correcting the problem in the original file using a previous versionof FileMaker Pro, and then convert the file again.
The log file is created in the same folder as your converted files. If you use the multi-file conversion
method to convert more than one file at a time, conversion status information for all files appears
in one log file. Conversion information is appended to the log as each file in the folder is converted.
Log entries appear in the following format:
date time, filename, error_number, conversion status/error message
Note If the status or error message refers to a condition in a file that was renamed during conversion,
the new filename (not the original filename) is reported in the log.

The following sections describe the status messages that may appear in the conversion log. Not all
status messages are reported for every file. For example, if there are no container objects in the file
you are converting, there are no messages about container fields in the log file.
Tip You can import the conversion log into a database to run reports on logged information forfurther analysis.

Status of items that are removed from or changed in the converted file
Status message

Action required

The “Today” function was replaced with aNone. For more information, see “Today function no“Today” field and a startup script to update it. longer supported” on page 53.
“Status(CurrentWebSharing)” was convertedto “(Position(Get(ApplicationVersion),"Web", 1, 1) > 0).”Depending on your usage of Status(CurrentWebSharing),
you might need to modify your calculation. For more
information, see “Changes to databases that are publishedto the web” on page 65.

A sort order based on a summary field was
updated to try to match old behavior.

Verify report results. For more information, see “Sorting
records by subsummary values” on page 40.

Reports of damaged objects in converted files
Error message

Action required

Field damaged: field_name.

Inspect the field in the converted file for lost attributes. For
example, a data entry option or the entire field could be
missing in the converted file.

Troubleshooting file conversion

Error message

27

Action required

Relationship damaged: name_of_relationship. Inspect the relationship and table occurrences in therelationships graph in the converted file for lost attributes.
(Relationship names become table occurrence names
during conversion.) For information about how to display
the relationships graph, see “Converted relationships” onpage 39 and “Viewing the relationships graph” in the
FileMaker Pro 7 Help.
Layout damaged: name_of_layout.

Inspect the layout in the converted file for lost attributes.
For example, one or more objects on the layout or the entire
layout could be missing in the converted file.

Script damaged: script_name.

Inspect the script in the converted file for lost attributes.
For example, one or more script steps or the entire script
could be missing in the converted file.

Calculation damaged: calculation_field_name. Inspect the calculation in the converted file for lost
attributes. The calculation could be “commented out” dueto syntax changes in FileMaker Pro 7.
Access privilege damaged: <Unknown>.

Inspect accounts and privilege sets in the converted file forlost attributes. For security reasons, specific account andprivilege set information is not logged.

Value list damaged: name_of_value_list.

Inspect the value list in the converted file for lost attributes.

File reference damaged: file_reference_name. Inspect the file reference in the converted file for lost
attributes.

Invalid object names in converted files
Error message

Action required

Poor field name: field_name.

None, but consider inspecting calculations that reference
the field in the converted file. The calculations may havebeen modified to allow the use of an reserved character orword in a field name. See “Invalid characters and words infield names used in calculations” on page 49.

Poor relationship name:name_of_relationship.

None, but consider inspecting table occurrences in therelationships graph in the converted file. (Relationshipnames become table occurrence names during conversion.)
For more information, see “Converted relationships” onpage 39.

Poor script name: script_name.

None, but consider inspecting the script in the converted
file. The script name might have been shortened. See“Script names have been shortened” on page 62.

Invalid password name: <Unknown>.

Verify the account and password in the converted file. For
security reasons, password information is not logged.

28

Converting FileMaker Databases from Previous Versions

Duplicate object names in converted files
Status message

Action required

Duplicate field: field_name.

Inspect the field in the converted file. Duplicates might
have been renamed. You can rename the field manually in
FileMaker Pro 7 after conversion, if you want. For
information about objects that might be renamed during
conversion, see “Reserved words” on page 49.

Duplicate relationship: name_of_relationship. Inspect the relationship in the relationships graph in theconverted file. Duplicates might have been renamed.
(Relationship names become table occurrence names
during conversion.) For more information, see “Converted
relationships” on page 39 and “Viewing the relationships
graph” in the FileMaker Pro 7 Help.
Duplicate privilege: privilege_set_nameX.

Inspect privilege sets in the converted file. Two identicalprivilege sets were created based on the group settings in
the original file. In the converted file, they share the same
name but one has a number appended to it (for example,
GroupA/GroupA2).

Duplicate file reference: file_reference_nameInspect the file reference in the converted file. Duplicatesmight have been renamed (see “File references” on page 35
and “Miscellaneous error messages” below). You canrename the file references manually in FileMaker Pro 7
after conversion, if you want.

Account status messages
Status message

Action required

Guest account disabled.

Review account settings in the converted file. For more
information see “Access privileges” on page 31 and“About accounts, privilege sets, and extended privileges”
in the FileMaker Pro 7 Help.

Default user account missing.

Review account settings in the converted file. For more
information see “Access privileges” on page 31 and“About accounts, privilege sets, and extended privileges”
in the FileMaker Pro 7 Help.

Troubleshooting file conversion

29

Miscellaneous error messages
Error message

Action required

Record damaged: record_number.

Use your previous version of FileMaker Pro to inspect therecord identified in the original file, then compare it to thesame record in the converted file. The record number is thecurrent record number displayed next to the book in thestatus area and is based on the complete data set. To findthe correct record in the original database, make sure that
all records are displayed in the original database (choose
Records menu > Show All Records) and that data is not
sorted. Then use the bookmark to navigate to the record
identified in the Conversion.log file.

Unknown Error: error_text.

Record the error text in case you need to contact TechnicalSupport at FileMaker, Inc.

Skipped out-of-range field repetition: x.

Inspect data in this repetition in the original file. It was
identified as damaged and was not converted.

Skipped unknown field key.

Ensure that all fields were converted.

Calculation parsing error: field_name.

Inspect the calculation in the converted file for errors.
Possibilities are calculation validation, auto-enter, or
calculation field errors.

Conversion aborted.

None, if you cancelled the conversion manually. If not,inspect the conversion log for possible conversion
problems.

Miscellaneous status message
Status message

Action required

Deleting unneeded file reference:
file_reference_name.

None. When a duplicate file reference is deleted, thereference is pointed to the original file reference. For
example, if the original file had two file references(FileRef1 and FileRef2) that pointed to the same file,
FileRef2 is deleted during conversion and FileRef1 is usedanywhere FileRef2 was originally used.

Verify Windows Print Setup settings:
script_namePrinter settings may not convert properly in Windows.
After conversion, check settings in scripts that use the Print
Setup and Print script steps. For more information, see“Printer settings (Windows)” on page 42.

Verify Windows Print settings: script_namePrinter settings may not convert properly in Windows.
After conversion, check settings in scripts that use the Print
Setup and Print script steps. For more information, see“Printer settings (Windows)” on page 42.

30

Converting FileMaker Databases from Previous Versions

Chapter 4
Changes that occur during conversion
In many cases, files convert completely and are ready to use with no additional modification. Manyof the changes discussed in this chapter are for information purposes only and are documented tohelp you recognize areas that change during conversion. However, you might have to makemodifications to your files to make your database function as it did with previous versions ofFileMaker Pro.
Important You can download PDFs of FileMaker 7 documentation from www.filemaker.com/
downloads. Any updates to this document are also available from the web site. For more
information on upgrade, conversion and migration considerations, see www.filemaker.com for
TechInfo Knowledge Base articles and other resources.

Access privileges
FileMaker Pro 7 introduces many changes and improvements to database access and security.
In previous versions of FileMaker Pro

In FileMaker Pro 7

Passwords restrict access to a file anddefine what can be done in the file (forexample, create, delete, or print records).

Accounts restrict access to a file by requiring a user to enteran account name and (usually) a password. Valid accountinformation is required to open a protected file.

Groups define more specific access to thefile, such as which layouts or fields can beviewed.

Privilege sets specify a level of access to a file, such as which
layouts are viewable, which menus are available, and whether
printing is permitted.
Extended privileges determine the data sharing options thatare permitted by a privilege set, such as whether a privilege set
permits users to open a shared file or view a database in a web
browser.

During the conversion of a previous file, access privileges convert as follows:

1 Each password converts into an account.
1 Passwords and groups convert into the appropriate number of privilege sets needed to provide
the same levels of access that the passwords and groups provided in the previous file.

1 FileMaker Pro 7 adds certain default accounts and privilege sets during the conversion process.
The three sections that follow provide details on the conversion of access privileges.
Note If you used the Web Security Database in a previous version of FileMaker Pro to control
access to web-published databases, see “Defining accounts and privilege sets for files protected by
the Web Security Database” on page 69 for more information on converting these access settings.

Passwords
During conversion, passwords are converted to accounts in FileMaker Pro 7. Because an accountrequires both an account name and a password in FileMaker Pro 7, for each converted account, boththe account name and the password in the converted file are initially set to the password from theoriginal file.

32

Converting FileMaker Databases from Previous Versions

Important The conversion process makes all passwords visible to anyone who has privileges to open
the Define Accounts & Privileges dialog box. For security reasons, you should either change eachaccount name so that it no longer matches its password, or change each password so that it no longer
matches its account name. (You could also set an option for each account to require a password
change by the user upon the next login.)

Also note the following about converted passwords:

1 If the file you’re converting uses the Try default password document preference to automatically
open the file with a certain password, this password is retained in the converted file as a Log inusing account name and password in the File Options dialog box. If you later change the accountname or password of this account, make sure you also update the Log in using settings in the File
Options dialog box. Otherwise, the file will prompt for account information when the file isopened.

1 Previous versions of FileMaker Pro permit defining a blank “(no password)” password, whichallows users without a password to open a database with limited privileges. If a blank password
exists in a file created with a previous version of FileMaker Pro, the Guest account will beenabled in the converted file. If a blank password does not exist, the Guest account is present but
disabled in the converted file.

1 Passwords in FileMaker Pro 7 are case-sensitive. In previous versions of FileMaker Pro,
passwords are not case-sensitive. When a password such as “Them” is converted, you must enter
it as “Them” in order for it to work. The previous version would have accepted “them” and“THEM,” but FileMaker Pro 7 will not.
If you convert a file that does not contain any passwords (an unprotected file), the converted fileinitially contains two default accounts:

1 Admin: this account is created with an account name only (no password) and is assigned the Full
Access privilege set. The file will automatically open to the highest level of account access. You
can restrict access to the file by defining accounts and disabling the Log in using option in the File
Options dialog box.

1 Guest: this account is present but disabled in unprotected files.
GroupsDuring conversion, privilege sets are created based on how passwords and groups are defined in theoriginal file. The converted file will contain one privilege set for each unique combination ofpassword/group settings in the original file. Although this provides the appropriate number ofprivilege sets for the same levels of access available in the previous file, the number of privilege
sets most likely won’t match the number of groups. Depending on how groups are assigned topasswords in the original file, your converted file may contain a greater or fewer number ofprivilege sets.
The converted privilege set names are based on the group names in the file being converted:

1 If the original file includes passwords to which a single group is assigned, then some privilege
set names will be identical to group names in the previous file.

1 If the original file includes passwords to which multiple groups are assigned, then some privilege
set names will combine the names of several group names in the original file.

Changes that occur during conversion

33

1 If the original file includes passwords to which no group is assigned, then the converted file willcontain one or more generic privilege sets named Privilege Set 1, Privilege Set 2, and so on.
Some groups may not appear in the converted file. This can occur when:

1 Two or more groups in the original file have identical settings. When this occurs, only the firstoccurrence of the group is retained in the converted file, and the duplicates are ignored.

1 A group has no passwords assigned to it (other than the master password). Unused groups do notconvert to privilege sets in the converted file.
Also note the following about the conversion of passwords and groups to privilege sets:

1 Three default privilege sets are always added to the converted file: Full Access, Data Entry Only,
and Read-Only Access.

1 If the file you’re converting is configured to be shared using FileMaker Network sharing set toMulti-User or Multi-User(Hidden)), the Access via FileMaker Network extended privilege is enabled
for all privilege sets in the converted file. When FileMaker Network sharing is enabled and theconverted file is open, any client with valid account information can open the shared file. (If the
Guest account is enabled, then account information would not be needed to open the file.) You
may want to disable the Access via FileMaker Network extended privilege and the Manage
extended privileges option for certain privilege sets. In addition, if the file was set to MultiUser(Hidden) the FileMaker Network Sharing option Don’t display in Open Remote File dialog is set
in the file.

1 All the other default extended privilege settings (Access via Instant Web Publishing, Access via
ODBC/JDBC, and Access via FileMaker Mobile) are always disabled in the converted file, even if
the file you’re converting is configured for sharing on the web, via ODBC, or with FileMaker
Mobile. You’ll need to enable these extended privileges in each appropriate privilege set.

1 For FileMaker Developer, stand-alone runtime solutions created with a previous version of theDeveloper Tool can be converted into FileMaker Pro 7 files. (The converted files will no longer
be bound as a runtime solution, so all users will need to have FileMaker Pro 7 licenses afterconversion.) If the Developer Tool was set to create the runtime solution with the Permanently
prevent modification of database structure option enabled, then converted files won’t include an
account assigned the Full Access privilege set, and it won’t be possible to make modifications
that require Full Access privileges.
Example conversion of passwords and groups to accounts and privilege sets
The following table shows the password and group settings in an example FileMaker Pro database.
There are nine passwords and two groups. Each password is assigned one group, multiple groups,
or no groups. Every password has unique settings except for “User 2a” (identical to “User 2”) and“User 3a” (identical to “User 3”).
PasswordGroup(s) assigned to each password

dbadmin (master password)

This password can access the entire file

User1

Group A

User 2

Group B

User 2aGroup B

34

Converting FileMaker Databases from Previous Versions

PasswordGroup(s) assigned to each password

User 3

Group AGroup B

User 3aGroup AGroup B

User 4

Group AGroup B

User 5

No group assigned

User 6

No group assigned

After conversion to FileMaker Pro 7, the database contains ten accounts and eleven privilege sets:
Account

Assigned privilege set

Comments

dbadmin

Full Access

Every master password in the previous file converts to an
account that is assigned the Full Access privilege set.

User1

Group A

User 2

Group B

User 2aGroup B

User 3

Group A/Group B

User 3aGroup A/Group B

User 4

Group A/Group B 2

Even though the “User 4” password is assigned the samegroups as “User 3” and “User 3a,” the converted file contains
another privilege set that includes the unique settings of the“User 4” password.

User 5

Privilege Set

User 6

Privilege Set 2

Because no groups are assigned to the “User 5” and “User 6”
passwords and these passwords have different settings, theconverted file contains two generic privilege sets based on theunique settings in each password.

Data Entry Only
Guest

Read-Only Access

Because the “User 2” and “User 2a” passwords have identicalsettings and are assigned the same group, the converted filecreates and assigns the same privilege set to them.
Because the “User 3” and “User 3a” passwords have identicalsettings and are assigned the same groups, the converted filecreates and assigns the same privilege set to them.

Three default privilege sets are added to every converted file:
Full Access (dbadmin account), Data Entry Only, and ReadOnly Access (Guest).

Sharing a database stored on a CD-ROM
In previous versions of FileMaker Pro, a single user database stored on a CD-ROM could be opened
and hosted as a multi-user database. To share a similar database in the current version of FileMaker
Pro, you must enable sharing before copying a file to a CD-ROM.

Changes that occur during conversion

35

File references
FileMaker Pro uses file references to locate database information such as external files, tables,
scripts, or value lists. File references were not visible in previous versions of FileMaker Pro, but in
FileMaker Pro 7 you have greater control over them.
The following table describes how existing file references are converted:
If the source file and target of thefile reference are locatedBefore conversion, thefile reference stores

On the same drive (Windows),
The relative pathvolume (Mac OS), or FileMaker
host and Save relative path only was
specified for the file reference

After conversion, the file reference stores
The relative path
Examplefile:invoices

On the same drive (Windows) orBoth the relative path and Both a relative and full pathvolume (Mac OS) and Save relative the full path
Examplepath only wasn’t specified for the
file:/C:/databases/sales/current_sales;
file reference
file:../sales/current_sales
On a different drive (Windows) or The full pathvolume (Mac OS) regardless of theSave relative path only setting

The full path

On a FileMaker host and the Save
relative path only wasn’t specified
for the file reference

The network path

The network path

Examplefile:/D:/databases/sales/current_sales;
file:../sales/current_sales
Examplefmnet: /10.0.0.7/current _sales; file:../sales/current_sales

In previous versions of FileMaker Pro, the Save relative path only checkbox is available:

1 in all dialog boxes that have a Host button, when the file is being added to a database solution
1 when you specify a file from the Import Records, Open, Close, or Recover script step
1 when you specify a value list from another file or a relationship for a file
Note A converted file reference might point to the same file in multiple ways (for example, different
locations in which the file existed at different times before conversion).

File reference naming
Because file reference names must be unique, if multiple references to the same file are encounteredduring conversion, numbers are appended to file reference names (for example, the file referencesnamed fileA, fileA2, fileA3, could all refer to one file (<path>/fileA)).
Duplicate file references
Some duplicate file references are deleted automatically during conversion and others are not. For
example, file references indicating relationships, value lists that reference external files, and certain
script steps (such as the Import Records and Export Records script steps) convert to named filereferences. Named file references, which appear in the Define File References dialog box, areduplicated during conversion.

36

Converting FileMaker Databases from Previous Versions

If you decide to delete duplicates after conversion, do so with care. A Database Design Report
created using FileMaker Developer is helpful in locating and verifying file references before you
delete them. For more information about working with file references, see “Defining filereferences” in the FileMaker Pro 7 Help.
Poor performance when opening files
If it takes a long time to open a converted file, it’s possible that file references are pointing toexternal locations. You can increase the speed with which files open by resetting file references tolocal paths, if possible, or enter the IP Address or domain name of the computer on which theremote file resides.
Mac OS: FileMaker Pro 7 no longer stores an Alias Record with a file reference, and therefore
some alias-related features (such as automatic searching for moved or renamed files) are no longer
supported. The resulting behavior is more consistent with user expectation when working in
databases.
Wild card characters in converted file references
File references that contain an asterisk (*) wild card are converted with the asterisk in place, whichmight reduce the speed with which FileMaker Pro can resolve network file paths.
The format of the converted path is dependent on the way it was originally specified. For example,
if the file you are converting is shared through FileMaker Networking or is hosted by FileMaker
Server and a network file path is specified in a script or value list, the format of the converted filereference will change according to how the path was originally specified.

1 If you selected the file from the file list in the Open File dialog box after specifying the IP addressof the host computer, the path is in the following format:
fmnet:/<IP_address>/SalesReports

File references in this format can be left as is.

1 If you selected the file from the file list in the Open File dialog box without specifying the IP
address of the host computer, the path is in the following format:
fmnet:/*/SalesReports

If you find file references in this format after conversion, you should replace asterisks with thedomain name (for example, fmserver1.mycompany.com) or IP address of the host computer.
If the referenced file is located on the same server as the referencing file, it’s best to change thefile reference to a relative path. For example:
file:SalesReports

When you use a relative path for files located on the same computer and later move the database toanother computer, you won’t have to update file references.

Document preferences
During conversion, document preferences are converted to file options. For more information, see“Setting file options” in FileMaker Pro 7 Help.
The following changes have been made to document preference options that existed in previous
versions of FileMaker Pro:

Changes that occur during conversion

37

1 The Store compatible graphics preference is no longer available. FileMaker Pro 7 copies eachgraphic in its original format and, if necessary, automatically creates an additional copy of thegraphic in a cross-platform compatible format, which is stored alongside the original graphic.
Depending on the number of graphics stored in your database, duplicate graphic storage could
increase file size, but might not.

1 The Spelling Dialog location preference is no longer available because the spelling checker in
FileMaker Pro 7 retains window location information during a session.

1 Mac OS: If you use the Mac OS version of FileMaker Pro 7 to convert a file that was createdwith a previous version of FileMaker Pro for Windows, the Flash menu bar spelling option isconverted to Beep when spelling is questioned.

1 The Try default password document preference is converted into a Login using file option that uses
the old password as both the account name and password in FileMaker Pro 7. This process
makes this password visible in the File Options dialog, which could be a security risk. You
should change both the account name and password to fully secure the database. For more
information, see “Passwords” on page 31.

Hidden files
In previous versions of FileMaker Pro, a file that had an underscore in its name just before the fileextension (for example, mydatabase_.fp3) was hidden in the list of hosted files in the Hosts dialog
box. This behavior is no longer supported in FileMaker Pro 7. To hide a converted file, you must
manually select Don’t display in Open Remote File dialog in the FileMaker Network Settings dialog box.
Note If the original file was set to Multi-User(Hidden), the option Don’t Display in the Open Remote Filedialog is selected in the converted file. See “Groups” on page 32.

Preserving user dictionary information
During conversion, the reference to a user dictionary is handled differently depending on whether
you are using the default user dictionary or a custom user dictionary.

1 Default user dictionary: When you convert a database file that uses the default user dictionary(user.upr), the converted file points to the user.upr file in the new FileMaker Pro 7 folder.
Therefore, you should copy the user.upr file from the previous FileMaker Pro application folder
to the FileMaker Pro 7 folder, or export information from the user.upr file to the FileMaker Pro 7
user.upr file before using the converted database. You can copy the file or export its contents
before or after conversion. For more information, see “Editing user dictionaries” in the
FileMaker Pro 7 Help.

1 Custom dictionary: When you convert a database file that references a custom dictionary, theconverted file continues to look for the dictionary in its previous location. If you move or delete
the dictionary from that location, the converted file will no longer have access to information in
the custom dictionary. This could happen accidentally if the original custom dictionary is locatedin the previous FileMaker Pro folder during conversion and you later uninstall the previous
version of FileMaker Pro.

38

Converting FileMaker Databases from Previous Versions

To preserve dictionary information, move the existing custom user dictionary to theFileMaker Pro 7 folder either before or after conversion. After conversion, open the file and specify
that it use your custom dictionary. For more information, see “Creating and selecting spelling
dictionaries” in the FileMaker Pro 7 Help.
Note If you have added words to your user dictionary in FileMaker Pro 3.x or earlier or in a Claris
product, you can add those words to your FileMaker Pro user dictionary. First export the words
from the previous user dictionary to a text file, then import the text file into the FileMaker Pro user
dictionary.

Changes in layouts
Modified text styles and font display on layouts
The following issues could cause font display problems in converted files:

1 If you used small point-sized fonts or thin, Serif-based fonts in layouts, they might look different
after conversion due to the anti-aliasing technology now used in FileMaker Pro 7. Anti-aliasing
generally improves the appearance of fonts, but some might appear blurry.

1 FileMaker Pro 7 might have trouble converting fonts that were originally defined in a version of
FileMaker Pro previous to version 1.x. If the original font can’t be found, the font that was used
when the file was converted to FileMaker Pro 1.x or later is used.

1 Windows: If your file uses non-TrueType fonts they will be substituted with TrueType fonts
during conversion. When creating new files in FileMaker Pro 7, always use TrueType fonts,
which are supported on both Windows and the Mac OS and are therefore cross-platform.
Note Font substitution may still occur if a font specified on one platform is unavailable on theother.

Tip Third-party utilities are available for converting fonts from other formats to TrueTypeformat.

1 Mac OS: Outline and Shadow text styles change to Plain text style during conversion.
Changes to line display
FileMaker Pro 7 improves the smoothness of objects on layouts, such as diagonal lines, curves, androtated objects. However, straight vertical and horizontal lines on layouts might appear slightly
thicker than they did in original files and colored lines might look slightly faded.
Changes in the behavior of fields in header and footer parts
FileMaker Pro 7 allows data entry into fields in headers and footers. If a field has previously been
defined as a button, this change can have the unexpected consequence of placing the user’s cursor
within the field, rather than activating the button. After file conversion, you can recreate thebehavior of the previous version of FileMaker Pro by explicitly disabling data entry for any fields
in headers/footers for which data entry should not be allowed. (In Layout mode, select the field andchoose Format menu > Field Behavior, and set the appropriate options for Allow field to be entered.)Changes that occur during conversion

39

Converted relationships
FileMaker Pro 7 allows multiple tables per file, so relationships can now exist between tables in asingle file. However, when you convert relational databases composed of several files to
FileMaker Pro 7, the separate files are not combined into a single file with multiple tables.
Relationships
If you named relationships in a file created with a previous version of FileMaker Pro, afterconversion the relationship name is the name given to the table occurrence in the relationships
graph. The characteristics of the relationship (settings allowing records to be created or deleted andsorting requirements for the relationship) are the characteristics defined for the converted
relationship. The related file might not appear in the relationships graph by name and won’t appear
in the Tables tab in the Define Databases dialog box. To display the name of the source table andthe name of its related file, move the pointer over the arrow to the left of the table name in a tableoccurrence.
Note When you first display the relationships graph after file conversion, the root table will becentered at the top of the graph. Tables that are related to the root table will be drawn in groups, one
key field at a time. Within a group, the related tables will be alphabetized from top to bottom,
A to Z.

Self-joins
When related files that contain self-joins are converted, duplicate table occurrences are created in
the relationships graph for each self-join defined. Names of duplicate tables (fully qualified names)
are based on the name of the relationship in the original file.
Portal behavior
In FileMaker Pro 7, portals no longer scroll back to the first row when you exit the portal. Instead,the status and position of the portal is retained as long as the user remains in a record.

Change to how word breaks are determined
The way in which FileMaker Pro 7 determines word breaks when creating indexes, performing findrequests, and evaluating word-based text functions (such as LeftWords, MiddleWords, and so on)
has changed. For example, the hyphen is now considered a word break, so “father-in-law” isconsidered three words. Therefore, results of features that depend on word-break logic (such as
Find requests and some calculations) might differ slightly from those in previous versions ofFileMaker Pro.

Two-digit date conversion
If your database contains pre-1900 or post-1999 date data in two-digit year format, you shouldchange it to four-digit format before conversion. Two-digit year dates from 1900 to 1999 will
convert correctly.
For more information about date conversion, see “Conversion of dates with two-digit years” in the
FileMaker Pro 7 Help. If you need details on how previous versions of FileMaker Pro handle twodigit year dates, see the “Year 2000 Readiness Disclosure” document, available atwww.filemaker.com.

40

Converting FileMaker Databases from Previous Versions

Changes to sorting behavior
The following changes can affect the order in which records sort in converted files.

ASCII changed to Unicode
During conversion, the ASCII indexing and sorting language choice is changed to Unicode. For more
information, see “Choosing a language for indexing or sorting” in the FileMaker Pro 7 Help.

Accented characters
In previous versions of FileMaker Pro, accented and non-accented characters (such as Ç and C)
were sorted based on record creation order; accent marks were not considered. In FileMaker Pro 7,
sorting is based on the Unicode Collation Algorithm, which does consider accent marks. For more
information, see “Choosing a language for indexing or sorting” in the FileMaker Pro 7 Help.
After conversion, fields that contain accented characters may sort differently.

Sorted data and found sets
If the file you are converting was sorted or contained a found set, this information is not retained.
After conversion, data appears in the file in creation order, which can cause existing summary
reports to be incorrect. To display the pre-conversion sort order, sort or perform a find request to
narrow the data that is considered in summary reports.

Sorting records by subsummary values
Previous versions of FileMaker Pro allowed sorting by only one summary field based on the subsummary parts defined in a layout. In FileMaker Pro 7, you can specify a summary field as part ofthe sort criteria and reorder the groups by sorting on a non-summary field. For more information,
see “Sorting records by subsummary values” in the FileMaker Pro 7 Help.
In previous versions of FileMaker Pro, the summary sort order was dependent on the state of thewindow at the time the sort was performed. FileMaker Pro 7 can’t always convert summary sortreports accurately, because it can now display multiple windows per file. During conversion,
FileMaker Pro 7 applies the summary sort to the last entry in the list of non-summary fields fromthe previous sort criteria. For example, suppose your sort criteria was defined as follows:
Field name

Sort option setting

Salesperson

Ascending

RegionDescending

Total Sales (a summary field)

Ascending, with Include summary fields selected

When you convert this file, the sort order converts to:
Field name

Sort option setting

Salesperson

Ascending

RegionAscending, reordered by Total Sales (a summary field)

Changes that occur during conversion

41

In this case, the resulting sort order change is based on the setting of the summary field “Total
Sales” in the original sort definition.
In this example, the sort order of a report (Report A) in the converted file has a subsummary partbased on the state of the layout currently being viewed. However, if a layout also exists that only
summarizes by Salesperson but uses the same sort criteria that was used in Report A, a second
report (Report B) will not sort the same as it did before conversion. To achieve the sort order ofReport A, you must create different sort criteria for Report B that reorders Salesperson data by thesummary field Total Sales rather than by the Region field.

IndexesIf you are converting a large database file, you might consider skipping index conversion as it cantake a long time. (During conversion, the Cancel button changes to Skip when index conversion
begins.) After conversion, you can:1 create a new index in the converted file
1 use the automatic indexing option, which indexes fields when a user performs a search on a fieldwith this setting or the field is used as a match field in a relationshipIf you choose to convert an existing index, the type of index created in the converted file isdependent on the type of field indexed and the indexing settings in the Storage tab of the Options
for Fields dialog box in the original file.
Index settings in the original file

Type of field

All fields

Index settings after conversion to FileMaker Pro 7“Automatically turnindexing on if“Indexing”
Indexes createdsetting is: needed” setting is: during conversion“Indexing”
setting is“Automaticallycreate indexes
as needed”
setting is:

Off

Off

None

None

Off

Off

On

None

None

On

On

Off

Value

All

Off

On

On

Value

All

On

Non-Japanese text
fieldsOn

Off

Value and word

All

Off

On

On

Value

MinimalOn

Japanese text fields

On

Off

Value, word, andadditional specialuse indexes

All

Off

On

On

Value

MinimalOn

Non-text fields

For information about different types of indexes and usage tips, see “Defining field indexing
options” in the FileMaker Pro 7 Help.
If you convert your index, you’ll notice the following changes:

42

Converting FileMaker Databases from Previous Versions

1 Previous versions of FileMaker Pro formatted index entries with initial capital letters. (catentered in a text field displayed as Cat when you viewed the index.) Index entries in
FileMaker Pro 7 appear in the case of the first indexed record encountered. For example, if thefirst instance of “cat” encountered when the index is created is lowercase, then “cat” appears inlowercase in the index.

1 In Roman language indexes, previous versions of FileMaker Pro didn’t index non-alphanumericcharacters but FileMaker Pro 7 does.

1 During conversion, the following field indexing language settings are changed:
Language setting before conversion

Language setting after conversion

Spanish (New Style)

Spanish (Modern)Czech/Slovak

Czech

ASCII

UnicodeExporting in the Lotus character set
FileMaker Pro 7 does not allow you to export data in the Lotus International Character Set (LICS).
During conversion, any scripts or export orders that specify LICS are changed to Windows(Windows) or Macintosh (Mac OS). If the Windows or Mac OS character sets are not valid for theexport format specified, data is exported in the file’s default character set.

Printer settings (Windows)
Printer settings, such as a non-default paper size specification, might be lost during conversion.
When printer settings are lost, default settings are used in converted files until you redefine settings.
To ensure proper printing of converted files, record printer settings in your original files before
conversion by writing settings down or taking a screen shot of various options in the Print dialog
box. (To take a screen shot, display printer settings in the Print Setup or Print dialog box, press
Alt+PrintScreen, then paste the screen shot into a document for future reference. Repeat for eachtab in the Print Setup or Print dialog box.) Then verify printer settings in the converted file andmake corrections, if necessary.
Important You must commit a record in the database to save changes printer settings. Simply
opening the database, changing printer settings, and closing the database will not save settings. To
save printer settings, change settings in the Print Setup or Print dialog box, close the dialog box,
and make a change to a field or add a new record before closing the file.

Print Setup script step stored setup options (Windows)
The Print Setup script step is able to store and use custom paper options that can be recalled when
you run a script. This allows you to use a script to print a particular layout with different paper
options — for example, to print labels or print on a pre-printed form.
FileMaker Pro 7 uses a new format to create and store options in the Print Setup script step. The
new format is not compatible with the format used in previous versions of FileMaker Pro, andFileMaker Pro 7 cannot completely convert stored setup options in previous files to the new format.

Changes that occur during conversion

43

However, in files that you convert from previous versions, FileMaker Pro 7 initially maintains any
stored setup options in the previous format. Depending on how the Print Setup script step isconfigured, the script may continue to work properly.
But if you attempt to change the setup options by opening the Print Setup dialog box, FileMaker
Pro 7 may not be able to maintain some of the stored settings in the dialog box, and you may haveto re-specify the paper options that you want. Common settings like paper size and orientation areusually maintained, but less-common settings like a particular paper tray or duplex setting may not
be maintained.
The following table summarizes what may occur when you run or edit scripts that contain Print
Setup script steps with stored setup options.
If youThe result is

Run a script that contains this script step:

The script step usually will work properly because it
does not open the Print Setup dialog box.

1 Print Setup [Restore, No dialog]
Run a script that contains this script step:
1 Print Setup [Restore]

When you run the script, some of the stored setup
options may not appear properly in the Print Setup
dialog box.
To correct the problem, edit the Print Setup script step sothat it stores the setup options that you want.

Edit either of the following script steps in the Edit When you click Specify to edit the setup options for the
Script dialog box:
script step, some of the stored setup options may notappear in the Print Setup dialog box, and you will have
1 Print Setup [Restore, No dialog]
to re-specify the options.
1 Print Setup [Restore]
To correct the problem, check the options carefully as
you are editing the Print Setup script step. Make sure thescript step is storing the setup options that you want.

In essence, if you want to edit stored setup options for the Print Setup script step, you may need toremember what the settings were so that you can enter them again properly. You may want to view
the options in the previous, unconverted file so that you can enter them correctly.

Global fields
The global field type no longer exists in FileMaker Pro 7 because “global” is now a storage option.
During conversion, any global fields in a file are converted into the field type of the data they
contain and the global storage option is selected. For more information about the global storage
option for field definitions, see “Defining global fields (fields with global storage)” in the
FileMaker Pro 7 Help.

Number fields
FileMaker Pro 7 does not recognize previously supported alphabetic characters in a number field
as numbers. If you have used Y or T to mean “Yes” or “True” or “N” or “F” to mean “No” or“False” in number fields, Boolean calculations relying on these characters will not return results
consistent with previous versions of FileMaker Pro.

44

Converting FileMaker Databases from Previous Versions

To preserve the behavior from previous versions of FileMaker Pro, you can use the following
calculation to evaluate alphabetic characters in Boolean calculations:
Let (char1 = Left(NumberField;1); Case (char1 = "Y" or char1 = "T"; 1;
char1 = "N" or char1 = "F"; 0; NumberField))
Note You can use Edit menu > Find/Replace in FileMaker Pro 7 to update the contents of a field
replacing “Y” with “1” and “F” with “0,” and so on.

Date and time fields
Because Japanese emperor year dates are now supported, FileMaker Pro 7 no longer allows
alphabetic characters, the time separator : (colon), or the + (plus sign) to be entered as a dateseparator. During conversion, existing dates that were entered using alphabetic characters or thetime separator remain unchanged. For example, 3:21:04 is now considered to be time data because
the colon is a time separator. Dates that use obsolete separators won’t work properly in converted
databases.
Any calculation that uses dates with obsolete separators will not evaluate properly when it isrecalculated by FileMaker Pro 7. However, results of calculations evaluated and stored before
conversion will display correctly after conversion.
Data that contains obsolete date or time separators is indexed as invalid and can be found by
specifying ? in Find requests.
To avoid these issues, use one of the following methods to manually edit Date data that usesalphabetic characters or the time separator:

1 Edit menu > Find/Replace
1 Substitute function. For example:
Before conversion, use: Substitute(DateField,”:”,”/”)
After conversion, use: Substitute(DateField;”:”;”/”)
Important To avoid introducing errors in data, correct date separators only in fields and in records
that contain unsupported separators rather than making global changes to date fields.

For more information, see the topics on finding and replacing data or the Substitute function in
FileMaker Pro Help. For more information on upgrade, conversion and migration considerations,see www.filemaker.com for TechInfo Knowledge Base articles and other resources.

Container fields
In the previous version of FileMaker Pro, both Windows Metafile and PICT images could be stored
in a single container field if the option Store compatible graphics was selected in the database file’s
document preferences.
When files with these images are converted to FileMaker Pro 7 on Windows computers that do nothave QuickTime installed, only the Windows Metafile is preserved.
When these files are converted on a computer running Mac OS, only the PICT image is preserved.
You do not lose any Windows Metafile data, but you cannot immediately drag, drop, copy, or paste
the images to another container field on a computer running Mac OS: you must first open the
database on a Windows computer and then view each record with a container field to convert theimages.

Changes that occur during conversion

45

To preserve both types of images in the same file, perform the conversion on a Windows computerthat has QuickTime installed.

Calculation fields
During conversion, all stored results from existing calculations are converted and retain integrity.
However, due to the many changes in the way calculations are evaluated in FileMaker Pro 7, it’s
possible that some existing calculations could produce different results if they are recalculated afterconversion.
The following sections describe changes during conversion that can affect calculation fields.

Functions that are renamed in FileMaker Pro 7
Text functions
The following text function names have changed. For more information about how to use thesefunctions, see “Text functions” in the FileMaker Pro 7 Help.
Function name in previous
versions of FileMaker Pro

New function name

TextToDate

GetAsDate

TextToNum

GetAsNumber

TextToTime

GetAsTime

NumToText

GetAsText

DateToText

GetAsText

TimeToText

GetAsText

Additional circumstances affect the GetAsNumber function. For more information, see “Textfunctions recognize text characters in number fields” on page 54 and “GetAsNumber function” onpage 56.
Design functions
The design functions RelationIDs and RelationNames have been renamed in FileMaker Pro 7. If
these functions are used in the file you are converting, the names are changed during conversion,
which has no affect on the calculations in which they are used.
Function name in previous
versions of FileMaker Pro

Function name in FileMaker Pro 7

RelationIDs(fileName)

TableIDs(fileName)

RelationNames(fileName)

TableNames(fileName)

Note TableIDs(fileName) returns the table IDs for each table in the database. Table IDs arenumbered consecutively, beginning with the value 1065089.

46

Converting FileMaker Databases from Previous Versions

Status functions changed to Get functions
The following Status functions have new names in FileMaker Pro 7. For more information about
how to use these functions, see “Get functions,” in the FileMaker Pro 7 Help.
Function name in previous
versions of FileMaker Pro

Function name in FileMaker Pro 7

Status(CurrentAppVersion)

Get(ApplicationVersion)

Status(CurrentDate)

Get(CurrentDate)

Status(CurrentError)

Get(LastError)

Status(CurrentFieldContents)

Get(ActiveFieldContents)

Status(CurrentFieldName)

Get(ActiveFieldName)

Status(CurrentFilePath)

Get(FilePath)

Status(CurrentFileName)

Get(FileName)

Status(CurrentFileSize)

Get(FileSize)

Status(CurrentFoundCount)Get(FoundCount)

Status(CurrentGroups)

Get(PrivilegeSetName)

Status(CurrentHighContrast)

Get(HighContrastState)

Status(CurrentHighContrastColor)

Get(HighContrastColor)

Status(CurrentHostName)

Get(HostName)

Status(CurrentLanguage)Get(SystemLanguage)

Status(CurrentLayoutAccess)

Get(LayoutAccess)Status(CurrentLayoutCount)Get(LayoutCount)

Status(CurrentLayoutName)

Get(LayoutName)

Status(CurrentLayoutNumber)

Get(LayoutNumber)

Status(CurrentMessageChoice)

Get(LastMessageChoice)

Status(CurrentMode)

Get(WindowMode)

Status(CurrentModifierKeys)

Get(ActiveModifierKeys)

Status(CurrentMultiUserStatus)

Get(MultiUserState)

Status(CurrentNetworkChoice)

Get(NetworkProtocol)

Status(CurrentODBCError)

Get(LastODBCError)

Status(CurrentPageNumber)Get(PageNumber)

Status(CurrentPlatform)

Get(SystemPlatform)

Status(CurrentPortalRow)

Get(PortalRowNumber)

Status(CurrentPrinterName)

Get(PrinterName)

Status(CurrentRecordAccess)

Get(RecordAccess)Status(CurrentRecordCount)Get(TotalRecordCount)

Status(CurrentRecordID)

Get(RecordID)

Changes that occur during conversion

47

Function name in previous
versions of FileMaker Pro

Function name in FileMaker Pro 7

Status(CurrentRecordModificationCount)Get(RecordModificationCount)

Status(CurrentRecordNumber)

Get(RecordNumber)

Status(CurrentRepetitionNumber)

Get(ActiveRepetitionNumber)

Status(CurrentRequestCount)Get(RequestCount)

Status(CurrentScreenDepth)

Get(ScreenDepth)

Status(CurrentScreenHeight)

Get(ScreenHeight)

Status(CurrentScreenWidth)

Get(ScreenWidth)

Status(CurrentScriptName)

Get(ScriptName)

Status(CurrentSortStatus)

Get(SortState)

Status(CurrentStatusArea)

Get(StatusAreaState)

Status(CurrentSystemVersion)

Get(SystemVersion)

Status(CurrentTime)

Get(CurrentTime)

Status(CurrentUserCount)Get(UserCount)

Status(CurrentUserName)

Get(UserName)

Status(CurrentView)

Get(LayoutViewState)

Status(CurrentWebSharing)

Position (Get(ApplicationVersion); "Web"; 1; 1) > 0
See “Changes to databases that are published to the web” onpage 65.

In addition, you’ll notice the following behavioral changes between Status functions in previous
versions of FileMaker Pro and Get functions in FileMaker Pro 7.

1 Get functions only accept valid parameter entries. Previous versions of FileMaker Pro would
allow you to enter a calculation as a parameter, for example, but FileMaker Pro 7 does not. For
more information, see “Change to rules for allowed parameters in Get functions” on page 49.

1 Get (RecordModificationCount) returns continuous numbers and no longer wraps numbers after
32767.

1 Get(RecordID) returns contiguous values. In previous versions of FileMaker Pro,
Status(CurrentRecordID) did not return values in the following ranges:

1 128 to 32767
1 491152 to 12582911
1 14680062 to 3758096383
Note During conversion, record IDs from the original file are retained. Record IDs for records
that are deleted or exported after conversion are reserved. If you create a new record after
deleting or exporting records, the record ID for the new record is the next new ID available, notthe ID for the first record in the set that was deleted or exported.

48

Converting FileMaker Databases from Previous Versions

1 If a database uses the Status(CurrentGroups) function to check if a user was a member of a
specific group, the same check using the new Get(PrivilegeSetName) function may not work as
expected in FileMaker Pro 7 because the group name may have been deleted or modified during
conversion. Duplicate groups are combined into a single privilege set during conversion. If
calculations reference groups that were deleted or whose names were modified, thesecalculations must be manually modified so they test for the remaining privilege set name. For
more information about how groups are affected during conversion, see “Groups” on page 32
and “Example conversion of passwords and groups to accounts and privilege sets” on page 33.

1 In FileMaker Pro 7, local paths returned from the Get(FilePath) function begin with a single
slash rather than a double slash.
Local path format in previous
versions of FileMaker Pro

Local path format in FileMaker Pro 7

file://folder/filename

file:/folder/filename

In FileMaker Pro 7, Get(FilePath) returns full path information (double-slash) for remote files. If
your database contains an If statement using Get(FilePath) that looks for a double-slash in a local
path, it will not evaluate correctly. These calculations should be edited manually after conversion
to reflect the new path syntax.
Results of Status(CurrentFilePath) function calls that are stored in a file before conversion are notchanged, but subsequent calls to Get(FilePath) after conversion are returned in the new format.

Japanese functions that are converted
The following Japanese functions are no longer supported and are converted as shown in thefollowing table:
Japanese function in previous
versions of FileMaker Pro

Function in FileMaker Pro 7

Leftb

Left

Lengthb

LengthMiddleb

MiddlePositionb

Position

Replaceb

ReplaceRightbRight

You need to evaluate and possibly modify the parameters in converted Japanese functions that referto a starting position, ending position, or count of bytes as this information depended in previous
versions on the type of data (one-byte or two-byte) being evaluated, and these byte differences nolonger exist as of FileMaker 7.

Changes that occur during conversion

49

Invalid characters and words in field names used in calculations
In FileMaker Pro 7, certain characters and words can’t be used as field names. If reserved
characters or words are used in field names that are specified in calculations, during conversion theentire field name is enclosed in ${ } characters in the calculation. Only field names used in
calculation definitions are enclosed in ${ } characters. This change has no effect on calculation
evaluation.
Note Text strings in calculations enclosed in quotation marks are not changed during conversion
and are treated as text literals.

Invalid characters and words

1 leading or trailing spaces
1 + - * / ^ & = ≠ < > ≤ ≥ ( , ; ) [ ] \" :: characters
1 AND, OR, XOR, NOT, TRUE, FALSE reserved words
In addition, field names can’t begin with a digit or a period or have the same name as a function,
parameter, or keyword.
Reserved words
Reserved words in FileMaker Pro 7 fall into the following categories:

1 Text parameters in calculation functions, such as “Cyrillic” in
TextFont("Plaid";"Arial";${Cyrillic})

1 Extended privilege keywords
1 Function names, such as “Pi” and “Random”
Note Although SQL keywords are not reserved, avoid using them as field names, especially if those
field names will be referenced in calculations.

Parameter separators in calculations
FileMaker Pro 7 no longer uses commas to separate parameters in calculations. During conversion,comma separators are changed to semicolons. If FileMaker Pro 7 is set to a language locale thatuses the comma as the list separator character (for example, English), you can type commas asparameter separators when you are defining new calculations. The commas are changed to
semicolons when you save a calculation.

Change to rules for allowed parameters in Get functions
In previous versions of FileMaker Pro, calculations could be entered as parameters in Status
functions (converted to Get functions in FileMaker Pro 7), even if there was no logic behind thecalculation. If calculations were used as parameters in the database you are converting, afterconversion the entire calculation containing the function is commented out in the Specify
Calculation dialog box. To return results consistent with previous versions of FileMaker Pro, youmust redefine the calculation.

FileMaker Pro 7 converts field types as needed before processing calculations
Before processing, data is converted to the data types specified in the following tables. After
processing, calculations return the data type selected in the Specify Calculation dialog box. When

50

Converting FileMaker Databases from Previous Versions

the calculation result is set to Text, non-textual results, such as dates and times, are set to the datatypes listed in the following tables.
Previous versions of FileMaker Pro
The following table summarizes the field type of results returned from calculations when theoperands are fields of different type:Any mathematical operator

Text field

Number field

Date field

Time field

Text field

Text

NumberNumberNumberNumber field

NumberNumberNumberNumberDate field

Date

Date

Date

Date

Time field

Time

Time

Time

Time

FileMaker Pro 7: Arithmetic calculations

Text field

Numberfield

Date field(days since
1/1/0001)

Time field
Timestamp(seconds
field (seconds Container
since midnight) since 1/1/0001) field

Text field

NumberNumberDate1, 2

Time1, 2

Timestamp

Number4

Number field

NumberNumberDate1, 2

Time1, 2

Timestamp

Number4

Date fieldDate(days since 1/1/0001)

Date

Number1, 5Timestamp6

Time1, 3, 6

Number4

Time field(seconds sincemidnight)

Time

Time

Timestamp6

Time

Timestamp

Number4

Timestamp field(seconds since
1/1/0001)

Timestamp Timestamp Time1, 3, 6

Timestamp

Time1, 3

Number4

Container field

Number4

Number4

Number4

Number4+/-

Notes:

Number4

Number4

1 The field type returned has changed from previous versions of FileMaker Pro. For

example, in FileMaker Pro 7, Date(3, 21,2003)+2 returns 3/23/2003 in date format. In
previous versions of FileMaker Pro, the same calculation returns 731297, which is thenumber of days since 1/1/0001.
2 FileMaker Pro 7 returns the numeric representation of dates and times.
3 Values are retained as time.
4 A container value converted to a number value always returns 0 (zero). If you want todetermine the size of an object stored in a container field, include the Length function in
the calculation.
5 Data is returned in number format to indicate number of days added or subtracted.
6 Dates are converted to seconds since 1/1/0001 when used with time and timestampdata.

Changes that occur during conversion

51

FileMaker Pro 7: Comparison calculations=, < >, <, >, <=, >=

Text
field

Numberfield

Date field(days since
1/1/0001)

Time field(seconds
since midnight)

Timestamp
field (seconds
since 1/1/0001)

Container
field

Text field

Text

Text6

Text6

Text6

Text6

Text3, 6

Number field

Text6

NumberNumberNumberNumberNumber4

Date field
Text6(days since 1/1/0001)

NumberNumberNumber1

Number1

Number4

Time field(seconds sincemidnight)

Text6

NumberNumber1

NumberInvalid5

Number4

Timestamp field(seconds since
1/1/0001)

Text6

NumberNumber1

Invalid5

NumberNumber4

Container field

Text3, 6 Number4 Number4

Number4

Number4

Container2

Notes:

1 When comparing a date value with a time or timestamp value, the date value isconverted to seconds since 1/1/0001, the time value is converted to seconds sincemidnight and the timestamp value is converted to seconds since 1/1/0001 before thecomparison is made. In other comparisons involving date, time, and timestamp
values, the date value is converted to days since 1/1/0001, the time value is converted
to seconds since midnight, and the timestamp value is converted to seconds since 1/
1/0001before the comparison is made.
2 For = and < > comparisons, the Cyclic Redundancy Code (CRC) of the twocontainers are compared. For other comparisons, the total size of the item stored in
the container objects is compared. This behavior differs from previous versions ofFileMaker Pro.
3 When a container object is compared with a text value, the container object isconverted to text format. When the container object is imported as a reference, theexternal path information of the container is used in the comparison. Otherwise, thecontainer is converted to a "?" (for security reasons), which is used in the comparison.
4 A container value converted to a number value always returns 0 (zero). If you want

to determine the size of an object stored in a container field, include the Length
function in the calculation.
5 When a time value is compared to a timestamp value, FileMaker Pro 7 returns

Invalid, because it isn’t useful to compare an elapsed time quantity such as a time withthe moment-in-time quantity such as a timestamp.
6 When one field type in a comparison operation is text and the other isn’t, values arecompared in text format because it allows FileMaker Pro to compare as much data as
possible.

52

Converting FileMaker Databases from Previous Versions

Automatic conversion of date, time, and timestamp field types
FileMaker Pro 7 automatically converts data in date, time, and timestamp fields when they are used
together in a calculation so that durations can be determined. This allows you to return the numberof days, for example, between a date and a timestamp.
The following table summarizes how FileMaker Pro 7 automatically fills in data when field types
are converted to and from date, time, and timestamp formats when a calculation includes thefunctions noted in the table.

Format of data provided

Hour function
Minute function
Second function

Day function
Month function
Year function

GetAsTimestampfunctionTime

Auto-fill not needed

invalidAuto-fill 1/1/0001

Data

Auto-fill midnightAuto-fill not needed

Auto-fill midnightTimestamp

Auto-fill not needed

Auto-fill not needed

Auto-fill not needed

Note When a value is automatically filled in, time is the number of seconds since midnight, a dateis the number of days since 1/1/0001, and a timestamp is the number of seconds since 1/1/0001.

Operator precedence in calculations
In previous versions of FileMaker Pro the +, - (minus), and & operators all had the same level ofprecedence when calculations or expressions were evaluated. In FileMaker Pro 7, the + and operators have higher precedence than the & operator. During conversion, parentheses are added toexisting calculations or expressions so that the evaluation order from previous versions ofFileMaker Pro is retained.

Decimal precision in validated fields
Field and validation values must be identical to successfully validate the contents of a field. If the
Validated by calculation option is used, the calculation results must exactly match the contents of the
field being evaluated. For example, if a field contains .3333333333333333 and is set to validate by
the calculation “field = 1/3,” the data won’t pass validation in FileMaker Pro 7.
If you are validating fields by calculation that return fractional results, use the Round function tolimit calculation results to an expected number of digits.

Accelerated calculation evaluation
To enhance performance, FileMaker Pro 7 now evaluates only the portion of a calculation required
to determine a result. Functions that take advantage of accelerated evaluation are If, Case, andChoose. Operators that use accelerated evaluation are AND and OR.
Example 1
If(2+2=4; “true”; “false”)
In previous versions of FileMaker Pro, both result1 and result2 are evaluated. If external plug-infunctions calls are included in the “true” and the “false” conditions, evaluation of the results of bothcalls are part of the evaluation of the full calculation statement (in other words, both calls to theplug-in function are performed whether or not the test evaluates to be true or false).

Changes that occur during conversion

53

In FileMaker Pro 7, such calls to the external plug-in functions are executed based on the results ofthe test; so in this example the “true” condition results in the call to the plug-in function, and the“false” condition is skipped. This can result in unexpected behavior when the plug-in function is
not executed.
Accelerated evaluation will save time when calculations operate on very large datasets, especially
if either or both clauses deal with related fields. However, it could produce errors in files createdwith previous versions of FileMaker Pro if the database design expects a plug-in function to becalled as the result of the evaluation of the entire calculation.
Example 2
Consider the following example with calls to two different external functions:
If (External("Func1") and External("Func2"); "true"; "false")

In FileMaker Pro 7, if Func1 returns false then Func2 is not called. The second call is made only
when the first condition evaluates true. In previous versions of FileMaker Pro, Func2 would becalled regardless of the result of Func1.

New rounding rules
Previous versions of FileMaker Pro used a floating-point method when rounding numbers, whichyielded results up to approximately 15 digits. FileMaker Pro 7 uses a fixed-point method, whichallows up to 400 digits each to the left and right of the decimal point. The following examples
compare sample results from different versions of FileMaker Pro:
Expression

Result in previous versions of FileMaker Pro

Result in FileMaker Pro 7

126.96 - 119.29

7.66999999999999

7.67

4.1 - Int(4.1).0999999999999996.1

408.80 - 400.20

8.60000000000002

8.6

10000000000000000 + 10

10000000000000000

10000000000000010

New syntax for nested substitutions
The syntax for nesting Substitute functions in previous versions of FileMaker Pro was:Substitute(Substitute(Substitute(…)))

FileMaker Pro 7 introduces the following new syntax, which evaluates faster and is easier to read:
Substitute(TextField; [“a”;”x”];[“b”;”y”];[“c”;”z”])

During conversion, nested Substitute function calls are changed to the new syntax, when possible.
However, when nested substitutes can’t be converted and syntax is left unchanged, they willcontinue to evaluate properly in FileMaker Pro 7.

Today function no longer supported
The Today function has been removed in FileMaker Pro 7. During conversion, files that contain the
Today function will be changed as follows:

1 If Today is used in an unstored calculation field or script, it is changed to Get(CurrentDate).

54

Converting FileMaker Databases from Previous Versions

1 If Today is used in a stored calculation, a new Date field named “Today” is created and the storedcalculation will reference it. The Today field has modified field options so that the creation dateis automatically entered in it. To achieve the same behavior that was provided by the Today
function in previous versions of FileMaker Pro, a script is created during conversion named“Update Today Field,” which will become part of the start-up script in the file and run when thefile is opened.

Text functions recognize text characters in number fields
In previous versions of FileMaker Pro, text functions ignored alphabetic data in number fields, so
you couldn’t define a calculation that could access textual data in a numeric field. In
FileMaker Pro 7, alphabetic data is recognized, so results of new calculations defined afterconversion might differ from what you expect.
Example 1
Suppose you have a number field that contains 123aV67. The function Middle(NumberField, 1, 6)
returns:
Previous versions of FileMaker Pro

FileMaker Pro 7

12367

123aV6

During conversion, functions are modified to return the same result that a previous version of
FileMaker Pro would provide. In this example, the function call above would convert to
Middle(GetAsNumber(NumberField); 1; 6). The difference in evaluation between versions is
pointed out here so you know to make adjustments to calculations you create in FileMaker Pro 7.
Example 2
Suppose a number fields contains “1 apple costs 20 cents.” In this case, the function
MiddleWords(NumberField, 1, 3) returns:
Previous versions of FileMaker Pro

FileMaker Pro 7120

1 apple costs

Functions that are dependent on context
In previous versions of FileMaker Pro, the context (the starting point or perspective from whichcalculations and scripts are begun) in which a calculation or script evaluated was static; only one
window could be open at a time, so the current context was always the open window.
In FileMaker Pro 7, which supports multiple open windows, calculations and scripts are dependent
on the context in which they evaluate. If a fixed context is assigned to a calculation in the Specify
Calculation dialog box or script definition, the calculation returns results based on that context. If
the same calculation is used in a script, as a script parameter, as a button parameter, in a Replace
By calculation, and so on, calculation results are dependent on the context of the current window.
This change in behavior could cause errors when existing calculations or scripts are converted
because they might execute in the wrong context (for example, the found set in an incorrect
window). Therefore, you might have to edit scripts and calculations to specify the window in which
they execute. Note that the Select Window, New Window, and Close window script steps affect thecontext of execution for both scripts and calculations.

Changes that occur during conversion

55

Window context could affect calculations in converted databases that call the following Get
functions:
Get(RecordID)

Get(TotalRecordCount)Get(FileName)

Get(RecordModificationCount)Get(SortState)Get(FileSize)

Get(RecordAccess)

Get(AccountName)

Get(HostName)

Get(RecordNumber)

Get(ExtendedPrivileges)Get(MultiUserState)Get(FoundCount)Get(FilePath)

Get(PrivilegeSetName)

Get(UserCount)

Calculations that are fixed in FileMaker Pro 7 and unaffected by context include calculation fields,
auto-entry by calculations, field validation by calculations, and custom table privileges (Record
Level Access by calculation).
For more information about context and calculation evaluation, see “Defining calculation fields” in
the FileMaker Pro 7 Help.

Functions that return filename extensions
The following functions no longer return filename extensions:

1 DatabaseNames
1 Get(FileName)
Results from converted records are not changed (filename extensions are displayed), but filename
extensions will not appear in any new records created after conversion.
Tip After conversion, you can change Get(FileName) calls in FileMaker Pro 7 as follows to makefilename extensions appear in results.
Let(possibleExtension = right(get(FilePath), 4), Get(FileName) &if(left(possibleExtension, 1) = “.”, possibleExtension, “”))Changes to the Mod function
In FileMaker Pro 7, the definition of the Mod function has changed. The new definition is:Mod(x; 0) = x; Mod(x; y) = x - (y * Floor(x/y))This definition gives the same results when both inputs are positive or both are negative.
Use the following syntax to achieve Mod results consistent with previous versions ofFileMaker Pro:
Case( y = 0; 1/0;
(x < 0) = (y < 0); Mod(x;y);(x < 0); - Mod(Abs(x); y);(y < 0); Mod(x; Abs(y)))

When the second parameter is positive, this reduces to:if (x < 0; - Mod(Abs(x); y); Mod(x;y))56

Converting FileMaker Databases from Previous Versions

Numeric expressions with text input
In previous versions of FileMaker Pro, when you specified textual parameters to functions that
expected numeric parameters, the result returned was blank. In FileMaker Pro 7, the result is 0
(zero). During conversion, previously stored results remain blank, but any new results calculated
after conversion are 0. You may need to modify the calculation to get results consistent with theprevious version of FileMaker Pro.

Boolean calculations
In FileMaker Pro 7, the following changes have been made to the way Boolean calculations
evaluate:

1 The logical operators AND, OR, XOR, and NOT return only Boolean results.
1 Boolean calculations return False when results are blank or 0 (zero), or do not resolve into a
number. All other results return True.

1 Boolean calculations that expect “T,” “Y,” “F,” or “N” to evaluate to 1 or 0 (zero), true or false
will not evaluate properly. For more information, see “Number fields” on page 43.

GetAsNumber function
In FileMaker Pro 7, if you reference a number, date, or time field as the parameter of a text function,
the full contents of the field are returned, including any text in the field. Therefore, in
FileMaker Pro 7 you need to use the GetAsNumber function in the calculation specification tochange the field type of the parameter to number field type.
Example 1
Syntax from previous versions of FileMaker Pro

Syntax after conversion to FileMaker Pro 7

Left(NumberField,6)

Left(GetAsNumber(NumberField); 6)

During conversion, the GetAsNumber function is added automatically to the following functions
when they contain a number, date, time, or timestamp field as the parameter:
Left

MiddleWords

ProperTrim

MiddleExact

PatternCount

WordCount

Right

LengthPosition

TrimAll

LeftWords

Lower

Replace

NumToJText

RightWords

Upper

Substitute

The GetAsNumber function is applied to the first parameter of these functions except the Exact,
Replace, and Substitute functions in which it is applied to multiple parameters.
Example 2
Syntax from previous versions of FileMaker Pro

Syntax after conversion to FileMaker Pro 7

Exact (numberField1, numberField2)

Exact (GetAsNumber(numberField1);
GetAsNumber(numberField2))

Changes that occur during conversion

57

Note If additional parameters are not number fields, the GetAsNumber function is not applied to
the Replace or Substitute functions.

If comparison operators (<, =, >, ≤, ≥, < >) are used in a calculation that requires the GetAsNumber
function, GetAsNumber is always added to the first and second parameters during conversion.

Get(LastError) function
In FileMaker Pro 7, the following error codes have been reassigned to a different error condition or
made obsolete. If the file you are converting uses the Get(LastError) function to capture any ofthese codes, you might get unexpected results after conversion.
Error codes that have been redefinedError code

Definition in previous version of FileMaker Pro

Definition in FileMaker Pro 7

302

Record is in use by another user

Data table is locked by another
user

303

Paper size is in use by another user

Database schema is locked byanother user

304

Password definitions are in use by another user

Layout is locked by anotheruser

Error codes that are no longer used in FileMaker Pro 7

1 305 Relationship or value list definitions are locked by another user
1 411 Cannot perform delete because related records cannot be deleted
1 512 Field failed single value validation test
1 701 Data Access Manager can't find database extension file
1 702 The Data Access Manager was unable to open the session
1 703 The Data Access Manager was unable to open the session; try later
1 704 Data Access Manager failed when sending a query
1 705 Data Access Manager failed when executing a query
1 712 XTND version is incompatible
1 713 Couldn't initialize the XTND system
1 818 FileMaker Pro cannot network for some reason
Get(UserName) function
In previous versions FileMaker Pro, the Get(UserName) function uses settings from theApplication Preferences (Preferences, in FileMaker Pro 7). This value can easily be modified by auser, so it can’t reliably be used to report activity associated with individual users.
In FileMaker Pro 7, the Get(AccountName) function is now available for files with accounts andpasswords. This function returns the account name authenticated when the user logs in to the
database with a valid account and password.

58

Converting FileMaker Databases from Previous Versions

If your file uses Get(UserName) to track user activities, you may want to change Get(UserName)to Get(AccountName) after conversion to more accurately associate user activities with particular
accounts. For more see “Get(AccountName) function” and “About accounts, privilege sets, andextended privileges” in the FileMaker Pro 7 Help.

Rotated fields
When you edit data in a rotated field, FileMaker Pro temporarily displays the field unrotated while
you edit the data. FileMaker Pro 7 includes two changes to this behavior:

1 The location of the temporary unrotated field is now at the top-left corner of the field object,which more clearly indicates the active field. In previous versions of FileMaker Pro, the locationof the unrotated field is at the vertical center of the object.

1 When you edit a rotated repeating field, FileMaker Pro 7 only unrotates the single repetition thatis being edited. Earlier versions of FileMaker Pro would temporarily unrotate the entire field (allthe repetitions), which could cause display problems in certain cases.
In some converted files, you may need to make adjustments to rotated field objects in Layout mode.

Scripts
Many changes have been made to ScriptMakerTM in FileMaker Pro 7. The following sections
describe changes during conversion that can affect scripts in files created using previous versionsof FileMaker Pro.

Conversion of script steps
During conversion, if any of the following script steps exist in scripts defined in your file, they areconverted as described in the following table.
Script step in previous versions of FileMaker Pro

Script step equivalent in FileMaker Pro 7

Close

Close File

Copy All Records

Copy All Records/Requests

Copy Record

Copy Record/Request

Exit Record/Request

Commit Records/Requests

Insert from Last Record

Insert from Last VisitedNew

New File

Omit Multiple

Omit Multiple Records

Open

Open File

Open Application Preferences

Open Preferences

Open Define Fields

Open Define Database

Open Define RelationshipOpen Define Database

Open Document Preferences

Open File Options

Open Hosts

Open RemoteChanges that occur during conversion

Script step in previous versions of FileMaker Pro

Script step equivalent in FileMaker Pro 7

Quit Application (Mac OS)

Exit Application

Recover

Recover File

Relookup Contents

Go to Field plus Relookup Field Contents

Replace Contents

Go to Field plus Replace Field Contents

Send Apple Event

Send Event

Send Message (Windows)

Send Event

Show Message

Show Custom Dialog

Show Omitted

Show Omitted Only

Sort

Sort Records

Toggle Status Area

Show/Hide Status Area

Toggle Text Ruler

Show/Hide Text Ruler

Toggle Window

Adjust Window

59

Script step behavior
The following sections describe changed behavior in specific script steps and changes that takeplace during file conversion.
Go To Layout script step

1 The Refresh option has been removed from the Go To Layout script step. During conversion, theRefresh Window script step is added to scripts that previously included this option.
Open script step
The Open script step (changed to Open File during conversion) no longer opens a remote file unless
you have specified the file reference in FileMaker network path (FMNET) format (fmnet:/host IP
address/filename). If you have used the Open script step to open remote files, change the filereference to FMNET format or substitute the Open Remote script step for the Open script step afterconversion.

1 The Open File script step does not convert files created using a previous version of
FileMaker Pro to FileMaker Pro 7 format. Use the Convert File script step to open files createdin FileMaker 3.x, 4.x, 5.x or 6.

1 In previous versions of FileMaker Pro, a script that contained only an Open script step activated
the file that was opened. If any script steps followed the Open script step, the file that called thescript became active.
In FileMaker Pro 7, the file opened by the Open File script step remains active while the script
runs. The following calculation will simulate the behavior of previous versions ofFileMaker Pro, bringing the window that called the script forward:
Open File [“<filename>”]Select Window [Current Window]

Be sure to verify that the proper layout is activated when you test your script.

60

Converting FileMaker Databases from Previous Versions

1 Windows: The Open Minimized option in the Open File script step has been changed to Open
Hidden.
Perform Find script step
During conversion, options for the Perform Find script step are changed. The new options differ
depending on whether or not the scripts stores found sets.
When a script stores found sets, options are changed as follows:
Option name in previous versions of FileMaker Pro

Option name in FileMaker Pro 7

Perform Find [Restore, Replace Found Set]

Perform Find [Restore]

Perform Find [Restore, Constrain Found Set]

Constrain Found Set [Restore]

Perform Find [Restore, Extend Found Set]

Extend Found Set [Restore]

When a script doesn’t store find results, options are changed as follows:
Option name in previous versions of FileMaker Pro

Option name in FileMaker Pro 7

Perform Find [Replace Found Set]

Perform Find [ ]Perform Find [Constrain Found Set]

Constrain Found Set [ ]Perform Find [Extend Found Set]

Extend Found Set [ ]Perform Script script step

1 The Perform sub-script option in the Perform Script step has been removed from
FileMaker Pro 7. When you use the Perform Script step in FileMaker Pro 7, any included
subscripts are always executed.

1 When necessary, previous versions of FileMaker Pro would automatically change the active
window after running a script. This automatic windowing behavior is no longer supported
because FileMaker Pro 7 supports a new Select Window script step, which script writers can use
to set the active window.
To emulate the behavior of previous versions, during file conversion FileMaker Pro 7
automatically inserts Select Window script steps after certain Perform Script and Go to Related
Record script steps. However, to achieve the windowing behavior you actually want, you may
need to insert additional Select Window script steps, or even remove some of the Select Window
script steps that were inserted automatically during file conversion.
Go to Related Record script step

1 During conversion, the relationship name specified for the Go To Related Record script step isreplaced with the related table occurrence that was also created during conversion. Current
layout is always set as the option for the Show records using layout parameter. If the previous
relationship pointed to a table occurrence in another file, then Use external table’s layouts is also
selected. If Show only related records was set in the original file, it is also set in the converted
file.

1 After each Go to Related Record script step that refers to an external layout and is not followed
immediately by another external Go to Related Record step, FileMaker Pro 7 either:

Changes that occur during conversion

61

1 adds a Select Window[Current Window] script step, or
1 adds a Select Window["name of external file"] script step if this is the last step in the script(not counting Comment, End If, and End Loop).
Refresh Window script step
The Bring To Front option in the Refresh Window script step has been removed from
FileMaker Pro 7. During conversion, the Select Window script step is added to scripts that
previously had this option specified.
Revert Records/Requests script step
Changes to related records are committed (saved) differently in FileMaker Pro 7 than they were inprevious versions of FileMaker Pro, so reverting behavior has changed as well. See theFileMaker Pro 7 Help for more information on committing records.
Save a Copy As script step
During conversion, the Compressed (smaller) option is changed to Compacted (smaller).
Compacted (smaller) removes unused sections of files, which can include deleted records.
Activities due to normal operation of a file may reclaim the space that was previously used fordeleted records.
Toggle Text Ruler script step
The Refresh Window option has been removed from the Toggle Text Ruler script step. During
conversion, the Refresh Window script step is added to scripts that previously specified this option.
Import Records and Export Records script steps
During conversion, field-based options for the Import Records script step are converted to
calculation-based options in FileMaker Pro 7. If you are importing from an ODBC source, querysyntax is displayed in the Specify ODBC Query dialog box when the script runs.
After conversion, if you import from an XML source, be aware that field-based calculations areevaluated when the script runs and the results (which can include user name and password) can
appear in the HTTP edit box. To suppress the display of this information, use the No dialog option
with the Import Records script step.
The Import Records and Export Records script steps that were web-compatible in
FileMaker Pro Unlimited are not web-compatible in FileMaker Pro 7. Instead, a web-compatible
subset of script steps are available for web-published database hosted by FileMaker Pro 7(FileMaker Networking) or FileMaker Server 7 Advanced.
Print Setup and Print script steps (Windows)
Printer settings may not convert properly in Windows. After conversion, check settings in scriptsthat use the Print Setup and Print script steps. For more information, see “Printer settings(Windows)” on page 42.

Miscellaneous scripting changes
The following changes have been made to scripting functionality.

62

Converting FileMaker Databases from Previous Versions

Script behavior changes due to multi-table support
Because previous versions of FileMaker Pro supported only one table per file, by default scripts
were executed on the “current” table, which was the table from the current file. FileMaker Pro 7
supports multiple tables per file and each layout is specifically associated with a “base table.”(When you define the layout, the base table is set in the Show records from tablename menu.)
Each window is associated with a specific layout and because multiple windows may be open, if a
script doesn’t reference a window in a Select Window script step or a layout in a Go To Layout
script step, the script executes on the current window (window in the foreground), which
determines the associated table. If there is no window currently open, the script opens a window for
the current table.
For more information, see “Functions that are dependent on context” on page 54.
Script names have been shortened
In FileMaker Pro 7, script names are limited to 100 characters. During conversion, any script names
over this limit are truncated. Shortened names have no effect on script functionality.
If a script name contains more than 100 characters and is referenced externally (such as from anAppleScript or via a URL using the -script query string parameter), you should update the externalreferences to the script to reflect the new script name or refer to the script ID.
Focus when displaying sorted data in found sets
In previous versions of FileMaker Pro, the focus of sorted data in a found set was the first record in
the found set. In FileMaker Pro 7, the current record is the focus, so the data displayed after a sort
operation called by a script could differ from the data displayed by previous versions.
To simulate the behavior of previous versions of FileMaker Pro, a Go To Record/Request/Page[First] script step is now placed after every Sort script step when a file is converted.
Sorting empty found sets
In previous versions of FileMaker Pro, using the Sort Records, Omit Records, or Omit Multiple
Records script steps to sort an empty found set returned error code 3, “Command is unavailable.”
In FileMaker Pro 7, sorting an empty found set no longer returns an error.
Locking records when scripts run
In FileMaker Pro 7, making a field active does not lock its record. For example, if you used the Go
To Field script step in previous versions of FileMaker Pro to lock records, records won’t be locked
when your script executes in FileMaker Pro 7. After conversion, you can use the Open Record/
Request and Commit Records/Requests script steps in such scripts to achieve the result fromprevious versions of FileMaker Pro.
ExampleOpen Record/Request
Set Field [x, “abc”]
Set Field [y, “abc”]
Set Field [z, “abc”]
Set Field [xxx, “abc”]
Set Field [yyy, “abc”]

Changes that occur during conversion

63

Set Field [zzz, “abc”]
Commit Records/Requests[without dialog]

For more information, see “Open Record/Request script step” in the FileMaker Pro 7 Help.
Using scripts to create related records in portals
In FileMaker Pro 7, when you create a related record in a portal via a script, you must create therelated record first by entering a non-related value before specifying a related value.
ExampleSuppose you have two related tables: TableA and TableB. TableB has a layout with a portal
showing related records from TableA and you want to use a script to create a new record in the
portal and enter a related value from TableB.

In previous versions of FileMaker Pro: You could use the following script to achieve this:
Go to Portal to Portal Row [Last]
Set Field ["TableA::data_field"; "TableB::data_field"]

In FileMaker Pro 7: This script is invalid as no reference exists to the related data you are attempting
to enter until after the related record has been created. This script will create a new related record,
but the record will not contain the related data you want to enter. The following script could be usedinstead:Go to Portal to Portal Row [Last]
Set Field ["TableA::data_field"; "null"]# 'null' is temporary data
Go to Field [TableA::data_field]
Set Field ["TableA::data_field"; "TableB::data_field"]This script creates the related record with non-related data (“null”) first, then replaces the null value
with the related data you specified in TableB (TableB::data_field).
Pause/Resume time is converted to seconds
Previous versions of FileMaker Pro allowed you to specify a pause time length in hours, minutes,
and/or seconds. During conversion, pause time durations are converted using the Time function,
which returns time values in hours, minutes, and seconds.
Script steps that reference files
If your database contains any script steps that reference files on remote computers (for example,
Open File or Open Define Database), make sure that the file references are in FileMaker network
path (FMNET) format (fmnet:/host IP address/filename).
Capturing error codes in scripts
If you have used the Status(CurrentError) function to capture error codes in scripts, be aware thatsome codes from previous versions of FileMaker Pro have been reassigned to a different error
condition or made obsolete. For a complete list of FileMaker Pro 7 error codes, see “Get(LastError)
function” in the FileMaker Pro 7 Help.

64

Converting FileMaker Databases from Previous Versions

Some script step options convert to calculations
Many script steps in FileMaker Pro 7 now allow you to derive script step options from the result ofa calculation. For example, the options for the Send Mail script step can now be text, a field value,or the result of a calculation. During the conversion of these script steps, the text and field options
convert to calculations that return the required text or field value. Though formatted as a
calculation, these options return the same results, and their script steps should function the same as
they did in the previous version.
Performing a script when a file opens
Although startup scripts are typically performed the first time you open a file, these scripts can also
be triggered when you open a window for a hidden file previously opened via a script or
relationship.
To ensure that a startup script is performed just once per database session, preface your startup
script with a conditional script step, and use a global field to record this condition once the script
has been performed. Reset this condition with a script that runs when you close the file.
Performing a script when a file closes
In the File Options dialog box, you can specify a script to run when the file is closed. This script is
performed when the last open window of the file is closed. The script will run even if the file itself
remains open, for example if it is referenced by another file with open windows. The closing script
will be performed each time the last open window of the specified file is closed.
ScriptMaker support improved in multi-user/multi-session situations
ScriptMaker has been revised to better support multi-user/multi-session execution in
FileMaker Pro and in files published to the web with FileMaker Server Advanced. Web
compatibility of script steps can now be shown in the Edit Script dialog box. For more information,
see FileMaker Pro 7 Help, the FileMaker Instant Web Publishing Guide, and the FileMaker Server
Advanced Custom Web Publishing Guide.
Ensuring user access to subscripts in web-compatible scripts
A user’s ability to execute scripts and subscripts is now affected by data access and design
privileges for scripts. After conversion, users may not have privileges to run all subscripts in scripts
they are authorized to execute. You may need to consider setting main scripts to run with Full
Access privileges so subscripts can be executed on behalf of the user logged in, or you may needto change user privileges so individuals can run appropriate subscripts.

Changes that occur during conversion

65

The scripts steps in which access might be restricted to subscripts are:
Import Records

Close File

Send DDE Execute

Export Records

Print

Execute SQL

Open File

Send Mail

Send Event

For more information, see “Access privileges” on page 31 and “About accounts, privilege sets, andextended privileges” in the FileMaker Pro 7 Help.

Changes to databases that are published to the web
Support for web publishing has changed significantly in FileMaker Pro 7.
The following issues apply to files published using Instant Web Publishing or Custom Web
Publishing:

1 The FileMaker Pro Web Companion plug-in is no longer supported. Instant Web Publishing andCustom Web Publishing settings don’t convert and must be set up in the converted file.

1 The URL syntax has changed for web-published solutions.
1 If you manually created a link to access a FileMaker solution over the web, you must update thelink after converting and sharing the file over the web.

1 If a script name contains more than 100 characters and is referenced externally (such as from anAppleScript or via a URL using the -script query string parameter), you should update theexternal references to the script to reflect the new, shorter script name. For more information, see“Script names have been shortened” on page 62.

1 Plug-ins written to work with FileMaker Pro 6 Unlimited (and earlier) and FileMaker Pro 7 do
not automatically work when using web publishing with FileMaker Server Advanced and the
Web Publishing Engine. Check with the plug-in vendor to see if a plug-in supports theseenvironments. For more information about conversion issues and plug-ins, see “Plug-ins” onpage 75.

1 ScriptMaker has been revised to better support multi-user/multi-session execution in
FileMaker Pro and FileMaker Server Advanced. For more information, see “ScriptMaker
support improved in multi-user/multi-session situations” on page 64.

1 More than 70 web-compatible script steps are supported by FileMaker Pro 7 and a few script
steps, such as the Import Records and Export Records script steps, are no longer supported (see“Import Records and Export Records script steps” on page 61). Select Indicate web compatibility
in the Edit Script dialog box to see which scripts are web-compatible in FileMaker Pro 7.

1 The Web Security Database is no longer supported. If you relied on it for web-based security,
you must set up the accounts, passwords, and privilege sets for users in your converted databasefiles. For more information, see “Defining accounts and privilege sets for files protected by the
Web Security Database” on page 69.
For information about how web publishing privileges convert, see “Groups” on page 32.

66

Converting FileMaker Databases from Previous Versions

1 In previous versions of FileMaker Pro, the Status(CurrentWebSharing) function returns 1 when
the Web Companion plug-in is enabled and active. In FileMaker Pro 7, this function converts tothe following formula, which returns 1 if the script or calculation containing this formula is being
evaluated for a user accessing the file via the web:
(Position( Get(ApplicationVersion ); "Web"; 1; 1 ) > 0)
The results of calculations based on Status(CurrentWebSharing) will return slightly different
information in converted files that now use the formula above. Calculations that relied on
Status(CurrentWebSharing) were typically trying to determine if the database was being
published to the web in an indirect manner; the results of this function indicated whether or not
the database had been opened with a password that allowed data export and whether the Web
Companion plug-in was enabled. The formula can determine specifically if a request to executea script came via a web user request or another user action.

1 Folders containing static content (such as images stored by reference in a container field) mightneed to be relocated when moving databases from FileMaker Pro to FileMaker Server
Advanced. Folders located under the Web folder need to be moved to the appropriate locationon the IIS or Apache HTTP server. For more information, see the FileMaker Server Advanced
Web Publishing Installation Guide.

Instant Web Publishing
Setup has changed
The setup and user access of files published to the web with Instant Web Publishing has changedin FileMaker Pro 7. Therefore, conversion is not possible and you need to set up web publishingagain. For more information, see the FileMaker Instant Web Publishing Guide.

Custom Web Publishing
The following changes have been made to Custom Web Publishing. For more information, see theFileMaker Server Advanced Custom Web Publishing Guide, included with FileMaker Server
Advanced.
FileMaker Server Advanced-based versus client- based
You need FileMaker Pro 7 to create the databases and set up the extended privileges for Custom
Web Publishing. You need FileMaker Server 7 Advanced and the Web Publishing Engine to hostdatabases and make them available on the web.
CDML is no longer supported
In previous versions of FileMaker Pro, Custom Web Publishing required that databases use format
files written in the FileMaker CDML mark-up language, which dynamically generated HTMLbased pages for web users. FileMaker Server 7 Advanced supports Custom Web Publishing ofFileMaker Pro 7 databases with server-based XSLT style sheets, which filter and format XML data.
XML can generate HTML, which can be viewed using a web browser or transformed to XML
grammar for use by other programs and applications.
You can use the FileMaker CDML Converter, included with FileMaker Server Custom Web
Publishing, to change CDML format files to XSLT stylesheets after you convert your databases to
FileMaker Pro 7.

Changes that occur during conversion

67

Inbound links need to be modified
Pages within your web site that reference (link to) Custom Web Published solutions need to be
updated after file conversion, including URLs that directly reference the published database. Links
must be updated to use the new URL syntax and the new request query parameters. Be sure to check
scripts in other FileMaker Pro databases that launch a browser to access a Custom Web Publisheddatabase or that use XML Import via HTTP to bring data from a web-published database into a local
database.

Movies in FileMaker Pro 3.x or earlier
If a movie file that was imported using FileMaker Pro 3.x or earlier is encountered during
conversion, it is changed to an embedded image in the converted file.

Schedule settings in FileMaker Server
When you open converted files using FileMaker Server 7, no schedule information defined inprevious versions of FileMaker Server is retained. You must manually redefine schedules in
FileMaker Server 7.

Runtime solution files bound by the FileMaker Developer Tool
Converted files bound by a previous version of FileMaker Developer (for example, as a runtime
solution or set to Kiosk mode), must be rebound using FileMaker Developer 7. Contact the solution
developer for rebound copies of your solution files.
Important You should not convert a bound runtime solution unless you have the master password,
because you won’t be able to make modifications to the file after conversion. For more information,
see “Access privileges” on page 31.

68

Converting FileMaker Databases from Previous Versions

Chapter 5
Defining accounts and privilege sets for files
protected by the Web Security Database
The Web Security Database released with previous versions of FileMaker Pro is not supported byFileMaker Pro 7. User definitions and field restrictions formerly stored in the Web Security
Database must be set up in converted database files you plan to publish on the World Wide Web.
There are two ways to transfer user information stored in your Web Security Database:

1 You can manually create accounts and assign access privileges in a converted file.
1 You can use ScriptMaker to create accounts in a converted file based on information in anexisting Web Security Database and then assign privileges manually. In general, if you need tocreate accounts for more than 25 users and you are comfortable using ScriptMaker, it makes
sense to automate account creation using a script.

Considering security for FileMaker Pro 7 databases
FileMaker Pro 7 introduces many changes and improvements to database access and security. For
information about how database access has changed in FileMaker Pro, see “Access privileges” onpage 31. Before you transfer information from your Web Security Database, consider whether you
can take advantage of security improvements offered by FileMaker Pro 7.
To evaluate current security options:
1. Learn about security options and recommendations for FileMaker Pro 7. For information, see:

1 “Protecting databases with accounts and privilege sets” in FileMaker Pro 7 Help.
1 the FileMaker Security Guide
2. Examine the user permission settings in your current Web Security Database and plan for
setting up equivalents in FileMaker Pro 7.

Previous versions of FileMaker Pro defined user permissions by password and group. In
FileMaker Pro 7, all access permissions are defined in accounts and privilege sets. For more
information about how to plan file access in FileMaker Pro 7, see the next section.
3. Think about user access privileges that you will need going forward and determine if security
improvements in FileMaker Pro 7 allow you to define them now.

Planning secure access for files published on the web
For each database file you plan to convert:
1. Analyze the list of users and user permissions defined for the file in your Web Security
Database.

An easy way to list user records is to view all records as a table. Open the Web Users_ file,choose View menu> View as Table, and resize columns to display all information for each user.
Tip You can print the list by choosing File menu > Print.
2. Analyze all of the field restrictions defined for the file in your Web Security Database.

70

Converting FileMaker Databases from Previous Versions

Again, you can view field restriction records as a table and print it. Open the Web Fields_ file,choose View menu > View as Table, resize columns to display field restriction settings for eachfile defined in Web Fields_, and choose File menu > Print.
3. Examine the existing user records in your Web Security Database.

1 Review existing user records and delete any that are no longer in use.
1 Determine why user records were set up this way and how they are being used by the database.
For example, are settings for multiple users identical? If so, the collection of users represents
a “group” in previous versions of FileMaker Pro, which can be translated into a privilege set
shared by separate users in FileMaker Pro 7.

1 Decide how many unique accounts you will need.
1 Consider the number of accounts you had and decide if it makes sense to create them manuallyin converted files or to use ScriptMaker to create accounts. If you need to create accounts formore than 25 users and you are comfortable using ScriptMaker, it makes sense to automate
account creation using a script.
Note ScriptMaker can create accounts and assign privilege sets for you, but you must create
privilege sets in FileMaker Pro 7 manually before you run the script.
4. Examine the existing field restrictions defined for each file in your Web Security Database.

Field restriction settings need to be defined as access privileges in converted databases.
5. Make a comprehensive list of the new privilege sets you need for all users.

1 Identify the specific access rules needed for each privilege set. The new access privileges in
FileMaker Pro 7 offer an integrated security method, without requiring maintenance of theseparate Web Security Database. You can restrict access by table, by record, by layout, onvalue lists, on scripts, on how files are shared (extended privilege sets), or by certain features
such as printing, exporting data, or requiring users to change passwords regularly (otherprivileges). For more information, see “Creating new privilege sets” in FileMaker Pro 7 Help.
Note Access privileges apply to one file, so all tables need to be located in one file. If you have
converted a relational file, you may want to combine tables into one file prior to setting up
accounts and privilege sets.

1 Try to come up with privilege sets that can be shared by users who have the same access
restrictions. You will need separate privilege sets if you need to restrict access to certain areasof a database for some users and not for others.
Note The field restrictions Don’t Search and Exact Update that were available in the Web
Security Database are not supported in FileMaker Pro 7.
6. Create a comprehensive list of all users that assigns the required privilege sets to each user
account (user account and privilege worksheet).
Important Because this worksheet contains complete user log in information, it’s important tokeep it confidential.
7. Decide whether you are going to create accounts manually (see the next section) or use a script
to create accounts in your converted database file (see “Using ScriptMaker to create new
accounts”).

Defining accounts and privilege sets for files protected by the Web Security Database71

Creating new accounts manually
To create new accounts manually:
1. Complete the tasks listed in “Planning secure access for files published on the web” above.
2. Follow the instructions in this guide to convert your database file.

For more information, see “Converting your database files” on page 19.
3. Create the required privilege sets you identified during planning.

For more information, see “Creating new privileges” in FileMaker Pro 7 Help.
4. Create an account for each user listed in your user account and privilege worksheet.

For more information, see “Creating accounts” in FileMaker Pro 7 Help.
5. Test user accounts and privilege sets before making the converted file available to users. See
the FileMaker Instant Web Publishing Guide for testing suggestions.

Using ScriptMaker to create new accounts
Note A script can create accounts in your database file and assign privilege sets to them, but you
must create privilege sets manually.

To use a script to transfer account information from your Web Security Database:
List users and assign privilege sets.
Complete the tasks listed in “Planning secure access for files published on the web” on page 69.
Convert your database and your Web Security Database to FileMaker Pro 7 format.
Follow the instructions in this guide to convert your file and the Web Security Database. For more
information, see “Converting your database files” on page 19.
Set up your database to accept user information from the Web Security Database.
Before you can bring over account information stored in your Web Security Database, you need tomake the following changes to your converted database file:

1 Define a file reference to the Web Users_.fp7 file. This file reference will appear as a tableoccurrence in the relationships graph in your converted file.

1 Add a layout named Web Users_ that shows records from the Web Users_.fp7 table occurrence.
This layout helps you verify the information the script transfers from Web Users_.fp7.

1 Create the privilege sets in your database file that you will need to assign to the new accounts
after you run the script.
1. Open your converted database file, choose File menu > Define > Database, then click theRelationships tab to display the relationships graph.
2. Click Add Table.

3. In the Specify Table dialog box, click the File list, choose Add File Reference, locate and selectWeb Users_.fp7, click Open, and then click OK to close the Specify Table dialog box.

A table occurrence for Web Users_.fp7 appears in the relationships graph.
4. Click OK to close the Define Database dialog box.

72

Converting FileMaker Databases from Previous Versions

5. Use the New Layout/Report Assistant to create a new layout in your database file. Click MoveAll to create fields on the layout for all fields in Web Users_.fp7.

For information about creating layouts, see “Creating a layout” in FileMaker Pro 7 Help.
6. Create the privilege sets you identified during planning.

For more information, see “Creating new privileges” in FileMaker Pro 7 Help.
Create a script to transfer user information from Web Users_.fp7
Write a script to create accounts in your database file based on the user records in Web Users_.fp7.
For more information about scripting, see “Creating and editing scripts using ScriptMaker” in
FileMaker Pro 7 Help.
Example script
The following script navigates to the first record in Web Users_.fp7, then creates an account in yourdatabase file for every user record in Web Users_.fp7. When information from all records has beentransferred, the script returns to the layout displayed before it ran and informs you that it is finished.
Note This script assigns the Read Only Access privilege set to all accounts. If a large percentage ofusers share the same privilege set, you could name that privilege set in the script and manually
modify privileges for the accounts that require a different privilege set after you run the script. Or,
you could modify the script adding If and Else script steps to assign the correct custom privilege
sets to each account. If you plan to assign custom privilege sets using a script, you must define them
before you run this script.
Go to Layout ["Web Users_" (Web Users_)]
Go to Record/Request/Page[First]Loop
Add Account [Account Name: Web Users_::User Name; Password:
Web Users_::Password; Privilege Set: "[Read-Only Access]"]
Exit Loop If [Get (RecordNumber) = Get (FoundCount)]
Go to Record/Request/Page[Next; Exit after last]
End Loop
Go to Layout [original layout]
BeepShow Custom Dialog [Message: "Done."; Buttons: "OK"]Run the script to transfer user information from Web Users_.fp7
1. Run the script to create accounts in your database file.
Note Account names must be unique. If you have duplicate account names defined in your Web
Security Database, FileMaker Pro displays an error when this script runs and does not create
duplicate accounts.

Defining accounts and privilege sets for files protected by the Web Security Database73

2. If you used the script above without modifying it to assign specific privilege sets, use the user
account and privilege worksheet you created earlier to assign the correct privilege set to eachaccount.

For more information, see “Editing existing accounts” in FileMaker Pro 7 Help.
3. Test user accounts and privilege sets before making the converted file available to users. See
the FileMaker Instant Web Publishing Guide for testing suggestions.
Tip The example provided here shows one method of using ScriptMaker to automate accountcreation. Depending on how your database is used, you might consider letting users create their own
accounts via a script when they log in the first time. By using the Add Account script step and global
text fields on a designated layout, you can create a script that allows users to add an accountassigned to a default privilege set you define. Afterwards, you could reassign privilege sets, if
needed. For more information about scripting, see “Creating and editing scripts using ScriptMaker”
in FileMaker Pro 7 Help.

74

Converting FileMaker Databases from Previous Versions

Chapter 6
Considerations for associated files
and interfaces
If the database you are converting uses associated files and technologies (such as plug-ins), beaware of the following changes to how these technologies interact with FileMaker Pro 7.

Security improvements require reconfiguration of associated files
External interfaces, Apple events, and ActiveX are directly affected by the new security model in
FileMaker Pro 7 and must be reconfigured after file conversion to connect to a FileMaker databaseusing both account and password information. For more information, see “Access privileges” onpage 31 and “About accounts, privilege sets, and extended privileges” in FileMaker Pro 7 Help.

Starting FileMaker Pro using a URL
You use a URL to start FileMaker Pro and open a shared remote database (for example, in a
hyperlink on a web page or in a FileMaker Pro script that includes the Open URL script step). The
syntax for starting FileMaker Pro via URL has changed in FileMaker Pro 7 and now requires you
provide both account and password information.
ExampleIn previous versions of FileMaker Pro

In FileMaker Pro 7

FMP5://secret@192.168.10.0/
My+Addresses.fp5

FMP7:MyAccount:MyPassword@192.168.10.0/
My+Addresses.fp7

For more information, see “Opening shared databases remotely using a URL” in FileMaker Pro 7
Help.

References to objects whose names were changed during conversion
During conversion, object names (such as relationship names) that use reserved words, or fieldnames that use invalid characters are modified slightly so they will evaluate properly in
FileMaker Pro 7. If renamed objects are referenced by files that interact with a converted database,the object name must be modified in the reference as well. For more information, see “Reserved
words” on page 49 and “Invalid characters and words in field names used in calculations” onpage 49.

Plug-ins
Ensure external functions and plug-ins have been verified for use with FileMaker Pro 7,
FileMaker Server 7, or the FileMaker Server Advanced Web Publishing Engine. The same plug-ins
that work with FileMaker Pro 6 in Mac OS X or Windows 2000 should be compatible with
FileMaker Pro 7, though they will not take advantage of new features in version 7.

76

Converting FileMaker Databases from Previous Versions

If you acquired plug-ins that were developed by a third-party vendor, contact the vendor for detailed
compatibility information, or to find out if the vendor has a new version that takes advantage of
FileMaker Pro 7 features.
If you are a plug-in developer, verify plug-in behavior and functionality with FileMaker Pro 7.

1 Plug-ins that depend on more than the plug-in API compatibility may not function properly with
FileMaker Pro. For example, in some cases plug-ins may attempt to use undocumented
interfaces and make assumptions about behaviors that have changed in this version. For
information about developing plug-ins for FileMaker Pro 7, see the FileMaker Developer
Developer’s Guide.

1 Plug-ins written to work with FileMaker Pro 6 Unlimited (and earlier) and FileMaker Pro 7 do
not automatically work when using web publishing with FileMaker Server Advanced and the
Web Publishing Engine. Check with the plug-in vendor to see if a plug-in supports theseenvironments.

1 Accelerated evaluation in FileMaker Pro 7 could produce errors in files created with previous
versions of FileMaker Pro if a plug-in expects complete evaluation. For more information, see“Accelerated calculation evaluation” on page 52.

1 For information about where to install plug-ins required for web publishing in FileMaker Pro 7,
see the FileMaker Server Advanced Web Publishing Installation Guide.

LDAC and RDAC changed to ODBC/JDBC and FileMaker Server
Advanced
Sharing information with other applications (Windows)
The Local Data Access Companion (LDAC) and the Remote Data Access Companion (RDAC) are
no longer supported. In addition, database access is now controlled through accounts, privilege sets,
and extended privilege sets rather than groups and passwords.
If a database you are converting used LDAC or RDAC to share information from an ODBC data
source, sharing settings and user group and password settings need to be redefined manually in
FileMaker Pro 7 for use with ODBC/JDBC.
Note FileMaker Pro 7 support for ODBC/JDBC allows access to your database on the local
computer. If you used RDAC to access information from data sources on computers over a network,
you now need FileMaker Server 7 Advanced. For more information, see the FileMaker Server
Administrator’s Guide.

After conversion:

1 Enable the database for sharing via ODBC/JDBC (Edit menu > Sharing > ODBC/JDBC).
1 Make sure user accounts that access the database have the extended privilege Access via ODBC/
JDBC.

1 If your database was previously protected with a password, you need to update the application
using ODBC/JDBC to access your database using an account name and password.
For more information, see “Access privileges” on page 31 and “Sharing FileMaker Pro data via
ODBC or JDBC (Windows)” in the FileMaker Pro 7 Help or the FileMaker ODBC and JDBC
Developer's Guide.

Considerations for associated files and interfaces

77

Accessing ODBC data sources
Drivers used with previous versions of FileMaker Pro to access information from a data source
should work properly with FileMaker Pro 7. However, users won’t be able to use updated ODBC
drivers for FileMaker Pro 7 unless you redefine your data sources to use your new driver. For more
information, see “Accessing ODBC data sources using FileMaker Pro” in the FileMaker Pro 7 Helpor see the Installing FileMaker ODBC and JDBC Client Drivers guide. If your database uses a
script to import information from an ODBC source, see “Import Records and Export Records script
steps” on page 61.

ActiveX library renamed
ActiveX solutions should convert and function properly to FileMaker Pro 7. The only significant
change in FileMaker Pro 7 is that the ActiveX library has been renamed from FMPRO50Lib to
FMPRO70Lib. After conversion, you must manually create an instance of FileMaker Pro in Visual
Basic as follows:
Dim FMProApp As FMPRO70Lib.Application
Note To support the new access privilege model in FileMaker Pro 7, theDocuments.Open(filename As String, password As String) method has been changed
to Documents.Open(filename As String, accountName As String, password As
String). If the accountName and password parameters are empty, the file is opened by the Guest
account.

Apple event changes in FileMaker Pro 7 (Mac OS)
FileMaker Pro 7 has changed its Apple event support to accommodate multiple database tables per
file and other new features. In general, because all FileMaker Pro 6 and earlier files are converted
as single table files, an AppleScript created to work with FileMaker Pro 6 files will continue towork once those files have been converted to FileMaker Pro 7. However, you will probably needto modify existing AppleScripts as database files are modified to use multiple tables and other new
features in FileMaker Pro 7.
For a complete description of Apple event support in FileMaker Pro 7, see the FileMaker Pro Apple
Events Reference database, located in FileMaker Pro 7/English Extras/Apple Events/
Apple Events Reference.fp7.
The following is a summary of the major changes to Apple event support in FileMaker Pro 7.

78

Converting FileMaker Databases from Previous Versions

New object model
FileMaker Pro 7 uses the following object model for Apple events:
ApplicationcApplication

Document
cDocument

Menu
cMenu
Menu ItemcMenuItem

Table
cFMTable

WindowcWindow

LayoutcTableRequestcRequest

DatabasecDatabase

FileMaker Script
cFileMakerScript“Layout 0”

Row/Record
cRow

Column/Field
cColumn

Cell
cCell

Repetition
cRepetition

FileMaker Pro provides default containment, a set of default conditions to make scripts shorter andto determine which objects to use if none are specified.
When this object has not been specified

FileMaker Pro substitutes this object

layoutcurrent table

table

table 1

record 1 of document 1

record 1 of table 1 of document 1

Changes to functionality
New "table" object
A new object, table, has been added to the object model to support the multiple database tables
per file that are possible in FileMaker Pro 7. This new table object has the constant value
cFMTable.
The fields in the table object cFMTable correspond to the actual fields defined in the table. Fields
are expressed as belonging to the object cColumn. The records cRow correspond to the total
number of records in the same table. However, the fields in the layout object cTable correspond
only to the fields cColumn defined in that layout and the records cRow correspond to the number ofrecords in the found set for that layout.

Considerations for associated files and interfaces

79

Earlier versions of FileMaker Pro (version 6.x and earlier) defined a special layout, layout 0, alayout with a 0 index, to give the scripter access to the single table for a database. FileMaker Pro 7
still supports the layout 0 concept for backward compatibility, but layout 0 can only be used torepresent table 1 of the database.
Using 0 as the index for layouts generates an object specifier to table 1 of a FileMaker Pro database.
The value of the pKind property of a cFMTable object is table, and view for cTable (layout). To
access fields of other tables, use the table object cFMTable instead. For clarity and forward
compatibility, it is recommended that you convert existing scripts to use the table object instead oflayout 0.
The cColumn elements of a cTable object correspond to the fields appearing on a FileMaker Pro
layout, while the cColumn elements of a cFMTable object correspond to the fields as they appear
in the Define Database dialog box for that table. To view fields for a table, choose File menu >Define > Database, click the Fields tab, and select the table from the table pop-up menu.
Note cTable, the constant value for layout objects used in the previous versions of FileMaker Pro,is still supported. The mapping of the layout object to cTable has not changed.

New "window" object
FileMaker Pro 7 supports the ability to view multiple windows per document. When you referencea window by index (window 1, window 2, and so on ), then windows will be considered to beorganized according to their order on screen. For example, if window 1 is the foreground window,
window 2 is the window behind the foreground window, and so on, regardless of the document towhich they are related.
To reference windows according to their relation to a specific document, use the syntax window 1of document 1, where window 1 of document 1 is the first window created for document 1.
It is not necessary to specify the window object if you are using the current record and current
layout properties. For example, a statement such as tell application "FileMaker Pro" toget current record will return a reference to the current record from the foreground window.
New "repetition" object
A single cell can contain multiple repetitions. The repetition object provides more control overdata accessed from the database.
Repetition 1 of cell 1 of window 1 represents the first cell displayed on the window's
current layout. For example, if a cell has five repetitions, and that cell's layout format is set todisplay only repetition 2 to 4, then Repetition 1 of cell 1 of window 1 will get the data ofrepetition 2. To set data from repetitions that are not currently visible, use the syntax Repetition
1 of cell 1 of table 1, which in this case will return the data of repetition 1.

Field order changes
For Apple events, the field order of a table cFMTable is the field creation order. (To view the fieldcreation order for a table, choose File menu > Define > Database, click the Fields tab, select the tablefrom the table pop-up menu, and choose View by creation order.) In contrast, the fields order of alayout cTable is the graphical order in which the fields appear on the layout, moving from top left
to bottom right.

80

Converting FileMaker Databases from Previous Versions

If an application issues a Get Data event on a record of layout, request of layout, orlayout statement, the data will be returned using the graphical order. And if an application issues
a Get Data event on a record of table or table statement, the data will be returned using thecreation order. If the field type is date, time, timestamp, or number, the data will be returned asformatted on the layout (as set in the Date, Time, and Number Format dialog boxes).
When using the Set Data event with a record, request, table, or layout object, the data should be
supplied in the same order it would be retrieved if using a Get Data event on that object.
Printing changes
The Apple events printing behavior for FileMaker Pro 7 has been changed to completely suppress
the user interface. To provide support for printing, three optional parameters have been added tothe printing command:from page, to page, with copies

If any of these optional parameters are not specified with the command, FileMaker Pro 7 uses thedefault values saved with the file.

IndexA
accelerated calculations 52
access privileges, about 31
accounts
about 31
converting Web Security Database 69
ActiveX 77
Admin account 16, 32
aliases 36
alphabetic charactersas date separators 44
in number fields 43
Apple events 77
AppleScript 77
asterisks 36

Bbatch file conversion 20
blank passwords 32
Boolean calculations
about 56
alphabetic in number fields 43
buttons 38

Ccalculation fields
about 45
accelerated calculation 52
and field types 49
capitalizationand indexing 42
and sorting 40
of passwords 32
case-sensitivity 32, 40, 42
CDML 66
characters and reserved words 49
characters, invalid 49
colons, in date fields 44
commas, in calculations 49
comparison operators 51
container fields 44
Conversion.log file 20, 26
Convert File script step 59

converting dates 39
converting files
multiple 20
overview 9planning 10
single 19
testing 16
to tables 39
verifying changes 14
version 1.x and 2.x 23
custom dictionaries 37
Custom Web Publishing 66

D
Data Entry Only privilege set 33
Database Design Report 18
date fields 44, 52
dates, converting 39
default privilege sets 33
disk space 11
document preferences 32, 36
drag and drop files 20
duplicate objects 28

E
error messages 26
Export Records script step 61
extended privileges 33
external files, pointers to 35
external functions 52

Ffield types 49
fieldscontainer 44
defined as buttons 38
duplicate 28
invalid names 27
repeating 58
rotated 58
validated 52
file close scripts 64
file formats, supported during conversion 22
file open scripts 64

82

Converting FileMaker Databases from Previous Versions

file options 32, 36
file references
about 35
duplicate 28, 29
in script steps 63
wild cards 36
FileMaker Network sharing 33
FileMaker Developer 67
FileMaker Pro version 1.x and 2.x 23
FileMaker Server 66, 67
filename extensions
for converted files 20, 22
returned by functions 55
filenames
fully specified 39
naming converted files 19, 22
files
converting
multiple 20
overview 9planning 10
single 19
testing 16
to tables 39
verifying changes 14
version1.x and 2.x 23
migrating 10
opening
multiple 21
Open Remote script step 59
references to 35
fixed-point rounding 53
floating-point rounding 53
FMNET path 59
folders 21
fonts 38
Full Access privilege set 33
fully qualified names 39
function parameters 49

G
Get functions 46
Get(AccountName) function 57
Get(CurrentDate) function 53
Get(LastError) function 57
Get(UserName) function 57
GetAsNumber function 54
global fields 43

Go To Layout script step 59
Go to Related Record script step 60
graphics 37
groupsabout 32
and Status(CurrentGroups) function 48
Guest account 28, 32

Hhard drive 11
hidden multi-user files 37
Host button 35

I
Import Records script step 61
indexes 41
Instant Web Publishing 66
invalid characters 49

J
Japanese functions 48
JDBC 76Llayouts 38
LDAC 76
local path 48
locking records 62
log, conversion 20, 26
logical calculations 43

Mmessages 26
migrating files 10
Mod function 55
movies 67
multi-user files 33, 37

N
named file references 35
naming converted files 19
naming errors, in calculations 49
network sharing 33
number fields 43
numbers, rounding 53

| IndexO
objects on layouts 38
ODBC 76
Open Remote script step 59
Open script step 59
opening files 21
OpenType fonts 38
operators, and field types 49

Pparameters 49
passwords
about 31
troubleshooting 25
paths
and Get(FilePath) function 48
relative 35
Perform Find script step 60
Perform Script script step 60
PICT files in container fields 44
plug-ins 65, 67
plus sign in date fields 44
pointers, to files 35
portals 39, 63
precedence, operator 52
preferences, document 32, 36
Print script step 61
Print Setup script steps, converting 42
printer settings, lost (Windows) 42, 61
privilege sets
about 31
converting Web Security Database 69
default 33
privileges, extended 33
publishing databases on the web 65, 69

R
RDAC 76
Read Only Access privilege set 33
Record IDs 47
Refresh Window script step 61
relationship IDs 45
relationships
about 39
duplicate 28
relationships graph 39

relative paths 35
repeating fields 58
reports 40
reserved words 49
Revert Records/Requests script step 61
rotated fields 58
rounding of numbers 53
runtime solutions 33, 67

S
Save a Copy As script step 61
Save relative path option 35
schedules, FileMaker Server 67
script IDs 62
script names 27, 62
scripts
about 58
pausing 63
pointers to 35
to convert the Web Security Database 71
when a file closes 64
when a file opens 64
Select Window script step 60
semicolons, in calculations 49
separators
in calculations 49
in date fields 44
sharing
FileMaker Mobile 33
network 33
ODBC 33, 76
web 33, 69
solution files, runtime 33, 67
sorting records 40
and empty found sets 62
focus after sorting 62
spelling checker 37
startup scripts 64
Status functions 46
status messages 26
Status(CurrentError) function 57, 63
Status(CurrentWebSharing) function 66
storage, global 43
Substitute function 44, 53
summary reports 40

83

84

Converting FileMaker Databases from Previous Versions

TV

tables 39
text functions
and number fields 54
and word breaks 39
renamed 45
text styles 38
time fields 44, 52
timestamp fields 52
Today function 53
Toggle Text Ruler script step 61
troubleshooting file conversion 25
TrueType fonts 38

validated fields 52
value lists, pointers to 35

Uuser.upr 37

W
web publishing 65
Web Security Database 69
Web Users_.fp7 71
wildcards 36
Windows Metafiles in container fields 44
word breaks 39
words, reserved 49

Yyears, two-digits 39