FMP tip developed by David Thorp, Article written by Andy Persons
*Tested in FileMaker Pro 14-16
Since FileMaker Pro virtual lists were introduced more than five years go, they have seen wide use due to two primary benefits: flexibility and performance. The whole point of this tip is EDITING values in a virtual list. That’s new and fancy and most people believed impossible, until now!
FileMaker Pro Virtual lists allow us to display information (usually in a portal) in virtually (pun unintended) any configuration we want. We can gather information from a variety of sources and combine them how we wish, without impacting the schema (other than the initial setup of the virtual list structure). Once the structure is in place, we can also reuse it for multiple purposes.
FileMaker Pro Virtual lists have another, sometimes crucial benefit: they can be dramatically faster than retrieving data directly, especially over a remote connection. Because developers control what data is retrieved, they can avoid loading unnecessary data; because they control when it is retrieved, can avoid reloading it unnecessarily. This can result in greatly improved user experiences.
However, FileMaker Pro virtual lists have a crucial limitation: because they rely on calculations, they cannot be edited directly. This technique allows us to work around this limitation.
This can be applied to any usage of FileMaker Pro virtual lists. For example, you might wish to quickly retrieve a list of contacts in a popover, while retaining the ability to edit names for quick corrections. Or you could display a list of students with their classes in a cross-tab arrangement, with the ability to change their class assignments on-the-fly.
Here’s an overview:
- Global fields are placed over the virtual fields and set to be hidden except for the active row.
- When a user clicks in a virtual field, the value is entered into the corresponding editable field and the focus moved there.
- When the user modifies the editable global field, the database is updated.
- The virtual list is then refreshed to load the changes.
The result is that a user can click into the unstored calculation field on the virtual list directly and it will seem like they are directly editing the values.
Though this technique was developed with FileMaker Pro virtual lists in mind, it could be used any time you want to create the experience of “editing” a calculation field.
Please see the demo file for more details.
• • • Download Demo File • • •
**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.
eXcelisys, Inc. is an independent entity and this web site/information/blog post has not been authorized, sponsored, or otherwise affiliated with FileMaker, Inc. FileMaker is a trademark of FileMaker, Inc., registered in the U.S. and other countries.