Рассчитать дату по выбранным слайсерам - PullRequest
0 голосов
/ 16 ноября 2018

Мне нужна твоя помощь по PowerBI.Я хотел бы рассчитать что-то в соответствии с выбранными пользователем слайсерами.Я прочитал, что то, что я хотел сделать сначала, невозможно (я хотел добавить вычисляемый столбец в соответствии с выбранными пользователем срезами), но, возможно, вы найдете мне другой способ добиться успеха.Позвольте мне объяснить.

У меня есть 2 таблицы, не связанные.

Таблица 1 будет использоваться для добавления 3 слайсеров: слайсер Category, слайсер Type, слайсер Rp.

Category Type Rp
c1  A   X
c1  B   X
c2  C   X
c2  D   Y

Таблица 2 будет содержать мои данные (мои даты отформатированы в дд / мм / гггг).

ID  TheoreticalDeadline RealDeadline    Done    Type _A Type _B Type _C Type _D
Abc 01/05/2018  02/05/2018  Y   5   0   0   3
Def 05/04/2018  05/04/2018  Y   0   0   2   0
Ghi 12/03/2018  18/03/2018  N   0   0   0   1

Я принял следующие меры (что прекрасно работает):

Done_Where = if(Table2[Done]="Y"; 1; 0)

DoneGood_Where=if(Table2[Done]="Y";
               if(Table2[RealDeadline]<=Table2[TheoreticalDeadline]; 1; 0))

Result1 = SUM(Table2[DoneGood_Where])/sum(Table2[Done_Where])

В моем примере Result1 = 1 / 2, потому что:

  • Def имеет RealDeadline, равный TheoreticalDeadline
  • Ghi, имеет Done = N так что не учитывается

Я хочу сделать Result2, который будет зависеть от выбора пользователя.

Result2 = SUM(Table2[DoneGood_WhereSelected])/sum(Table2[Done_Where])

И проблема в том, чтобы вычислить DoneGood_WhereSelected,Я хотел бы что-то вроде этого:

DoneGood_WhereSelected =
if(Table2[Done]="Y"; if(Table2[RealDeadline]<=Table2[TheoreticalDeadline] +
values from Table2 stored in the columns for which the user has clicked;1;0))

Например, если пользователь нажимает на слайсер Resp=X, то:

  • Для Abc: TheoreticalDeadline + 5 (потому что Type_A принадлежит X) = 06/05/2018
  • Для Def: TheoreticalDeadline + 2 (потому что Type_C принадлежит X) = 07/04/2018

А затем Result2 = 2/2, потому что:

  • Abc и Def имеют RealDeadline <<code>TheoreticalDeadline + сохраненные значения

InВ моем примере пользователь нажимает только на один флажок одного слайсера, но на самом деле я хотел бы разрешить ему сделать несколько выборок на разных слайсерах (пример: пользователь нажимает Rp=X и (Type=A или * 1069)*). В реальной жизни у меня есть 15 Types, 5 categories и 2 Rp, поэтому он не оптимизирован для вычисления всех возможных комбинаций при загрузке данных.

Итак, какие формулыя могу использовать?

...