Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
PQ развернуть приджоинную таблицу при условии максимальной даты
 
Добрый день. Задача развернуть таблицу при условии, что колонка КО|дата имеет максимальную дату
Вручную добавил ДАТА - максимальная дата и через ключи ВПРом подтянул поле нужное значение  КО|номер
Изменено: mechanix 85 - 19.05.2022 12:36:39
DAX получить сумму за предыдущий период при совпадении двух параметров
 
Добрый день. Прошу помощь с задачей. Нужно получить сумму за предыдущий период ТОП категорий (топ3) при совпадении товара и страны вне зависимости попадали ли такие товары в топ3 за пред. период

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

Вложение перезалил
Изменено: mechanix 85 - 26.04.2022 15:10:06
DAX расчет продаж по странам из ТОП 20 определенной страны
 
Доброго дня. Появилась задача вывести продажи по странам исходя из ТОП20 Польши. Т.е. рассчитываем ТОП 20 категорий Польши и потом выводим продажи остальных стран из полученного списка.

ТОП20 Польши посчитал, думал запихнуть результат в CALCULATETABLE и потом посчитать остальные страны, но результат неверный.

В файле показал, что должно получиться
PQ функция внутри запроса с возможностью многократного ее вызова
 
Добрый день. Можно ли функцию запихнуть непосредственно в запрос и затем на разных этапах выполнения кода ее вызывать?
PQ программно прервать загрузку и вывести сообщение
 
Доброго дня. Тема скорее как уточнение. Есть необходимость прервать загрузку по условию. Условие: Если в таблице-справочнике количество строк не совпадает с количеством уникальных строк, то в основном запросе нужно запретить загрузку и получить сообщение об ошибке. Это я сделал через ссылку на несуществующую таблицу. Проблема в том, что неудобно будет в дальнейшем редактировать код, т.к. в предварительном просмотре будет ошибка "Expression.Error: Имя  не распознано. Убедитесь в том, что оно написано верно."

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

Пример. Есть серия B7260b39 и B7260B39 (отличие во второй В). Если в исходник поставить первым элементом B7260b39, то после обновления B7260B39 заменится на B7260b39 и наоборот соответственно. Это норма?
DAX количество чеков за период с возможностью детализации
 
Добрый день. Задача вывести чеки по дисконтам в случае, если пользователем указано их минимальное количество за месяц на срезе. Все это хорошо считается мерой в файле, но нет возможности добавить информацию о кассире Кассир|ИНН или чеке Кассир|ИНН в строки сводной таблицы. Это возможно реализовать?
Изменено: mechanix 85 - 16.09.2021 21:45:37
DAX сумма за последние 13 месяцев с учетом выбранного периода на срезе
 
Добрый день. Задача показать сумму продаж за последние 13 месяцев в зависимости от выбранного периода. Желтым отметил желаемый результат если бы сводная была подключена к срезам
Изменено: mechanix 85 - 27.08.2021 16:05:02
Не обновляются данные в сводной таблице PP
 
Доброго дня. Есть файл excel с моделью данных (файл большой). Создал новый лист со сводной таблицей, но после обновления запросов power query информация в новой сводной таблице не изменяется. Нужно поставить фильтр на любое поле, потом убрать этот фильтр и только тогда данные обновятся. Мера в сводной таблице:
Код
=SUMX(ADDCOLUMNS('Подзаказ';"w";SUMX(FILTER(FILTER(ALL('Продажи');RELATED('Менеджер'[Менеджер])="Tabletki.ua"||RELATED('Менеджер'[Менеджер])="Liki24");'Продажи'[Накладная|Номер]='Подзаказ'[№ накладной A24]&&'Продажи'[Товар|Код]='Подзаказ'[Код Товара]);'Продажи'[Сумма в Грн.(с НДС)]);"e";CALCULATE(COUNTROWS('Подзаказ');ALLEXCEPT('Подзаказ';'Подзаказ'[№ накладной A24];'Подзаказ'[Код Товара];'Подзаказ'[Дата заказа])));[w]/[e])
Никто с таким не сталкивался?
в DAX Studio нет SELECTCOLUMNS?
 
Доброго времени. Была старая версия DAX Studio и не было у меня функции SELECTCOLUMNS, обновился до 2.16.1 и тоже нету. Какой функцией можно воспользоваться чтобы выгружать определенные столбцы таблицы в нужном порядке без группировки?
Сортировка мер (порядок их отображения) в модели excel
 
Доброго дня. Может кто знает по какой логике excel сортирует меры в модели данных? Изначально думал, что сортировка идет по мере создания мер, сегодня решил переместить меры с одной таблицы в другую. Первой меру переместил [Уп], второй - [ТО] и третье - [Заказы] (названия без скобок). В итоге получил следующий порядок отображения:
ТО
Уп.
Заказы
снова PQ Expression.Evaluate ошибка при выборе запроса на обновление
 
Доброго дня. Создал два запроса и сохранил в txt. Создал ПОДКЛЮЧЕНИЕ к этим файлам txt с условием если в текущей книге ячейка А1 не пустая, то путь к запросу1 иначе - к запросу2.

Запрос ПРОДАЖИ, который через Expression.Evaluate должен прочитать ПОДКЛЮЧЕНИЕ и загрузить в модель. Но вот в чем прикол. Если я очищаю ячейку А1, то все работает, но если записываю значение в А1, то выдает ошибку

"Был задан, но не используется внешний объект "DataSource", ссылающийся на идентификаторы "4c5644a0-bf24-4864-9554-20d52b5e8c7e".
Столбец 134217730 слишком велик для этого экземпляра служб [SQL_PRODUCT_SHORTNAME_NO_QUOTE] Analysis Services."

При этом что запрос1, что запрос2 можно обновить отдельно и все работает нормально. Что я делаю не так?
PQ Expression.Evaluate() с ссылкой на другой запрос
 
Доброго дня! Есть код, который сохранен в txt и который загружаю в модель данных через
Код
Expression.Evaluate(Source, #shared)
В этом запросе есть ссылка на ячейку "С", т.е. с какой даты необходимо грузить таблицу. Хотел заметить
Код
Table.SelectRows(., each [Дата] >= С)
на минимальную дату с другого запроса
Код
Table.SelectRows(., each [Дата] >=List.Min(Платежи[#"Накладная|Дата"])
Первый раз все загрузилось без проблем, а на второе и последующие обновления начало выдавать ошибку "Имя "MinДатаНакл" не существует в текущем контексте."

Можно это дело как-то побороть? Спасибо
Изменено: mechanix 85 - 06.05.2021 16:38:30
Зависание при переходе на таблицу DAX
 
Доброго дня. С недавних пор начало беспробудно зависать окно при переходе на таблицу фактов (порядка 5 млн. строк). Никто не сталкивался с таким? Все остальные таблицы работают нормально

зы: виснет именно окно DAX, в excel работать можно
Изменено: mechanix 85 - 21.04.2021 16:33:28
Необычный расчет процента от числа
 
Доброго дня. Возник вопрос в правильности расчета бонуса, точнее непонятно почему программисты заложили такой расчет. Собственно условие простое - платим 5% бонуса от суммы (100 дол). Логично, что сумма бонуса равна 5 дол. А у программистов заложена формула 100-1/(1-5%) и у них получается 5,26 дол. Что мы высчитываем вторым методом?
Power Query. Интервальный поиск для подстановки значений из одной таблицы в другую.
 
Добрый день.
Хочу в таблицу фактов подставить из запроса К значения колонок отп и скл при условии, что Дата в факте находится в промежутке с и по запроса К.

пытался мудрить через List.Select с ссылкой на столбец Дата из факта, но выдает ошибку

Благодарю за помощь
Dax. вывод мер, если остаток на конец не равен 0 с правильным итогом
 
Доброго дня. Есть таблица, в которой зафиксированы остатки на начало периода и движение товара (приход-расход) за последующие даты. Остаток на конец считается как остаток на начало+приход-расход. Есть нужда отображать остаток на начало и движение только по позициям, у которых остаток на конец периода не равен 0. В файле есть исходная таблица и сводная, которая получается. Красным отметил позиции, которые не должны отображаться и учитываться  в итоге + показал меры, которые у меня есть в DAX. Модель в файл не выкладываю, т.к. размер файла не пролезет на форум.

Важно! Помимо существующих колонок о товарах
Товар|КодНомер партииСерия партии товараСрок годности до даты
есть и другие. Заранее благодарю за помощь
Изменено: mechanix 85 - 03.02.2021 18:07:36
DAX вывести все заказы, в которых есть поставщик
 
Добрый день. Как можно с помощью DAX вывести заказы, в которых есть поставщик ДЖ? В примере должно вывести позиции по заказам Z1 и Z2
DAX рассчитать итоговую сумму бонуса
 
Добрый день. Есть файл, в котором:
1. есть сотрудники ЗА и ПС
2. есть % выполнения (мера [% ТМ])
3. % бонуса для ЗА и ПС разный и зависит от % выполнения
% бонуса для ЗА=
Код
%Бонус ЗА:=SWITCH(TRUE();
[% ТМ]=BLANK();BLANK();
[% ТМ]<0,3;2;
[% ТМ]<0,5;0,01;
[% ТМ]<0,7;0,02;
[% ТМ]<1;0,03;
0,05)  

% бонуса для ПС=
Код
%Бонус ПС:=SWITCH(TRUE();
[% ТМ]=BLANK();BLANK();
[% ТМ]<0,3;1;
[% ТМ]<0,5;0,02;
[% ТМ]<0,7;0,04;
[% ТМ]<1;0,05;
0,07) 

Собственно рассчитал и сам размер бонуса
для ПС
Код
Мера 3:=IF(HASONEVALUE('Справочник сотрудников фирмы'[ИНН]);CALCULATE([%Бонус ПС]*[Прогноз ТМ];FILTER('Справочник сотрудников фирмы';'Справочник сотрудников фирмы'[Должность]="ПС")))
для ЗА
Код
Мера 5:=IF(HASONEVALUE('Справочник сотрудников фирмы'[ИНН]);CALCULATE([%Бонус ЗА]*[Прогноз ТМ];FILTER('Справочник сотрудников фирмы';'Справочник сотрудников фирмы'[Должность]="ЗА")))
Итого бонус
Код
Мера 6:=[Мера 3]+[Мера 5]

Проблема в том, что Мера6 (итоговый бонус) не считается в итогах по аптеке и общем итоге. Прошу помощи в решении этой задачи. Так понимаю, что нужно изменить логику расчета бонуса для ПС и ЗА. Но как это сделать не понимаю. Пытался через ADDCOLUMNS подтянуть должность из справочника и через IF указать % бонуса, но так не получается, т.к. мера [% ТМ] не хочет работать

вот пример меры
Код
SUMX(ADDCOLUMNS(            
ADDCOLUMNS('Продажи';"долж";RELATED('Справочник сотрудников фирмы'[Должность]));
                "%";  IF([долж]="ЗА";SWITCH(TRUE();
                                        [% ТМ]=BLANK();BLANK();
                                        [% ТМ]<0,3; 2;
                                        [% ТМ]<0,5;0,01;
                                        [% ТМ]<0,7;0,02;
                                        [% ТМ]<1,;0,03;
                                        0,05);


                        IF([долж]="ПС";SWITCH(TRUE();
                                        [% ТМ]=BLANK();BLANK();
                                        [% ТМ]<0,3; 1;
                                        [% ТМ]<0,5;0,02;
                                        [% ТМ]<0,7;0,04;
                                        [% ТМ]<1,0,05;
                                        0,07))
                            )
                        );[%]*[Прогноз ТМ])
 

Оставляю ссылку на файл, т.к. сюда не влазит https://dropmefiles.com.ua/ru/5zBX. Если этот файлообменник не устараивает, скажите куда залить файл. Заранее спасибо

 

Изменено: mechanix 85 - 13.01.2021 15:42:13
DAX. Ошибка в формуле в вычислительном столбце
 
Добрый день. Почему после обновления файла и модели данных через power query в вычислительном столбце появляется ошибка "Ошибка в формуле"? Сама формула примитивная до горя
Код
=IF([Накладная|Дата]>=[DATE_MAX];[Накладная|Дата]-[Дата партии];-1)

Все столбцы и форматы данных соответствуют дате. Если вместо этой формулы в этот столбец написать формулу, например =1, а потом опять написать =IF([Накладная|Дата]>=[DATE_MAX];[Накладная|Дата]-[Дата партии];-1), то все работает нормально
Ошибка расчета формулы конверсии
 
Добрый день. Выявил ошибку см. вложение. Методом тыков выяснил, что это связано с мерой расчета конверсии. Ошибка возникает на офисе 2013 стандарт, в 2016 все ок. Есть идеи изменить меру, чтобы она работала и в 2013 офисе?

Мера должна считаться как сумма заказов (при условии что в этот день и по этому магазину были данные в графе in)/ in
Пример вложил
Возможности оптимизации меры DAX. Ускорить работу меры "продажи и возвраты"
 
Доброго дня, Прошу помощи в оптимизации расчета количества заказов по продажам и возвратам.
Формулы, которые работают, но медленно (объем данных более 3 млн. строк):

продажи:
Код
=countaX( FILTER(SUMMARIZE(FILTER('Продажи';'Продажи'[Наличие возврата]="Нет"&&[Накладная|Подтип]<>"Товарный отчет магазина");'Продажи'[N накл.];'Продажи'[Дата накл.];"кво итог";ROUND(sum('Продажи'[Товар|Кол-во]);3);"мин дата накл темп";CALCULATE(min('Продажи'[Дата накл.]);ALLEXCEPT('Продажи';'Продажи'[N накл.];'Продажи'[Наличие возврата])));[мин дата накл темп]=[Дата накл.]&&[кво итог]>0);'Продажи'[N накл.])
Логика расчета - подсчитываем количество уникальных накладных (поле N накл.) при условии, что [Накладная|Подтип]<>"Товарный отчет магазина", подсчет идет по самой ранней дате каждой накладной + [Наличие возврата]="Нет"

возвраты:
Код
=-countaX( FILTER(SUMMARIZE(FILTER('Продажи';[Накладная|Подтип]<>"Товарный отчет магазина");'Продажи'[N накл.];'Продажи'[Дата накл.];'Продажи'[Наличие возврата];"кво итог";ROUND(CALCULATE(sum('Продажи'[Товар|Кол-во]);ALLEXCEPT('Продажи';'Продажи'[N накл.]));3);"макс дата накл темп";CALCULATE(max('Продажи'[Дата накл.]);ALLEXCEPT('Продажи';'Продажи'[N накл.];'Продажи'[Наличие возврата]));"КП";CALCULATE(COUNT('Продажи'[Товар|Кол-во]);ALLEXCEPT('Продажи';'Продажи'[N накл.])));[макс дата накл темп]=[Дата накл.]&&[кво итог]=0&&[Наличие возврата]="Да"&&[КП]<>BLANK());'Продажи'[N накл.])
Логика расчета - подсчитываем количество уникальных накладных (поле N накл.) при условии, что [Накладная|Подтип]<>"Товарный отчет магазина", подсчет идет по самой поздней дате каждой накладной и + сумма по столбцу Товар|Кол-во для каждого поля N накл.=0

в файле выделил желтым продажи, а красным возвраты
Изменено: mechanix 85 - 23.09.2020 09:38:51
Страницы: 1
Наверх