Foxtable(狐表)用户栏目专家坐堂 → 复杂的筛选功能


  共有3227人关注过本帖树形打印复制链接

主题:复杂的筛选功能

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/7 19:50:00 [显示全部帖子]

Dim t As Table = Tables("计划表")
Dim str As String = t.DataTable.GetComboListString("项目名称", "状态 = '办理中'").replace("|", "','")
t.filter = "项目名称 in ('" & str & "') and 计划_开始日期 is not null"

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/8 13:37:00 [显示全部帖子]

Dim t As Table = Tables("计划表")
Dim ls  = t.DataTable.GetValues("项目名称|项目流程", "状态 = '办理中'")
Dim str As String = "'',"
For Each ary() As String In ls
    str &= "'" & ary(0) + ary(1) & "',"
Next
t.filter = "项目名称+项目流程 in (" & str.trim(",") & ")"

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/8 14:50:00 [显示全部帖子]

 我测试代码没问题。请截图说明需要的效果。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/13 9:23:00 [显示全部帖子]

以下是引用yangwenghd在2017/9/12 23:31:00的发言:
感谢 可以了 我问问 为什么点击按钮后, 如果只输入了计划_开始日期和 计划结束日期 就加载不了时间,是改那里啊 感谢 感谢 

 

重新生成甘特图

 

Functions.Execute("BuildGanttTable")
Functions.Execute("AddGanttRows")
Functions.Execute("SetGanntLeftCol")


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/14 8:57:00 [显示全部帖子]

Enter事件

 

Dim c1 As WinForm.ComboBox = e.Form.Controls("ComboBox1")
Dim r1 As WinForm.RadioButton = e.Form.Controls("RadioButton1")
Dim r2 As WinForm.RadioButton = e.Form.Controls("RadioButton2")
Dim filter As String = "1=1"
If c1.text > "" Then
    If c1.text <> "全部" Then
        filter &= " and 事件类型 = '" & c1.text & "'"
    End If
End If
If r1.Checked Then
    filter &= " and 状态 = '已完成'"
End If
e.Sender.ComboList = DataTables("计划表").GetComboListString("项目名称", filter)


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/21 21:55:00 [显示全部帖子]

Dim ls  = t.DataTable.GetValues("项目名称|项目流程", "状态 <> '已完成' or 状态 is null")


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/21 22:40:00 [显示全部帖子]

测试代码没问题

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/9/21 23:19:00 [显示全部帖子]

Dim t As Table = Tables("计划表")
Dim str As String = "'',"
For Each mc As String In t.DataTable.GetValues("项目名称")
    Dim flag As Boolean = True
    For Each lc As String In t.DataTable.GetValues("项目流程", "项目名称='" & mc & "'")
        Dim fdr As DataRow = t.DataTable.Find("状态 = '已完成' and 项目名称='" & mc & "' and 项目流程 = '" & lc & "'")
        If fdr Is Nothing
            flag = False
            Exit For
        End If
    Next
    If flag Then
        str  &= "'" & mc & "',"
    End If
Next

t.filter = "计划_开始日期 is not null and 项目名称 in (" & str.trim(",") & ")"


 回到顶部