以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] 如何满足多个条件才执行 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=120383) |
-- 作者:81538475 -- 发布时间:2018/6/14 0:30:00 -- [求助] 如何满足多个条件才执行 下面的代码会找出多个 dr 如何能够让所有 dr("PM") = _username 都满足才往下执行呢。 Dim dr As DataRow For i As Integer = 0 To Names.Length -1 dr = DataTables("XMZB").Find("[XMMC] = \'"& names(i) & "\'") If dr IsNot Nothing Then If dr("PM") = _username Then |
-- 作者:有点甜 -- 发布时间:2018/6/14 9:02:00 --
If flag = False Then |
-- 作者:81538475 -- 发布时间:2018/6/14 15:13:00 -- 问题是我后面的代码也需要用到 上面 循环出来的 dr 的多个值 。按照上面代码的话,就无法进行后面的循环了。 标注红色的位置: Dim dr As DataRow Dim flag = False For i As Integer = 0 To Names.Length -1 dr = DataTables("XMZB").Find("[XMMC] = \'"& names(i) & "\'") If dr IsNot Nothing Then If dr("PM") <> _username Then flag = True If nt IsNot Nothing Then nt.Delete End If MessageBox.Show("没有权限合并此项目,请联系相关PM!","温馨提示:") Exit For End If End If Next If flag = False Then If dr.GetChildRows("XMFP") IsNot Nothing Then For Each drc As DataRow In dr.GetChildRows("XMFP") \'修改编号 If drc IsNot Nothing Then drc("BH") = nt("bh") End If Next End If End If |
-- 作者:有点甜 -- 发布时间:2018/6/14 15:36:00 -- Dim flag = False Dim drs As new List(of DataRow) For i As Integer = 0 To Names.Length -1 dim dr = DataTables("XMZB").Find("[XMMC] = \'"& names(i) & "\'") If dr IsNot Nothing Then drs.add(dr) If dr("PM") <> _username Then flag = True If nt IsNot Nothing Then nt.Delete End If MessageBox.Show("没有权限合并此项目,请联系相关PM!","温馨提示:") Exit For End If End If Next If flag = False Then For Each dr As DataRow In drs If dr.GetChildRows("XMFP") IsNot Nothing Then For Each drc As DataRow In dr.GetChildRows("XMFP") \'修改编号 If drc IsNot Nothing Then drc("BH") = nt("bh") End If Next End If next End If |