以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  这段代码应该怎么写呀  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=73178)

--  作者:lyzhuo
--  发布时间:2015/8/13 18:43:00
--  这段代码应该怎么写呀

我在删除菜单里写了一段判断代码

 

 

If DataTables("支付单").DataRows.GetChildRows("支付明细") Is Nothing
    Tables("支付单").Current.Delete
Else
    MessageBox.Show("请先删除支付单明细数据后再删除本行!", "提示")
    Return
End If

 

提示出错:编译错误 “GetChildRows”不是“DataRowCollection”的成员

请教应该如何写这段代码,谢谢!

[此贴子已经被作者于2015/8/13 18:48:40编辑过]

--  作者:大红袍
--  发布时间:2015/8/13 19:11:00
--  
If Tables("支付单").Current.dataRow.GetChildRows("支付明细") Is Nothing
    Tables("支付单").Current.Delete
Else
    MessageBox.Show("请先删除支付单明细数据后再删除本行!", "提示")
    Return
End If

--  作者:lyzhuo
--  发布时间:2015/8/13 20:17:00
--  
大红袍斑竹太厉害了,我怎么没想到这个应该是针对单条记录的,看来还是实践的少,的多动手 再次感谢!
--  作者:lyzhuo
--  发布时间:2015/8/14 9:22:00
--  
红袍版主是不是我的思路有问题,用了Is Nothing后,不管是不是有子表数据行,都不会走到有真的程序行一直显示为假的提示框。
[此贴子已经被作者于2015/8/14 9:23:03编辑过]

--  作者:大红袍
--  发布时间:2015/8/14 9:23:00
--  
If Tables("支付单").Current.dataRow.GetChildRows("支付明细").Count = 0
    Tables("支付单").Current.Delete
Else
    MessageBox.Show("请先删除支付单明细数据后再删除本行!", "提示")
    Return
End If