Допустим, у меня есть таблица Doc_Table со следующими столбцами:
- Doc_Ref
- Version_Date
- Other_Attributes
A Строка уникальна путем объединения Doc_Ref и Version_Date.
Я ищу для расчета количества документов за последнюю версию месяца. Пример: если бы я получил 3 версии 11/4, 15/4 и 24/4 в апреле, я бы использовал только последнюю версию для апреля.
В SQL это будет выглядеть так:
Select count(Doc_Ref)
From Doc_Table
Where Month(Version_Date) in (Select MAX(Version_Date), Month(Version_Date) From Doc_Table Group By Month(Version_Date))
Допустим, у нас есть следующие элементы:
Doc_Ref ; Version_Date ; Other_Attributes
Ref1 ; 2020-03-20 ; ...
Ref2 ; 2020-03-20 ; ...
Ref1 ; 2020-04-11 ; ...
Ref2 ; 2020-04-11 ; ...
Ref3 ; 2020-04-11 ; ...
Ref1 ; 2020-04-15 ; ...
Ref2 ; 2020-04-15 ; ...
Ref3 ; 2020-04-15 ; ...
Ref1 ; 2020-04-24 ; ...
Ref2 ; 2020-04-24 ; ...
Ref3 ; 2020-04-24 ; ...
Ref4 ; 2020-04-24 ; ...
Ожидаемые результаты будут:
Month Year - Count_Of_Doc_Ref
March 2020 - 2
April 2020 - 4
Не могли бы вы помочь мне с созданием KPI? Спасибо за ваши идеи.
РЕДАКТИРОВАТЬ: Я приду с этим ответом на основе Agustin Pala cios ответить
NB of Ongoing Doc Ref Shared =
VAR VersionLessThan = SELECTEDVALUE('Axis Doc_Ref'[Version Date];MAX('Axis Doc_Ref'[Version Date]))
VAR OngoingEWPerMonth = CALCULATE
( [NB of Ongoing Doc Ref]
;FILTER('Axis Doc_Ref';'Axis Doc_Ref'[Version Date] = MAX('Axis Doc_Ref'[Version Date]))
)
RETURN
CALCULATE
(
CALCULATE
( [NB of Ongoing Doc Ref]
;FILTER('Axis Doc_Ref';'Axis Doc_Ref'[Version Date] = MAX('Axis Doc_Ref'[Version Date]))
)
;USERELATIONSHIP('Axis Doc_Ref'[Version Date];'Axis EW Created Date'[Date - Created])
;FILTER(all('Axis Doc_Ref'[Version Date]); 'Axis Doc_Ref'[Version Date] <= VersionLessThan)
)