以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  两个表数据同步删除‘增加  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=34317)

--  作者:秦昌丽
--  发布时间:2013/6/5 10:37:00
--  两个表数据同步删除‘增加
狐爸爸,您好,我想将数据库中的两个数据表中的数据同步增加删除,怎么办?就是两个表内相同的内容同步增加,不同列不增加
--  作者:Bin
--  发布时间:2013/6/5 10:44:00
--  
你用录入窗口做吧,增加的时候每个表增加一条就好了.

删除也可以用同样的方法,或者再BEFORDELEROW  删除行事件之前 利用datatables("XX").FIND找到另外一个表的行删除.

--  作者:Bin
--  发布时间:2013/6/5 10:45:00
--  
如果是未加载的数据库表,可以利用SQL语句实现.原理上还是一样的.
--  作者:秦昌丽
--  发布时间:2013/6/5 11:00:00
--  

我用的是外部数据源,这样好像不行啊

 

 

Select Case e.DataCol.name
   Case "接单日期"
       Dim dr As DataRow = DataTables("订单核价").Find("接单日期 = \'" & e.OldValue & "\'")
         If dr Is Nothing Then
            dr = DataTables("订单核价").AddNew()
             dr("接单日期") = e.DataRow("接单日期")
             dr("单位或部门") = e.DataRow("单位或部门")
             dr("生产调度令号") = e.DataRow("生产调度令号")
             dr("任务名称") = e.DataRow("任务名称")
             dr("计划开始日期") = e.DataRow("计划开始日期")
             dr("计划完工日期") = e.DataRow("计划完工日期")
             dr("计划工期") = e.DataRow("计划工期")
         Else
             dr("接单日期") = e.DataRow("接单日期")
        End If
     Case "单位或部门","生产调度令号","任务名称","计划开始日期","计划完工日期","计划工期"
         Dim dr As DataRow = DataTables("订单核价").Find("接单日期 = \'" & e.DataRow("接单日期") & "\'")
         If dr IsNot Nothing Then
             dr(e.DataCol.Name) = e.DataRow(e.DataCol.Name)
         End If
 End Select

 

 

 

 

 


--  作者:Bin
--  发布时间:2013/6/5 11:02:00
--  
你这是写在哪里的?  而且 参数应该是 e.newValue 才对
--  作者:秦昌丽
--  发布时间:2013/6/5 11:06:00
--  
表属性 里面的事件Datacolchanged
--  作者:Bin
--  发布时间:2013/6/5 11:09:00
--  

你上例子吧..
[此贴子已经被作者于2013-6-5 11:10:58编辑过]

--  作者:狐狸爸爸
--  发布时间:2013/6/5 11:09:00
--  

你可以看看这个:

http://www.foxtable.com/help/topics/2490.htm

 

如果搞不定,就做个简单例子发上来,我们帮你设置一下,以后你照着做。


--  作者:秦昌丽
--  发布时间:2013/6/5 11:13:00
--  
嗯,我先试试,谢谢大家,灰常感谢