以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  父表的datatable未保存,子表是不是无法FIND找到未保存的行?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=76910)

--  作者:yancheng
--  发布时间:2015/11/7 15:18:00
--  父表的datatable未保存,子表是不是无法FIND找到未保存的行?
我在子表的:datadcolchanged里面,如下代码:
Select e.DataCol.name
    Case "清单编号"
        Dim dr As DataRow = e.DataRow
        Dim dr1 As DataRow = DataTables("合同清单").Find("清单编号 = \'" & dr("清单编号") & "\'")
        If dr1 IsNot Nothing Then
            dr("项目编码") = dr1("项目编码")
       end if
end select


是不是父表没有保存,就无法FIND这个行呢?
如果是这样,哪,我在窗口做的时候,难道要,增加一个:父表:订单,就马上保存,然后才能增加:子表的:行吗?我看有的软件,的流程好像不是这样的呢?大多是,可以最后关闭软件时,才保存所有的表。

--  作者:Hyphen
--  发布时间:2015/11/7 16:04:00
--  
不存在这种情况,内部版和外部表都测试过,没有出现楼上的情况
--  作者:yancheng
--  发布时间:2015/11/7 20:47:00
--  

图片上面是:子目,表事件。

关联子表,新增行后,清单编号,自动加入。但是,表事件,代码,不能执行下面的:


            dr("项目编码") = dr1("项目编码")
            dr("合同编号") = dr1("合同编号")
            dr("编制日期") = dr1("编制日期")
            dr("子目编码") = dr1("子目编码")
        Else
            dr("项目编码")= Nothing
            dr("合同编号") = Nothing
            dr("编制日期") = Nothing
            dr("子目编码") = Nothing
        End If

 

我如果重置一下:清单编号,上面的代码就执行了。数据加入了?


此主题相关图片如下:3332.jpg
按此在新窗口浏览图片

--  作者:大红袍
--  发布时间:2015/11/8 10:18:00
--  

是否有触发 清单编号 的datacolchanged事件?加入msgbox测试一下。

 

你是怎么给 清单编号 赋值的?


--  作者:大红袍
--  发布时间:2015/11/8 10:19:00
--  
做个例子上来测试。