以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]填充  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=31908)

--  作者:cqlpjks
--  发布时间:2013/4/22 21:01:00
--  [求助]填充

由于下午的那个有问题。

If e.DataCol.Name = "单位" Then \'如果内容发生变动的是单位列
    If e.NewValue Is Nothing Then \'如果新值是空白,也就是单位列的内容为空
        e.DataRow("目标1") = Nothing \'那么清空此行单位代码列的内容
    Else
        Dim dr As DataRow
        \'否则在产品表查找同名的产品行,将找到的行赋值给变量dr
        dr = DataTables("校名设置").Find("[单位] = \'" & e.NewValue & "\'")
        If dr IsNot Nothing Then \'如果找到了同名的产品行,也就是dr不是Nothing
            e.DataRow("目标1") = dr("目标1")
        End If
    End If
End If

这是只有“单位”发生变化时,“目标1”列的填充。当“单位”、“年级”、“部别”都发生变化时如何修改代码,即要同时满足:单位=单位、年级=年级、部别=部别。请指教,谢谢!


--  作者:y2287958
--  发布时间:2013/4/22 21:14:00
--  
select case e.DataCol.Name
case  "单位",“年级”,“部别”
    If e.NewValue Is Nothing Then \'如果新值是空白,也就是单位列的内容为空
        e.DataRow("目标1") = Nothing \'那么清空此行单位代码列的内容
    Else
        Dim dr As DataRow
        \'否则在产品表查找同名的产品行,将找到的行赋值给变量dr
        dr = DataTables("校名设置").Find("[单位] = \'" & e.DataRow(单位) & "\' and [年级] = \'" & e.DataRow(年级) & "\' and [部别] = \'" & e.DataRow(部别) & "\'")
        If dr IsNot Nothing Then \'如果找到了同名的产品行,也就是dr不是Nothing
            e.DataRow("目标1") = dr("目标1") 
        End If
    End If
End If