I have an issue when I try to filter entries which contain the filter “Is current user ID”:
I have a table “Persons” which contains Names, Mailaddresses etc, as well as the ID of each user. 2 other tables, named “Notes” and “Tasks” have the Column “User” (Link to all names in “Persons”) and “User Id” (Lookup “User” and get his Id from “Persons”). This should be correct as everytime I create a new row in “Tasks” or “Notes” and add one or more users, the column “User Id” then holds their correct Id.
I added a kanban page in my app which should only display entries from table “Tasks” when the column “User Id” contains the current user ID. When I, as the administator, apply the filter, everything works as intended and I see all the rows, where my Id is contained in “User Id”.
Then another user joined the app, I created him in the “Person” table along with his (definitely correct) User Id and all the other information and then created a new row in “Notes” where “User Id” holds his Id: He cannot see this entry - the filter seems to not work.
In the “Tasks” table, there is the exact same filter but this time it works perfectly: He can only see rows, where the column “User Id” contains his Id. But: I think this user already created a new row using a form a few days prior.
The problem only seems to occur when there are new users who try to “see their rows” and they have not yet “interacted” with the respective table.
Can anybody confirm that? Or is there another problem? Currently I only have two users who can test this with me and they are not constantly available.
I am also completely baffled why it sometimes does not work with other users. I am pretty new to Seatable but that behaviour seems to be strange.
I have another column “User Object” in my “Task” table which holds the “Employee” object for all members of my base.
When I set a filter for that column, it says something like “User Object” > “Include current user” (I am using SeaTable in German). I began with only this filter a couple of weeks ago but when combined with other filter (groups), sometimes it also stopped working - even for myself. That is why I added the filter by “User Id” > “Contains current user” which seemed to work - except sometimes for others.
Just for fun and giggles, I just tried out the filter by “User Object” method again and it seems to suddenly work also for others. A test user just repored that all rows for him were displayed correctly?! We recently had a new version rolled out, perhaps this was a bug that has been eliminated.
But I think either of those filter options should work perfectly.
I think I got it to work and I guess it was (of course) all my fault:
Im my “Task-App” I have the columns “Creator” (Creator-Type Column (“user object”)), “Assigned To” (Link to other Records in Table “Persons”) and “Assigned” (Link-Formula: Link to Collaborator).
I set the filter like “Creator = Include ID of current user” or “Assigned = Contains current user”.
Whenever I as an Administrator used these filters, everything worked fine (mostly) but other users usually saw now records even if there definitely were records which should be shown.
I think the root cause was a mismatch of data types inside the filter logic. SeaTable seems to store real user fields (like the built‑in Creator column) as user objects, but any value coming from a lookup is always converted into text, even if the original field was a user object. This means:
Creator = current user → compares a user object
Lookup of a user field → compares text (internal user ID)
When these two types were mixed across filter groups, SeaTable internally tried to unify the filter tree and failed, resulting in no records being shown.
The solution was to avoid mixing user objects and lookup text. I replaced all direct user-object references with lookup-based fields and now all users cann see their filtered data correctly.