Foxtable(狐表)用户栏目专家坐堂 → 父表空行的提示问题


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

主题:父表空行的提示问题

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


加好友 发短信
等级:五尾狐 帖子:1172 积分:8772 威望:0 精华:0 注册:2012/4/18 16:28:00
父表空行的提示问题  发帖心情 Post By:2018/7/19 21:48:00 [只看该作者]

请教老师,下面代码写在子表的BeforeAddDataRow

 

想实现,如果父表没有行,子表不能增加行,并进行提示,但是未达到效果,还是提示“增加行无效,父表无值.......

 

 

Dim pr As DataRow = e.DataRow.GetParentRow("单位信息")

If pr Is Nothing Then

    e.Cancel = True

    MessageBox.Show("请先增加新数据行进行编辑后,再进行明细表编制")

else

    e.Cancel = False

End If


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/19 22:13:00 [只看该作者]

Dim r As row = tables("表A").current

If r("某列") = nothing Then

    e.Cancel = True

    MessageBox.Show("请先增加新数据行进行编辑后,再进行明细表编制")

else

    e.Cancel = False

End If


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


加好友 发短信
等级:五尾狐 帖子:1172 积分:8772 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2018/7/20 8:39:00 [只看该作者]

谢谢老师,您指导的代码我写过,不起作用,可能是我描述问题不清楚,因为父表此时是无对应的数据行,也无法current(主要是想解决,有的员工直接点击明细表增加行时进行友情提示,而不出现系统的提示“增加行失败...”

 

 


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/20 8:43:00 [只看该作者]

Dim r As row = tables("表A").current

If r is Nothing OrElse r("某列") = nothing Then

    e.Cancel = True

    MessageBox.Show("请先增加新数据行进行编辑后,再进行明细表编制")

else

    e.Cancel = False

End If


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


加好友 发短信
等级:五尾狐 帖子:1172 积分:8772 威望:0 精华:0 注册:2012/4/18 16:28:00
  发帖心情 Post By:2018/7/20 8:56:00 [只看该作者]

还是出现系统提示,简单做了个例子,请老师再看看,表A与表B关联,表A无任何数据行,此时表B增加行,依然出现系统提示 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试20180720.foxdb


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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2018/7/20 9:05:00 [只看该作者]

测试了一下,这个无法控制。

 

方法一:你可以修改菜单的【新增行】的按钮命令,点击的时候先判断父表数据;

 

方法二:不要用关联表显示,改成副本表,模拟成关联表。


 回到顶部