Foxtable(狐表)用户栏目专家坐堂 → 表事件如何停止窗口代码执行


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

主题:表事件如何停止窗口代码执行

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


加好友 发短信
等级:童狐 帖子:204 积分:1904 威望:0 精华:0 注册:2016/2/17 12:11:00
表事件如何停止窗口代码执行  发帖心情 Post By:2017/6/14 11:49:00 [只看该作者]

在表A的BeforeSaveDataRow 事件中的代码:
Dim frm As WinForm.Form = Forms.ActiveForm
If frm IsNot Nothing Then
    If frm.Name = "客户" Then
        Dim count2 As Integer = DataTables("item").compute("count([id])","[number] Is null And [name] is null and [region] is null")
        If count2 > 0 Then
            DataTables("item").DeleteFor("[number] Is null And [name] is null and [MnemonicCode] is null")
        End If
        Dim count As Integer =DataTables("item").Compute("count([ID])","[number] Is null or [name] is null or [region] is null" )
        If count > 0 Then
            e.Cancel = True
            msgbox("客户信息内容输入不完整!""*""为必填项!")
            Return
        End If
    End If
End If
在"客户"窗口中,按钮“save”代码:
Tables("item").Current.Save

问题:如果客户信息内容不完整(count > 0),如何能使按钮“save”中代码“Tables("item").Current.Save”不执行?

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/14 12:02:00 [只看该作者]

首先,执行了 e.Cancel 之后,就是不保存的。

 

 

如果你需要得到信息,就用变量

 

表事件

 

vars("能保存") = False  '或者true

 

save按钮

 

Tables("item").Current.Save

If vars("能保存") = true Then

    msgbox("保存了")

Else

    msgbox("没保存")

End If


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


加好友 发短信
等级:童狐 帖子:204 积分:1904 威望:0 精华:0 注册:2016/2/17 12:11:00
回复:(有点色)首先,执行了 e.Cancel 之后,就是不...  发帖心情 Post By:2017/6/14 12:41:00 [只看该作者]

不好意思,色老师,我表达有误,是这个意思:
save按钮(保存并退出)的代码:
'保存当前行
Tables("item").Current.Save
'关闭当前窗口
Dim frm As WinForm.Form = Forms.ActiveForm
If frm IsNot Nothing Then
    frm.close
End If
取消保存后,怎么能停止执行关闭窗口的代码

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


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/6/14 14:23:00 [只看该作者]

表事件,对应的赋值

 

vars("能保存") = False  '或者true

 

save按钮

 

Tables("item").Current.Save

If vars("能保存") = true Then

    msgbox("保存了,执行关闭代码")

Else

    msgbox("没保存,不需要写代码")

End If


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


加好友 发短信
等级:童狐 帖子:204 积分:1904 威望:0 精华:0 注册:2016/2/17 12:11:00
回复:(有点色)表事件,对应的赋值 vars("...  发帖心情 Post By:2017/6/15 9:55:00 [只看该作者]

明白了,多谢图片点击可在新窗口打开查看

 回到顶部