Virtual List

A lot of folks have been asking for the Virtual List example file we put together with Bruce Robertson, so here it is:

This Virtual List technique is part of what made our early FileMaker calendars so fast, and allows FileMaker solutions to show records from different tables in the same portal. We demonstrated some applications of this at DevCon’s Year in Review in 2010 and 2011, showing how this can really speed up FileMaker displays, especially those formatted as columns, grids, or lists.

Todd Geist speaking at SOFA, Nov 2011

Todd Geist has also been speaking about this a lot, including last week in Toronto, where he demonstrated how we’re using it in Worx.

There was also a great session on Virtual Lists at Pause[x]London. Some great articles on this can be found on FileMaker Hacks. Try these.

Are you using Virtual Lists?

[ba-box background=”#778899″ border=”#708090″ textcolor=”#F7F7F7″][jetpack_subscription_form][/ba-box]

Featured Posts

Follow Along

Stay up to date with the latest news & examples from SeedCode


  • Fred(CH)

    Hello there,
    Thanks for sharing !
    I am considering using this technique for the first time and i have one little caveat : In browse Mode, i think it could be problematic if multiple windows are open. Suppose a Customer Hitstory, inside one of many tabs of Customer Form view. What about if you open two windows, one for Customer #1 and another for Customer #2 ?

    • seedcode

      Hi Fred,
      Since FileMaker’s global variables are scoped to the file, not to the window, the problem you’re suggesting occurs for any global-variable based filtering system. For Virtual List, you have the same problem any time you want to show two virtual lists at the same time, even in the same window. When you need to show two lists you can have a second display calc in your virtual rows table: that calc would take it’s contents from a second global variable, You can extend this as far as you’d like creating variable/field pair for each virtual list you’d like shown at the same time. This is one way that folks build three-column selection interfaces like those you used to see in iTunes or in the Mac Finder. Hope that helps,

  • Mardi Kennedy

    Bloody brilliant demo file – thank you to all of you!

  • I think that SQL and VL is the really key combo. Though SQL isn’t appropriate in all cases, it is a great way to populate VL globals.

  • Mike Ryan

    I’d love to see more about Virtual Lists. The videos at POE go appear to be at a dead Dropbox link. And your link is broken to Todd Geist’s stuff.

    • Hey Mike, Todd redid his site and I’ve updated that link. As for the videos, they were uploaded by an attendee and he must have taken them down. Sorry about that. The sample files, etc. are still up. If you’re interested in this I’d expect a good deal of discussion on VL at DevCon 2012.

      • Mike Ryan

        Thanks John. Bummer about the videos. I’m wondering if SQL is going to overtake VL as a preferred technique by the time next DevCon rolls around. Unfortunately, being a part-time in-house developer on the west coast, I won’t quite get to see it for myself.

Leave a Reply

Your email address will not be published. Required fields are marked *

Check out some of our other posts ...

Improved Resource Selection

We’ve made some big changes to how you filter and assign resources when editing events in DayBack. These changes will make it much easier to

Suggesting Appointment Slots

Show Available Slots that Match Multiple Criteria Schedulers often look for gaps in their schedules to find the open resources for each opportunity. But sometimes,

Introducing Draft Settings Mode

Following up on this idea that people stretch themselves when they feel a little safer, we’ve been very focused on the customization experience for DayBack

New Longer Timescales for DayBack

Resource Scheduling Swimlanes You can now extend the pivoted scheduling view in DayBack to show items by week instead of solely by day. This lets



Stay up to date with the latest news & examples from SeedCode

© 2024 SeedCode, Inc.