以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 二个表有很多相同的列名称,一个表提取另一个的数据 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=97010) |
-- 作者:有点蓝 -- 发布时间:2017/3/4 9:29:00 -- 代码运行后有什么错误? |
-- 作者:有点蓝 -- 发布时间:2017/3/4 15:03:00 -- 1、只有重置case里的列才有效
2、说明没有符合的数据 |
-- 作者:有点蓝 -- 发布时间:2017/3/4 15:54:00 -- 这个代码本身的逻辑有问题,先理清自己要做什么
如果没有输入内容,就没有查询的条件,如果输入内容,查询后的结果也就和原来的值是一样的,再赋值回原来的列有什么意义呢 |
-- 作者:有点蓝 -- 发布时间:2017/3/4 16:15:00 -- Select Case e.DataCol.name
Case "其它列1","其它列2","其它列三",......
Dim dt As DataTable = DataTables("表B")
If dt.DataCols.Contains(e.DataCol.name) Then
Dim fdr As DataRow = dt.find("项目名称 = \'" & e.DataRow("项目名称") & "\' And 咨询类型 = \'" & e.DataRow("咨询类型") & "\'")
If fdr IsNot Nothing Then
e.DataRow(e.DataCol.name) = fdr(e.DataCol.name)
End If
End If
End Select |
-- 作者:有点蓝 -- 发布时间:2017/3/4 17:04:00 -- Select Case e.DataCol.name
Case "项目名称","咨询类型"
case else
Dim dt As DataTable = DataTables("表B")
If dt.DataCols.Contains(e.DataCol.name) Then
Dim fdr As DataRow = dt.find("项目名称 = \'" & e.DataRow("项目名称") & "\' And 咨询类型 = \'" & e.DataRow("咨询类型") & "\'")
If fdr IsNot Nothing Then
e.DataRow(e.DataCol.name) = fdr(e.DataCol.name)
End If
End If
End Select |
-- 作者:有点色 -- 发布时间:2017/3/5 12:06:00 -- Select Case e.DataCol.name Case "项目名称","咨询类型" Dim dt As DataTable = DataTables("代理招标信息") Dim fdr As DataRow = dt.find("项目名称 = \'" & e.DataRow("项目名称") & "\' And 咨询类型 = \'" & e.DataRow("咨询类型") & "\'") If fdr IsNot Nothing Then For Each dc As DataCol In e.DataTable.datacols If dt.datacols.Contains(dc.name) e.DataRow(dc.name) = fdr(dc.name) End If Next End If End Select [此贴子已经被作者于2017/3/5 22:01:51编辑过]
|
-- 作者:有点色 -- 发布时间:2017/3/5 22:02:00 -- Select Case e.DataCol.name Case "项目名称","咨询类型" Dim dt As DataTable = DataTables("代理招标信息") Dim fdr As DataRow = dt.find("项目名称 = \'" & e.DataRow("项目名称") & "\' And 咨询类型 = \'" & e.DataRow("咨询类型") & "\'") If fdr IsNot Nothing Then For Each dc As DataCol In e.DataTable.datacols If dt.datacols.Contains(dc.name) e.DataRow(dc.name) = fdr(dc.name) End If Next End If End Select |