以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [注意] 条件表达式  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=121270)

--  作者:zcgmxf
--  发布时间:2018/7/3 8:39:00
--  [注意] 条件表达式
      为一个看似简单的合成加载条件表达式,花了快一天时间,在甜老师的指导下,终于完成。请大家参考。
不明白,为什么要加上判断,不然加载的全部是 确认审核 = 0 的行。
      目的是要加载   确认审核 = 0   在 机构设置 表中为科室主任 或者为 分管领导 ,如果两者都不是,就加载 请假天数 大于或等于 3  的行。
      机构设置 表中 科室主任 和分管领导 的人数 是不同的。如果不进行判断 就只会加载 确认审核 = 0 的所有行。就是科室主任 和分管领导 都不能有空行。

DataTables("机构设置").LoadFilter = "科室主任 is not null"
DataTables("机构设置").Load()
Dim str As String = "1=2"
For Each dr As DataRow In DataTables("机构设置").DataRows
    If dr.IsNull("分管领导") = False Then
        str &= " or 确认审核 = 0 And 姓名 Like \'%" & dr("分管领导") & "%\'"
    End If
    If dr.IsNull("科室主任") = False Then
        str &= " or 确认审核 = 0 And 姓名 Like \'%" & dr("科室主任") & "%\'"
    End If
Next
str &= " Or 确认审核 = 0 And 请假天数 >= 3 "
DataTables("请销假登记").LoadFilter = str
DataTables("请销假登记").Load

--  作者:有点甜
--  发布时间:2018/7/3 8:49:00
--  
图片点击可在新窗口打开查看