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


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

主题:[求助]

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


加好友 发短信
等级:七尾狐 帖子:1652 积分:14685 威望:0 精华:0 注册:2014/6/6 8:42:00
[求助]  发帖心情 Post By:2015/6/14 16:45:00 [只看该作者]

老师好!有个父表“从业人员健康检查登记表”,子表“从业人员健康检查表”,父表有一列“体检人数”,希望在关联表中增加行时给予限制,就是增加行数不能超过“体检人数”。在子表的BeforeAddDataRow事件中执行代码:Dim d As DataRow  = e.DataRow.GetParentRow("从业人员健康检查登记表")
If d IsNot Nothing Then
    Dim crs As List(of DataRow) = d.GetChildRows("从业人员健康检查表")
    Dim n As Integer  = crs.Count
    If n >= d("体检人数")  Then
        e.Cancel = True
    Else
        e.Cancel = False
    End If
End If
提示:.NET Framework 版本:2.0.50727.5472
Foxtable 版本:2014.11.11.1
错误所在事件:从业人员健康检查表,BeforeAddDataRow
详细错误信息:
未将对象引用设置到对象的实例。
   请指点,谢谢!

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


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/6/14 16:53:00 [只看该作者]

 BeforeAddDataRow 根本不知道它的父亲是谁。

 

 或者你这样写

 

Dim d As Row  = Tables("从业人员健康检查登记表").Current

If d IsNot Nothing Then
    Dim crs As List(of DataRow) = d.DataRow.GetChildRows("从业人员健康检查表")
    Dim n As Integer  = crs.Count
    If n >= d("体检人数")  Then
        e.Cancel = True
    Else
        e.Cancel = False
    End If
End If

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


加好友 发短信
等级:七尾狐 帖子:1652 积分:14685 威望:0 精华:0 注册:2014/6/6 8:42:00
  发帖心情 Post By:2015/6/14 16:59:00 [只看该作者]

非常感谢!解决了。哈哈哈哈哈哈。。。。努力不够,请多关照。

 回到顶部