Relationships
Portals, relationships, lookups, and the Relationships Graph — how FileMaker connects data.
One-to-many relationships: parent, child, and foreign key
Understand the most common FileMaker relationship pattern — the one-to-many — by connecting a parent table to a child table through a shared key field.
Many-to-many relationships with a junction table
Model many-to-many data — such as students enrolled in courses — using a junction table that turns one complex relationship into two simple one-to-many relationships.
Self-join relationships for hierarchical data
Relate a table to itself to model hierarchical structures like employee-manager chains, category-subcategory trees, or task dependencies.
Using global fields as relationship match fields
Leverage global (storage: global) fields as relationship match fields to create session-scoped relationships that change based on user input without modifying any record.
Multi-key relationships with return-delimited match fields
Use a return-delimited list of values as a relationship match field to relate one record to multiple records at once without a junction table.
Adding a portal to display related records
Place a portal on a FileMaker layout to display and edit rows from a related table, and configure its rows, fields, and basic appearance.
Filtering portal rows with a calculation
Use the portal's Filter Records option to show only a subset of related records based on a Boolean calculation, reducing noise without changing the underlying relationship.
Sorting portal rows: relationship sort vs portal sort
Control the order of portal rows by configuring a sort within Portal Setup, and understand how that differs from the sort order defined on the relationship itself.
Cascade deletes: deleting related records with a parent
Enable "Delete related records when a record in this table is deleted" on a relationship to automatically remove child records, and understand the risks involved.
Allow creation of records via a relationship
Enable "Allow creation of records via this relationship" so users can create new child records directly from a portal row, and understand what FileMaker sets automatically.
Lookup fields vs live related fields
Understand the difference between a lookup field (which copies a value at a point in time) and a live related field (which always reflects the current related value), and when to use each.
The Anchor-Buoy methodology for the Relationships Graph
Organize your Relationships Graph using the Anchor-Buoy pattern to keep it readable, predictable, and maintainable as your solution grows.
Table occurrences: what they are and how to name them
Understand that FileMaker's Relationships Graph shows table occurrences, not tables — and learn why a single table can and should appear multiple times in the graph.
Relationship-based value lists and the second-field display
Build value lists that draw values from a related table so the list stays current automatically, and use the second-field option to show a human-readable label while storing an ID.
Cross-file relationships with External Data Sources
Relate tables across separate FileMaker files using External Data Sources, allowing layouts in one file to display and edit data from another file.
The Cartesian product (×) relationship operator
Use the × (cross-join) operator in the Relationships Graph to return all records from a related table regardless of key values — useful for reporting and utility layouts.
Relationship operators: =, ≠, <, >, ≤, ≥, and range
Go beyond the default equality operator to build range-based and inequality relationships that return records matching a condition rather than an exact key match.
Primary keys and foreign keys: UUID vs serial number
Choose the right primary key strategy for your FileMaker tables — and understand why UUID (Get(UUID)) is safer than an auto-incrementing serial number.
How layout context determines related records
Understand how the current layout table occurrence and current record together define which related records are visible — and how context shifts when you navigate or run scripts.
Organizing the Relationships Graph: layout, colors, and notes
Keep the Relationships Graph navigable as your solution grows by applying a consistent visual layout, using color coding, and adding notes to document your design decisions.