Mam ten MDX;
CREATE MEMBER CURRENTCUBE.[Measures].DistinctOrderCount<br/>
AS
DistinctCount([Order].[Order Id].[Order Id] - [Order].[Order Id].[1]),<br/>
FORMAT_STRING = "#,##0;-#,##0",
VISIBLE = 1, ASSOCIATED_MEASURE_GROUP = "Fact Sales";
Próbuję wykonać różne zamówienia (z wyjątkiemOrder Id = 1) w kontekście innych wymiarów w mojej tabeli faktów. Na przykład, odrębna liczba zleceń przez słabych klientów, słabe miasto, stan przyćmiony itp., Ale nie jestem w stanie tego osiągnąć. Gdy przeglądam miarę na raporcie, otrzymuję wyraźną liczbę wymiarów zamówienia, która jest wyświetlana na wszystkich wierszach klientów.
Odpowiedzi:
1 dla odpowiedzi № 1To jest najlepszy sposób, w jaki to rozwiązałem i jestem zadowolony z wyników. Mam nadzieję, że to pomoże innym. Chodzi o to, aby utworzyć miarę kostki z typem agregacji Wyraźna liczba i ustawić powiązanie kolumn w kolumnie, którą chcesz odrębnie liczyć. Następnie użyj poniższego MDX, aby odfiltrować fałszywe identyfikatory zamówień z oddzielnej liczby.
create member currentcube.[Measures].OrderCount<br/>
as<br/>
distinctcount
(
existing
CROSSJOIN
(
Except([Orders].[Order Id].[Order Id], [Orders].[Order Id].&[1]),
[Measures].[Order Count]
)
),<br/>
FORMAT_STRING = "#,##0;-#,##0",
VISIBLE = 1, ASSOCIATED_MEASURE_GROUP="Order Count";