在 SSAS 中使用参数测试 mdx 查询
testing mdx query with parameters in SSAS
我想在 SSAS 中测试 MDX 查询。到目前为止,我执行了以下步骤。
- 我打开了 SQL Profiler 和 运行 SSRS 报告
- 我找到了我需要的查询(带有参数值)并选择了它
sql profiler
- 我在ssas中粘贴了代码
- 由于我的 SSRS MDX 查询使用了 StrToMember 和 StrToSet 函数,所以我用引号将参数值括起来,例如“[措施]。[Return平均资产]”。
查询
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];
- 我注释掉了其余的行,只留下了 mdx 查询
6.When 我 运行 查询它给了我一个错误 "An MDX expression was expected while a full statement was specified."
我按照以下教程进行了 mdx 测试 http://prologika.com/how-to-test-ssrs-mdx-queries-in-sql-server-management-studio/
知道问题出在哪里吗?
你真的在会员名中使用这个吗? .&;[
....分号保留用于 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];
我想在 SSAS 中测试 MDX 查询。到目前为止,我执行了以下步骤。
- 我打开了 SQL Profiler 和 运行 SSRS 报告
- 我找到了我需要的查询(带有参数值)并选择了它 sql profiler
- 我在ssas中粘贴了代码
- 由于我的 SSRS MDX 查询使用了 StrToMember 和 StrToSet 函数,所以我用引号将参数值括起来,例如“[措施]。[Return平均资产]”。
查询
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];
- 我注释掉了其余的行,只留下了 mdx 查询 6.When 我 运行 查询它给了我一个错误 "An MDX expression was expected while a full statement was specified."
我按照以下教程进行了 mdx 测试 http://prologika.com/how-to-test-ssrs-mdx-queries-in-sql-server-management-studio/
知道问题出在哪里吗?
你真的在会员名中使用这个吗? .&;[
....分号保留用于 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];