以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求助:数据为0的空列不显示  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=69238)

--  作者:xianzheng
--  发布时间:2015/6/2 8:41:00
--  求助:数据为0的空列不显示
求助:数据为0的空列不显示,代码如何写?

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20150602083837.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看

--  作者:Bin
--  发布时间:2015/6/2 8:44:00
--  
你这个是数据列? 表达式列?    统计表? 

有具体的问题,才有具体的答复.

--  作者:foxor
--  发布时间:2015/6/2 8:47:00
--  
可利用数据字典,取值为0时显示为空
--  作者:xianzheng
--  发布时间:2015/6/2 8:47:00
--  
表格数据列很多,有大部分是数据列,个别是表达式列
--  作者:Bin
--  发布时间:2015/6/2 8:50:00
--  
数据列,你的0是根据代码计算出来的?

那么在代码中判断   IIF(你计算的结果=0,nothing,你计算的结果)

表达式如果结果是空 默认应该就是空.

具体请上个例子


--  作者:xianzheng
--  发布时间:2015/6/2 8:55:00
--  
0是录入的,我想把整列如果都是0的就不显示
--  作者:Bin
--  发布时间:2015/6/2 8:58:00
--  
为何不直接录入空值?

可以用一下2个方案
1. 编写代码清除0值为空  知识点http://www.foxtable.com/help/topics/1532.htm

DataTables("订单").ReplaceFor("列名"nothing"[列名] = 0")


2. 利用DrawCell设置0值不显示  http://www.foxtable.com/help/topics/0656.htm

if e.col.IsNumeric then  \'先判断一下是否为数值列,  知识点http://www.foxtable.com/help/topics/0413.htm
if e.row(e.col.name)=0 then
   e.text=""
end if
end if


[此贴子已经被作者于2015/6/2 8:59:02编辑过]

--  作者:xianzheng
--  发布时间:2015/6/2 9:18:00
--  
请教,出错了,什么原因
.NET Framework 版本:2.0.50727.5485
Foxtable 版本:2014.11.11.1
错误所在事件:表,企业每月纳税情况,DrawCell
详细错误信息:
调用的目标发生了异常。
从字符串“FCZS”到类型“Double”的转换无效。
输入字符串的格式不正确。

--  作者:Bin
--  发布时间:2015/6/2 9:20:00
--  
要先判断是否为数值列,注意看7楼.