Congratulations. You’ve upgraded to the latest version of the FileMaker platform. That’s a good thing. We always recommend folks do that quickly. There’s compelling reasons to keep your app fresh. The FileMaker platform, in its current 17 version state, is exciting and new and quite game changing (again). Let’s take a moment to look at the new features and consider what changes we might make to our current custom apps. Let’s look at the FileMaker 17 features and consider when and where to use them.
When to Change
Most folks would begin using these new features in new custom apps, but I want to explore how we might use them right now in our current apps. We did only a year ago when this when the platform gave us JSON functions and card windows, to name a few. Many folks immediately changed some popovers to card windows.
Of course the changes make sense only if your clients are on the latest platform. And with version 17 of this platform, we find the licensing options are even easier and less confusing.
There are a few good reasons to at least consider changes to your already-working custom apps.
- First, it’s what we do. When new features come out, we see where we can begin to adopt them. It’s fun and exciting.
- Second, we can remove our ‘hacky’ attempts to do what FileMaker 17 now includes. The Master-Detail portal rids our solutions of any other self-made or modular techniques. We can use what FileMaker provides.
- Third, this version includes many ‘more-efficient’ tools for us to use. The Advanced tools, default fields, etc., make our developer-lives easier.
Let’s look at some of the new features and stop for a moment to consider their use in our current custom apps. Some of these are a ‘must’.
FileMaker 17 Features Considerations
The application name change
FileMaker Pro, which most clients had, is no more. FileMaker Pro 17 Advanced is the new name of the application whether or not the advanced features are in place. So we should use the Database Design Report, one of the advanced features, to check and see if we were using Get(ApplicationVersion) to check for “Pro”. If so, we should update those. Our Realtime Developer Intelligence tool, FMPerception can help with that. You can run a DDR and then very quickly open the DDR in FMPerception and find the words “FileMaker Pro” in any place the calc dialog is available.
Use the Advanced Tools
If you’v’e never used the advanced tools, be sure to get a good understanding of them right away. With them, you can further customize your application (custom functions, custom menus), add security (Encryption at Rest, remove Full-Access privileges) and analyze your system (Database Design Report). Check out how to use those tools here.
Get Used to the new Layout Mode
Our design interface is completely changed, and I think that is a good thing.
Yes, it feels awkward at the beginning, but so did riding a bike, and we all learned that. And yes, it does feel a bit scrunched on a laptop. But I think we’ll get used to it and, in just a few months look back at previous versions and wonder how we did anything.
Layout Mode Considerations
Here’s a couple of thoughts and pointers about the layout window:
- The Inspector panel and Field/Object panels are docked to the right and left side respectively. No more do we have to hunt on our large screens for the inspector to find it buried behind the object layout window (since the latter got called to the front when selecting an object).
- We can add more undocked inspectors using the menu command View / Inspectors / New Inspector. That might be useful
- We can hide the docked panels with a shortcut ( Command/Control + I for the inspector, Command/Control+Option/Alt + T for object window, and Comand/Control + K for field panel). This is useful when we are on a laptop and we need a bit more screen space. We can hide a panel quickly to view something, show the panel quickly to adjust something, and move on. With a short keystroke we can hide/show a panel, giving us the exact view we need.
- The Field and Object windows are together. But pressing one of their short cuts hides BOTH panels. That’s great. I don’t have to first hide the layout object window and then the field panel.
- We will probably do more scrolling of the layout to adjust it to the place we want. That’s okay. We can also use the zoom controls to focus in on one spot. Well-designed layouts require microscopic attention.
A small but powerful feature, the sub-group selection feature is amazing. I’ve been using it for awhile and can’t even imagine how I could select items in a group. I can select objects within a group and move it within the group.The dotted line around the group shows the boundaries of the group, and it changes as I move the object far away.
The default fields feature provides a custom way to auto-build fields in each new table. It is easy to set up and useful. We can set up our development to start using default fields, automating one more part of our development. Or not. Consider also getting rid of them.
The default fields that are included look like this:
You can change these in name and in calculation fairly easily. To do so, shut down FileMaker Pro 17 Advanced and do the following:
- Go to the folder where the defaultFields.xml file is saved
- /Applications/FileMaker Pro 17 Advanced/FileMaker Pro Advanced.app/Contents/Resources/en.lproj/DefaultFields.xml
Copy that file. DO NOT remove or edit this file.
- Open the file in a text editor or something like Visual Studio Code.
Place the xml file in the shared folder:
- Windows: <drive>:\ProgramData\FileMaker\Shared
- macOS: /Users/Shared/FileMaker/Shared
- Open it in a text editor and make changes as necessary. There’s no documentation yet out there, so be careful.
- Save the file.
- Open FileMaker Pro 17 Advanced. Create a new table and test to see if the fields were created.
To prevent the default fields from being created, simply add a blank “DefaultFields.xml” file in the same shared folder location.
But of course you have to consider using this in teams. Each developer that creates tables will need this xml file in the correct location on their computer. That’s hardly a big deal. We do this with plugins, so finding and placing this file in the correct location barely takes time or effort.
The Current Found Set Portal
Throw away your list views. Get rid of them.
Or at least consider it.
The new master-detail or Current Found Set native feature of FileMaker is a game changer in data presentation. Combining a list view and detail view into one layout is a great compact way to get users to their records quicker.
This feature should be considered strongly in current and upcoming projects.
Current Found Set Considerations
Here are some factors to consider:
- The current found set portal shows the current found set of records in the current table.
- The records in this portal are sorted the same as the current found set.
- The portal has a built in navigation. Click on a row and that record becomes active. (no more list views with hidden buttons that use Go To Related Records).
- The current record in the portal can be identified with the new function Get(ActiveRecordNumber). Buttons can be hidden (or visible) unless it’s the active record.
- There’s an active-record highlighter already in place.
- A current found set cannot show subsummary parts as easily as a list view/report, but there are already doable workarounds.
- This may be subjective, but this look is more modern.
- You can put the portal on the second panel of a slide panel object and do some work to ‘hide or show’ the portal.
- The records in the portal reflect the found set. If you find students in 6th grade, the portal will only show those.
- Finally, The Master-detail pattern is very common. People expect it.
Should you replace your list views? It depends on how you think of the factors above. (I would).
Take a break
We will come back in the next blog post with more FileMaker 17 Features Considerations.
Developers of any platform love the new shiny things, and we should explore all that FileMaker has in its latest release of the platform. We should learn all about how these features work and how they’re useful. Along the way, we should consider how a new feature may be used in our current apps as well as in the future. And we need to consider and learn quickly, for the next batch of new shiny things is less than a year away!