Как изменить формат меры power bi

Разбор одной из часто используемых и популярных текстовых функций языка DAX - функции FORMAT (формат). Подробные параметры форматов и примеры формул в Power BI (Power Pivot)

 Содержание статьи: (кликните, чтобы перейти к соответствующей части статьи):

  • DAX функция FORMAT в Power BI и Power Pivot
  • Шаблоны формата чисел
  • Шаблоны формата дат
  • Шаблоны формата времени
  • Совместное использование шаблонов
  • DAX функция FORMAT и первый параметр

Антон Будуев Приветствую Вас, дорогие друзья, с Вами Будуев Антон. В данной статье мы разберем одну из часто используемых в Power BI (Power Pivot) и популярных текстовых функций языка DAX — функцию FORMAT (формат).

Для Вашего удобства, рекомендую скачать «Справочник DAX функций для Power BI и Power Pivot» в PDF формате.

Если же в Ваших формулах имеются какие-то ошибки, проблемы, а результаты работы формул постоянно не те, что Вы ожидаете и Вам необходима помощь, то записывайтесь в бесплатный экспресс-курс «Быстрый старт в языке функций и формул DAX для Power BI и Power Pivot».

 

DAX функция FORMAT в Power BI и Power Pivot

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

Синтаксис: FORMAT (Значение; Формат), где:

  • Значение — значение с типом данных число, дата, время
  • Формат — шаблон формата

Шаблоны формата чисел

Ниже приведены основные и часто используемые шаблоны формата чисел, а также, примеры формул на их основе:

  • «General Number» — выводит число
    Пример: FORMAT (12345,678; "General Number")
    Результат: 12345,678
  • «Currency» — денежный формат. Выводит число, разделяя его на группы разрядов на основании параметров локали ПК
    Пример: FORMAT (12345,678; "Currency")
    Результат: 12 345,68 Руб
  • «Fixed» — округляет число до 2 знаков после запятой
    Пример: FORMAT (12345,67867; "Fixed") 
    Результат: 12345,68
  • «Standard» — выводит число, разделенное на группы разрядов, округляя его до 2 знаков после запятой
    Пример: FORMAT (12345,67867; "Standard") 
    Результат: 12 345,68
  • «Percent» — умножает число на 100, преобразуя его в проценты (%). После запятой число округляется до 2 знаков
    Пример: FORMAT (0,67867; "Percent") 
    Результат: 67,87%
  • «Scientific» — преобразует число в научный вид
    Пример: FORMAT (1234567; "Scientific") 
    Результат: 1,23E+06
  • «Yes/No» — выводит «Да», если число не равно 0 и «Нет», если равно 0
    Пример: а) FORMAT (1234567; "Yes/No");  б) FORMAT (0; "Yes/No") 
    Результат а: да
    Результат б: нет
  • «True/False» — выводит «TRUE» (Истина), если число не равно 0 и «FALSE» (Ложь), если равно 0
    Пример: а) FORMAT (1234567; "True/False");  б) FORMAT (0; "True/False") 
    Результат а: Истина
    Результат б: Ложь
  • «On/Off» — выводит «Вкл», если число не равно 0 и «Выкл», если равно 0
    Пример: а) FORMAT (1234567; "On/Off");  б) FORMAT (0; "On/Off") 
    Результат а: Вкл
    Результат б: Выкл

Шаблоны формата дат

Ниже приведены основные и часто используемые шаблоны формата дат, а также, примеры формул на их основе:

  • «D» — выводит номер дня месяца (без нулей)
    Пример: а) FORMAT (DATE (2018;10;02); "D"); б) FORMAT (DATE (2018;10;23); "D")
    Результат а: 2
    Результат б: 23
  • «DD» — выводит номер дня месяца (с нулём)
    Пример: а) FORMAT (DATE (2018;10;02); "DD"); б) FORMAT (DATE (2018;10;23); "DD")
    Результат а: 02
    Результат б: 23
  • «DDD» —  преобразует исходную дату в день недели (сокращенное название —  Пт, Сб, Вс)
    Пример: FORMAT(DATE(2018;10;02); "DDD")
    Результат: Вт
  • «DDDD» —  преобразует исходную дату в день недели (полное название)
    Пример: FORMAT(DATE(2018;10;02); "DDDD")
    Результат: вторник
  • «M» — выводит номер месяца в году (без нулей)
    Пример: а) FORMAT (DATE (2018;01;23); "M"); б) FORMAT (DATE (2018;11;23); "M")
    Результат а: 1
    Результат б: 11
  • «MM» — выводит номер месяца в году (c нулём)
    Пример: а) FORMAT (DATE (2018;01;23); "MM"); б) FORMAT (DATE (2018;11;23); "MM")
    Результат а: 01
    Результат б: 11
  • «MMM» — преобразует исходную дату в месяц (сокращенное название — дек)
    Пример: FORMAT (DATE (2018;11;23); "MMM")
    Результат: ноя
  • «MMMM» — преобразует исходную дату в месяц (полное название)
    Пример: FORMAT (DATE (2018;11;23); "MMMM")
    Результат: Ноябрь
  • «yy» — выводит год в формате 2 цифр
    Пример: а) FORMAT (DATE (2018;11;23); "yy"); б) FORMAT (DATE (2001;11;23); "yy")
    Результат а: 18
    Результат б: 01
  • «yyyy» — выводит год в формате 4 цифр
    Пример: FORMAT (DATE (2018;11;23); "yyyy")
    Результат: 2018

Шаблоны формата времени

Ниже приведены основные и часто используемые шаблоны формата времени, а также, примеры формул на их основе:

  • «H» — преобразует исходное время в часы (без нулей)
    Пример: FORMAT (TIME (05;50;16); "H")
    Результат: 5
  • «HH» — преобразует исходное время в часы (с нулём)
    Пример: FORMAT (TIME (05;50;16); "HH")
    Результат: 05
  • «m» — преобразует исходное время в минуты (без нулей)
    Пример: FORMAT (TIME (10;07;16); "HH:m")
    Результат: 10:7
  • «mm» — преобразует исходное время в минуты (с нулём)
    Пример: FORMAT (TIME (10;07;16); "HH:mm")
    Результат: 10:07
  • «s» — преобразует исходное время в секунды (без нулей)
    Пример: FORMAT (TIME (10;18;03); "s")
    Результат: 3
  • «ss» — преобразует исходное время в секунды (с нулём)
    Пример: FORMAT (TIME (10;18;03); "ss")
    Результат: 03

Совместное использование шаблонов

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

Например, совместив сразу несколько шаблонов дат друг с другом и разделив их нужными нам разделителями, мы получим удобный для нас текстовый вывод даты в Power BI:

Объединенный шаблон форматов дат: "DDDD MMMM'yy"

И, как результат, мы получим следующий вывод даты:

Результат работы DAX функции FORMAT

Или мы можем объединить сразу несколько шаблонов времени друг с другом, также, разделив их нужным разделителем:

Объединенный шаблон форматов времени: FORMAT (TIME (21;50;16); "HH:mm:ss")

И, как результат, в Power BI мы получим следующий вывод времени:

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

DAX функция FORMAT и первый параметр

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

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

Итак, в Power BI у меня имеется исходная таблица со столбцом дат:

Исходная таблица

Создадим в Power BI Desktop во вкладке «Моделирование» два вычисляемых столбца в этой таблице по следующим формулам с использованием рассматриваемой нами функции:

Формула 1: Год = FORMAT ('Таблица'[Даты]; "yyyy")
Формула 2: Месяц = FORMAT ('Таблица'[Даты]; "mmmm")

Как итог, мы получили таблицу, где вместо одного столбца с простыми датами появились еще 2 дополнительных столбца со значениями годов и месяцев.

Таблица с двумя созданными столбцами на основе функции FORMAT

И, теперь по этим 2 столбцам мы уже можем свободно создавать в DAX формулы с фильтрами по годам или месяцам. Например, при помощи функции FILTER (подробно ознакомиться с функцией FILTER Вы можете в данной статье):

Год2018 = 
FILTER(
    'Таблица';
    'Таблица'[Год] = "2018"
)

И FILTER нам возвращает таблицу, отфильтрованную по значению 2018 в созданном нами вычисляемом столбце на основе функции FORMAT:

Отфильтрованная таблица по столбцу, созданному при помощи функции FORMAT

На этом, с разбором функции FORMAT в Power BI и Power Pivot, в данной статье все.

Пожалуйста, оцените статью:

  1. 5
  2. 4
  3. 3
  4. 2
  5. 1

(15 голосов, в среднем: 4.8 из 5 баллов)

[Экспресс-видеокурс] Быстрый старт в языке DAX

    Антон БудуевУспехов Вам, друзья!
С уважением, Будуев Антон.
Проект «BI — это просто»

Если у Вас появились какие-то вопросы по материалу данной статьи, задавайте их в комментариях ниже. Я Вам обязательно отвечу. Да и вообще, просто оставляйте там Вашу обратную связь, я буду очень рад.

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

 
Понравился материал статьи?
Избранные закладкиДобавьте эту статью в закладки Вашего браузера, чтобы вернуться к ней еще раз. Для этого, прямо сейчас нажмите на клавиатуре комбинацию клавиш Ctrl+D

Меры в DAX — обычное дело когда вы работаете в Power BI. Но что, если у вас больше 100 мер? Как управлять таким количеством мер и не путаться? Сегодня мы предложим несколько решений для упрощения работы с мерами в Power BI.

Таблицы для хранения мер

Создание хранилища

Сортировка мер по таблицам — отличное решение когда в вашем отчете несколько страниц с несвязанными вычислениями. 

Самый простой вариант создания таблицы — с помощью кнопки «Введите данные». Вам нужно заполнить только название таблицы:

Кстати, имя таблицы можно начинать со специального символа «#» или даже с числа (1,2,3…), чтобы было проще вызывать меру в строке формул. 

После создания таблицы, вы сможете найти ее в правой части экрана в режиме визуализации «Поля». Добавьте первую меру в созданную таблицу и удалите «Столбец1», чтобы Power BI автоматически распознал ее как таблицу мер и перенес в начало списка:

Перенос мер в хранилище

Чтобы рассортировать ранее созданные меры по таблицам, перейдите на вкладку «Моделирование» в левой части экрана. Выбрав нужные меры с помощью клавиши Shift, определите «начальную» таблицу для хранения:

Папки внутри таблицы

Если внутри таблицы тоже начинается хаос из-за большого количества измерений, вам на помощь придут папки. Для этого выделите через Shift необходимые меры и назначьте на вкладке «Моделирование» Папку отображения:

Чтобы создать «Меру Шрёдингера», которая может находиться сразу в двух папках, пропишите названия папок через » ; » в поле «Папка отображения». 

Наименования мер как способ сортировки

Когда один показатель может выражаться и в процентах, и числом, используйте префиксы «$, #, %, Δ» в названиях мер. Тогда вы точно будете знать в каком формате выдается вычисление. При работе с большим количеством расчетов отклонений по месяцам/неделям/дням, рационально не только создавать папки для измерений, но и применять в их названии буквенные коды:

Приведем список примеров префиксов для ускорения вашей работы с моделью:

Префикс Назначение Пример
DoD Отклонение 
по дням
DoD_Выручка
DIVIDE(
       CALCULATE(_Finance[!Выручка], ‘Calendar'[Сегодня]=1),
       CALCULATE(_Finance[!Выручка], ‘Calendar'[Вчера]=1)
)
WoW Отклонение 
по неделям

WoW_Выручка

DIVIDE(

        CALCULATE(_Finance[!Выручка], ‘Calendar'[Текущая неделя]=1),

        CALCULATE(_Finance[!Выручка], ‘Calendar'[Прошлая неделя]=1)

)

MoM Отклонение 
по месяцам

MoM_Выручка

DIVIDE(

        CALCULATE(_Finance[!Выручка], ‘Calendar'[Текущий месяц]=1),

        CALCULATE(_Finance[!Выручка], ‘Calendar'[Прошлый месяц]=1)

)

YoY Отклонение 
по годам

YoY_Выручка

DIVIDE(

        CALCULATE(_Finance[!Выручка], ‘Calendar'[Текущий год]=1),

        CALCULATE(_Finance[!Выручка], ‘Calendar'[Прошлый год]=1)

)

T Измерение 
за сегодня

T_Выручка =

CALCULATE(_Finance[!Выручка], ‘Calendar'[Сегодня]=1)

W Измерение за 
текущую неделю

W_Выручка =

CALCULATE(_Finance[!Выручка],’Calendar'[Текущая неделя]=1)

M Измерение за 
текущий месяц

M_Выручка =

CALCULATE(_Finance[!Выручка], ‘Calendar'[Текущий месяц]=1)

Y Измерение за 
текущий год

Y_Выручка =

CALCULATE(_Finance[!Выручка], ‘Calendar'[Текущий год]=1)

AT Измерение 
за вчера

AT_Выручка =

CALCULATE(_Finance[!Выручка], ‘Calendar'[Вчера]=1)

AW Измерение за 
прошлую неделю

AW_Выручка =

CALCULATE(_Finance[!Выручка], ‘Calendar'[Прошлая неделя]=1)

AM Измерение за 
прошлый месяц

AM_Выручка =

CALCULATE(_Finance[!Выручка], ‘Calendar'[Прошлая выручка]=1)

AY Измерение за 
прошлый год

AY_Выручка =

CALCULATE(_Finance[!Выручка], ‘Calendar'[Прошлый год]=1)

@ Текстовое 
значение

@_Количество_заказов

«Кол-во заказов за пр. месяц: «& FORMAT(
        ‘_Delivery'[#_Количество заказов], «#,##»)

# Наиболее 
используемые 
меры

#_Выручка

SUM(‘uni vf Продажи'[DishSumInt])

Заключение

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

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


  • All forum topics


  • Previous Topic

  • Next Topic

gavin007

  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

‎05-24-2020

06:08 AM

Currently i have a matrix with sales, gross margin and custom column called «gross margin %». Despite I change the gross margin % column data format to % in query, it still shows a number format in matrix. 

I tried to change that from field formatting, but it doesn’t has the option.

Any help?


Message 1 of 8

18,947 Views

1 ACCEPTED SOLUTION

v-xicai

  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

‎06-08-2020

07:56 PM

Hi @gavin007 ,

The Percent format with decimal place also works with measure, you may select on your measure and try it again.

Best Regards,

Amy 

Community Support Team _ Amy

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.


Message 7 of 8

18,825 Views


  • All forum topics


  • Previous Topic

  • Next Topic

7 REPLIES 7

v-xicai

  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

‎05-25-2020

02:29 AM

Hi @gavin007 ,

Make sure the data type of CM% is number first of all. Then select on the column CM% in Field pane, go to Modeling-> Format, choose Percentage format, you may also set the decimal places for the column.

106.png

Best Regards,

Amy 

Community Support Team _ Amy

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.


Message 5 of 8

18,878 Views

v-xicai

  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

‎06-08-2020

07:56 PM

Hi @gavin007 ,

The Percent format with decimal place also works with measure, you may select on your measure and try it again.

Best Regards,

Amy 

Community Support Team _ Amy

If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.


Message 7 of 8

18,826 Views

‎05-24-2020

06:23 AM

hi @gavin007 

pick your percentage column in the Fields pane and set format as pecenage in the Column (or measure) tools ribbon

Снимок.PNG

do not hesitate to give a kudo to useful posts and mark solutions as solution
LinkedIn


Message 2 of 8

18,943 Views

Tahreem24

  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

‎05-24-2020

08:18 AM

Try the below steps:

Step 1: Select your column name from the field pane (The rightmost area where all the list of tables and fields are visible).

 Step 2: Go to Modelling tab and see the format of your column.

Step 3: just click on a Percentage sign and check your result.

If possible so please share the snapshot of your data format of the column.


Message 4 of 8

18,914 Views

Продолжаю серию коротких лайфхаков про Power BI. Время чтения 1-2 минуты.

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

В каждую таблицу я поместил по одной мере. Для простоты примера не буду приводить здесь действительно сложную модель. Но читатель можеть попробовать представить, что здесь 50 таблиц, в каждой из них по 5-6 мер и насколько запутанной будет выглядеть модель данных. Поверьте моему опыту, со временем модель очень сильно усложняется.

Решение.

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

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

Для этого давайте проделаем следующие шаги:

1. Создадим пустую таблицу и назовем ее «Таблица мер». Кликаем на кнопку Введите Данные на ленте. Ничего не меням за исключением имени и жмем Загрузить.

2. Помещаем хотя бы одну меру в Таблицу мер, а затем удаляем Столбец1. Если его удалить сразу, то таблица просто пропадет.

3. После чего помещаем все оставшиеся меры.

4. Для удобства создадим папки и поместим меры в папки. Для создания просто нужно прописать название папки в поле папка отображения. После того, как папка появилась в нее можно перемещать меры.

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

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Как изменить формат любого файла
  • Как изменить формат листа на принтере
  • Как изменить формат листа инвентор
  • Как изменить формат компас на pdf
  • Как изменить формат компакт диска

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии