I have come across this problem before and a colleague made the following suggestion, which worked in my case, but may not help yours …
Set up a 'Time Slot' table, with a record for each time slot throughout the working day (for me this was every 15 mins - 8:00 am until 6:45 pm).
Keep adding records to this table for each time slot for each day, using a startup script, which decides if more TimeSlot records are needed.
Put these records as the main record in your portal - 1 portal across the whole page - and then link the five tables to this one, based on the start time and one of five fixed column number fields, which you will need to add to your current table(s).
Put the same fields that you display now onto the 'Time Slot' Portal in the order they were displayed previously, based on the new column number links above.
Then all bookings at the same time will start on the same line.
This should allow you to provide your client with the layout they need.
My apologies for not fully understanding your explanation of your current situation, but incorporating a 'Time Slot' table should help.
Best wishes - Alan Stirling, London UK
You want to use Ray Cologon's excellent XORValues (ListA; ListB) custom function which returns all lines that are different in two lists. I can't live without this one.
available from either:
Ray Cologon, NightWing Enterprises
Yours is sort of a 'special' case, for XORValues where you know in advance that all of the values in variable2 will be in variable1. The result is all of the items NOT in variable2. In the 'normal' case, when your lists have non-overlapping items, XORValues returns the unique items from both lists.
Another extremely useful 'special case' is the one Ray points out: XORValues ( ListA ; "" ). When you specify an empty string for ListB, the function returns all of the unique items in ListA (a pretty nifty de-dupe function). In a word-- brilliant!
-- Drew Tenenholz
Thanks for the insight. I have gone the custom function method as it exactly solves my problem. Part of the issue is screen real estate and only showing times that I need helps minimze the total 3 of related records. The times tend to be in 3 or 4 hour clumps.
Oooh! Even better and the dedupe function is wonderful. Thanks...
"<someone's name here> is an Associate Professor of Physics at <some institution>. He enjoys teaching and talking about physics. Sometimes he takes things apart and can't put them back together."