我在CRM中使用FetchXML为数据源创建了一些自定义报告。所有报告都按CreatedOn属性排序:
<order attribute="createdon" descending="true" />
在实际报告中,我还有按CreatedOn Desc排序的Tablix(和适用的组)。这有效但有一个主要缺点:日期被排序,好像它们是字符串一样。
日期从9月开始排序,他们将回到1月份:9,8,7,6,5,4,3,2,12,11,10,最后是1月9日,9月8日之前显示,2016。(字符串9/9> 9/8)
我应用了表达式将值转换为日期但不起作用:
=CDate(Fields!createdon.Value)
有关获取报告按实际日期排序而不是字符串的任何建议吗?
答案 0 :(得分:0)
听起来你的CDate无法转换字符串。 作为测试,试试这个:
=Format(CDate(Fields!createdon.Value),"yyyyMMdd")
如果看起来相同,它仍被视为字符串。您可能在文本中有一些无效字符阻止转换为日期。有什么方法可以在XML中对属性的数据类型进行分类吗?
答案 1 :(得分:0)
由于它将字段作为字符串返回,我向数据集添加了一个新的计算字段(CreatedOnDATE)。
我使用CDate设置计算字段:
=CDate(Fields!createdon.Value)
然后我只是更改了排序顺序以使用新的CreatedOnDATE字段,它就像一个魅力。这只是一个良好的睡眠和新的视角。