Szukam metody do wykorzystania w ramach Microsoft PowerPivot 2010, która pozwoli mi na przeprowadzenie dynamicznego rankingu, który automatycznie zaktualizuje przypisaną wartość rangi w oparciu o filtry i krajarkę wartości, które są stosowane.PowerPivot DAX - dynamiczny ranking na grupę (Min Per Group)
Tak, wszystkie przykłady, które widziałem, wykorzystują funkcję Calculate() DAX, która zastępuje istniejące filtry w tabeli programu PowerPivot za pomocą funkcji Wszystkie(), która powoduje, że wstępnie zdefiniowane filtry mogą być odrzucane przez użytkowników.
Aby zilustrować moje wymagania, prosimy odwołać się do poniższego przykładu:
(Źródło danych w PowerPivot okna :)
-------------------------------------------------------------------------------------
Claim Number | Claimant Number | Transaction Date | Dollar Amount
------------------------------------------------------------------------------------
ABCD123456 4 1/1/2012 $145.23
ABCD123456 4 8/1/2012 $205.12
ABCD123456 4 9/1/2012 $390.74
VDSF123455 2 3/5/2012 $10.12
VDSF123455 2 9/5/2012 $50.12
VDSF123455 2 12/9/2012 $210.45
------------------------------------------------------------------------------------------
Teraz chciałbym mieć zdolność TYLKO wyświetlania kwoty w dolarach dla każdy numer roszczenia i numer roszczenia w oparciu o PIERWSZĄ datę transakcji. Zasadniczo chciałbym pokazać tylko dolary powiązane z pierwszą transakcją związaną z każdym żądaniem # i grupą numerów roszczeń.
Mój sposób myślenia polegał na stworzeniu dynamicznej pozycji dla każdej grupy [numer roszczenia + numeru roszczenia] podobnej do funkcji "partition by - Row_Number()". W ten sposób każda grupa [numer roszczenia + numer roszczenia] o wartości równej 1 reprezentowałaby PIERWSZĄ transakcję powiązaną z tą wartością.
Potrzebuję jednak tej wartości w rankingu, aby zmienić, jeśli użytkownik zastosuje filtr względem danych w wynikowej tabeli przestawnej.
Można to pokazano poniżej na podstawie przykładowych danych określonych powyżej:
----------------------------------------------------------------------------------------------
Claim Number | Claimant Number | Transaction Date | Dollar Amount | Rank |
---------------------------------------------------------------------------------------------
ABCD123456 4 1/1/2012 $145.23 1
ABCD123456 4 8/1/2012 $205.12 2
ABCD123456 4 9/1/2012 $390.74 3
VDSF123455 2 3/5/2012 $10.12 1
VDSF123455 2 9/5/2012 $50.12 2
VDSF123455 2 12/9/2012 $210.45 3
------------------------------------------------------------------------------------------------
Teraz, jeśli użytkownik stosuje filtr za pomocą krajalnicy lub za pomocą listy rozwijanej filtru w tabeli przestawnej lub w tabeli programu PowerPivot samego wyłączeniem daty wyceny < 2/1/2012, wartość rangi powinien automatycznie aktualizuje się i być widoczne, jak pokazano poniżej: (Applied Filters)
=============================================================================
Claim Number | Claimant Number | Transaction Date | Dollar Amount | Rank |
============================================================================
ABCD123456 4 8/1/2012 $205.12 1
ABCD123456 4 9/1/2012 $390.74 2
VDSF123455 2 3/5/2012 $10.12 1
VDSF123455 2 9/5/2012 $50.12 2
VDSF123455 2 12/9/2012 $210.45 3
===========================================================================
Jak widać, wartość rangi została automatycznie zaktualizowana dla pierwszej grupy roszczeń na podstawie jednego z wierszy związanych z numerem roszczenia ABCD123456, który jest ukryty, na podstawie filtru zastosowanego przez użytkownika.
bym wtedy chciał utworzyć dodatkowy środek w tabeli PowerPivot który wyświetla ilość dolarów TYLKO związany z transakcją zawierającej wartość Sortowanie 1, jak pokazano poniżej: (zastosowano filtry, nowy środek dodanej)
===============================================================================================
Claim Number | Claimant Number | Transaction Date | Dollar Amount | Rank | Opening Dollar Amt|
================================================================================================
ABCD123456 4 8/1/2012 $205.12 1 $205.12
ABCD123456 4 9/1/2012 $390.74 2
VDSF123455 2 3/5/2012 $10.12 1 $50.12
VDSF123455 2 9/5/2012 $50.12 2
VDSF123455 2 12/9/2012 $210.45 3
=========================================== ================================================== ==
Odpowiednią tabelę przestawną można następnie utworzyć, odwołując się do tych danych, aby "Otwieranie lalki" ar Amt "środek reprezentowałby tylko dolary powiązane z PIERWSZĄ transakcją na grupę, jak opisano powyżej.
Byłbym bardzo wdzięczny, gdyby ktoś mógł opisać, jak można to osiągnąć.
Uważam, że podejście do dynamicznego rankingu może być dobrym pomysłem, ale jeśli ktoś ma lepszy pomysł, aby osiągnąć mój wynik końcowy/cel, to jest po prostu uzyskać kwotę w dolarach związaną z pierwszą transakcją "WIDOCZNY" (oparty na wszystkich filtrach stosowanych przez użytkownika) PER GROUP Byłbym otwarty dla każdego podejścia, jakie możesz mieć.