Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hi Everyone
I have an app with two feedback datasets — teacher feedback (TeachersResponse) and student feedback (StudentsResponse). The requirement is to restrict educators to see only their own feedback data across both sheets. Below is my data model
The teacher feedback uses T_InstructorName and student feedback uses S_InstructorName — both contain the same educator name values but are intentionally kept separate as they serve different sheets.
Since Section Access only supports one reduction field, I created SA_INSTRUCTORNAME (uppercase as required) and placed it in TeachersRatingBridge which associates to TeachersResponse via T_InstructorName:
Section Access;
LOAD * INLINE [
ACCESS, USERID, SA_INSTRUCTORNAME
ADMIN, DOMAIN\ADMIN, *
USER, DOMAIN\EDUCATOR1, 20_MR_LI
];
Section Application;
// SA_INSTRUCTORNAME added to TeachersRatingBridge only
TeachersRatingBridge:
LOAD
T_InstructorName,
UPPER(T_InstructorName) AS SA_INSTRUCTORNAME,
...
Resident TeachersRatingTable;
The reduction is not cascading. The restricted user still sees all 22 distinct T_InstructorName values and 23 distinct SA_INSTRUCTORNAME values — confirming no filtering is applied at all.
Placing SA_INSTRUCTORNAME in both RatingBridge and TeachersRatingBridge causes a circular reference. Placing it in LinkTable (which bridges both tables via Student_TeacherKey) does not filter the fact tables. Placing it directly in TeachersResponse and StudentsResponse causes synthetic keys.
What is the correct placement of the reduction field SA_INSTRUCTORNAME in this data model to ensure Section Access filters both TeachersResponse and StudentsResponse without causing circular references or synthetic keys?
Any guidance is appreciated. Thanks.