首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用CDate和DateDiff时出现Mondrian MDX错误

使用CDate和DateDiff时出现Mondrian MDX错误
EN

Stack Overflow用户
提问于 2015-02-03 22:04:17
回答 2查看 1.2K关注 0票数 0

如何解决下面的问题?

ERR: mondrian.olap.fun.MondrianEvaluationException: mondrian.olap.InvalidArgumentException: Mondrian错误:参数无效。CDate函数的表达式参数的格式必须正确

我的MDX请求:

代码语言:javascript
运行
复制
WITH
MEMBER 
    [Measures].[diff] as 'datediff("d",CDate([TimeDim.TimeHir].CurrentMember.Name),now())'
....
EN

回答 2

Stack Overflow用户

发布于 2015-02-04 02:04:01

您是否尝试过其他成员属性:

代码语言:javascript
运行
复制
WITH
MEMBER [Measures].[diff] as 
'datediff("d",CDate([TimeDim.TimeHir].CurrentMember.MEMBER_VALUE),now())'

代码语言:javascript
运行
复制
WITH
MEMBER [Measures].[diff] as
 'datediff("d",CDate([TimeDim.TimeHir].CurrentMember.MEMBER_key),now())'

代码语言:javascript
运行
复制
WITH
MEMBER [Measures].[diff] as 
 'datediff("d",CDate([TimeDim.TimeHir].CURRENTMEMBER.Properties('Key0', Typed)),now())'

编辑

这一条适用于我对AdvWks的攻击:

代码语言:javascript
运行
复制
WITH

MEMBER [Measures].[Date_MEMBER_VALUE] as 
  [Date].[Calendar].CurrentMember.MEMBER_VALUE
MEMBER [Measures].[Diff_MEMBER_VALUE] as 
  datediff("D",CDate([Measures].[Date_MEMBER_VALUE]),now())

SELECT
{
[Measures].[Date_MEMBER_VALUE]
,[Measures].[Diff_MEMBER_VALUE]
} 
ON 0,
tail([Date].[Calendar].[Date],12) ON 1
FROM [Adventure Works];

编辑

从这里看,蒙德里安似乎不存在.MEMBER_VALUE,所以尝试使用上面的代码,只使用.VALUEhttp://mondrian.pentaho.com/documentation/mdx.php

票数 1
EN

Stack Overflow用户

发布于 2015-03-25 20:29:35

您可以使用DateSerial函数将您的值转换为CDate可接受的日期时间格式

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28300839

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档