Pergunta

Sou muito novato no MDX Sintaxys.

Tenho o próximo requisito de que preciso resolvê -lo usando o MDX, se possível. Preciso mostrar o número de transações de venda que o valor de amout é maior que "x", o número de transações de venda cujo valor é menor que "y", o número de transações de crédito que o valor de amout é maior que "z". e assim por diante. Meu cubo possui uma medida chamada "quantidade" com uma função agregada "soma" e o traseiro com uma função agrícola "contagem" e uma índio de tempo, dimensão transactionType e outros.

O problema é que x, y e z são valores de dinâmica e configurados pelos usuários, preciso ler esses valores, criar a consulta e executá -lo vía xmla.

Estou wating um resultado como o próximo

                  Greater than > 200 USD       less than < 0.10       total

          SALE            150                         10               300
          CREDIT          200                         30               600
          VODI            10                           2                60

Qualquer ajuda que você possa me fornecer, eu vou agradecer

Foi útil?

Solução

Isso só seria possível se você tivesse um atributo que estava no nível da transação, caso contrário, suas medidas serão pré-agregadas para um nível mais alto.

Se você tinha algo como um atributo [ID da transação], pode escrever uma consulta como a seguinte.

WITH 
  MEMBER Measures.[Greater than 200 USD] as 
    SUM(Filter([Transaction ID].[Transaction ID].[Transaction ID], Measures.Amount > 200)
       , Measures.Count)
  MEMBER Measures.[Less than 0.10 USD] as 
    SUM(Filter([Transaction ID].[Transaction ID].[Transaction ID], Measures.Amount > 200)
       , Measures.Count)
  MEMBER Measures.Total as Measures.Count
SELECT
  {Measures.[Greater than 200 USD]
    ,Measures.[Less than 0.10 USD]
    ,Measures.[Total]} ON columns
 , [Transaction Type].[Transaction Type].[Transaction Type] ON Rows
FROM <Cube>
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top