I am having trouble properly filtering a button. I have an Interaction Log Database, that has a lookup column pointing to a DB of employee’s names. The Interaction Log Database can have multiple rows with the same employee. I have a button to schedule the next interaction with such employee, but I don’t want the button to be enabled on the employee’s old interactions. I only want it enabled on the most recent interaction with the employee.
I am using the Disable If function on the button, below is the formula…
For some reason, it’s skipping the part of filtering by name, and is instead searching the entire database for the most recent interaction. What I am wanting is for the button to also be enabled for Name 1 on date 11/21/22.
Why you formula doesn’t work:
Because [Interaction Log DB].Date gives you just the Date column of the table, presented essentially as a list. This when you then chain .Filter(…) on it, it has no Employee column to work with.
Why the proposed formula works (hopefully, as I haven’t tested ):
doing [Interaction Log DB].Filter() runs the filter on the whole table, which is essentially like saying : it puts the all the rows of table in a list, and goes through that list one item at time calling the item its currently testing CurrentValue. Now since CurrentValue is a row in the table, it has a .Employee attribute that you can test on.
When Filter() finishes, you’re left with a list of rows only with the relevant Employee, and then you can simply take max() on their Date.