Database Sharing with FileMaker Pro - File Maker

Log in to the “Darn Good Security System” by launching the LaunchDev.fp5 database and entering the ckubica user name and -wwww1111- password. The databases should not be hosted by FileMaker Server at this time.

Once the whole solution is open, go to Edit > Preferences > Application > General tab. Make sure that your preferred networking protocol is selected (probably TCP/IP, the cross-platform standard). Next, cancel out of Preferences and go to File > Sharing. You’ll see this dialog:

Database Sharing with FileMaker Pro

There are three sharing options: With the Single User setting you don’t share the database over the network; with Multi-User you share the database with others who will open the solution via the File > Open Remote dialog using; and with Multi-User (Hidden) you share the database in such a way that it is hidden to users in the File > Open Remote dialog but is available to be opened when called via script or relationship by another database that the user can open. In this security solution, only Menu.fp5 is shared unhidden; the rest of the databases are shared hidden, so nobody can attempt to access the database system via a back door.

This dialog also shows how many connected guests there are. By using the Send Message button you can send a message to all users currently connected to the database (like “LOG OFF. I need to add the gWhereAreTheMoles? global field!”).

The Companion Sharing box at the bottom of the File Sharing dialog allows you to turn on and off (and configure) plug-ins that enable still other types of database sharing such as ODBC, Web Companion, and FileMaker Mobile companion sharing.

LogOn as a Guest
This solution is basically ready to be shared. In fact, it is being shared to your local network simply because it is open with a network protocol selected and functioning, and because its sharing settings are set as a Multi-User selection.

The system you’re working on now, the one with the databases open, is the server; it is hosting the databases for others to use.

Now, were you to go to another computer on your network and choose File > Open Remote (or choose File > Open and then click the Hosts button) you would see the Hosts dialog:

LogOn as a Guest

If you have a relatively simple network, you should see the name of the server computer at the top, with the Menu.fp5 database listed beneath it. On the guest computer, double-click the Menu.fp5 database, enter the master password -IOERROR679Q-, and you’ll log in to the database system as a guest of the server computer. Now there are two people using the database system at the same time!

Hurray! Go back to the server computer and send your one remote user (yourself) a message via the File Sharing dialog. Cool!

Opener Databases
As you know by now, the “Darn Good Security System” database solution has a few opener databases too, which can be used to launch into the system. These are meant to reside on the guest computers, not on the host. When a user doubleclicks their local copy of an opener database, a script within it looks out at the server computer and opens the served database system, bypassing the need for a user to ever see or use the Hosts dialog.

To set up an opener database, first bring up all the other databases on the server computer, then copy the opener database to a guest computer. Open the opener database with the master password and point the external script call in the opener script to the Start Up script in the Menu.fp5 database by navigating to it through the Hosts dialog (never by navigating to Menu.fp5 via the Finder or Network Neighborhood). Once the opener database launches into the hosted system flawlessly from one guest computer, distribute it to all other guest computers that require access to the database.

There’s Nothing in the Hosts Dialog (or “I Can’t Log On as a Guest!”)
If you don’t see any hosted files in the Hosts dialog, here’s what to check:

  • Make sure you’ve selected the right networking protocol in Edit > Preferences > Application > General tab. If there’s nothing to select there, then you chose not to install this feature when installing FileMaker Pro. Go back and install it.
  • Make sure that the guest and server computers are both properly connected/ cabled to your network by trying to access the Internet or another file server computer from the guest and from the server.
  • Try to ping the server from the guest. On a Mac, you can use a product like IPNetMonitor; on a PC, go to Start > All Programs > Accessories > Command Prompt and type in Ping (or enter the server’s DNS instead of the IP address). If you can’t ping the server, there’s something between you and it, like a firewall, that’s preventing you from seeing the server. If it’s a firewall, the firewall must have TCP/IP port 5003 open to allow computers on the WAN/outside the firewall to see the server computer.
  • Make sure that both the server computer and the guest computers have valid IP addresses, using whatever IP addressing scheme your network uses. Make sure no two computers have been assigned the same IP address.
  • If the guest and server computers aren’t in the same workgroup or domain or subnet (groups within your network), the server might not be a Local Host. If so, you might have to click Specify Host in the Hosts dialog and enter the name or IP address of your server computer first.
  • Make sure the databases you want to open are not set to Multi-User (Hidden) as discussed earlier. If the multi-user radio buttons are dimmed, there should be a message telling you why that’s so.
  • Um, have the databases been opened on the server computer? Just checking.
  • Do you have the Export Records access privilege enabled on the databases you want to share? This is required in order to be the host of a shared database.
  • Are both the server and guest computers using FileMaker Pro 5.x or higher?

They must be.

  • If the guest computer is a different platform than the server, you must be using the TCP/IP networking protocol.
  • Search for “Cannot see hosted databases” in FileMaker’s built-in help system for more tips.
  • Make sure the networking protocol you’re trying to use is properly installed in your computer’s operating system.
  • If the guest or host computers have recently partially crashed, try to restart that computer and try again.
  • Make sure no two workstations have the same licensed copy of FileMaker Pro installed.

Other Ways to See Available Hosted Databases
There are three options available when you need to select where to look for hosted databases in the Hosts dialog: Local Hosts, Directory Service, and Specify Host. You learned about Local Hosts already. Here are the specifics on what the other two options do.

Directory Service
Your network administrator may be broadcasting the names and locations of your company’s FileMaker server computer (running FileMaker Server) using a directory service or LDAP (Lightweight Directory Access Protocol) Server. If so, you can find and access the server by entering the specifications into the Directory Service dialog as provided to you by your administrator. You can use User Authentication (and Windows Authentication), which ties being able to see a server on the network to your regular network user name or password. This adds a nice additional layer of security.

Specify Host
If you choose this, a dialog comes up asking for the IP address ( or DNS name (“MYFMPServer”) of the computer serving the databases to others. Enter this information and click OK. You can also permanently add the selected server to your Hosts dialog by checking the “Permanently add entry to Hosts list” box. (To remove this, locate the “fmhosts.txt” (Windows) or “FileMaker Hosts” (Mac) file on your hard drive, open it in a text editor, and edit it.)

Optimizing Database Sharing Performance and Best Practices
The more users logged in to your solution, the more slowly it will run. That’s a given. But also keep the following in mind when hosting a database system to others using FileMaker Pro in order to optimize performance:

  • First and foremost, never have more than one copy of a FileMaker database on the server computer, or anywhere else on the network (two databases named Menu.fp5, for example). FileMaker will occasionally open the wrong copy of a database (like the last backup, or the last last backup, which are on the same computer in a folder called “Backup DBs”), especially if it can’t find the right copy for some reason. It will even look out on the network for a database if it can’t find it locally. This mixing and matching of old and new copies of a database will wreak havoc on the integrity of your data and is often the cause of many a strange FileMaker problem. (“Yesterday, I entered all this data; now it’s all gone! How come?”) If you need to keep backups on the server computer (or elsewhere on the network), put them in a .sit or .zip archive first. (Use Aladdin Systems’ StuffIt or WinZip Computing’s WinZip.)
  • The server should only be running FileMaker Pro which, if applicable, should be kept as the foremost application (especially in Mac OS Classic). To prevent users from accidentally making the Desktop the foremost application, uncheck “Show Desktop When in Background” in the General Controls control panel.
  • Don’t run unneeded services, system extensions, or processes on the server or host computer. If FileMaker needs to compete for resources with these, you’ll take a performance hit.
  • Serve the databases to others on a computer with a very fast hard drive.
  • Only serve databases that reside on the server’s local hard drive. If you try to serve databases that reside on the network somewhere, FileMaker Pro will give you a message like this:
  • Database Sharing with File Maker Pro

    Besides resulting in slower performance, this also creates a much less stable setup: The FileMaker Pro server will crash more often, kicking out guests and potentially corrupting your data or database structure.

  • Turn regular file sharing OFF on the host so that you can’t get to the server via Network Neighborhood (Windows) or the Chooser (Mac). No one should be able to access the databases via file sharing; they should have to use the File > Open Remote dialog. (Anything else may slow and even corrupt your databases.)
  • Minimize the use of large graphics for layout elements (or within fields) and the use of unstored calculations for fields that users often sort, find, or summarize on. Number crunching like this between your guests and the host will slow things down considerably.
  • Few performance issues are due to the guest end of things. A guest with a reasonably fast processor and hard drive should perform well.
  • If you’re on a Mac, allocate a lot of memory to the FileMaker Pro application by highlighting FileMaker in the Finder, and pressing COMMAND-I or choosing Get Info from the File menu. Select Memory in the drop-down and set the minimum memory field to twice the suggested size; make the preferred size three times that of the suggested size, if you can spare it.
  • In the server computer’s copy of FileMaker Pro, go to Edit > Application > Preferences > Application > Memory tab and select “During idle time” to designate when changes are saved to disk. On all guest computers, make a good choice in the same dialog for when FileMaker saves changes to disk.
  • You should probably save every two to five minutes. On Windows, you can also specify the cache size that FileMaker Pro will use. The lower the cache value, the quicker the cache will get full and the more often changes will be saved back to disk on the server computer. When the cache value is higher, changes are saved less frequently, and the performance for all guests will be faster. You should allocate at least 7500K to the cache, if you can spare it.

  • Clean out temporary files, rebuild the desktop (Macs), defragment your hard disks, and generally keep all computers in tip top shape.
  • Make sure that your server has a battery backup power supply.

You may notice while sharing a database as a guest that the cursor sometimes turns into a squiggly line with an arrow on each end after you start some script or update a record. This occurs when FileMaker is performing a function or modifying the data that it is sending back to the server. The regular cursor will reappear when the processing is complete. If the server is getting similar requests from many users at once, the cursor may even change to a coffee cup icon, meaning that it is especially busy, and preventing you from doing anything in the database system until it is less so. When you see that coffee cup, the server will process requests from each user in an orderly fashion while preventing the requests (like a massive calculated replace that two users might like to do on the same field in the same set of records, for instance) from interfering with one another. The guest’s view into the database will unfreeze once the server has processed all incoming and outgoing requests.

Functionality Limitations
When you are hosting databases to others and then log on to a hosted database hosted by someone else, there are some limitations as to what the host and guest computer can do with regard to functionality within the database.

If you are at a guest computer, you can:

  • Browse, find, preview, and print records.
  • Switch to different layouts.
  • Run scripts.
  • Use most other FileMaker functions, except that values in global fields are only saved to the server from the host. Any global field values set by a guest computer are only seen that way on that guest computer. In other words, each guest gets his or her own global values for each logged in database session.
  • When you log out and log back in, the guest computer gets all global field values reset to the default (host’s) global field values. Sort orders, print/page setups, and ad hoc export/import orders are also specific to each users. So if User 1 sorts contacts by last name, User 2 can sort contacts by city and state without messing with the sort order on User 1’s or anyone else’s sort order.

Only one user at a time (guest or host) can do the following things:

  • Create or edit value lists, passwords (using Change Password under the File menu), or relationships; or go into ScriptMaker.
  • Edit a particular record.
  • Edit a particular layout (any layout changes are immediately sent to every other logged-in user when one user makes some).

And only the host computer can do the following things on an open, shared database (and in order to do any of these, all guests must be logged off):

  • Create or edit field definitions.
  • Change the order of layouts.
  • Create or edit user groups or access privileges (which groups can see which layouts or fields, which groups use which passwords, and so on).
  • Use the “Save a Copy” command via the File menu.
  • Make the database single-user.
  • Close the database (if you close the database as a guest, it’s still available for sharing to other potential guests).

Setting Up a Small Network
The specifics of setting up a small network at home or in a small office are beyond our scope

All rights reserved © 2020 Wisdom IT Services India Pvt. Ltd Protection Status

File Maker Topics