I have a question regarding a FILTER clause in MDX. I have what I think should be okay MDX syntax, but when I try to prepare the query in Query Designer, it just hangs. Is the syntax I'm using correct?
SELECT
NON EMPTY
{
[Measures].[AR INV PAID TO DATE]
,[Measures].[AR INV AMOUNT]
,[Measures].[AR INV AGE]
,[Measures].[AR INV AMOUNT OUTSTANDING]
} ON COLUMNS
,NON EMPTY
FILTER
(
{
[DIM PROJECT].[Client].[Client].ALLMEMBERS*
[DIM PROJECT].[Division].[Division].ALLMEMBERS*
[DIM PROJECT].[Product].[Product].ALLMEMBERS*
[DIM SALES CLASS].[Sales Class Type].[Sales Class Type].ALLMEMBERS*
[DIM AR INVOICE].[Invoice Number].[Invoice Number].ALLMEMBERS*
[DIM AR INVOICE].[Invoice Date].[Invoice Date].ALLMEMBERS*
[DIM PROJECT].[Job Number].[Job Number].ALLMEMBERS*
[DIM PROJECT].[Job].[Job].ALLMEMBERS
} * [DIM INV AGE RANGE].[Invoice Age Range].[Invoice Age Range].ALLMEMBERS*
[DIM INV AGE RANGE].[INV RANGE ID].[INV RANGE ID].ALLMEMBERS,
[Measures].[AR INV AMOUNT] > .01
)
DIMENSION PROPERTIES
MEMBER_CAPTION
,MEMBER_UNIQUE_NAME
ON ROWS
FROM
(
SELECT
StrToSet
(@TimeYear
,CONSTRAINED
) ON COLUMNS
FROM
(
SELECT
{
[DIM INV AGE RANGE].[INV RANGE ID].&[1]
,[DIM INV AGE RANGE].[INV RANGE ID].&[2]
,[DIM INV AGE RANGE].[INV RANGE ID].&[3]
,[DIM INV AGE RANGE].[INV RANGE ID].&[4]
,[DIM INV AGE RANGE].[INV RANGE ID].&[5]
,[DIM INV AGE RANGE].[INV RANGE ID].&[8]
} ON COLUMNS
FROM
(
SELECT
StrToSet
(@DIMPROJECTClient
,CONSTRAINED
) ON COLUMNS
FROM [ACCOUNTING]
)
)
)
WHERE
IIF
(
StrToSet(@TimeYear,CONSTRAINED).Count = 1
,StrToSet
(@TimeYear
,CONSTRAINED
)
,[Time].[Year].CurrentMember
)
CELL PROPERTIES
VALUE
,BACK_COLOR
,FORE_COLOR
,FORMATTED_VALUE
,FORMAT_STRING
,FONT_NAME
,FONT_SIZEAny help would be appreciated!
A. M. Robinson