Dimension Membre comme mesure calculée dans MDX
-
12-09-2019 - |
Question
Je dois obtenir un membre de dimension est revenu comme une mesure calculée.
Vu:
Dimensions
- {client ACME, EMCA, importations Universal, Universal Exports}
- Salesperson {Bob, Fred, Mary, Joe}
- Type de crédit {Directeur, Directeur}
Mesures
- décomptées Valeur
- Valeur
Rapports
- Le client est une dimension des faits qui contiennent la valeur
- Le client, le vendeur et le type de crédit sont des dimensions des faits qui contiennent CRÉDITÉES Valeur
Je suis en train de faire ce qui suit:
Créer des mesures calculées qui renverront le Salesperson avec le plus grand $ s créditée dans un rôle pour un client. par exemple.
| Customer | Director | Manager | Value |
|-------------------|----------|---------|-------|
| ACME | Bob | Fred | 500 |
| EMCA | Bob | Fred | 540 |
| Universal Imports | Mary | Joe | 1000 |
| Universal Exports | Mary | Fred | 33 |
- ACME a Bob crédité de 490 en tant que directeur
- ACME a Fred crédité de 500 en tant que directeur
- ACME a Mary crédité de 10 comme directeur
Je voudrais l'utiliser comme une mesure calculée que je peux utiliser dans tous les cas où les clients sont de l'emprise.
La solution
Si je comprends votre problème correctement, quelque chose le long de cette ligne devrait faire l'affaire (bien sûr que vous auriez à utiliser le niveau approprié, la hiérarchie et les cubes):
with
member [Measures].[DirectorTemp] as topcount([Salesperson].[Salesperson].members,1,([Measures].[Credited Value],[Credit Type].[Director],[Customer].currentmember)).item(0).properties("Caption")
member [Measures].[Director] as iif([Measures].[DirectorTemp] = [Salesperson].UnknownMember.properties("caption"), null, [Measures].[DirectorTemp])
member [Measures].[ManagerTemp] as topcount([Salesperson].[Salesperson].members,1,([Measures].[Credited Value],[Credit Type].[Manager],[Customer].currentmember)).item(0).properties("Caption")
member [Measures].[Manager] as iif([Measures].[ManagerTemp] = [Salesperson].UnknownMember.properties("caption"), null, [Measures].[ManagerTemp])
select
{[Measures].[Director],[Measures].[Manager],[Measures].[Value]} on 0,
{[Customer].members} on 1
from MyCube
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow