Typically, portals in FileMaker are used for showing related data. However, a portal based on the same table as its layout would simply display the current found set. If you made the portal large enough, the layout would appear as a list view- which wouldn’t be very helpful. So, in this blog, we will make the portal smaller and create a powerful layout design, the Master Detail portal.
If data requires or if users request more data in the “list view”, I’d recommend using a slide control that displays the Found Set portal at full width- creating a list view feel, while still remaining on the same layout.
Position the second portal so it matches the original, and make sure the height is the same. The button, circled in red, simply needs to switch panels. But as far as the user can tell, the button expands/collapses the portals width, and shows more/less fields. It is a very user-friendly, and professional look.
Found Set Portal
The ‘Person’ portal will match the found set and clicking on a portal record will navigate to that record's Form View record. That’s right- no scripting required, clicking the record will make that record active, the same way a list view layout behaves. This layout structure allows users to glance at the multiple records shown in the found set while having the ability to quickly navigate to view specific details. This concept removes the need to switch layouts between form and list view.
Something you will notice about using the Current Found Set portal is that the standard options, like sorting and filtering, are disabled. Since the portal only displays records of the found set, those functionalities will have to be handled on that level- through scripting or the FileMaker Menu.
Performing Finds
Typically, in portals, I use Merge fields and/or calculations to display “detail” data. I think it looks nice, as well as prevents accidental data modification. The downside to that is it could remove some capabilities within ‘Find Mode’. For example, say the user wants to perform the most basic of Finds: Search by a Person’s last name. If you look back at the first picture of this blog, you’ll see there is no actual field for Last Name.
The data’s there- it’s included in the <<description>> calculation in the Master portal, as well as the <<nameFull>> calculation in the title. However, if a user enters Find mode, the merge fields disappear, and the user may not be able to perform the simple find. I recommend creating at least 1 of 2 design techniques.
The first technique is a Search box that uses triggers to script finds from browse mode. I’d also recommend that the triggered script utilizes the script step: Perform Quick Find, that way your search box can search the data of multiple fields.
The second technique or option is similar to the slide control we set up for the “expanded” Master portal earlier. You could make an additional panel; with all the fields a user would want to search by in their most basic form. Then use an OnModeEnter script trigger to take the user to that panel when they enter find mode.
Hopefully, this blog has provided you with enough information to give the master detail concept a try. Sometimes a regular list view is still better, depending on the functionalities provided to users, but the master detail concept allows for the data modification capabilities of a detail view while allowing a glance into other records of the found set, the way a list view would.
About the Author
Ryan joined MainSpring in April of 2018 as an associate application developer and works in our Towson office. He graduated from Towson University with his bachelor’s degree in computer science and is responsible for developing and supporting software and database applications for MainSpring’s client base, as well as internal projects. Ryan enjoys spending time outside, hiking, biking, swimming, snowboarding and flying drones. He also enjoys rock concerts, bowling and watching MMA and wrestling. His favorite sports team is the Baltimore Orioles.