Foxtable(狐表)用户栏目专家坐堂 → 垃圾行产生的问题


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

主题:垃圾行产生的问题

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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
垃圾行产生的问题  发帖心情 Post By:2018/8/10 15:58:00 [只看该作者]

由于用户操作时不细心,录入行时有些行不完整,或是空白行,并保存了。因行数据是按条件加载的,用户再打开系统或是重新加载之后,就看不到这些行了,实际系统又存在,变成垃圾行。请问老师,有什么思路可以避免这样的情况?

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/8/10 17:08:00 [只看该作者]

保存的时候判断,beforeSaveDataRow事件

 

http://www.foxtable.com/webhelp/scr/0628.htm

 


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


加好友 发短信
等级:三尾狐 帖子:689 积分:5155 威望:0 精华:0 注册:2017/10/22 10:15:00
  发帖心情 Post By:2018/8/10 17:47:00 [只看该作者]

想实现“项目名称”为列空时,不能保存。以下代码不起作用

If e.DataRow.IsNull("项目名称") Then '判断是否不符合验证要求
    MessageBox.Show("项目名称未输入","存盘失败",MessageBoxButtons.OK,MessageBoxIcon.Exclamation) '提示用户
    Dim Index As Integer
    Index = Tables("S征地记录").FindRow(e.DataRow) '找出此行在销售数据Table中的位置
    If Index > -1 Then '如果找到此行
        Tables("S征地记录").Position = Index '将焦点定位到此行
    End If
    MainTable = Tables("S征地记录") '选择销售数据表作为主表.
    e.Cancel = True '取消存盘
End If

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:112380 积分:572162 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/10 20:33:00 [只看该作者]

肯定起作用的,不过如果有多行都不符合保存要求,每一行都会触发beforeSaveDataRow,知道所有行保存完毕。e.Cancel = True仅可以取消有问题的行,并不会取消所有未保存的行。

如果是保存多行的,最好自己做个保存按钮,保存前通过datatable.find函数找出不符合的行并提示

 回到顶部