Коллеги, помогите, пожалуйста: в отчете power BI надо вывести список товаров, которые не берет какой-либо один клиент. Есть база в Excel с отгрузками на всех клиентов. Например, всего отгружено за месяц 300 позиций товаров, а один клиент взял только 100 позиций. Мне надо вывести список этих 200 позиций.
В примере надо при выборе "Покупатель 3" вывести список товаров: "Товар 1", "Товар 3".
У меня рассчитана мера: "Количество наименований продукции = CALCULATE (DISTINCTCOUNT('Сводная'[Товар]))",
которую я вывожу в визуализацию "Матрица" с фильтрацией по покупателям. Таки образом мы видим, сколько наименований продукции взял каждый покупатель за определенный период. Мне нужно подтянуть в эту визуализацию "Количество наименований товара, которые не брал покупатель" с детализацией этой меры по номенклатуре. Не знаю, как рассчитать эту меру(((
На самом деле мера у меня такая: Количество наименований продукции = CALCULATE (DISTINCTCOUNT('Сводная'[Товар]),'Сводная'[Реализация/возвраты] = "Реализация") поэтому CALCULATE), я удалила часть кода, но не все... Использовала Ваш код, все получилось!!! Здорово! Большое спасибо!
mechanix 85, подскажите, пожалуйста, у функции GENERATEALL ссылка на таблицу, а у Вас в мере столбцы. У меня не получается так... =COUNTROWS(FILTER(ADDCOLUMNS(GENERATEALL('покупатель','Товар'),"_1",SUMX(RELATEDTABLE('Таблица1'),CALCULATE(SUM('Таблица1'[Количество])))),[_1]=BLANK()))
azma, скажите, пожалуйста, а если в моей 'Cводной' таблице 38 столбцов, как мне сделать объединение таблиц с помощью UNION? Сводная таблица большая, а для вывода наименований товаров, которые не брал покупатель нужны только столбцы 'товар' и 'покупатель.'
Вот формула, которую у меня не получается применить в моей модели: Table = UNION(ADDCOLUMNS(EXCEPT(CROSSJOIN(VALUES('Сводная'[Товар]),VALUES('Сводная'[Покупатель])),SUMMARIZE('Сводная','Сводная'[Товар],'Сводная'[Покупатель])),"Количество",0),'Сводная')
Екатерина И написал: объединение таблиц с помощью UNION?
чтобы объединить нужно чтоб обе таблицы имели одинаковые кол-во столбцов и одинаковые название у этих столбцов. скиньте пример может быть сможем помочь Вам. попробуйте:
azma,Екатерина И, а как же товар, который не продан ни одному клиенту? Нужен справочник товаров. А по периодам аналитики нет? К примеру, товар1 продан клиенту1 в 2019. В 2021 он же, наверное, должен входить в список непроданных товаров:) Или каждый раз запрос на переформирование сводной делать?
azma, я прикрепила две таблицы: "Сводная" - это результат сведения данных в PQ. Может и не надо мне так делать, а загрузить все таблицы в Pbi, а там их уже связывать. Вторая таблица это формат выгрузки из 1С. Помогите, пожалуйста. Не могу разобраться.
surkenny, добрый день! В моей ситуации товар производится и хоть одному клиенту продается, потому что товар скоропортящийся. Но надо выводить таблицу с номенклатурой товаров по каждому клиенту, кто какой товар не берет.
таблицу формирую с использованием срезов по периоду, цеху производства и т.д....
Екатерина И, конечно аналитику нужно делать уже на DAX. Для большей наглядности заменил все продажи у Клиент2 в феврале на январь. В промежуточных итогах по клиенту показывается количество, при детализации до товара - просто пишется "не продан":
Код
ProdNotSoldCnt:=
VAR NotSoldCnt = COUNTROWS ( RELATEDTABLE ( 'Products' ) ) - [ProdSoldCnt]
VAR NotSoldCntRes = IF ( NotSoldCnt > 0; NotSoldCnt )
VAR NotSold = IF ( NotSoldCnt > 0; "Не продан" )
VAR Result =
IF (
HASONEVALUE ( Products[Товар] );
NotSold;
NotSoldCntRes
)
RETURN Result
surkenny, спасибо за помощь! Но еще проблема в том, что в мере ProdNotSoldCnt результат вычисления COUNTROWS ( RELATEDTABLE ( 'Products' ) ) это количество позиций товара за все время. У меня база за три года. И это количество не фильтруется срезом ни по дате, ни по цеху. А мне необходимо рассчитать сколько и каких позиций не брал определенный клиент относительно всей продукции, произведенной в ДАННОМ периоде.