Логика операций со временем в PowerPivot для Excel

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

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

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

Функции

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

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

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

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

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

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

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

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

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

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

  • DATEADD (столбец_дат, количество_интервалов, интервал)

  • DATESBETWEEN (столбец_дат, начальная_дата, конечная_дата)

  • DATESINPERIOD (столбец_дат, начальная_дата, количество_интервалов, интервал)

  • PARALLELPERIOD (столбец_дат, количество_интервалов, интервал)

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

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

  • Назад на один месяц.

  • Вперед на три квартала.

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

  • Вперед на 28 дней.

В каждом конкретном случае для выполнения переноса необходимо указать только конкретный интервал и их количество. Положительный интервал приведет к сдвигу во времени вперед, в то время как отрицательный интервал будет перемещать набор дат назад во времени. Сам интервал указывается с помощью ключевого слова — DAY (день), MONTH (месяц), QUARTER (квартал) или YEAR (год). Эти ключевые слова не являются строками, поэтому заключать их в кавычки не требуется.

Функции для оценки выражений за некоторый период

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

= TOTALMTD (выражение, столбец_дат [, SetFilter])

возвращает такой же результат, что и выражение

= CALCULATE (выражение, DATESMTD (столбец_дат)[, SetFilter]).

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

  • TOTALMTD (выражение, столбец_дат [, SetFilter])

  • TOTALQTD (выражение, столбец_дат [, SetFilter])

  • TOTALYTD (выражение, столбец_дат [, SetFilter] [,дата_конца_года]) *

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

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

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

Статьи: понимание и создание таблиц дат в PowerPivot для Excel

Справочные материалы: Справочник по функциям DAX на сайте Office.com

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

Примечание : Отказ от ответственности относительно машинного перевода. Данная статья была переведена с помощью компьютерной системы без участия человека. Microsoft предлагает эти машинные переводы, чтобы помочь пользователям, которые не знают английского языка, ознакомиться с материалами о продуктах, услугах и технологиях Microsoft. Поскольку статья была переведена с использованием машинного перевода, она может содержать лексические,синтаксические и грамматические ошибки.

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

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

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

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×