在Visual Studio(2015 Enterprise)中可见的错误的实际文本是。
在本地报告处理过程中发生了错误。
报告过程中发生了错误。
查询执行失败的数据集"生产力"。
" 5"的语法是不正确的。(3/2/2017 5:00:00 AM)
它正在查询我创建和部署的简单表格模型。该型号有四个表。员工表,工作卡表(包含作业号,小时等),日期维度表和工资时间时钟表。目的是报告与"直接"部门的实际出勤时间相对于订单计费的小时数。
表是[员工],[劳动日期](日期dim),[ADI时间细节](工资单)和[路线trans](工作卡)。措施是[ADI时间细节]。[直接小时]和[路线trans]。
我通常不使用查询设计师,因为我对SQL非常好,但这是我第一次与SSAS郊游,所以我在这里使用了。
我引入了[劳动日期]。[date],[雇员]。[员工ID],[雇员]。[雇员姓名],[量度]。直接小时]。我还在顶部添加了尺寸。它是{" dimension":"劳动日期","层次结构":" date"," operator":" quality"," filter expression":" {6/26/2013}"," parameters":"检查":"检查"}。
在查询设计器中执行查询,它会按预期生成数据集。
切换到设计模式,查询文本是此
SELECT NON EMPTY { [Measures].[SUM OF Earned Hours],
[Measures].[Direct Hours] }
ON COLUMNS,
NON EMPTY { ([Labor DATE].[DATE].[DATE].allmembers * [Employee].[Employee ID].[Employee ID].allmembers * [Employee].[Employee Name].[Employee Name].allmembers ) } DIMENSION PROPERTIES member_caption,
member_unique_name
ON ROWS
FROM (
SELECT ( STRTOSET(@labordatedate, constrained) )
ON COLUMNS
FROM [Model]) CELL PROPERTIES VALUE,
back_color,
fore_color,
formatted_value,
format_string,
font_name,
font_size,
font_flags
单击"确定"接受查询,然后返回数据集属性我单击参数,将命名labordateate(内部查询)的参数(@perdate](报告参数)。
报告参数[@perdate]正在将此表达式用于默认值:
=DateAdd(DateInterval.Day, -1, Today.Date)
查询在查询构建器中起作用,但在报告执行中失败。日期维度和参数的日期均为零小时数据,所以我很困惑5点来自哪里。
我在这里做错了什么?
解决方案以下答案之后
我离开了[@perdate] as-is。我创建了一个标记为隐藏的第二个参数,名为[@perdatestr],并使用文本数据类型。我将其中的可用和默认表达式设置为...
="[Labor Date].[Date].&[" & Format(Parameters!PerDate.Value, "yyyy-MM-dd") & "T00:00:00]"
然后,在数据集中,我将内部查询参数labordatate映射到报告参数[@perdatestr]。成功!
使用Labor Date
维度中的有效成员:
="[Labor Date].[Date].&[" & DateAdd(DateInterval.Day, -1, Today.Date) & "]"
确保您根据维度值格式化日期值。