Hierarchical Portal Filtering using FileMaker Pro 15
By Andy Persons
Way back in 1996/97, I developed my original hierarchical portal filtering technique using FileMaker Pro 3. Twenty years later, we decided to take another look and update it for FileMaker Pro 15.
Several alternate approaches have been developed in the interim for the hierarchical portal filtering technique (including a “lite” approach by my colleague Doug West). After reviewing them, we believe the original approach still has merit as one option to consider.
Hierarchy Lite Advantages
The Lite approach on the hierarchical portal filtering technique focuses on ease of implementation. It works to abstract the hierarchy logic using features like global variables and portal filtering, entailing fewer schema changes and requiring fewer changes after pasting scripts and fields.
Download Doug West’s version of Hierarchy Lite Demo
Hierarchy Classic Advantages
The Classic approach to the hierarchical portal filtering technique uses a multikey in a global primary key field to filter records. This requires more work to implement and more schema changes, but can result in improved performance in certain circumstances such as high numbers of related records or WAN deployments.
This is because records are filtered at the relational level rather than the portal filter level. Records that won’t be displayed simply aren’t downloaded in the first place rather than being downloaded and filtered after the fact.
Leveraging New FileMaker Pro 15 Features
We were also able to take advantage of several features that have been added since FileMaker Pro 3:
- Button Bars: the text for the Expand All/Collapse All button toggle takes advantage of calculated Button Bars
- Script Triggers: Indented arrows use repeating calculation fields with OnEnter script triggers to simulate “repeating buttons”
- CSS: allows us to hide the In Focus formatting of the repeating field to preserve the button-like behavior
Hierarchy Advanced 2.0 Features (coming soon)
This refreshing of the original technique also sets the stage for more advanced features that we’ll be releasing in subsequent FileMaker demos:
- Dynamic sorting by any field
- Drag-and-drop sorting and reassignment
Stay tuned for Pt2 and Pt3!
**This article is provided for free and as-is, use, enjoy, learn, and experiment at your own risk – but have fun! eXcelisys does not offer any free support or free assistance with any of the contents of this blog post. If you would like help or assistance, please consider retaining eXcelisys’ FileMaker Pro consulting & development services.
About eXcelisys, Inc.: Founded in 2001, eXcelisys (www.excelisys.com) is an FBA Platinum Partner and FileMaker Certified developer organization. eXcelisys specializes in designing, developing, customizing, supporting, consulting, migrating, upgrading, fixing, and integrating of database solutions for Desktop, Mobile, and Web applications. Our core technology competencies are FileMaker Pro, FileMaker Go, and MySQL for database frameworks, along with FileMaker WebDirect, WordPress, MySQL, PHP, CodeIgniter, PostgreSQL, Joomla, Drupal, Magento, CSS, HTML5, and Javascript for web sites and web applications. Aside from providing eXcellent customer service, our goals are to use these technologies to intuitively automate your organization’s data solution needs seamlessly and flawlessly across the web, mobile, and desktop platforms. Contact eXcelisys today for a free estimate and consultation about making your business more efficient through intuitive and effective software automation. 866-592-9235 | [email protected]
There is a line on this page, below the “Hierarchical Portals Revisited” image, “Download Revised Version”.
But that line is not a link; and there appears to be no way to actually download the revised version.
Sorry about that Bruce – this has been fixed – give it a whirl or click now – you should be good to go! Thank you for the heads up!
Got it now, thanks!
That is beautiful. Thanks for making the demo available.
Thank you for the flattering feedback Kevin, Andy will appreciate it!
Nice solution!
BUT:
Volvo is not a German car. It’s from Sweden. 😉
Thanks Martin. That sample data was pulled over from our original Hierarchical Portals tip that was created several years ago (probably during Volvo’s “Ford years”). I’ll be sure to put more time into vetting the content before posting the next one so we don’t offend any of our friends in Sweden!
This is an excellent solution and with the limited space on iPads would be a dream!
I’ve tried it out on FM Go and I guess using the container field arrows it’s a little more complex. Any suggestions to achieve the same effect as on a Mac/PC?
Hi Zab,
You can work around the use of script triggers this way:
• Place a series of transparent buttons on top of each repetition of the container field.
• Set the script parameter to match the repetition number
• Reference the script parameter instead of Get ( ActiveRepetitionNumber ) in the Toggle One script
Now that FM16 supports cards – a modal form of a window that can change context – it seems this technique could be duplicated with sub-summary reports on a card.
Still not a Web Direct solution (yet) but very straightforward.
Hi Kirk,
Sub-summaries wouldn’t provide the ability to expand/collapse nodes individually. Also, a sub-summary approach would be limited to specific predefined scenarios, whereas this allows for arbitrary parent/child relationships.
Another limitation is that since cards are modal the user wouldn’t be able to interact with any other elements in the window.
Wow. I used to consider myself an experienced beginner and maybe even an intermediate Filemaker hack… but now I am feeling like a total novice.
I’d love to know what level of “Filemaker skill” you believe this solution design is based on (or is required to grasp all the moving parts)?
The functionality is superb, and the brevity of the schema and scripts is beautiful, but fundamentally understanding the build of the implementation is not at all coming easy to me.
… maybe it’s time for a shot of tequila 😉
Awesome design!
We provide complimentary lime and salt… we prefer Patron… 😉