Foxtable(狐表)用户栏目专家坐堂 → 请教弹提示窗口的问题


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

主题:请教弹提示窗口的问题

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


加好友 发短信
等级:幼狐 帖子:92 积分:648 威望:0 精华:0 注册:2016/7/7 10:12:00
请教弹提示窗口的问题  发帖心情 Post By:2016/9/17 17:05:00 [只看该作者]

由于怕误操作,所以在保存时,我在按钮“保存”里用的代码如下:
Tables("借出").DataTable.DeleteFor("条形码 Is Null")
Tables("借出").DataTable.DeleteFor("客户 Is NUll")
Syscmd.Project.Save()
Forms("借出").Close()

那么,当“条形码”或者“客户”为空时,会删除该行,那么提示的窗口应该怎么写?能否在弹出的提示的窗口中标记删除了哪一行的行号, 有可能会有很多行。

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


加好友 发短信
等级:超级版主 帖子:107861 积分:548662 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/17 17:14:00 [只看该作者]

DeleteFor没有办法提示删除了那行

可以先查询一下,提示完再删除
Dim lst As new List(of String)
For Each r As Row In Tables("借出").Rows
    If r.IsNull("条形码") OrElse r.IsNull("客户") Then lst.Add(r.Index)
Next

msgbox("以下行为空,将被删除:" & String.Join(",",lst.ToArray))

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


加好友 发短信
等级:幼狐 帖子:92 积分:648 威望:0 精华:0 注册:2016/7/7 10:12:00
  发帖心情 Post By:2016/9/17 17:23:00 [只看该作者]

测试是可以了,但是弹窗提示的行号,不是对应表的行号,而是以新增加了多少行开始计算的行号。假设, 我原来表中有1行有效数据, 现在新增加了三行数据,但都是无效数据,此是提示的是1.2.3行无效,要被删除了。

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


加好友 发短信
等级:超级版主 帖子:107861 积分:548662 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/17 17:32:00 [只看该作者]

table才有行号的说法,如果筛选了,就只能这样。不然你就改为用主键号来做提示

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


加好友 发短信
等级:幼狐 帖子:92 积分:648 威望:0 精华:0 注册:2016/7/7 10:12:00
  发帖心情 Post By:2016/9/17 17:33:00 [只看该作者]

恩,我试一下的。谢谢

 回到顶部