DAX definitions
Exact source expressions and direct measure dependencies for the selected page.
Absence Days Total
TalentEmployee · Absence
VAR __roleKeys = VALUES(SuccessionRole[roleId])
VAR __skillPeople = VALUES(SkillGap[employeeId])
VAR __people = FILTER(TalentEmployee,
(NOT ISFILTERED(SuccessionRole) || TalentEmployee[roleId] IN __roleKeys) &&
(NOT ISFILTERED(SkillGap) || TalentEmployee[employeeId] IN __skillPeople))
VAR __ids = SELECTCOLUMNS(__people, "__id", TalentEmployee[employeeId])
VAR __poolKeys = SELECTCOLUMNS(__people, "__role", TalentEmployee[roleId])
VAR __roleScope = FILTER(SuccessionRole, SuccessionRole[roleId] IN __poolKeys)
VAR __roles = ADDCOLUMNS(__roleScope,
"__successors", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes")) + 0,
"__ready", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes" && TalentEmployee[promotionReadiness] = "1 Ready now")) + 0)
VAR __skills = FILTER(SkillGap, SkillGap[employeeId] IN __ids)
VAR __n = COUNTROWS(__people) + 0
RETURN IF(__n < 10 || ISEMPTY(AsOf), BLANK(), SUMX(__people, TalentEmployee[absenceDays]) + 0)
Direct dependencies: None
Absence Rate
TalentEmployee · Absence
VAR __roleKeys = VALUES(SuccessionRole[roleId])
VAR __skillPeople = VALUES(SkillGap[employeeId])
VAR __people = FILTER(TalentEmployee,
(NOT ISFILTERED(SuccessionRole) || TalentEmployee[roleId] IN __roleKeys) &&
(NOT ISFILTERED(SkillGap) || TalentEmployee[employeeId] IN __skillPeople))
VAR __ids = SELECTCOLUMNS(__people, "__id", TalentEmployee[employeeId])
VAR __poolKeys = SELECTCOLUMNS(__people, "__role", TalentEmployee[roleId])
VAR __roleScope = FILTER(SuccessionRole, SuccessionRole[roleId] IN __poolKeys)
VAR __roles = ADDCOLUMNS(__roleScope,
"__successors", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes")) + 0,
"__ready", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes" && TalentEmployee[promotionReadiness] = "1 Ready now")) + 0)
VAR __skills = FILTER(SkillGap, SkillGap[employeeId] IN __ids)
VAR __n = COUNTROWS(__people) + 0
RETURN IF(__n < 10 || ISEMPTY(AsOf), BLANK(), DIVIDE(SUMX(__people, TalentEmployee[absenceDays]) + 0, SUMX(__people, TalentEmployee[scheduledDays])))
Direct dependencies: None
Bradford-Style Mean
TalentEmployee · Absence
VAR __roleKeys = VALUES(SuccessionRole[roleId])
VAR __skillPeople = VALUES(SkillGap[employeeId])
VAR __people = FILTER(TalentEmployee,
(NOT ISFILTERED(SuccessionRole) || TalentEmployee[roleId] IN __roleKeys) &&
(NOT ISFILTERED(SkillGap) || TalentEmployee[employeeId] IN __skillPeople))
VAR __ids = SELECTCOLUMNS(__people, "__id", TalentEmployee[employeeId])
VAR __poolKeys = SELECTCOLUMNS(__people, "__role", TalentEmployee[roleId])
VAR __roleScope = FILTER(SuccessionRole, SuccessionRole[roleId] IN __poolKeys)
VAR __roles = ADDCOLUMNS(__roleScope,
"__successors", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes")) + 0,
"__ready", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes" && TalentEmployee[promotionReadiness] = "1 Ready now")) + 0)
VAR __skills = FILTER(SkillGap, SkillGap[employeeId] IN __ids)
VAR __n = COUNTROWS(__people) + 0
RETURN IF(__n < 10 || ISEMPTY(AsOf), BLANK(), AVERAGEX(__people, POWER(TalentEmployee[absenceEpisodes], 2) * TalentEmployee[absenceDays]))
Direct dependencies: None
Talent Governance Text
TalentEmployee · Report Views
VAR __roleKeys = VALUES(SuccessionRole[roleId])
VAR __skillPeople = VALUES(SkillGap[employeeId])
VAR __people = FILTER(TalentEmployee,
(NOT ISFILTERED(SuccessionRole) || TalentEmployee[roleId] IN __roleKeys) &&
(NOT ISFILTERED(SkillGap) || TalentEmployee[employeeId] IN __skillPeople))
VAR __ids = SELECTCOLUMNS(__people, "__id", TalentEmployee[employeeId])
VAR __poolKeys = SELECTCOLUMNS(__people, "__role", TalentEmployee[roleId])
VAR __roleScope = FILTER(SuccessionRole, SuccessionRole[roleId] IN __poolKeys)
VAR __roles = ADDCOLUMNS(__roleScope,
"__successors", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes")) + 0,
"__ready", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes" && TalentEmployee[promotionReadiness] = "1 Ready now")) + 0)
VAR __skills = FILTER(SkillGap, SkillGap[employeeId] IN __ids)
VAR __n = COUNTROWS(__people) + 0
RETURN IF(__n < 10 || ISEMPTY(AsOf), BLANK(), "ILLUSTRATIVE synthetic data. Screening, not a verdict. Groups under 10 are suppressed. Protected attributes are never used to rank individuals. Absence frequency is not a disciplinary recommendation.")
Direct dependencies: None
Talent Population
TalentEmployee · Population
VAR __roleKeys = VALUES(SuccessionRole[roleId])
VAR __skillPeople = VALUES(SkillGap[employeeId])
VAR __people = FILTER(TalentEmployee,
(NOT ISFILTERED(SuccessionRole) || TalentEmployee[roleId] IN __roleKeys) &&
(NOT ISFILTERED(SkillGap) || TalentEmployee[employeeId] IN __skillPeople))
VAR __ids = SELECTCOLUMNS(__people, "__id", TalentEmployee[employeeId])
VAR __poolKeys = SELECTCOLUMNS(__people, "__role", TalentEmployee[roleId])
VAR __roleScope = FILTER(SuccessionRole, SuccessionRole[roleId] IN __poolKeys)
VAR __roles = ADDCOLUMNS(__roleScope,
"__successors", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes")) + 0,
"__ready", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes" && TalentEmployee[promotionReadiness] = "1 Ready now")) + 0)
VAR __skills = FILTER(SkillGap, SkillGap[employeeId] IN __ids)
VAR __n = COUNTROWS(__people) + 0
RETURN IF(__n < 10 || ISEMPTY(AsOf), BLANK(), __n)
Direct dependencies: None
Training Coverage %
TalentEmployee · Development
VAR __roleKeys = VALUES(SuccessionRole[roleId])
VAR __skillPeople = VALUES(SkillGap[employeeId])
VAR __people = FILTER(TalentEmployee,
(NOT ISFILTERED(SuccessionRole) || TalentEmployee[roleId] IN __roleKeys) &&
(NOT ISFILTERED(SkillGap) || TalentEmployee[employeeId] IN __skillPeople))
VAR __ids = SELECTCOLUMNS(__people, "__id", TalentEmployee[employeeId])
VAR __poolKeys = SELECTCOLUMNS(__people, "__role", TalentEmployee[roleId])
VAR __roleScope = FILTER(SuccessionRole, SuccessionRole[roleId] IN __poolKeys)
VAR __roles = ADDCOLUMNS(__roleScope,
"__successors", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes")) + 0,
"__ready", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes" && TalentEmployee[promotionReadiness] = "1 Ready now")) + 0)
VAR __skills = FILTER(SkillGap, SkillGap[employeeId] IN __ids)
VAR __n = COUNTROWS(__people) + 0
RETURN IF(__n < 10 || ISEMPTY(AsOf), BLANK(), VAR __g = COUNTROWS(FILTER(__people, TalentEmployee[trainingHours] > 0)) + 0 RETURN IF(__g > 0 && __g < 10, BLANK(), DIVIDE(__g, __n)))
Direct dependencies: None
Training Hours Total
TalentEmployee · Development
VAR __roleKeys = VALUES(SuccessionRole[roleId])
VAR __skillPeople = VALUES(SkillGap[employeeId])
VAR __people = FILTER(TalentEmployee,
(NOT ISFILTERED(SuccessionRole) || TalentEmployee[roleId] IN __roleKeys) &&
(NOT ISFILTERED(SkillGap) || TalentEmployee[employeeId] IN __skillPeople))
VAR __ids = SELECTCOLUMNS(__people, "__id", TalentEmployee[employeeId])
VAR __poolKeys = SELECTCOLUMNS(__people, "__role", TalentEmployee[roleId])
VAR __roleScope = FILTER(SuccessionRole, SuccessionRole[roleId] IN __poolKeys)
VAR __roles = ADDCOLUMNS(__roleScope,
"__successors", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes")) + 0,
"__ready", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes" && TalentEmployee[promotionReadiness] = "1 Ready now")) + 0)
VAR __skills = FILTER(SkillGap, SkillGap[employeeId] IN __ids)
VAR __n = COUNTROWS(__people) + 0
RETURN IF(__n < 10 || ISEMPTY(AsOf), BLANK(), SUMX(__people, TalentEmployee[trainingHours]) + 0)
Direct dependencies: None
Training Hours per Employee
TalentEmployee · Development
VAR __roleKeys = VALUES(SuccessionRole[roleId])
VAR __skillPeople = VALUES(SkillGap[employeeId])
VAR __people = FILTER(TalentEmployee,
(NOT ISFILTERED(SuccessionRole) || TalentEmployee[roleId] IN __roleKeys) &&
(NOT ISFILTERED(SkillGap) || TalentEmployee[employeeId] IN __skillPeople))
VAR __ids = SELECTCOLUMNS(__people, "__id", TalentEmployee[employeeId])
VAR __poolKeys = SELECTCOLUMNS(__people, "__role", TalentEmployee[roleId])
VAR __roleScope = FILTER(SuccessionRole, SuccessionRole[roleId] IN __poolKeys)
VAR __roles = ADDCOLUMNS(__roleScope,
"__successors", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes")) + 0,
"__ready", VAR __key = SuccessionRole[roleId] RETURN COUNTROWS(FILTER(__people, TalentEmployee[roleId] = __key && TalentEmployee[successorFlag] = "Yes" && TalentEmployee[promotionReadiness] = "1 Ready now")) + 0)
VAR __skills = FILTER(SkillGap, SkillGap[employeeId] IN __ids)
VAR __n = COUNTROWS(__people) + 0
RETURN IF(__n < 10 || ISEMPTY(AsOf), BLANK(), DIVIDE(SUMX(__people, TalentEmployee[trainingHours]) + 0, __n))
Direct dependencies: None