Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

В выражениях анализа данных (DAX) есть 35 функций, предназначенных специально для агрегации и сравнения данных с течением времени. В отличие от функций даты и времени DAX, функции time-intelligence на самом деле не имеют ничего похожего в Excel. Это происходит потому, что функции аналитики времени работают с данными, которые постоянно меняются в зависимости от контекста, выбранного в представлениях с помощью стеблей и Power View.

Для работы с функциями аналитики времени в модель данных должна быть включена таблица дат. Таблица дат должна включать столбец с одной строкой для каждого дня каждого года, включаемой в данные. Этот столбец считается столбцом Дата (хотя его можно назвать как угодно). Для вычисления дат, выбранных в отчете в качестве полей, для многих функций аналитики времени требуется столбец даты. Например, если имеется мера, которая вычисляет баланс за последние кварталы с помощью функции CLOSINGBALANCEQTR, для того чтобы Power Pivot мог знать, когда на самом деле заканчивается квартал, он должен ссылаться на столбец дат в таблице дат, чтобы знать, когда начинается и заканчивается квартал. Чтобы узнать больше о таблицах дат, изучите и создайте таблицы дат в Power Pivot в Excel.

Функции

Функции, возвращают одну дату

Функции в этой категории возвращают одну дату. Затем результат можно использовать в качестве аргументов для других функций.

Первые две функции этой категории возвращают первую или последнюю дату в Date_Column текущем контексте. Это может быть полезно, если вы хотите найти первую или последнюю дату транзакции определенного типа. Эти функции принимают только один аргумент , имя столбца дат в таблице дат.

Следующие две функции этой категории находят дату первой или последней даты (или любое другое значение столбца), где выражение имеет непустую величину. Чаще всего это происходит в ситуациях, когда нужно получить последний объем запасов и вы не знаете, когда были приняты последние запасы.

Еще шесть функций, которые возвращают одну дату, — это функции, которые возвращают первую или последнюю дату месяца, квартала или года в текущем контексте вычислений.

Функции, возвращают таблицу дат

Существует 16 функций, которые возвращают таблицу дат. Чаще всего эти функции используются в качестве аргумента SetFilter для функции CALCULATE. Как и все функции аналитики времени в DAX, каждая функция имеет в качестве аргумента столбец даты.

Первые восемь функций в этой категории начинаются со столбца дат в текущем контексте. Например, при использовании меры в одной из них в подписях столбцов или строк может быть месяц или год. Net effect — это столбец дат с фильтром, включающий только даты для текущего контекста. Начиная с текущего контекста, эти восемь функций затем вычисляют предыдущий (или следующий) день, месяц, квартал или год и возвращают эти даты в виде таблицы с одним столбцом. "Предыдущие" функции работают от первой даты в текущем контексте, а функции "далее" — от последней даты в текущем контексте.

Следующие четыре функции в этой категории похожи, но вместо того чтобы вычислять предыдущий (или следующий) период, они вычисляют набор дат в периоде с помесячной датой (квартал к дате, год к дате или в том же периоде предыдущего года). Все эти функции выполняют вычисления с использованием последней даты в текущем контексте. Обратите внимание на то, что для работы с samePERIODLASTYEAR требуется, чтобы текущий контекст содержал несоединимый набор дат. Если текущий контекст не является набором дополнительных дат, то samePERIODLASTYEAR возвращает ошибку.

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

  • DATEADD (Date_Column, Number_of_Intervals, интервал)

  • DATESBETWEEN (Date_Column, Start_Date, End_Date)

  • DATESINPERIOD (Date_Column, Start_Date, Number_of_Intervals, интервал)

DATESBETWEEN вычисляет набор дат между указанной датой начала и датой окончания. Остальные три функции сдвигут некоторое количество интервалов времени из текущего контекста. Интервал может быть днем, месяцем, кварталом или годом. С помощью этих функций можно легко сместить интервал времени для вычисления одним из следующих способов:

  • Назад на два года

  • Вернуться на один месяц назад

  • Перейти на три квартала вперед

  • Назад на 14 дней

  • Перейти вперед на 28 дней

В каждом случае нужно указать только интервал и количество интервалов, которые нужно сдвинуть. Положительный интервал будет перемещаться вперед по времени, а отрицательный интервал будет возвращаться к времени. Интервал определяется ключевым словом ДЕНЬ, МЕСЯЦ, КВАРТАЛ или ГОД. Эти ключевые слова не являются строками, поэтому они не должны быть в кавычках.

Функции, оценивая выражения за период времени

Эта категория функций оценивает выражение за указанный период времени. Вы можете выполнить то же самое с помощью функции CALCULATE и других функций для работы со временем. Например:

= TOTALMTD (выражение, Date_Column [, SetFilter])

точно такой же, как:

= CALCULATE (выражение, DATESMTD (Date_Column)[, SetFilter])

Однако эти функции для управления временем проще использовать, если они хорошо подходят для решения проблемы:

  • TOTALMTD (выражение, Date_Column [, SetFilter])

  • TOTALQTD (выражение, Date_Column [, SetFilter])

  • TOTALYTD (выражение, Date_Column [, SetFilter] [,YE_Date]) *

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

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

Дополнительные ресурсы

Статьи: Понимание и создание таблиц дат в Power Pivot в Excel

Справка: Справочник по функции DAXна Office.com

Примеры: моделирование и анализ данных о прибылях и убытках с помощью Microsoft PowerPivot в Excel

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

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

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×