以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 在单据保存时,这样判断正在新建的销售订单中的销售明细记录数是否为空对吗 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=26801) |
-- 作者:jinruan -- 发布时间:2012/12/14 14:40:00 -- 在单据保存时,这样判断正在新建的销售订单中的销售明细记录数是否为空对吗 Dim dr As DataRow dr = DataTables("销售明细").Find("销售订单id = " & Tables("销售订单").Current("销售订单id")) If dr IsNot Nothing Then \'如果找到的话 DataTables("销售订单").Save DataTables("销售明细").Save Else MessageBox.Show("单据明细不可为空") End If [此贴子已经被作者于2012-12-14 14:46:06编辑过]
|
-- 作者:lin_hailun -- 发布时间:2012/12/14 14:48:00 -- 只是保存当前行吗? 如果是,可以这样写。 |
-- 作者:jinruan -- 发布时间:2012/12/14 15:15:00 -- 对,这是一张新单,只保存下 销售订单 当前行,与销售明细 的这10行 |
-- 作者:jinruan -- 发布时间:2012/12/14 15:16:00 -- DataTables("XXX") 中的记录是否包含了未保存的记录? |
-- 作者:lin_hailun -- 发布时间:2012/12/14 15:20:00 -- 以下是引用jinruan在2012-12-14 15:16:00的发言: DataTables("XXX") 中的记录是否包含了未保存的记录? 包含了的。代码没有问题,你现在出错了么? |
-- 作者:狐狸爸爸 -- 发布时间:2012/12/14 15:21:00 -- 如果建立了关联,这样判断简单: If Tables("销售订单").Current.Datarow.GetChildRows(“销售明细”) > 0 Then Else End if |
-- 作者:jinruan -- 发布时间:2012/12/14 15:24:00 -- 没有出错 是想再理下: 如果是网络版,别一台电脑上的用户,是否能这样 DataTables("销售明细").Find("销售订单id = " & Tables("销售订单").Current("销售订单id"))
查找到未保存的这台电脑上正在编辑中的的单据记录? [此贴子已经被作者于2012-12-14 15:24:56编辑过]
|
-- 作者:狐狸爸爸 -- 发布时间:2012/12/14 15:29:00 -- 没有保存的话,其他电脑肯定差不多的,即使保存了的话,也需要用sql语句才能查的,DataTable中的数据是已经加载的,查询后台的数据不能通过DataTable的。 |
-- 作者:lin_hailun -- 发布时间:2012/12/14 15:29:00 -- 以下是引用jinruan在2012-12-14 15:24:00的发言: 没有出错 是想再理下: 如果是网络版,别一台电脑上的用户,是否能这样 DataTables("销售明细").Find("销售订单id = " & Tables("销售订单").Current("销售订单id"))
查找到未保存的这台电脑上正在编辑中的的单据记录? [此贴子已经被作者于2012-12-14 15:24:56编辑过]
可以。 |
-- 作者:jinruan -- 发布时间:2012/12/14 15:34:00 -- 以下是引用狐狸爸爸在2012-12-14 15:29:00的发言: 没有保存的话,其他电脑肯定差不多的,即使保存了的话,也需要用sql语句才能查的,DataTable中的数据是已经加载的,查询后台的数据不能通过DataTable的。 可以这样理解吧: DataTable中的数据是已经加载的----包含了新建未保存的记录; 要看到实时的记录,就用SQL查出来
|