水晶报表交叉表小数位0的显示问题

qxa 2010-09-05 12:22:10
报表中对于数字字段,如果设置其保留小数位4位,这样一来:12会显示为12.0000,12.011会显示为12.0110。而我想要实现以下结果:12会显示为12,12.011会显示为12.011。在网上找到以下处理方法:
if Right(ToText(({VS_XSFaHuoFX.ShuLiang}),4), 4)='0000' then 0
else if Right(ToText(({VS_XSFaHuoFX.ShuLiang}),4),3)='000' then 1
else if Right(ToText(({VS_XSFaHuoFX.ShuLiang}),4),2)='00' then 2
else if Right(ToText(({VS_XSFaHuoFX.ShuLiang}),4),1)='0' then 3
else 4

这一方法在普通报表中是没有问题的,单在交叉报表中却不能实现,是什么原因呢?在交叉报表中又如何实现以上要求?
...全文
358 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
nvhaixx 2011-08-22
  • 打赏
  • 举报
回复
能否询问一下,就是那边then部分所写的数字,具有什么意义?显示的格式中保留几位小数吗?
qxa 2010-09-13
  • 打赏
  • 举报
回复
谢谢各位的热情帮助,结贴了!
qxa 2010-09-13
  • 打赏
  • 举报
回复
非常感谢babyt(阿泰)的指点,问题解决了!
阿泰 2010-09-10
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 li_1042237864 的回复:]
右键交叉表中字段 设置对象格式 在公用标签内 最下边有一行 "显示字符串"---------------X+2
点后边那个 公式 加入你所写的公式 [/Quote]

按上述操作,写下列公式

if int(currentfieldvalue)=currentfieldvalue then
//不带小数点
totext(currentfieldvalue,0)
else
//返回4位
totext(currentfieldvalue,4)


说明:

交叉表中,因为数据已经聚合且进行了交叉,所以直接使用字段得不到你想要的值
关键字currentfieldvalue表示当前单元格的值



qxa 2010-09-09
  • 打赏
  • 举报
回复
没有人遇到过吗?怎么没人说话?
qxa 2010-09-08
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 luols 的回复:]
交叉表里的数据也可以 设置对象格式
[/Quote]
交叉表里 设置对象格式实现不了要求,详见题目。
阿双2009 2010-09-07
  • 打赏
  • 举报
回复
交叉表里的数据也可以 设置对象格式
qxa 2010-09-07
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 luols 的回复:]
引用楼主 qxa07 的回复:
这一方法在普通报表中是没有问题的
你在普通报表是怎么处理的?是用公式吧?
那么好,你就在交叉表专家设置报表字段的这里



用公式字段替代你的普通字段即可。
[/Quote]
这样设置是不行的,因为显示小数的位数是在字段的“设置对象格式”中确定的,而水晶报表默认的是2位小数,实现不了我想要的格式。
阿双2009 2010-09-06
  • 打赏
  • 举报
回复
[Quote=引用楼主 qxa07 的回复:]
这一方法在普通报表中是没有问题的[/Quote]
你在普通报表是怎么处理的?是用公式吧?
那么好,你就在交叉表专家设置报表字段的这里



用公式字段替代你的普通字段即可。
qxa 2010-09-06
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 li_1042237864 的回复:]
右键交叉表中字段 设置对象格式 在公用标签内 最下边有一行 "显示字符串"---------------X+2
点后边那个 公式 加入你所写的公式 把字段换成该字段
[/Quote]
加入所写的公式有错误,错误提示为“返回结果应该为字符串”,具体的公式该如何写呢?
qxa 2010-09-06
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luols 的回复:]
在交叉表专家的数据中,用公式替换也不行?
[/Quote]
在交叉表专家的数据中,具体怎样设置,还望指点!
纯唇Yu弄 2010-09-06
  • 打赏
  • 举报
回复
右键交叉表中字段 设置对象格式 在公用标签内 最下边有一行 "显示字符串"---------------X+2
点后边那个 公式 加入你所写的公式 把字段换成该字段
reason159 2010-09-05
  • 打赏
  • 举报
回复
关注ing
阿双2009 2010-09-05
  • 打赏
  • 举报
回复
在交叉表专家的数据中,用公式替换也不行?

4,816

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 图表区
社区管理员
  • 图表区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧