What is an amend?
It's a change to the design.
A relationship of B::anyField X A::anyField will match to all records and a portal will list all records.
In the relationship graph, you might name the occurrence for A above as A|All to help tell it from your existing occurrence of A.
We can drop in another occurrence of the Join table like this:
A|All:__pkAID = Join|All::_fkAID
Then a portal filter
IsEmpty ( FilterValues ( List (Join|All::_fkBID ) ; B::__pkBID ) )
Would filter out all records in A that have a Join table record with a value in _fkBID that matches the current __pkBID on your layout.
Might be interesting to see if anyone can come up with an SQL query that works here.
ExecuteSQL ( "
WHERE id NOT IN (SELECT aid FROM joiner WHERE bid=?)
I tested only on minimum data.
Perfect thanks! I need to spend some more time with the manual.
Is there a benefit of using SQL over the filter values method?
I'm not sure.
+ Don't need filter for the portal
- Need unstored calculation field
If the SQL is done on server, it will be faster (on large A table), but?
And this case you are intend to show all records from A table in 2 portal, so may not be any benefit about decreasing related records in one of them.
+Don't need table occurrences in your relationship graph just to support this one UI requirement.