Учебники

Excel DAX — пересчет формул DAX

Пересчет формулы DAX необходим для отражения изменений в данных и изменений в самой формуле. Однако пересчет формулы DAX влечет за собой снижение производительности.

Даже тогда, чтобы получить точные результаты, пересчет необходим. Во время пересчета проверяются зависимости столбцов, и вы будете уведомлены, если столбец изменился, если данные недействительны или если в формуле DAX, которая использовалась, возникла ошибка.

Типы пересчета

У вас есть два варианта пересчета формул DAX —

  • Режим автоматического пересчета (по умолчанию)
  • Режим ручного пересчета

По умолчанию Power Pivot автоматически пересчитывает при необходимости, оптимизируя время, необходимое для обработки. Однако вы можете обновить вычисления вручную, если вы работаете со сложными формулами или с очень большими наборами данных и хотите контролировать время обновления.

Как автоматический, так и ручной режим пересчета формул DAX имеют свои преимущества. Тем не менее, рекомендуется использовать режим автоматического пересчета. Таким образом вы можете синхронизировать данные Power Pivot и предотвратить проблемы, вызванные удалением данных, изменениями в именах или типах данных или отсутствующими зависимостями.

Автоматический пересчет формул DAX

Если вы выберете режим перерасчета формул DAX по умолчанию, то есть автоматический пересчет, любые изменения в данных, которые приведут к изменению результата любой формулы DAX, приведут к пересчету всего столбца, который содержит формулу DAX.

Следующие изменения всегда требуют пересчета формул DAX —

  • Значения из внешнего источника данных были обновлены.

  • Сама формула DAX изменена.

  • Имена таблиц или столбцов, на которые есть ссылки в формуле DAX, были изменены.

  • Отношения между таблицами были добавлены, изменены или удалены.

  • Добавлены новые вычисляемые поля или вычисляемые столбцы.

  • В рабочую книгу были внесены изменения в другие формулы DAX, поэтому необходимо пересчитать столбцы или вычисления, которые зависят от этих формул DAX.

  • Строки были вставлены или удалены в таблице.

  • Вы применили фильтр, который требует выполнения запроса для обновления набора данных. Фильтр мог быть применен либо в формуле DAX, либо как часть сводной таблицы или сводной диаграммы.

Значения из внешнего источника данных были обновлены.

Сама формула DAX изменена.

Имена таблиц или столбцов, на которые есть ссылки в формуле DAX, были изменены.

Отношения между таблицами были добавлены, изменены или удалены.

Добавлены новые вычисляемые поля или вычисляемые столбцы.

В рабочую книгу были внесены изменения в другие формулы DAX, поэтому необходимо пересчитать столбцы или вычисления, которые зависят от этих формул DAX.

Строки были вставлены или удалены в таблице.

Вы применили фильтр, который требует выполнения запроса для обновления набора данных. Фильтр мог быть применен либо в формуле DAX, либо как часть сводной таблицы или сводной диаграммы.

Когда использовать режим ручного пересчета?

Вы можете использовать режим ручного пересчета, пока вы не будете готовы со всеми необходимыми формулами DAX в своей книге. Таким образом, вы можете избежать затрат на вычисление результатов формулы на книге, которая все еще находится в состоянии черновика.

Вы можете использовать ручной пересчет формул DAX в следующих условиях:

  • Вы разрабатываете формулу DAX с помощью шаблона и хотите изменить имена столбцов и таблиц, используемых в формуле DAX, перед ее проверкой.

  • Вы знаете, что некоторые данные в книге изменились, но вы работаете с другим столбцом, который не изменился, поэтому вы хотите отложить пересчет.

  • Вы работаете с рабочей книгой, которая имеет много зависимостей и хотите отложить пересчет, пока не убедитесь, что все необходимые изменения были внесены.

Вы разрабатываете формулу DAX с помощью шаблона и хотите изменить имена столбцов и таблиц, используемых в формуле DAX, перед ее проверкой.

Вы знаете, что некоторые данные в книге изменились, но вы работаете с другим столбцом, который не изменился, поэтому вы хотите отложить пересчет.

Вы работаете с рабочей книгой, которая имеет много зависимостей и хотите отложить пересчет, пока не убедитесь, что все необходимые изменения были внесены.

Но вы должны знать, что, пока рабочая книга настроена на режим ручного пересчета, никакая проверка или проверка формул не выполняется. Это приведет к следующему —

  • Любые новые формулы, добавленные в рабочую книгу, будут помечены как содержащие ошибку.

  • Результаты не будут отображаться в новых вычисляемых столбцах.

Любые новые формулы, добавленные в рабочую книгу, будут помечены как содержащие ошибку.

Результаты не будут отображаться в новых вычисляемых столбцах.

Настройка рабочей книги для ручного пересчета

Как вы узнали, автоматический пересчет является режимом по умолчанию в модели данных любой книги. Чтобы настроить рабочую книгу для ручного пересчета, выполните следующие действия:

  • Перейдите на вкладку «Дизайн» на ленте в окне Power Pivot.
  • Нажмите Параметры расчета в группе Расчеты.
  • Выберите ручной режим расчета в раскрывающемся списке.

Рабочая тетрадь для ручного пересчета

Пересчет формул DAX вручную

Чтобы пересчитать формулы DAX вручную, выполните следующие действия: