Show data based on another table value in a column?

I have two tables. One produces and logs messages โ€œNotification Logโ€. The other produces and logs responses โ€œResponse Logโ€. The problem i have is getting one view to stop showing a button โ€œGot the messageโ€ after a response log is generated.

I have a form โ€œnew messageโ€ that logs in the โ€œnotification Logโ€ table.
I have users viewing this list of messages - from the notifications log table. The use clicks a button โ€œGot the messageโ€ to let the admin know they received the message.

The problem i have is, i cannot figure out how to make that action button do several things:

  • Add the appropriate useremail, message, date to the โ€œResponse Logโ€ ( I have this working)
  • Take away this message in the list - because they clicked "Got the message (This part i cannot seem to get).
0 14 793
  • UX
14 REPLIES 14

Steve
Platinum 4
Platinum 4

What have you tried?

I tried setting it up as:

Data - add a new row to another table using values from this row - see image

After this i am un sure of how to make the view ONLY show unclicked rowsโ€ฆ

One approach would be to make your slice filer expression something like this:

ISNOTBLANK(
  FILTER(
    "Response Log",
    AND(
      (USEREMAIL() = [Useremail]),
      ([_THISROW].[Key] = [Key]),
      ("yes" = [Read])
    )
  )
)

Over time, however, this approach will cause the app to get slower and slower.

Do you have any other suggestions?

I donโ€™t.

In your images, its looks like you might have the assignment of Message and Message Key switched?

You have:

2X_4_4df1520288e60f58e9b33122210ee6dc98de1a19.png

I put this expression on my slice - filter. It stopped showing any messages. Meaning - without this expression - the user can see the message and click on โ€œGot the Messageโ€. But when i add this expression - all the messages go away.

I used that expression in the action behavior. It doesnt show any action buttons. So, now there is nothing for the user to click on.

Here are the two different data tables:

I switched that - but it still doesnโ€™t work correctly.

I think there might be logic error in the expression, Instead of ISNOTBLANK I think you want ISBLANK.

The idea is to show the message row (or show the button) when there are NO rows that indicate the message has been read.

By the way, if your intent is to hide the ROWS once the message has been acknowledged, you do not need to place this same logic in the condition for the button.

Ok. I want to do exactly what you said. I want that action button to go away after the user has clicked on it. I may be putting this logic in the wrong place. I put it on the action button:

โ€œonly if this condition is trueโ€

Ah, Message Key is the name of the column in your Response Log table so you need to change this:

([_THISROW].[Key] = [Key]),

to this:

([_THISROW].[Key] = [Message key]),

i moved that logic on the slice. It now shows the action button no matter if i clicked it or not. So it shows them, but they never go away. I checked my data - and it is populating correctly in the table.

This is the logic i used:
ISBLANK(
FILTER(
โ€œResponse Logโ€,
AND(
(USEREMAIL() = [Useremail]),
([_THISROW].[Key] = [Key]),
(โ€œyesโ€ = [Read])
)
)
)

My Lord you guys are so smart. That worked perfectly. Thanks again guysโ€ฆ

Top Labels in this Space