Hi,
Suppose your account group universe is limited to the following set: { 1, 2, 3, 4, 5 }
A solution would be to take advantage of the SQL's IN operator in your universe's join condition(s), so that BOBJ generates JOIN or WHERE clauses like:
-- SELECT ... FROM ...
... WHERE table.account_group IN ( account )
Here "account" is the 3rd column of your account security table.
If you change the asterisk for a comma separated list of all your possible accounts you will achieve the desired result for people allowed to see all the financial accounts:
Username | Entitycode | Account |
---|---|---|
JVDD | BRUZT | 1,2,3,4,5 |
JVDD | CPHZT | 1,2,3,4,5 |
BPO | BRUZT | 3 |
BPO | MANZQ | 3 |
PBK | CPHZT | 1,2,3,4,5 |
PBK | MANZQ | 1,2,3,4,5 |
PBK | BRUZT | 1,2,3,4,5 |
FSC | CPHZT | 1 |
For example if user is BPO, built SQL clause will look like
-- (something)
... WHERE account IN ( 3 )
If user is JVDD built SQL clause will be
-- (something)
... WHERE account IN ( 1,2,3,4,5 )
This would also be a straight-forward way to allow two, three or n account groups to be assigned to each user.
Remember your join conditions will be complex joins.
I hope this approach leads you to the solution
Best regards,
Fernando