以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求更换思路后的代码  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=71153)

--  作者:yaojun
--  发布时间:2015/7/6 13:23:00
--  求更换思路后的代码

原有一“订单”表,关联一“定单明细表”。另外一“成品中心”表,成品中心的数据是通过复制订单表中已经审核过的行的数据,代码如下:

For Each dr As DataRow In DataTables("订单").Select("审核=TRUE")
Dim fdr As DataRow = DataTables("成品中心").Find("定单号 = \'" & dr("定单号") & "\' and 产品编号 = \'" & dr("产品编号")  & "\'")
If fdr Is Nothing Then

        fdr = DataTables("成品中心").AddNew()
        fdr("定单号") = dr("定单号")
        fdr("产品编号") = dr("产品编号")
    End If
    fdr("产品名称") = dr("产品名称")
    fdr("规格型号") = dr("规格型号")
fdr("产品图片") = dr("产品图片")
fdr("客户") = dr("客户")
fdr("定单数量") = dr("定单数量")

Next

 

现在我想改过思路,让“订单”表里通过审核过的行自动删除该行和该行所关联的“定单明细”子表的全部内容,删除的行里的数据(定单号,产品编号,产品名称,规格型号,产品图片,客户,定单数量)自动复制到“成品中心”的表里相关列里面。

求代码

谢谢老师们了。


--  作者:大红袍
--  发布时间:2015/7/6 14:15:00
--  

For Each dr As DataRow In DataTables("订单").Select("审核=TRUE")
    Dim fdr As DataRow = DataTables("成品中心").Find("定单号 = \'" & dr("定单号") & "\' and 产品编号 = \'" & dr("产品编号")  & "\'")
    If fdr Is Nothing Then
       
        fdr = DataTables("成品中心").AddNew()
        fdr("定单号") = dr("定单号")
        fdr("产品编号") = dr("产品编号")
    End If
    fdr("产品名称") = dr("产品名称")
    fdr("规格型号") = dr("规格型号")
    fdr("产品图片") = dr("产品图片")
    fdr("客户") = dr("客户")
    fdr("定单数量") = dr("定单数量")
Next

DataTables("订单").DeleteFor("审核=TRUE")


--  作者:yaojun
--  发布时间:2015/7/6 14:46:00
--  

就这么简单,谢谢老师,效果很好


--  作者:yaojun
--  发布时间:2015/9/25 21:11:00
--  
怎样让多列父表行共一个子表行啊
[此贴子已经被作者于2015/9/25 21:58:05编辑过]

--  作者:大红袍
--  发布时间:2015/9/28 9:08:00
--  
以下是引用yaojun在2015/9/25 21:11:00的发言:
怎样让多列父表行共一个子表行啊
[此贴子已经被作者于2015/9/25 21:58:05编辑过]

 

不理解你什么意思。截图或者上传例子说明