以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  死循环  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=161040)

--  作者:nxqtxwz
--  发布时间:2021/3/3 17:38:00
--  死循环

请老师给看看,好象是个列循环。如果选择退出则删除本记录后退出怎么办。

Dim c As Row = Tables("学生违纪").Current
If c.IsNull("班级") OrElse c.Isnull("姓名") OrElse c.Isnull("违纪时间") OrElse c.Isnull("违纪地点") OrElse c.Isnull("违纪类型") OrElse c.Isnull("处理结果") OrElse c.Isnull("处理日期")  OrElse c.Isnull("记录人") OrElse c.Isnull("情况说明")     Then
    Dim Result As DialogResult
    Result = MessageBox.Show("填写不完整,是否退出", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        c.Reject
    Else
        msgbox("不退出")
    End If
Else
    c.save
End If


--  作者:有点蓝
--  发布时间:2021/3/3 17:41:00
--  
代码放在哪里哪个事件的?
--  作者:nxqtxwz
--  发布时间:2021/3/3 18:19:00
--  

我现在放在主表转换前执行这个事件中,就是想让转换表时检查一下是否填写完整。

但放在这个事件中有个问题,不管哪个表转换都要提示。

[此贴子已经被作者于2021/3/3 18:29:32编辑过]

--  作者:有点蓝
--  发布时间:2021/3/4 8:43:00
--  
到底是哪个事件?能不能把名称写出来?

MainTableChanged?判断一下表名
If MainTable.Name = "订单" Then \'如果选择的主表是订单表

--  作者:nxqtxwz
--  发布时间:2021/3/4 9:46:00
--  

代码放在: MainTableChanging事件中

If MainTable.Name = "学生违纪" Then

Dim c As Row = Tables("学生违纪").Current
If c.IsNull("班级") OrElse c.Isnull("姓名") OrElse c.Isnull("违纪时间") OrElse c.Isnull("违纪地点") OrElse c.Isnull("违纪类型") OrElse c.Isnull("处理结果") OrElse c.Isnull("处理日期")  OrElse c.Isnull("记录人") OrElse c.Isnull("情况说明")     Then

Dim Result As DialogResult
    Result = MessageBox.Show("填写不完整,是否退出", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)
    If Result = DialogResult.Yes Then
        c.Reject
    Else
        msgbox("不退出")
    End If
Else
    c.save
End If

End If

[此贴子已经被作者于2021/3/4 10:01:39编辑过]

--  作者:有点蓝
--  发布时间:2021/3/4 9:49:00
--  
判断一下表名