Foxtable(狐表)用户栏目专家坐堂 → 模拟关联表的问题


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

主题:模拟关联表的问题

帅哥,在线噢!
有点蓝
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110742 积分:563636 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/1/25 9:55:00 [显示全部帖子]

提示很明显了,没有[盐酸贝那普利片]这列

具体代码贴上来看看

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110742 积分:563636 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/1/25 10:18:00 [显示全部帖子]

t.Filter = "商品名称 = '" & .Current("商品名称") & "'"


 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110742 积分:563636 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/1/25 11:39:00 [显示全部帖子]

试试

If Forms("关联表").Opened() '一定要判断用于模拟关联表的窗口是否已经打开
    Dim cls() As String = {"商品名称","供应商名称","客户名称"} ' 假设checkbox控件名称和标题一样
    
    Dim t As Table = Tables("关联表_Table批发表1")
    
    With Tables("返利合同")
        If .Current Is Nothing Then
            t.Filter = "False"
        Else
            Dim filter As String = "1=1"
            For Each c As String In cls
                If Forms("关联表").Controls(c).Checked And t.Cols.Contains(c) And .Cols.Contains(c) Then
                    filter &= c & "='" & .Current(c) & "'"
                End If
            Next
            If filter = "1=1" Then filter = "False"
            t.Filter = filter
        End If
    End With
End If
[此贴子已经被作者于2017/1/25 11:39:50编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110742 积分:563636 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/1/25 14:34:00 [显示全部帖子]

不要完全照搬代码,看懂理解,改为符合自己的。看不懂就上传例子

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110742 积分:563636 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/1/25 15:25:00 [显示全部帖子]

filter &= c & "='" & .Current(c) & "'"
改为
filter &= " and " & c & "='" & .Current(c) & "'"

 回到顶部