Foxtable(狐表)用户栏目专家坐堂 → BeforeCloseProject求助


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

主题:BeforeCloseProject求助

帅哥,在线噢!
L88919138
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:721 积分:6893 威望:0 精华:0 注册:2012/3/1 7:20:00
BeforeCloseProject求助  发帖心情 Post By:2013/11/29 12:08:00 [只看该作者]

 

求助以下代码为何无法将存货账中筛选出业务发生日期为空并且商品名称不为空的记录?

 

If DataTables("存货账").Find("[业务发生日期] Is Null") Is Nothing Then

    If DataTables("存货账").Find("[商品名称] Is Null") IsNot Nothing Then

        Return '那么返回

    End If

    Dim Result As DialogResult

    Result = Messagebox.Show("存货账业务发生日期未录入,请录入完整后再保存.","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)

    If Result = DialogResult.No Then '如果用户选择否

        e.Cancel = True '取消关闭项目

        Tables("存货账").Filter = "[业务发生日期] Is Null" '筛选出业务发生日期为空的记录.

        MainTable = Tables("存货账") '选择存货账作为主表.

    End If

End If


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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/11/29 12:13:00 [只看该作者]

参考:

http://www.foxtable.com/help/topics/0400.htm

http://www.foxtable.com/help/topics/0396.htm

 

 

查找发生日期为空并且商品名称不为空:

 

If DataTables("存货账").Find("[业务发生日期] Is Null And [商品名称] Is Not Null") Is Nothing Then


End If


 回到顶部
帅哥,在线噢!
L88919138
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:721 积分:6893 威望:0 精华:0 注册:2012/3/1 7:20:00
  发帖心情 Post By:2013/11/29 14:15:00 [只看该作者]

多谢狐爸指点。

 


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


加好友 发短信
等级:三尾狐 帖子:721 积分:6893 威望:0 精华:0 注册:2012/3/1 7:20:00
  发帖心情 Post By:2014/1/20 15:59:00 [只看该作者]

  我在项目事件BeforeSaveProject中输入如下代码,为何只有例子二表格有效果,而例子一、例子三无法按程序列出产品不为空而日期为空的记录?请大师们赐教下。谢谢。

 

Dim Result As DialogResult

 

If DataTables("例子二").Find("[日期] Is Null And [产品] Is Not Null") Is Nothing Then

    Return '那么返回

End If

Result = Messagebox.Show("例子二日期未录入,是否保存.","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)

If Result = DialogResult.No Then '如果用户选择否

    e.Cancel = True '取消关闭项目

    Tables("例子二").Filter = "[日期] Is Null And [产品] Is Not Null" '筛选出状态为空的记录.

    MainTable = Tables("例子二") '选择表作为主表.

End If

 

If DataTables("例子一").Find("[日期] Is Null And [产品] Is Not Null") Is Nothing Then

    Return '那么返回

End If

Result = Messagebox.Show("例子一日期未录入,是否保存.","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)

If Result = DialogResult.No Then '如果用户选择否

    e.Cancel = True '取消关闭项目

    Tables("例子一").Filter = "[日期] Is Null And [产品] Is Not Null" '筛选出状态为空的记录.

    MainTable = Tables("例子一") '选择表作为主表.

End If

 

If DataTables("例子三").Find("[日期] Is Null And [产品] Is Not Null") Is Nothing Then

    Return '那么返回

End If

Result = Messagebox.Show("例子三日期未录入,是否保存.","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)

If Result = DialogResult.No Then '如果用户选择否

    e.Cancel = True '取消关闭项目

    Tables("例子三").Filter = "[日期] Is Null And [产品] Is Not Null" '筛选出状态为空的记录.

    MainTable = Tables("例子三") '选择表作为主表.

End If

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:流水账.rar


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


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/1/20 16:11:00 [只看该作者]

你这样做,前面的没有符合要求的,就直接return 了 那还有机会执行后面的.


应该这样做

If DataTables("例子二").Find("[日期] Is Null And [产品] Is Not Null")  Then

    Result = Messagebox.Show("例子二日期未录入,是否保存.","提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question)

If Result = DialogResult.No Then '如果用户选择否

    e.Cancel = True '取消关闭项目

    Tables("例子二").Filter = "[日期] Is Null And [产品] Is Not Null" '筛选出状态为空的记录.

    MainTable = Tables("例子二") '选择表作为主表.

End If

End If


 回到顶部
帅哥,在线噢!
L88919138
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:721 积分:6893 威望:0 精华:0 注册:2012/3/1 7:20:00
  发帖心情 Post By:2014/1/20 17:18:00 [只看该作者]

谢谢BIN大师指点。

 回到顶部