Virtual List: Expanding Portal Rows
The Virtual List technique, as it's come to be known, has been possible since the introduction of global variables with FileMaker 8. It wasn't widely known or used until Bruce Robertson started promoting its use in ways which were previously not envisioned. It can be used for more flexible printed output or showing information from multiple tables within one single portal or list view.
Essentially, you populate the contents of a $$global variable in some fashion and then parse that data into some viewable form - "on the fly" as they say.
The most common method of using this technique is to simply extract each line within the global variable using the GetValue() and Get ( RecordNumber ) functions. What makes it so powerful is the fact that the global variable can hold any data from any number of sources. This means you can mix-n-match to your heart's content.
How you get the data into the global variable can be managed in a variety of ways. Record loops, ExecuteSQL() function or even the overlooked Copy All Records script step.
In this video I showcase a technique which allows for individual portal rows to be expanded and hidden as necessary. This allows for a wide range of display possibilities. Each row can vary how it is presented using conditional formatting and the whole solution is just a great way to control how users interact with data.
Comments
Saving the user's clipboard...
It is always better to use a container field to save the user's clipboard.
Doing so, will let you handle any format (text, images...).
Good idea
You know, I didn't think about that. I don't typically associate a container with text and its ability to store it -but it does. Thanks!
-- Matt Petrowsky - ISO FileMaker Magazine Editor