-->

MDX获取用户名其中userid(MDX Get UserName Where UserID)

2019-10-23 21:09发布

这里是我下面的MDX查询:

SELECT 
  {
    [Measures].[Amt Exrate]
   ,[Measures].[Comm Exrate]
  } ON COLUMNS
 ,NonEmpty([AccSetting].[User N].[User N] * [Cur Log].[Cur Log ID].Children) ON ROWS
FROM [report]
WHERE 
  [AccSetting].[Ag ID].&[113];

http://i.stack.imgur.com/0yDHg.png UserID =113是一个层次和想要得到我想要返回正是它的用户N UserNameUserID =113的行。 但我不知道该怎么做。

Answer 1:

如果你只是想名字,没有别的那么这应该这样做:

SELECT 
  {} ON COLUMNS
 ,[AccSetting].[User N].[User N] ON ROWS
FROM [report]
WHERE 
  [AccSetting].[Ag ID].&[113];

如果您想将名字变成一个小节,然后像下面,有一个自定义测量应该有所帮助:

WITH 
  MEMBER [Measures].[userName] AS 
    [AccSetting].[User N].CurrentMember.Member_Caption 
SELECT 
  {} ON 0
 ,{
    [Measures].[userName]
   ,[Measures].[Amt Exrate]
   ,[Measures].[Comm Exrate]
  } ON 1
FROM [report]
WHERE 
  [AccSetting].[Ag ID].&[113];

要返回您在评论这应该提到的列:

SELECT 
  NON EMPTY 
    {
      [Measures].[Amt Exrate]
     ,[Measures].[Comm Exrate]
    } ON COLUMNS
 ,NON EMPTY 
    [AccSetting].[User N].[User N].MEMBERS 
  * [Cur Log].[Cur Log ID].MEMBERS 
    ON ROWS
FROM [report]
WHERE 
  [AccSetting].[Ag ID].&[113];

编辑

答案在这篇文章中:
获取层次valuesName MDX



Answer 2:

尝试有这样:

with dynamic set UserN as
NonEmpty(
            [AccSetting].[User N].[User N].members * [Cur Log].[Cur Log ID].Children
            ,
            [AccSetting].[Ag ID].currentmember
                            *
            {
                [Measures].[Amt Exrate],
                [Measures].[Comm Exrate]
            }
        )

SELECT 
  {
    [Measures].[Amt Exrate]
   ,[Measures].[Comm Exrate]
  } ON COLUMNS
 ,UserN ON ROWS
FROM [report]
WHERE 
  [AccSetting].[Ag ID].&[113];


文章来源: MDX Get UserName Where UserID
标签: mdx