以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  非关联子表复制,请教  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=142196)

--  作者:yifan3429
--  发布时间:2019/10/21 9:40:00
--  非关联子表复制,请教
订单表 和 订单明细 共有订单ID列
希望在克隆的订单表时
将订单明细表 逻辑列 完成列  为否的一起克隆

http://www.foxtable.com/webhelp/index.htm?page=1533.htm   案例只有单表复制
[此贴子已经被作者于2019/10/21 9:41:02编辑过]

--  作者:有点蓝
--  发布时间:2019/10/21 10:01:00
--  
参考:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=91474
--  作者:yifan3429
--  发布时间:2019/10/21 10:22:00
--  
还是没有搞定,请教老师了

两个表之间没有建立关联

Dim dr As DataRow = Tables("订单").Current.DataRow
Dim r As Row = Tables("订单").AddNew()
r("客户") = dr("客户")
r("工单号") = "GYS" & Format(Date.Now,"yyMMdd-HHmmss")

Dim drs As List(Of DataRow)
drs = r.DataRow.GetChildRows("订单明细")
Dim rc As DataRow
For Each drr As DataRow In drs
    rc = drr.Clone    
Next
[此贴子已经被作者于2019/10/21 10:22:44编辑过]

--  作者:有点蓝
--  发布时间:2019/10/21 10:28:00
--  
Dim drs As List(Of DataRow)
drs = datatables("订单明细").select("订单ID=\'" & dr("订单ID") & "\' and 完成=\'否\'")

--  作者:yifan3429
--  发布时间:2019/10/21 10:50:00
--  
Dim dr As DataRow = Tables("订单").Current.DataRow
Dim r As Row = Tables("订单").AddNew()
r("客户") = dr("客户")
r("工单号") = "GYS" & Format(Date.Now,"yyMMdd-HHmmss")


Dim drs As List(Of DataRow)
drs = DataTables("订单明细").Select("工单号=\'" & dr("工单号") & "\' and 完成=\'否\'")
Dim rc As DataRow
For Each drr As DataRow In drs
    rc = drr.Clone
    rc("工单号") = dr("工单号")  我想被复制的行新的单号等于订单新建的工单号 
           同时将原来的单号写入入到  旧单号  列内可以被追踪
Next

--  作者:有点蓝
--  发布时间:2019/10/21 11:06:00
--  
rc("工单号") = r("工单号") 
--  作者:yifan3429
--  发布时间:2019/10/21 11:36:00
--  
无法在 System.Boolean 和 System.String 上执行“=”操作。

Dim dr As DataRow = Tables("订单").Current.DataRow
Dim r As Row = Tables("订单").AddNew()
r("客户") = dr("客户")
r("工单号") = "GYS" & Format(Date.Now,"yyMMdd-HHmmss")


Dim drs As List(Of DataRow)
drs = DataTables("订单明细").Select("工单号=\'" & dr("工单号") & "\' and 完成=\'否\'")
Dim rc As DataRow
For Each drr As DataRow In drs
    rc = drr.Clone
    rc("工单号") = r("工单号")
Next




还有 原来的行的 工单号 要写入新行里的 旧单号 列内

--  作者:有点蓝
--  发布时间:2019/10/21 12:05:00
--  
drs = DataTables("订单明细").Select("工单号=\'" & dr("工单号") & "\' and 完成=false")

rc("旧单号") = dr("工单号")