请教老师,下面代码条件
如果项目计划书与本表的项目编号相同,设计阶段=本表的任务阶段,项目经理=本表的执行人,本表的监理人员为空时,本表的项目负责人=项目计划书的项目经理,现在的问题是在同一个项目编号下,项目计划书的项目经理如果与本表的执行人一致,就跨表填入了项目负责人,设计阶段的条件不起作用
例如 本表 项目计划书
项目编号 任务阶段 执行人 项目负责人 项目编号 设计阶段 项目经理
001 可研阶段 小王 小王 001 可研阶段 小王
001 初设阶段 小李 小李 001 初设阶段 小李
001 可研阶段 小李 现在的代码这里依然填入小李
001 初设阶段 小王 现在的代码这里依然填入小王
If e.DataCol.Name = "项目编号" Then
If e.NewValue Is Nothing Then
e.DataRow("项目负责人") = Nothing '那么清空此行项目负责人列的内容,如项目计划书的项目经理变动 需重置项目编号列
Else
Dim dr As DataRow = DataTables("项目计划书").SQLFind("[项目编号] = '" & e.NewValue & "' And 设计阶段 = '" & e.DataRow("任务阶段") & "' And 项目经理 = '" & e.DataRow("执行人") & "'")
If dr IsNot Nothing Then '如果找到了同名的项目编号、设计阶段和项目经理行,也就是dr不是Nothing
If e.DataRow.Isnull("监理人员") = True Then
e.DataRow("项目负责人") = dr("项目经理")
Else
e.DataRow("项目负责人") = ""
End If
End If
End If
End If
[此贴子已经被作者于2017/10/25 16:25:54编辑过]