42

Некоторые сценарии практического использования DAX в PowerPivot

Embed Size (px)

DESCRIPTION

Некоторые сценарии практического использования DAX в PowerPivot. Андрей Коршиков Компания Портал-Юг, Краснодар, Россия. Содержание. Знакомство с PowerPivot и DAX ( если кто-то ещё с ними не знаком ) Решение некоторых практических задач. Введение в PowerPivot. - PowerPoint PPT Presentation

Citation preview

Page 1: Некоторые сценарии практического использования  DAX  в  PowerPivot
Page 2: Некоторые сценарии практического использования  DAX  в  PowerPivot

Некоторые сценарии практического использования DAX в PowerPivot

Андрей КоршиковКомпания Портал-Юг, Краснодар, Россия

Page 3: Некоторые сценарии практического использования  DAX  в  PowerPivot

Содержание Знакомство с PowerPivot и DAX

(если кто-то ещё с ними не знаком) Решение некоторых практических задач

Page 4: Некоторые сценарии практического использования  DAX  в  PowerPivot

Введение в PowerPivot

Page 5: Некоторые сценарии практического использования  DAX  в  PowerPivot

Какие проблемы при создании отчётов? …

Page 6: Некоторые сценарии практического использования  DAX  в  PowerPivot

Какие проблемы при использовании Excel? …

Page 7: Некоторые сценарии практического использования  DAX  в  PowerPivot

Назначение PowerPivot Обработка больших объемов данных на обычном

компьютере Поддержка обработки данных на стороне клиента Подключение ко многим источникам данных Надстройка для Excel и SharePoint

Page 8: Некоторые сценарии практического использования  DAX  в  PowerPivot

Системные требования Поддерживаемые операционные

системы:Windows 7, Windows Server 2008 R2 (64-bit),Windows XP with SP3 (32-bit), Windows Vista with SP2 (32-bit or 64-bit) и т.д.

32 или 64-разрядный процессор с тактовой частотой 500 МГц или быстрее

Как минимум 1 Гб ОЗУ (рекомендуется 2 Гб или более).

3,5 Гб свободного места на жестком диске

Page 9: Некоторые сценарии практического использования  DAX  в  PowerPivot

Источники данных для PowerPivot

Каналы данных (RSS)

Файлы(текст, Excel)

Базы данных(SQL, Access, SSAS)

Page 10: Некоторые сценарии практического использования  DAX  в  PowerPivot

Рабочее пространство PowerPivot

Набор таблиц и связи между ними

Page 11: Некоторые сценарии практического использования  DAX  в  PowerPivot

Data Analysis Expressions (DAX)

Язык выражения для работы с данными в PowerPivot

Набор функций, операторов и констант для построения формул и выражений в PowerPivot

С помощью DAX пользователи выполняют многомерный анализ владея базовыми знаниями о многомерном анализе

Page 12: Некоторые сценарии практического использования  DAX  в  PowerPivot

Синтаксис DAX Выражение всегда начинается со знака «=» Аргументы функций (название таблицы, столбца,

значение, выражение) заключаются в скобки Название таблицы заключается в кавычки, если

содержит пробел Название столбца или меры заключается в

квадратные скобки Если не требует аргумента, все равно нужны

парные скобки. Например: PI()

Page 13: Некоторые сценарии практического использования  DAX  в  PowerPivot

Синтаксис DAX Например:=(‘Sales’[SalesAmount]*0,05)

=RELATED('SalesTerritory'[SalesRegion])

Таблица

Столбец

ссылка на столбец в связанной таблице

Page 14: Некоторые сценарии практического использования  DAX  в  PowerPivot

Синтаксис DAX

=3=Sales[Column1]=(0.03 *[Amount])=PI()=(FALSE=0)=TRUE+1=[Sales] / [Quantity]

Page 15: Некоторые сценарии практического использования  DAX  в  PowerPivot

Типы данных Стандартные:

Integer (целое, 8 байт) Real (вещественное, 8 байт) Boolean (true/false) String Date (дата после 1 марта 1900) Currency (валюта)

Page 16: Некоторые сценарии практического использования  DAX  в  PowerPivot

Типы данных Новые:

BLANK (аналог NULL в SQL) Table (используется в функциях агрегирования и

фильтрации)

Page 17: Некоторые сценарии практического использования  DAX  в  PowerPivot

Преобразование типов данных

=12 & 34 ="22"+22 =TRUE+1 =NOW()+1

Page 18: Некоторые сценарии практического использования  DAX  в  PowerPivot

Обработка пустых значений

http://msdn.microsoft.com/ru-ru/library/ff452238.aspx

Выражение DAX ExcelBLANK + BLANK BLANK 0 (ноль)BLANK +5 5 5BLANK * 5 BLANK 0 (ноль)5/BLANK Бесконечность Ошибка0/BLANK NaN ОшибкаBLANK/BLANK BLANK ОшибкаFALSE OR BLANK FALSE FALSEFALSE AND BLANK FALSE FALSETRUE OR BLANK TRUE TRUETRUE AND BLANK FALSE TRUEBLANK OR BLANK BLANK ОшибкаBLANK AND BLANK BLANK Ошибка

Page 19: Некоторые сценарии практического использования  DAX  в  PowerPivot

Операторы Скобки () Арифметические +, -, *, /, - Сравнение =, <>, >, >=, <, <= Слияние текста & Логические &&, ||, !

Page 20: Некоторые сценарии практического использования  DAX  в  PowerPivot

Приоритет операторов

Оператор Описание

^ Возведение в степень

– Отрицание (как в числе –1)

* и / Умножение и деление

! NOT (унарный оператор)

+ и – Сложение и вычитание

& Объединяет две строки текста

=< ><=>=<> Сравнение

Page 21: Некоторые сценарии практического использования  DAX  в  PowerPivot

Вычисляемые столбцы и меры

Вычисляемые столбцы Меры Выбор между вычисляемыми столбцами и мерами

использование хранение производительность

Page 22: Некоторые сценарии практического использования  DAX  в  PowerPivot

Обработка ошибок Ошибки преобразования типов

=SalesOrders[VatCode]+100=“1+1”+0

Арифметические операции

=10/0=0/0=(10/0)/(7/0)=9954/(7/0)=SQRT(-1)

бесконечностьбесконечность

NaN

0#ERROR

Page 23: Некоторые сценарии практического использования  DAX  в  PowerPivot

Обработка ошибок =IFERROR(Sales[Quantity]*Sales[Price],BLANK()) =IFERROR(SQRT(Test[Omega]),BLANK())

=IF(ISNUMBER(Sales[Price]), Sales[Quantity]*Sales[Price],BLANC())

=IF(Test[Omega]>=0,SQRT(Test[Omega]),BLANK())

Page 24: Некоторые сценарии практического использования  DAX  в  PowerPivot

Группы функцийДата и время Информационные Математические Статистические СтроковыеDATE ISBLANK ABS AVERAGE CHARDATEVALUE ISERROR CEILING, ISO.CEILING AVERAGEA CODEDAY ISLOGICAL EXP COUNT CONCATENATEEDATE ISNONTEXT FACT COUNTA EXACTEOMONTH ISNUMBER FLOOR COUNTBLANK FINDHOUR ISTEXT INT MAX FIXEDMINUTE LN MAXA LEFTMONTH Logical LOG MIN LENNOW AND LOG10 MINA LOWERSECOND IF MOD MIDTIME IFERROR MROUND REPLACETIMEVALUE NOT PI REPTTODAY OR POWER RIGHTWEEKDAY FALSE QUOTIENT SEARCHWEEKNUM TRUE RAND SUBSTITUTEYEAR RANDBETWEEN TRIMYEARFRAC ROUND UPPER

ROUNDDOWN VALUEROUNDUPSIGNSQRTSUMSUMSQTRUNC

Page 25: Некоторые сценарии практического использования  DAX  в  PowerPivot

Пример использования DAX

Демонстрация

Page 26: Некоторые сценарии практического использования  DAX  в  PowerPivot

Контекст в формулах DAX Контекст строки

=[Freight] + [Tax]=[Freight] + RELATED('Region'[TaxRate])

Контекст запроса

=SUM('Sales'[Profit]) Контекст фильтра

=MAXX(FILTER(Sales,[ProdKey]=EARLIER([ProdKey])),Sales[OrderQty])

Page 27: Некоторые сценарии практического использования  DAX  в  PowerPivot

Контекст в формулах DAX

Page 28: Некоторые сценарии практического использования  DAX  в  PowerPivot

Некоторые сценарии

Page 29: Некоторые сценарии практического использования  DAX  в  PowerPivot

Рабочие дни

Есть: Таблица заказов Таблица праздников

Нужно: Сколько рабочих дней прошло с момента заказа до

поставки товара?

Page 30: Некоторые сценарии практического использования  DAX  в  PowerPivot

Ещё немного о времени Группируем по времени

за месяц за квартал за год

За аналогичный период…

Page 31: Некоторые сценарии практического использования  DAX  в  PowerPivot

Без вычисления Проценты Суммирование Среднее арифметическое

Page 32: Некоторые сценарии практического использования  DAX  в  PowerPivot

Процентное отношение

𝑃𝑒𝑟𝑐𝑒𝑛𝑡𝑎𝑔𝑒=𝑉𝑎𝑙𝑢𝑒𝑇𝑜𝑡𝑎𝑙

(посмотрим два варианта)

Page 33: Некоторые сценарии практического использования  DAX  в  PowerPivot

ABC-анализ

Классификация ресурсов по степени важности: A – наиболее ценные B – промежуточные C – наименее ценные

Page 34: Некоторые сценарии практического использования  DAX  в  PowerPivot

Подсчёт количеств оригинальных Заказчиков/Продуктов (distinct count)

= COUNTROWS(DISTINCT(Orders[CustomerID]))

Page 35: Некоторые сценарии практического использования  DAX  в  PowerPivot

Организация между таблицами отношений многие-ко-многим

Page 36: Некоторые сценарии практического использования  DAX  в  PowerPivot

Связи в таблицах а-ля 1С

Page 37: Некоторые сценарии практического использования  DAX  в  PowerPivot

Сценарии использования DAX

Демонстрация

Page 38: Некоторые сценарии практического использования  DAX  в  PowerPivot

Ресурсы http://powerpivot.com http://powerpivotfaq.com http://blogs.msdn.com/powerpivot http://msdn.microsoft.com/en-us/librar

y/ee634556(SQL.105).aspx http://www.gotdotnet.ru/blogs/korshiko

v/tags/?powerpivot http://sqlbi.ineta.ru http://www.microsoftbi.ru

Page 39: Некоторые сценарии практического использования  DAX  в  PowerPivot

Ресурсы

Page 40: Некоторые сценарии практического использования  DAX  в  PowerPivot

Обратная связь

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

Спасибо!

Page 41: Некоторые сценарии практического использования  DAX  в  PowerPivot

Вопросы Андрей Коршиков

Компания Портал-Юг, Краснодар, Россия [email protected], [email protected] http://sqlbi.ineta.ru и www.gotdotnet.ru

Вы сможете задать вопросы докладчику в зоне «Спроси эксперта» в течение часа после завершения этого доклада

Page 42: Некоторые сценарии практического использования  DAX  в  PowerPivot