以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 一个遍历问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=86875) |
-- 作者:douglas738888 -- 发布时间:2016/6/28 10:35:00 -- 一个遍历问题 请教老师,下面这段代码,要实现同一个 任务索引 号下全部行的 审定完成 逻辑列为TRUE后, 投标商务副表 的 完成 列才为TRUE 我想应该是用遍历,但不知怎样来写 Dim pr As DataRow \'"投标商务待审_Table8 "对应的任务索引号的逻辑列全部勾选, 投标商务副表的审批完成,完成列才勾选视为完成审批 Dim cr As Row = Tables("投标商务待审_Table8").current Dim c1 As Integer = cr.Table.Compute("count(任务索引)", "任务索引 = \'" & cr("任务索引") & "\'") Dim c2 As Integer = cr.Table.Compute("count(任务索引)", "任务索引 = \'" & cr("任务索引") & "\' and 审定完成 = true") pr = DataTables("投标商务副表").find("任务索引 = \'" & cr("任务索引") & "\'") If pr IsNot Nothing Then pr("审批完成") = (c1 = c2) End If |
-- 作者:大红袍 -- 发布时间:2016/6/28 10:38:00 -- 这个代码本身就没有问题。 |
-- 作者:douglas738888 -- 发布时间:2016/6/28 11:02:00 -- 老师,昨天您指导的代码,我加了条件,形成审核条件后,因为只加载是符合待审核条件的行,同一个索引任务号下其他待审的行不出现的情况下,只勾选符合待审条件的行,上表逻辑列就打钩了 Dim Filter As String = "审批人员 Like \'%" & _UserName & "%\' and (审定确认 not Like \'%" & _UserName & "%\' or 审定确认 Is null) and 审批流程 Like \'%编制程序_编制%\'" \'待审条件 Tables("投标商务待审_Table8").Filter = "_Identify in (-1," & Tables("投标商务待审_Table8").DataTable.GetComboListString("_Identify", filter).replace("|", ",") & ")" 是否要修改这段代码 If e.DataCol.Name = "审定完成" Then \'窗口投标策划,"投标商务副表时间审批"副本Table8勾选后,投标商务副表对应列打钩(出现多值,多值行勾选后,对应SQL投标商务副表才勾选对应逻辑列 Dim fdr As DataRow = DataTables("投标商务副表").find("任务索引 = \'" & e.DataRow("任务索引") & "\'") If fdr IsNot Nothing Then Dim str As String = e.DataRow("审批流程") If str.length >= 2 Then str = str.SubString(0,str.length -2) If fdr.DataTable.DataCols.Contains(str & "完成") Then If e.DataRow("审定完成") = False fdr(str & "完成") = False Else Dim c11 As Integer = e.DataTable.compute("count(任务索引)", "任务索引 = \'" & e.DataRow("任务索引") & "\' and 审批流程 = \'" & e.DataRow("审批流程") & "\'") Dim c22 As Integer = e.DataTable.compute("count(任务索引)", "任务索引 = \'" & e.DataRow("任务索引") & "\' and 审定完成 = true and 审批流程 = \'" & e.DataRow("审批流程") & "\'") fdr(str & "完成") = (c11 = c22) End If End If End If End If End If [此贴子已经被作者于2016/6/28 11:16:06编辑过]
|
-- 作者:大红袍 -- 发布时间:2016/6/28 11:15:00 -- 那代码就改一下
Dim pr As DataRow \'"投标商务待审_Table8 "对应的任务索引号的逻辑列全部勾选, 投标商务副表的审批完成,完成列才勾选视为完成审批 |