以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 非关联表同步的条件问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=83250) |
-- 作者:douglas738888 -- 发布时间:2016/4/5 12:54:00 -- 非关联表同步的条件问题 请教老师,参照非关联表之间的数据同步,我加了个条件,如果参加投标的逻辑列勾选后,投标主表同步增加行,并把信息编号和项目名称带入增加行 是否我写的条件位置不对? Select Case e.DataCol.name \'如果项目甄批意见勾选参加投标,项目主表参加投标勾选后,投标主表增加行 Case "信息编号" If e.DataRow("参加投标") = True Then Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.OldValue & "\'") If dr1 Is Nothing Then dr1 = DataTables("投标主表").AddNew() dr1("信息编号") = e.DataRow("信息编号") dr1("项目名称") = e.DataRow("项目名称") Else dr1("信息编号") = e.DataRow("信息编号") End If End If Case "项目名称" Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.DataRow("信息编号") & "\'") If dr1 IsNot Nothing Then dr1(e.DataCol.Name) = e.DataRow(e.DataCol.Name) End If End Select
|
-- 作者:大红袍 -- 发布时间:2016/4/5 15:06:00 -- Select Case e.DataCol.name \'如果项目甄批意见勾选参加投标,项目主表参加投标勾选后,投标主表增加行 Case "信息编号" Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.OldValue & "\'") If dr1 Is Nothing Then dr1 = DataTables("投标主表").AddNew() dr1("信息编号") = e.DataRow("信息编号") dr1("项目名称") = e.DataRow("项目名称") Else dr1("信息编号") = e.DataRow("信息编号") End If Case "项目名称" Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.DataRow("信息编号") & "\'") If dr1 IsNot Nothing Then dr1(e.DataCol.Name) = e.DataRow(e.DataCol.Name) End If Case "参加投标" Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.DataRow("信息编号") & "\'") If dr1 Is Nothing Then dr1 = DataTables("投标主表").AddNew() End If dr1("信息编号") = e.DataRow("信息编号") dr1("项目名称") = e.DataRow("项目名称") End Select |
-- 作者:douglas738888 -- 发布时间:2016/4/5 16:41:00 -- 对不起老师,我表达有点错误,是勾选项目信息表的逻辑列“参加投标”,投标主表才增加行,如果不勾选,就不增加行,代码调整如下,还有点问题(未引用对象实例),请老师在帮忙看看 Select Case e.DataCol.name Case "参加投标" Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.DataRow("信息编号") & "\'") If dr1 IsNot Nothing Then dr1 = DataTables("投标主表").AddNew() End If dr1("信息编号") = e.DataRow("信息编号") dr1("项目名称") = e.DataRow("项目名称") End Select [此贴子已经被作者于2016/4/5 16:43:01编辑过]
|
-- 作者:大红袍 -- 发布时间:2016/4/5 16:51:00 -- Select Case e.DataCol.name \'如果项目甄批意见勾选参加投标,项目主表参加投标勾选后,投标主表增加行 Case "信息编号" Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.OldValue & "\'") If dr1 IsNot Nothing Then dr1("信息编号") = e.DataRow("信息编号") End If Case "项目名称" Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.DataRow("信息编号") & "\'") If dr1 IsNot Nothing Then dr1(e.DataCol.Name) = e.DataRow(e.DataCol.Name) End If Case "参加投标" If e.DataRow("参加投标") = True Then Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.DataRow("信息编号") & "\'") If dr1 Is Nothing Then dr1 = DataTables("投标主表").AddNew() End If dr1("信息编号") = e.DataRow("信息编号") dr1("项目名称") = e.DataRow("项目名称") End If End Select |
-- 作者:douglas738888 -- 发布时间:2016/4/5 16:52:00 -- 已解决,不知这样写,是否符合规则 Select Case e.DataCol.name \'如果项目甄批意见勾选参加投标,项目主表参加投标勾选后,投标主表增加行 Case "参加投标" Dim dr1 As DataRow = DataTables("投标主表").Find("信息编号 = \'" & e.DataRow("信息编号") & "\'") If dr1 Is Nothing Then If e.DataRow("参加投标") = True Then dr1 = DataTables("投标主表").AddNew() dr1("信息编号") = e.DataRow("信息编号") dr1("项目名称") = e.DataRow("项目名称") End If End If End Select |
-- 作者:大红袍 -- 发布时间:2016/4/5 17:32:00 -- 代码在4楼。 |