【问题标题】:testing mdx query with parameters in SSAS在 SSAS 中使用参数测试 mdx 查询
【发布时间】:2017-09-06 13:48:39
【问题描述】:

我想在 SSAS 中测试 MDX 查询。到目前为止,我执行了以下步骤。

  1. 我打开了 SQL Profiler 并运行了 SSRS 报告
  2. 我找到了我需要的查询(带有参数值)并选择了它 sql profiler
  3. 我将代码粘贴到 ssas 中
  4. 由于我的 SSRS MDX 查询使用了 StrToMember 和 StrToSet 函数,我用引号将参数值括起来,例如“[措施]。[平均资产回报率]”。

查询

SELECT 
  {
    [Measures].[Broj Pristapi]
   ,[Measures].[Broj Nalozi]
  } ON 0
 ,
    Except
    (
      StrToSet("[Dim Ucesnici].[Naziv Ucesnik].&;[owiefwjhoef]")
     ,{
        [Dim Ucesnici].[Naziv Ucesnik].&[kihebrgk]
       ,[Dim Ucesnici].[Name].&[blablabla]
      }
    )*
    StrToSet
    ("{ [Dim Web Service Web Method].[Web Service].&;[wsINAPBan],
        [Dim Web Service Web Method].[Web Service].&;[wsNAPSBan] }"
    )*
    StrToSet
    ("{ [Dim Web Service Web Method].[Web Method].[All]
       ,[Dim Web Service Web Method].[Web Method].&;[funNN_loadPP30Ban]
       ,[Dim Web Service Web Method].[Web Method].&;[funNN_loadPP50Ban]}"
    )*
    {
        StrToMember("[Dim Datumi].[Datum ID].&;[20170801]")
      : 
        StrToMember("[Dim Datumi].[Datum ID].&;[20170906]")
    }*
    StrToSet("[Dim Ucesnici].[Opis Tip Ucesnik].&;[Bank]") ON 1
 ,NON EMPTY 
    {
        [Dim Date].[Date].Children*
        [Dim Date].[Month].Children*
        [Dim Date].[MonthName].Children
    } ON 2
 FROM [DW];
  1. 我注释掉了其余的行,只留下了 mdx 查询 6.当我运行查询时,它给了我一个错误“指定完整语句时需要一个 MDX 表达式。”

我按照以下教程进行 mdx 测试 http://prologika.com/how-to-test-ssrs-mdx-queries-in-sql-server-management-studio/

知道可能是什么问题吗?

【问题讨论】:

  • 贴出你的代码,否则没人能帮忙。
  • 删除;在“.&;”内。
  • 非常感谢!虽然它说,结果不能显示超过两个轴的单元集。?我该如何解决这个问题?
  • 您不能使用 SSMS 使用两个以上的轴。在这里,您使用了三个 0、1 和 2。您可能只想将轴 2 上的集合与轴 1 上的集合交叉连接,然后您将获得所需的结果。
  • SSRS 在数据集属性中内置了一个查询设计器。您可以在其中拖放以构建 MDX 查询。这样您就不必手动编辑任何 MDX。

标签: sql-server reporting-services ssas mdx ssrs-2012


【解决方案1】:

你真的在你的会员名中使用这个吗? .&;[ ....分号保留用于mdx 语句的结尾。请去掉所有的分号:

SELECT 
  {
    [Measures].[Broj Pristapi]
   ,[Measures].[Broj Nalozi]
  } ON 0
 ,
    Except
    (
      StrToSet("{[Dim Ucesnici].[Naziv Ucesnik].&[owiefwjhoef]}")
     ,{
        [Dim Ucesnici].[Naziv Ucesnik].&[kihebrgk]
       ,[Dim Ucesnici].[Name].&[blablabla]
      }
    )*
    StrToSet
    ("{ [Dim Web Service Web Method].[Web Service].&[wsINAPBan],
        [Dim Web Service Web Method].[Web Service].&[wsNAPSBan] }"
    )*
    StrToSet
    ("{ [Dim Web Service Web Method].[Web Method].[All]
       ,[Dim Web Service Web Method].[Web Method].&[funNN_loadPP30Ban]
       ,[Dim Web Service Web Method].[Web Method].&[funNN_loadPP50Ban]}"
    )*
    {
        StrToMember("[Dim Datumi].[Datum ID].&[20170801]")
      : 
        StrToMember("[Dim Datumi].[Datum ID].&[20170906]")
    }*
    StrToSet("[Dim Ucesnici].[Opis Tip Ucesnik].&[Bank]") ON 1
 ,NON EMPTY 
    {
        [Dim Date].[Date].Children*
        [Dim Date].[Month].Children*
        [Dim Date].[MonthName].Children
    } ON 2
 FROM [DW];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多