Foxtable(狐表)用户栏目专家坐堂 → [求助]让所有数值列不显示零值的通用代码


  共有21122人关注过本帖树形打印复制链接

主题:[求助]让所有数值列不显示零值的通用代码

帅哥哟,离线,有人找我吗?
t_fs
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:431 积分:2808 威望:0 精华:0 注册:2008/9/1 8:46:00
[求助]让所有数值列不显示零值的通用代码  发帖心情 Post By:2008/12/9 16:18:00 [显示全部帖子]

    由于表中的数据列太多,我设计了一个通用的让所有数值列不显示零值的代码。代码如下:

Dim dr As dataRow = e.dataRow
For Each dc As Col In Tables("汇总表").Cols
    If dc.IsNumeric Then   '是否数据列
If dr.IsNull(dc.Name) then   '是否为零
   dr(dc.Name)= Nothing     '清零
end if
    End If
Next

   我将上述代码放在DataColChanged事件中,点击确认后,没有错误显示。可是当数据更新后,表中仍然存在0.00.

不知道错在那里,请高手再给看看。谢谢!

 回到顶部
帅哥哟,离线,有人找我吗?
t_fs
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:431 积分:2808 威望:0 精华:0 注册:2008/9/1 8:46:00
  发帖心情 Post By:2008/12/9 16:40:00 [显示全部帖子]

以下是引用狐狸爸爸在2008-12-9 16:26:00的发言:
根据帮助,可以写出针对所有列的代码:

If e.DataCol.IsNumeric Then
    If
e.NewValue = 0 Then
        e.NewValue =
Nothing
    End
if
End
If

放在DataColChanging事件中

       非常好用,也非常实用。谢谢了!!


 回到顶部
帅哥哟,离线,有人找我吗?
t_fs
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:431 积分:2808 威望:0 精华:0 注册:2008/9/1 8:46:00
  发帖心情 Post By:2008/12/9 17:54:00 [显示全部帖子]


     以下应该是正确的吧?关键是代码的存放位置应放在DataColChanging事件中

if dr(dc.Name)= 0  then
  dr(dc.Name)= Nothing 
end if

    另外,e.NewValue  这个代码好象以前未出现过,是个暂新的代码。

 回到顶部