- Getting Started
- Understanding FileMaker Pro Features
- Using the Status Toolbar
- Working in FileMaker Pro
- Working with Records
- Working with Fields
- Working with Related Data
- Finding Data with FileMaker
- Importing and Exporting Data
- Using the Web Viewer
- FileMaker Extra: Becoming a FileMaker Pro Power User
Understanding FileMaker Pro Features
FileMaker is a vibrant ecosystem of software products, developers (at FileMaker and at third parties), designers of FileMaker databases, and the users thereof. The heart of this ecosystem is FileMaker databases, which can include user interfaces, scripts, and other elements that work with the FileMaker software to help people manipulate the databases. On the software side, there are two major products, each of which has two versions:
- FileMaker Pro and FileMaker Pro Advanced let you build and use databases (in database-speak, the schemas of your databases); you also can build interfaces, scripts, and other elements with these products. These are the only tools that let you create FileMaker databases.
In addition to building databases, you can share them with other people over a network with these products. Sharing is limited to nine other people (but read on for details of FileMaker Server).
- FileMaker Go lets you access your databases from iOS devices. You can use iTunes or email to install your FileMaker databases on an iOS device, and then you can use the database anywhere. You also can use FileMaker databases that are published on the Web using FileMaker Pro or FileMaker Server from FileMaker Go. This scenario means that changes you make to the database are reflected immediately across the Web or network, and those changes show up on other FileMaker Go clients as well as in the view of the database that people see in FileMaker Pro.
FileMaker Server and FileMaker Server Advanced let you share databases over a network with up to 250 people running FileMaker Pro. You also can publish FileMaker databases so that people can access them over the Web with web browsers (in other words, they don’t need to have their own copies of FileMaker Pro). FileMaker Server Advanced has no fixed limit on users: The actual number is restricted only by your hardware, but 250 has been tested.
FileMaker Server allows web publishing with ODBC/JDBC and PHP. This lets people access your solutions with a web browser. This means that if someone wants to access a FileMaker database that you publish, they can do so with FileMaker Go on an iOS device, but on other mobile devices, the built-in browser can do the trick.
FileMaker Server Advanced implements an additional technology called Instant Web Publishing, which lets people use their browsers to access screens that look very much like the actual FileMaker Pro interface (very, very much like the FileMaker Pro interface).
There is an additional component of FileMaker that you can create using FileMaker Pro Advanced. After you have created your FileMaker database and its interface, you can generate a runtime solution with FileMaker Pro Advanced. That solution can run on OS X or Windows (you must create separate copies for each operating system), and users can get almost the entire FileMaker Pro experience without installing a copy of FileMaker Pro. No restrictions on the distribution of this software exist, but there are some restrictions on the features that are supported. Perhaps the most significant feature that is not available in a runtime solution is networking: Runtime solutions are single-user solutions.
Understanding FileMaker Databases
FileMaker databases have evolved over the years. Today they consist of several components, not all of which might be present in every database you use:
- A database contains one or more tables that actually contain the data. The next section describes tables in more detail.
- A database can contain references to tables in other FileMaker database files or in other databases accessed via ODBC.
- A database can contain layouts that provide the user interface with which to access tables either in this database file or in other locations.
- There might be scripts that contain commands created to automate various processes. Scripts are often connected to layout elements, such as buttons, but they can be invoked automatically when a database is opened or closed, as well as when certain other events occur (or are triggered).
- The database includes security features in the form of user identifiers and passwords as well as descriptions of what privileges each set of users has to access the database and its components.
- A variety of other, smaller components that support these major features are also part of the database.
With the exception of tables in other files or databases referenced from a database, all the database elements are stored in a single file that can be moved from place to place.
- If you have references to other files, you might break these links if you move the database file. For more information, see Chapter 7, “Working with Relationships.”
Before FileMaker 7, no serious distinction was made between database files and tables; this was one way in which FileMaker differed from other relational databases. Beginning with Version 7, FileMaker could handle multiple tables within a single database file. The number of tables that a single database file can contain is essentially limitless.
A table is a collection of data—the records and fields described in the following section. Data in a given table is all in a single logical format. The simplest case of a Starter Solution is Contacts: It contains a single table called Contacts.
A large part of the power of a relational database such as FileMaker Pro is its capability to relate data in one table to another. The Projects Starter Solution, for example, contains three tables: Projects, Tasks, and Personnel. As you might expect, tasks are part of projects, and personnel are assigned to tasks. This is all governed by the design of the database: FileMaker keeps the relationships organized.
Tables need not be in the same database file to be related to one another, but it makes sense to combine tables that are closely related in a single database file. For example, if you have a complex Contact Management database, you might have tables for names, for addresses, and for phone numbers, with all those tables being related to one another to combine the data for a single contact. In FileMaker Pro, every layout is based on a single table, although it can use data from other tables as well.
- To dig deeper into working with multiple tables and understanding relational data models, see Chapter 6, “Working with Multiple Tables,” and Chapter 5, “Relational Database Design.”
Understanding Records and Fields
A table stores information about many items with similar data characteristics: many to-do items, many contact items, and so forth. Each of these items is called a record (sometimes data record), or, in relational database parlance, a row. Each record or row has data elements that are called fields, or, in relational database parlance, columns. Fields for a contact record can include a name, an address, and the like; for a to-do item, fields might contain a due date and the name of the task to be done.
Particularly if you use the row/column terminology, it is easy to think that you are talking about a spreadsheet, but a database is much more powerful than a spreadsheet. Much of that power comes from two major aspects of a database:
- You can describe the database so that the data it contains must adhere to strict rules. Numbers must be numbers, if you choose to enforce such a rule, and values must be within a specific range of values if you choose another type of rule.
- Furthermore, you can set up rules to relate data within the database so that, for example, the person charged with carrying out a to-do item must be someone who is already entered into the contacts database. You’ll see how to create such relationships shortly.
The combination of these two aspects of databases—along with many more—make them more powerful than spreadsheets.
The FileMaker Pro User Interface
The FileMaker Pro interface consists of basic elements:
- Layouts display data and let you edit it.
- Modes change the behavior and appearance of the interface to let you browse data, find specific data, display reports for printing or interactive use on the screen, and create or modify layouts.
- Views are available in both Browse and Find modes. They let you see one record at a time, a list of records, or a spreadsheet-like table view of records.
Each of these interface elements is described in this section. In a later section, the Status toolbar and associated menu commands are described. They let you control the user interface itself, switching among layouts, modes, and views as well as navigating through your database.
Figure 2.4 shows the FileMaker Pro user interface with the Status toolbar at the top of the window (you can show and hide it). The main part of the window is a layout displaying data from the Assets Starter Solution.
Figure 2.4. The FileMaker Pro user interface provides a Status toolbar at the top of the window.
There are two parts to the status toolbar, one above the other. The main part of the Status toolbar shown in Figure 2.4 has navigation tools, buttons to create and delete records, as well as buttons to find and sort data. Below it, the narrower Layout bar lets you select layouts and control how to view the data (as a form, list, or table). Buttons let you enter Preview mode, show or hide the Formatting bar, or edit the layout. These features are described in more detail in “Using the Status Toolbar,” later in this chapter.
Most FileMaker Pro databases open to a data-entry layout, such as that shown in Figure 2.5. Generally, you have access to fields, commonly designated by a field border of some kind, including rounded corners, where you can set the corner radius (beginning in FileMaker Pro 12). Fields are usually labeled. FileMaker Pro provides some specialized data-entry tools, such as the calendar shown in Figure 2.5.
Figure 2.5. FileMaker Pro has specialized data-entry tools.
Figure 2.6, based on the Meetings Starter Solution, shows a tab control at the right of the layout. There are two tabs: Topics and Action Items. Each tab displays its own set of data when it is clicked. This makes for a very efficient use of the screen.
Figure 2.6. Use a tab control to save space.
Developers often provide tooltips that appear when you hover the mouse pointer over a specific layout element.
- For information on creating Layouts, see Chapter 4, “Working with Layouts.”
FileMaker Pro Modes
At any given time, you interact with your FileMaker Pro databases via one of four modes. At times, developers choose to tailor a layout for use with a specific mode, but more often than not, you can use layouts effectively with all four modes. To switch between modes, use the View menu or the Status toolbar, described later in this chapter. To familiarize you with the four modes, here’s a simple description of each:
- Browse mode—Browse mode is FileMaker Pro’s primary mode, where all data entry occurs, and generally is the principal mode you’ll use in a given solution.
- Find mode—Here, you create and then perform find requests to search for specific sets of records.
Preview mode—When preparing to print from FileMaker Pro, you can opt to switch to Preview mode to see what a given layout will look like after it is printed.
Certain aspects of reports such as subsummaries were only available in Preview mode until FileMaker Pro 10. Now, you can interactively modify data in reports in Browse mode and see the subsummaries dynamically respond to the changes.
- The primary information on reports, including interactivity in FileMaker Pro 10, is provided in Chapter 10, “Getting Started with Reporting and Charting.”
- Layout mode—It is in Layout mode that a great deal of development occurs. Here, developers can manipulate all the elements of a given layout, including controlling all the things that appear on that layout.
In addition to the modes of FileMaker Pro, there are three views as well. A view is a particular way of displaying record data on the screen. To change among them, use the View menu. As you will see later, layouts can have headers and footers; the view refers to the layout shown between the header and footer. These are the three views:
- Form view—This view enables you to see and manipulate only one record at a time, as shown previously in Figure 2.5.
- List view—Here, you can display multiple records. At any given moment, you are working with only one specific record while still being able to scroll through the rest (see Figure 2.7). A black bar at the left of the Layout area shows you which record is active.
Figure 2.7. List view lets you work with more than one record at a time.
- Table view—Table view simply displays the raw data for a given record (depending on what fields have been placed on a layout). It looks quite similar to a spreadsheet application (see Figure 2.8). You can move, resize, and sort the columns by clicking the column headers.
Figure 2.8. In Table view, you can resize, move, and sort with column headers.
Notice that we’ve largely been talking about fields on layouts. Most FileMaker Pro solutions also include buttons. Figure 2.5, earlier in this chapter, shows a few examples.
Buttons can come in all shapes and sizes in FileMaker Pro. Text can be a button, a field can be a button, and even just a mysterious blank area in the middle of a layout can be a button (although that is a very poor interface).
In Figure 2.6, the top of the layout contains buttons named Meeting List and Send by Email. Buttons such as these can invoke standard FileMaker Pro commands or scripts that you write yourself.
Today, FileMaker solutions are often designed for use not only on desktop and laptop computers but also on mobile devices, such as iPhone and iPad. As you start to design your own layouts, remember that on mobile devices there are no menu commands; in these cases, your buttons make your solution easier to use.
Buttons trigger actions, often by launching scripts that developers write; these actions are usually specific to a given FileMaker database. Buttons can perform dozens of actions, such as creating a new record, deleting a record, navigating to another layout, performing a calculation, performing a find request, controlling windows, and even spell-checking and emitting a simple beep. The possibilities are endless.
You’ll have to become familiar with the specifics of a given FileMaker Pro solution to come to understand what its buttons do. A good interface suggests what items are hot; furthermore, information the developer can provide, such as tooltips for each button, should assist you. If all this fails, the person who built the system should have those details or should have provided some form of training or documentation.