SSRS MDX, где проблема пункта - PullRequest
0 голосов
/ 16 июня 2011

У меня есть небольшая проблема с MDX-Query.

Я хочу показать все расходы по заявкам, разделенные на типы и с определенным типом документа.

Вот мой код:

    select
    {
        [Measures].[Claim Count],
        [Measures].[Claim Cost Position Count],
        [Measures].[Claim Cost Original],
        [Measures].[Claim Cost Original Average],
        [Measures].[Claim Cost Possible Savings],
        [Measures].[Claim Cost Possible Savings Average],
        [Measures].[Claim Cost Possible Savings Percentage]
    } on 0,
    NON EMPTY{
        [Claim Cost Type].[Claim Cost Type].[Claim Cost Type].Members
    } on 1
    from
        Cube    
where 
    (
        ( {StrToMember(@DateFrom) : StrToMember(@DateTo ) } )
         ,[Claim Document Type].[Document Type].&[1] 
    )

У меня есть четыре типа документов: 1 - 4

Я хочу показать только данные трех первых Documenttypes.

Я попробовал следующее предложение Where:

where 
(
    ( {StrToMember(@DateFrom) : StrToMember(@DateTo ) } )
   ,( {[Claim Document Type].[Document Type].&[1] : [Claim Document Type].[Document Type].&[3]} ) 
)

Но он показывает мне только данные типа документа 1 и 3, а не от 1 до 3.

Кто-нибудь может мне помочь?

Большое спасибо иизвините за мой плохой английский!

Алекс

Ответы [ 2 ]

0 голосов
/ 17 июня 2011

В следующих условиях

where 
(( {StrToMember(@DateFrom) : StrToMember(@DateTo ) } ),( {[Claim Document Type].[Document Type].&[1] : [Claim Document Type].[Document Type].&[3]} ))

даже следующее выражение должно работать, так как это оператор диапазона.

({[Claim Document Type].[Document Type].&[1] : [Claim Document Type].[Document Type].&3]})

Что нужно проверить, когда вы просматриваете куб для этого измерения и атрибута [Claim Document Type].[Document Type] выглядит ли размерный ключ KEY как

[Claim Document Type].[Document Type].&[1]
[Claim Document Type].[Document Type].&[2]
[Claim Document Type].[Document Type].&[3]

или

[Claim Document Type].[Document Type].&[1]
[Claim Document Type].[Document Type].&[3]
[Claim Document Type].[Document Type].&[2]

Если вы видите порядок 1,3 и вводите 1: 3, вы не получите 2. Поэтому посмотрите на порядок, а затем измените выражение диапазона.

Более раннее решение также сработало бы, но что, если есть много членов, тогда нецелесообразно включать все такие члены в набор.

0 голосов
/ 16 июня 2011

Может быть, свойство OrderBy атрибута [Тип документа] не равно «Ключ»?В этом случае необходимо использовать

{[Claim Document Type].[Document Type].&[1],
 [Claim Document Type].[Document Type].&[2],
 [Claim Document Type].[Document Type].&[3]}
...