对于本文的长度,我预先致歉:
我创建了一个Excel用户窗体,该窗体具有通过Analysis Services与SQL Server数据库的连接。数据连接根据客户帐号的用户输入将客户信息馈送到表单。几个“ CUBEVALUE”公式提供了帐户余额之类的度量数据,我获得了很好的成功。我在尝试根据多个成员值,(帐号)和(数据日期)提供成员值时遇到了问题。经过一番搜索,我发现下面的CUBERANKEDMEMBER(CUBESET())
组合。下面提供的公式(“第一尝试”)实际上给了我我所希望的“ [风险等级] .children”成员。当我意识到它返回的值是一个与我想要的日期期(最近的月底)不同的日期期的值时,我的热情减弱了。
下面是一个链接,它是源表的一个虚构示例。根据以下公式,如果我将CUBEDRANKMEMBER
“等级”保留为“ 1”,则风险等级= 3,将“等级”保留为“ 2”,则风险等级= 6,依此类推。我实际需要的值是与10/31/18
关联的风险等级,在此示例中,其风险等级=“ 6”。问题在于帐户在不同的日期通常会有不同的风险等级,这就是为什么我需要在特定日期引用风险等级成员的值。
我的第一次尝试:
CUBERANKEDMEMBER("cubedb",CUBESET("cubedb","([Account Loan].[Account Number].["&A7&"],[Account Loan].[Risk Rating].children)"),1)
我在表单上的CUBEVALUE公式中使用了日期期限参数,所以我想知道是否可以对上面的公式做同样的事情,因此我从表单上的CUBEVALUE公式中复制了日期成员公式,并将其粘贴到上面的公式中以获得下面的公式。
第二次尝试:
CUBERANKEDMEMBER("snldb SNLBanker SNL Banker Primary",CUBESET("snldb SNLBanker SNL Banker Primary","([Account Loan].[Account Number].["&A7&"],[Date].[Calendar Period].[Date].&["&BM5&BK5&BL5&"],[Account Loan].[Risk Rating].children)"),3)
这个公式产生的结果与第一次尝试相同,因此我回到正题,不知道该尝试什么。 在此先感谢您的任何想法。