以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]这语句怎么编? (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=59515) |
||||
-- 作者:sulgz -- 发布时间:2014/11/5 17:55:00 -- [求助]这语句怎么编? Select Case e.DataCol.Name Case "第四列","第五列","第六列","第七列" Dim Filter As String = "[编码] = \'" & e.DataRow("编码") & "\'" Dim drs As List(Of DataRow) = DataTables("表A").Select(Filter) For Each dr As DataRow In drs If IsNull(e.NewValue) Then 这句不会编写。(如果为空是就不替换) dr(e.DataCol.Name) = e.NewValue End If Next End Select
|
||||
-- 作者:有点甜 -- 发布时间:2014/11/5 18:02:00 -- Select Case e.DataCol.Name
|
||||
-- 作者:sulgz -- 发布时间:2014/11/5 19:39:00 -- 不行没反应,是用表B修改后的数据替换表A的数据。
[此贴子已经被作者于2014-11-5 19:41:50编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2014/11/5 19:45:00 -- Select Case e.DataCol.Name |
||||
-- 作者:sulgz -- 发布时间:2014/11/5 19:56:00 -- 不行没反应,是用表B修改后的数据替换表A的数据,假如表B列的某行是空值就不替换。 |
||||
-- 作者:有点甜 -- 发布时间:2014/11/5 19:57:00 -- Select Case e.DataCol.Name Case "第四列","第五列","第六列","第七列" If e.NewValue <> Nothing Then Dim Filter As String = "[编码] = \'" & e.DataRow("编码") & "\'" Dim drs As List(Of DataRow) = DataTables("表A").Select(Filter) For Each dr As DataRow In drs dr(e.DataCol.Name) = e.NewValue Next End If End Select |
||||
-- 作者:sulgz -- 发布时间:2014/11/5 20:00:00 -- 非常感谢,非常强大 |
||||
-- 作者:sulgz -- 发布时间:2014/11/5 21:01:00 -- 请问那代码做到窗口去怎么修改?不用DataColChange事件,就是单纯两表间的数据处理。 [此贴子已经被作者于2014-11-5 21:06:19编辑过]
|
||||
-- 作者:有点甜 -- 发布时间:2014/11/5 21:08:00 -- Dim cols() As String = {"第四列","第五列","第六列","第七列"} For Each dr As DataRow In DataTables("表B").DataRows For Each c As String In Cols If dr.IsNull(c) = False Then Dim Filter As String = "[编码] = \'" & dr("编码") & "\'" Dim drs As List(Of DataRow) = DataTables("表A").Select(Filter) For Each fdr As DataRow In drs fdr(c) = dr(c) Next End If Next Next |
||||
-- 作者:sulgz -- 发布时间:2014/11/5 21:31:00 -- |