I have multiple data sources (for different event types) that each contains date information that needs to be displayed on a single calendar.
I can get this to work for one data source but not sure how to collate them, is it possible?
My assumption would be another data source that was related to each other data sources events? (seems like a lot)
PS: Is there a way to display weekly or monthly views on the mobile app?
Thanks in advance.
Hi Nathan Here is how I would do it. I’ll would first bring my two date columns into the same table, I’ll assume you have done that. Now you need to merge/collate these two columns: one list of dates below the other and we need values (not arrays).
You can use the screenshot below to follow along:
- RowID column
- RowIDsArray column: Do a lookup on the RowID column.
- RowIDIndex column: Do a “Find element index” on the RowIDsArray column.
- We already have our two basic date columns: Dates1, Dates2
- Dates1Array: Do a lookup on the Dates1 column.
- Dates2Array: Do a lookup on the Dates2 column.
- Now let’s merge Dates1Array and Dates2Array: use the “Make array” computed column (the /Array/Append array computed column would work too).
- We now have merged/collated our dates into an array. Each row of Dates1+2Array column is exactly the same. Now let’s transpose this array vertically into values.
- Dates1+2Array->List column. Use a single value computed column: get “from start”, row “RowIDIndex”, from “Dates1+2Array”. This will take the 1st element (index 0), then 2nd element (index 1) and so on of the elements in the array and turn them into a value.
- Note: If Dates1 has m dates and Dates2 n dates, we will need m+n rows in our table to make this work.
- Apply the calendar collection to the Dates1+2Array->List column.
Display monthly/weekly view
I don’t know about Apps, but on Pages the responsive mobile version allows the user to toggle nicely between the daily, monthly and weekly views.
Are those different event types differ a lot in their structure? If not, I would try to combine them into one table, and differ them by an “event type” column.
Thanks for your detailed response. I am however still struggling to wrap my head around the process. To make it simpler, I’ll add some images below and you can let me know if it’s still workable or not.
Some examples of the data:
I presume I would need to pull almost all the data into a single database?
This would possibly be the easiest solution but I would lose the “list relation” for each appointment type which is quite critical.
You can still create relations for each of those types to use the list relation, right?
I think you can keep your tables separate if that’s the setup you chose. The method above to merge your lists of dates should work fine. I agree with Thinh, after merging the lists, you could set up relations to pull in (lookup) further data.
I would recommend you try. You could duplicate your app (or tables) and practice first before breaking anything.
I was thinking about this. Instead of concatenating lists of dates like Uzo and I showed you, you might was to concatenate lists of associated RowIDs. This would be to account for different rows in different tables that would have the same dates. I would then make sure that each table table has a native RowID basic column (instead of doing it by hand which you seem to have done).
Long time Im still tackling this after a break, quick question. I’ve set up the entire database as indicated but how do I link the actual dates from my two separate tables into this? Is it based on the RowID? (I think this could be an elementary question and apologies if it is)
You can bring values from one table into another by using a Single Value column. By using a row index and From Start in the configuration of the Single Value column, you can copy a column from one table to another.
When you say concatenate associated RowID’s instead of dates, would that fundamentally change the headers?
Just a reminder ( for context ) :
I have two separate tables used for different types of bookings each with the core following column names:
RowID | Start date | Next Date | Event name | Associated pet profile
Which I’m trying to pull into the one calendar.
Can you show us how you’re setting it up? If you have a list of rowIDs only, then you must have 2 relations for 2 tables, and then lookups from those 2 tables to get all the information you need.
Are you using Glide Tables or another type of backend?
The two source tables in Gsheets:
Current Calendar sheet
With the flow looking like this:
If you have everything in a Google Sheet, would it be easier to do it in Sheets compared to having a Glide Table? Do you do any actions on those rows of the combined table?