1

当我尝试在我的 ssrs 查询生成器中构建我的 mdx 查询时,我收到了这条消息。任何想法????错误:需要一个 MDX 表达式。指定了一个空表达式。(Microsoft SQL Server 2008 R2 分析服务)这是我的 MDX

    with                                                                                        
member [Measures].[Motor: The Car]                                                                                        
as                                                                                          
( [Web Page].[Web Site Structure].[Motor Insurance].[TheCar], [Measures].[Visit Count])                                                                                     
member [Measures].[Motor: YourPolicy]                                                                                 
as                                                                                           
( [Web Page].[Web Site Structure].[Motor Insurance].[YourPolicy], [Measures].[Visit Count])                                                                                     

member [Measures].[Motor:Proposer]                                                                            
as                                                                                            
( [Web Page].[Web Site Structure].[Motor Insurance].[Proposer], [Measures].[Visit Count])                                                                                      

member [Measures].[Home:About You]                            
as        
( [Web Page].[Web Site Structure].[House Insurance].[AboutYou], [Measures].[Visit Count])    
member [Measures].[Motor:About You]            
as         
( [Web Page].[Web Site Structure].[Motor Insurance].[AboutYou], [Measures].[Visit Count])
member [Measures].[Motor:PricesPage]             
as           
( [Web Page].[Web Site Structure].[Motor Insurance].[ViewPrices], [Measures].[Visit Count])        

member [Measures].[Home:PricesPage]                   
as           
( [Web Page].[Web Site Structure].[House Insurance].[ViewPrices], [Measures].[Visit Count]) 
member [measures].[Motor:ViewAllPrices]            
as                   
( [Web Page].[Web Site Structure].[Product].&[2].[Motor:AllViewPrices], [Measures].[Visit Count]) 

member [measures].[Home:ViewAllPrices]                  
as
( [Web Page].[Web Site Structure].[House Insurance].[Home:AllViewPrices], [Measures].[Visit Count])              
member [measures].[Home:YourCover]               
as            
( [Web Page].[Web Site Structure].[House Insurance].[YourCover], [Measures].[Visit Count])
member [measures].[Home:PolicyHolder]                     
as                     
( [Web Page].[Web Site Structure].[House Insurance].[PolicyHolder], [Measures].[Visit Count])
member [measures].[Home:Property]                      
as                        
( [Web Page].[Web Site Structure].[House Insurance].[Property], [Measures].[Visit Count])

 SELECT NON EMPTY { [Measures].[Motor:PricePanel],             
 [Measures].[Motor:PricePanel->Compare],               
 [Measures].[Motor:PricePanel->MorePanel],              
 [Measures].[Home:PricePanel->MorePanel],                
 [Measures].[MorePanel->BO+Phone],              
 [Measures].[Motor:AY->PricesPage],              
 [Measures].[PercentOfVisitsByBrowser],                
  [Measures].[Proposer->PricesPage],            
  [Measures].[Proposer->TheCar],              
   [Measures].[TheCar->YourPolicy],                  
    [Measures].[PolicyHolder->Property],
     [Measures].[YourCover->PricesPage],             
     [Measures].[Property->YourCover],               
      [Measures].[YourPolicy->PricesPage],               
       [Measures].[BO+Phone],                   
        [Measures].[Compare],                   
        [Measures].[AY->Proposer],                   
        [Measures].[Motor:PricePanel->BO+Phone],              
        [Measures].[AY->PolicyHolder],                 
        [Measures].[Home:PricePanel->BO+Phone],         
        [Measures].[Home:PricePanel->Compare],           
        [Measures].[Home:PricePanel],                 
        [Measures].[Home:AY->PricesPage],                 
        [Measures].[MorePanel],                    
        [Measures].[Motor:About You]                 
,[Measures].[Motor:Proposer]                  
,[Measures].[Motor: The Car]                 
,[Measures].[Motor: YourPolicy]                 
,[Measures].[Motor:PricesPage]                 
,[measures].[Motor:ViewAllPrices]                
,[Measures].[Home:About You]                        
,[measures].[Home:PolicyHolder]                  
,[measures].[Home:Property]                    
,[measures].[Home:YourCover]                           
,[Measures].[Home:PricesPage]                      
,[measures].[Home:ViewAllPrices]                   
,[Measures].[BO+Phone] } ON COLUMNS,                     
        NON EMPTY { ([Timeline].[Financial Date].[Visit Date].ALLMEMBERS * 
        [Product].[Products By Category].[Product Category].ALLMEMBERS ) }       
         DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS         
         FROM ( SELECT ( STRTOSET(@ProductProductsByCategory, CONSTRAINED) ) ON COLUMNS          
         FROM [Visits]) CELL PROPERTIES VALUE, BACK_COLOR, FORE_COLOR, FORMATTED_VALUE, FORMAT_STRING, FONT_NAME, FONT_SIZE, FONT_FLAGS 
4

1 回答 1

3

语法看起来不错,所以我猜@ProductProductsByCategory 是问题所在。

您传递给此参数的字符串需要采用集合的形式,因为您使用的是 StrToSet 函数。我通常会删除“约束”参数,因为它会强制您列出由花括号括起来的一组特定元组 {} 如果删除该参数,您可以使用返回集合而不是显式指定集合的​​ MDX 表达式http://msdn.microsoft.com/en-us/library/ms144782.aspx

在参数的默认值中,您还需要指定一个集合。如果它只是一个成员,那么宁愿使用 StrToMember 函数。

于 2012-10-04T06:25:20.523 回答