以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 表部分内容复制到另一表 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=102630) |
||||
-- 作者:白国栋 -- 发布时间:2017/6/23 9:43:00 -- 表部分内容复制到另一表 从一三小班表复制部分列内容到四五小班表,可以每次都增加三行数据呢?求解!
|
||||
-- 作者:有点蓝 -- 发布时间:2017/6/23 9:50:00 -- Dim dr As DataRow = e.DataRow Select Case e.DataCol.Name Case "省","县","乡","村林班","横坐标","纵坐标","地区类别","小班号","图幅号","坡度","计划年度","作业年度","退耕还林地类别","林地权属","林木权属","林种","树种","植被配置类型","上报面积","管理情况_档案","管理情况_管护","管理情况_不动产权证书" If e.DataRow.isnull("省") = False AndAlso e.DataRow.Isnull("县") = False AndAlso e.DataRow.Isnull("乡") = False AndAlso e.DataRow.Isnull("村林班") = False AndAlso e.DataRow.Isnull("横坐标") = False AndAlso e.DataRow.Isnull("纵坐标") = False AndAlso e.DataRow.Isnull("地区类别") = False AndAlso e.DataRow.Isnull("小班号") = False AndAlso e.DataRow.Isnull("图幅号") = False AndAlso e.DataRow.Isnull("计划年度") = False AndAlso e.DataRow.Isnull("作业年度") = False AndAlso e.DataRow.Isnull("退耕还林地类别") = False AndAlso e.DataRow.Isnull("林地权属") = False AndAlso e.DataRow.Isnull("林木权属") = False AndAlso e.DataRow.Isnull("林种") = False AndAlso e.DataRow.Isnull("树种") = False AndAlso e.DataRow.Isnull("植被配置类型") = False AndAlso e.DataRow.Isnull("上报面积") = False Then Dim nma() As String = {"省","县","乡","村林班","横坐标","纵坐标","地区类别","小班号","图幅号","计划年度","作业年度","退耕还林地类别","林地权属","林木权属","林种","树种","植被配置类型","上报面积","管理情况_档案","管理情况_管护","管理情况_不动产权证书"} \'A表数据来源列 Dim nmb() As String = {"省","县","乡","村林班","横坐标","纵坐标","地区类别","小班号","图幅号","计划年度","作业年度","退耕还林地类别","林地权属","林木权属","林种","树种","植被配置类型","上报面积","管理情况_档案","管理情况_管护","管理情况_不动产权证书"} \'B表数据接收列 For j As Integer = 1 To 3 dr = DataTables("四五小班表").AddNew For i As Integer = 0 To nma.Length - 1 dr(nmb(i)) = e.DataRow(nma(i)) Next Next End If End Select
|
||||
-- 作者:白国栋 -- 发布时间:2017/6/23 9:59:00 --
|
||||
-- 作者:有点蓝 -- 发布时间:2017/6/23 10:28:00 -- 原来的代码不可能每次都增加三行。 但是每改一次就会增加一行,使用find查询一下是否已经存在相同的数据,但是根据什么列进行判断重复呢? |
||||
-- 作者:白国栋 -- 发布时间:2017/6/23 10:33:00 -- DataRowDeleting写成什么呢? 我这个表间没有关联的列。 Dim dr As DataRow = DataTables("一三小班表").Find("产品编号 = \'" & e.DataRow("产品编号") & "\'") 这能用行的编号来代替吗??
|
||||
-- 作者:白国栋 -- 发布时间:2017/6/23 10:43:00 -- 我把两级的表头取消了就只能复制一个行了。有可能是那个的原因。复 ![]() ![]() 制一行的问题应该处理好了。删除不会呢? |
||||
-- 作者:白国栋 -- 发布时间:2017/6/23 10:58:00 -- 你试一下我发的,每次都增加三行。一三小班表里增加一行,四五表里增加三行。把多层表头的字段不进行复制就可以了。现在就是删除的不会呢。没有具体的编号。或者表格中再加一列编号。用编号进行删除? |
||||
-- 作者:有点蓝 -- 发布时间:2017/6/23 12:00:00 -- 2个表必须要有可以关联的列,才能判断是否重复。 |