Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
When I include 1 field in Section Access with * (to include all values), it works. However, when I use 2 fields to select all values it doesn't work.
Here's my Excel Security data file with the 2 fields:
ACCESS | NTNAME | SAUSER | TABACCESS.SWANALYSIS | Location | Modality |
ADMIN | SHC\ROBYNR | SHC\ROBYNR | 1 | * | * |
USER | SHC\BOBB | SHC\BOBB | 1 | CCH | MR |
Here's my SA Load Statement:
Section Application;
DocSecurity:
LOAD
SAUSER,
TABACCESS.ABOUT,
TABACCESS.SWANALYSIS,
Location & '_' & Modality as LOCMOD
FROM
AppConfig.xlsx
(ooxml, embedded labels, table is DocumentSecurity);
NOTE that this works for user BOBB above where he can only see Location 'CCH' and Modality 'MR'.
However, it does not work for ADMIN ROBYNR to view all values of Location and all values of Modality.
NOTE that I need to combine the 2 fields into 1 named LOCMOD because the fields are in the same table. When I kept them as 2 separate fields I would get a Synthetic Key.
Does anyone know how I can get ALL values for both Location and Modality? Thanks in advance.
I did 2 .qvw, one with section access, the other without section access (nosec) using 2 fields; same model and data.
2 fields section access:
I saw this post and I followed the instructions to create a new combined Authorization Key called LOCMOD which concatenates fields Location & '_' & Modality.
What am I missing? It would be good to see a sample data model attached to the 'Basics for complex authorization'.
I did 2 .qvw, one with section access, the other without section access (nosec) using 2 fields; same model and data.
Can't get into the file? What's the password?
Just saw the UserID and Passwords in the NO SectionAccess file. Will test out and see if it works.
Thank You!
This is my final solution which worked:
STEP 1) In Section Application create concatenated new field
Section Access;
SATABLE:
LOAD
ACCESS
,NTNAME
,SAUSER
FROM
$(vSpreadsheetPath2)AppConfig.xlsx
(ooxml, embedded labels, table is ShieldsFinanceSW_2fields);
Section Application;
DocSecurity:
LOAD
SAUSER,
TABACCESS.ABOUT,
TABACCESS.SWANALYSIS,
AccPacLocation & '|' & AccPacModality as %AuthID // created new field
FROM
$(vSpreadsheetPath2)AppConfig.xlsx
(ooxml, embedded labels, table is ShieldsFinanceSW_2fields);
STEP 2) Create new field on the table that contains the concatenated fields
Accounts:
LOAD
Acct,
Dept,
ACCTID,
MID(ACCTID,3,4) as ACCT#,
Company,
Loc,
Mod,
Reg,
ExclCo,
AccPacModality,
AccPacLocation,
AccPacLocation & '|' & AccPacModality as AuthID, // created new field (note – different fieldname than in part 1 above)
STEP 3) Use the 2 new concatenated fields above to create a Bridge Table with 4 values.
<ANY> represesnts all data. Need to use 4 combinations for users who have access as:
// BRIDGE TABLE
Bridge:
Load AccPacLocation &'|'& AccPacModality as AuthID,
AccPacLocation &'|'& AccPacModality as %AuthID //Create 1 combined field for Bridge table
Resident Accounts ;
// CONCATENATE All combined combinations to Bridge table
Load AccPacLocation &'|'& AccPacModality as AuthID,
AccPacLocation &'|'&'<ANY>' as %AuthID //Create 1 combined field for Bridge table for ALL Modalities
Resident Accounts ;
Load AccPacLocation &'|'& AccPacModality as AuthID,
'<ANY>'&'|'& AccPacModality as %AuthID //Create 1 combined field for Bridge table for ALL Locations
Resident Accounts ;
Load AccPacLocation &'|'& AccPacModality as AuthID,
'<ANY>'&'|'&'<ANY>' as %AuthID //Create 1 combined field for Bridge table for ALL Modalities and Locations
Resident Accounts ;