Я создал таблицу данных, следуя этому полезному руководству: https://www.daxpatterns.com/parent-child-hierarchies/
Я точно следую этому, но я все еще объясню здесь, чтобы вы не Вы должны go прочитать всю статью, если не хотите. У меня есть таблица имен с соответствующими ключами и ParentKeys, образующие иерархии. Я добавил столбец для пути, столбцы для каждого уровня пути, глубину иерархии и столбец IsLeaf:
Если я хочу сделать матрица и включает Город (из другой таблицы), все иерархии будут расширены до максимальной длины, а пробелы заполнены именем «родителя»:
Сайт DAX Patterns объясняет, как обойти это. Сначала добавьте эти две меры:
BrowseDepth = ISFILTERED (Nodes[Level1]) + ISFILTERED (Nodes[Level2]) + ISFILTERED (Nodes[Level3])
MaxNodeDepth = MAX (Nodes[HierarchyDepth])
И затем вы можете учесть это в вычислениях с помощью этой меры:
Sales Amount Simple =
IF (
Nodes[BrowseDepth] > Nodes[MaxNodeDepth],
BLANK (),
SUM (Transactions[Amount])
)
Если это единственное значение в матричном визуале, получается нормально:
Но если я добавлю какие-либо другие значения, я снова получу расширенные иерархии и пробелы:
Моя проблема была бы решена, если бы я мог отфильтровать пустые значения, но это отфильтровывает всю иерархию. Должен ли я использовать показатель, используя вышеуказанный формат Sales Amount для каждого значения, которое я хочу включить? Я пытаюсь добавить такие вещи, как адреса, которые не могут быть объединены.