以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 记录不为空控制 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=115711) |
-- 作者:nxqtxwz -- 发布时间:2018/3/13 9:37:00 -- 记录不为空控制 请问老师,想让新增加记录的每一列都必须填写信息,如果有空格则提醒填写完整代码如何写呢? |
-- 作者:有点甜 -- 发布时间:2018/3/13 9:43:00 -- 参考
http://www.foxtable.com/webhelp/scr/0644.htm
|
-- 作者:有点甜 -- 发布时间:2018/3/13 9:44:00 -- 一般是在beforeSaveDataRow事件处理的,检测要保存的行,每一列是否都赋值了,没有赋值就提示,不保存数据。 |
-- 作者:nxqtxwz -- 发布时间:2018/3/13 15:38:00 -- 老师,就是这个意思,可代码怎么写呢? |
-- 作者:有点甜 -- 发布时间:2018/3/13 15:56:00 -- 以下是引用nxqtxwz在2018/3/13 15:38:00的发言:
老师,就是这个意思,可代码怎么写呢?
beforeSaveDataRow
方法一:
If e.DataRow.IsNull("第一列") orElse e.DataRow.Isnull("第二列") Then msgbox("第一第二列不能为空") e.cancel = true End If
方法二:
For each dc As DataCol in e.DataTable.DataCols If e.dataRow.IsNull(dc.name) Then msgbox(dc.name & " 不能为空") e.cancel = true exit for End If Next |
-- 作者:nxqtxwz -- 发布时间:2018/3/13 16:20:00 -- 如果把这个代码写在增加记录按钮的事件中怎么写呢?下面的代码显示错误怎么办。 If e.DataRow.IsNull("物品名称") OrElse e.DataRow.Isnull("单位") OrElse e.DataRow.Isnull("规格型号") OrElse e.DataRow.Isnull("物品用途") OrElse e.DataRow.Isnull("申报人")OrElse e.DataRow.Isnull("数量") OrElse e.DataRow.Isnull("预估单价") Then |
-- 作者:有点甜 -- 发布时间:2018/3/13 16:51:00 -- 改成
Dim r As Row = Tables("物品申报").Current
|