Foxtable(狐表)用户栏目专家坐堂 → [求助]字典很卡求助


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

主题:[求助]字典很卡求助

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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
  发帖心情 Post By:2020/1/20 16:11:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:new加列条件下拉筛选.foxdb


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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
  发帖心情 Post By:2020/1/20 16:14:00 [显示全部帖子]

表a第一列下拉值,筛选列项条件列值等于,表 列项设置 条件值的下拉选项。如果不等于就显示 其他 下拉选项

想实现统一在后台管理所有表的下拉选项。可设置条件控制显示不同的下拉选项
[此贴子已经被作者于2020/1/20 16:15:28编辑过]

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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
  发帖心情 Post By:2020/1/20 16:20:00 [显示全部帖子]

15楼图片,左上角,下拉目录树,对应列项条件列值等于 办公室 手机,才对

列项条件列  中国,第一列下拉正确目录树是  广东 广西 福建

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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
回复:(有点蓝)Dim dr As DataRowIf e.OldRange.Row...  发帖心情 Post By:2020/1/20 16:55:00 [显示全部帖子]

放在enter或打开窗口后事件,里面都报错

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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
回复:(有点蓝)20楼的代码和enter事件以及窗口有什么...  发帖心情 Post By:2020/1/20 18:00:00 [显示全部帖子]

群主,放在项目AfterSelChange里,表单元格下拉筛选正确,但是窗口控件下拉筛选失效,辛苦再帮忙了
[此贴子已经被作者于2020/1/20 18:14:40编辑过]

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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
  发帖心情 Post By:2020/1/21 10:11:00 [显示全部帖子]

群主20楼代码放在控件enter里面报错,不会调试,辛苦帮忙了。
手机UC浏览器已上传 报错图片,论坛显示不了

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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
  发帖心情 Post By:2020/1/21 11:56:00 [显示全部帖子]

enter事件代码,报错辛苦群主了
If e.Sender.Gettype.name = "ComboBox" AndAlso e.Sender.BindingField > "" Then
    
    Dim ary() As String = e.Sender.BindingField.Split(".")
    Dim filter As String = "表名 = '" & ary(0) & "' and 列名 = '" & ary(1) & "' and 下拉选项 Is not null and 停用=false  and ','+条件值+',' like '%," & e.Table.Rows(e.NewRange.RowSel)("列项条件列") & ",%'"
    Dim fdr As DataRow = DataTables("列项设置").Find(filter)
    If fdr IsNot Nothing
        e.sender.ComboList = fdr("下拉选项")
        e.Sender.AllowEditValue = fdr("允许编辑")
    End If
    
    If fdr Is Nothing
        If dr("多值字段")=True Then
            DataTables(e.Table.name).DataCols(c.name).ExtendType = ExtendTypeEnum.Values
        ElseIf dr("多值字段")=False Then
            DataTables(e.Table.name).DataCols(c.name).ExtendType = ExtendTypeEnum.none
        End If
        e.sender.AllowDirectType=dr("允许编辑")
        e.sender.ComboList = =dr("下拉选项")
    Else
        e.sender.combolist=""
    End If
    
End If


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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
  发帖心情 Post By:2020/1/21 15:08:00 [显示全部帖子]

群主辛苦再帮忙了,还是有问题
If e.Sender.Gettype.name = "ComboBox" AndAlso e.Sender.BindingField > "" Then
    
    Dim ary() As String = e.Sender.BindingField.Split(".")
    Dim r As Row = Tables(ary(0)).Current
    If r IsNot Nothing Then
        Dim filter As String = "表名 = '" & ary(0) & "' and 列名 = '" & ary(1) & "' and 下拉选项 Is not null and 停用=false  and ','+条件值+',' like '%," & r("列项条件列") & ",%'"
        Dim fdr As DataRow = DataTables("列项设置").Find(filter)
        
        If fdr IsNot Nothing Then
            e.sender.ComboList = fdr("下拉选项")
            e.Sender.AllowEditValue = fdr("允许编辑")
        End If
        
        If fdr Is Nothing Then
            Dim dr As DataRow
            dr = DataTables("列项设置").Find("表名='" & ary(0) & "' and 列名='" & ary(1) & "' and 下拉选项 Is not null and 停用=false and 条件值='其他'")
            If dr IsNot Nothing Then
                If dr("多值字段")=True Then
                    DataTables(e.Table.name).DataCols(c.name).ExtendType = ExtendTypeEnum.Values
                ElseIf dr("多值字段")=False Then
                    DataTables(e.Table.name).DataCols(c.name).ExtendType = ExtendTypeEnum.none
                End If
                e.sender.AllowDirectType=dr("允许编辑")
                e.sender.ComboList = dr("下拉选项")
            Else
                e.sender.combolist=""
            End If
        End If
    End If
End If




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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
回复:(有点蓝)这段代码去掉If dr("多值字段")=True...  发帖心情 Post By:2020/1/21 15:23:00 [显示全部帖子]

去掉报错

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2020.1.19.19
错误所在事件:窗口,窗口录入下拉有问题不能限制手动录入,Enter
详细错误信息:
未找到类型“ComboBox”的公共成员“AllowDirectType”。

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


加好友 发短信
等级:三尾狐 帖子:660 积分:5180 威望:0 精华:0 注册:2019/7/26 12:54:00
回复:(有点蓝)改为AllowEditValue e.Sender.A...  发帖心情 Post By:2020/1/21 16:01:00 [显示全部帖子]

If e.Sender.Gettype.name = "ComboBox" AndAlso e.Sender.BindingField > "" Then
    
    Dim ary() As String = e.Sender.BindingField.Split(".")
    Dim r As Row = Tables(ary(0)).Current
    If r IsNot Nothing Then
        Dim filter As String = "表名 = '" & ary(0) & "' and 列名 = '" & ary(1) & "' and 下拉选项 Is not null and 停用=false  and ','+条件值+',' like '%," & r("列项条件列") & ",%'"
        Dim fdr As DataRow = DataTables("列项设置").Find(filter)
        
        If fdr IsNot Nothing Then
            e.sender.ComboList = fdr("下拉选项")
            e.Sender.AllowEditValue = fdr("允许编辑")
        End If
        
        If fdr Is Nothing Then
            Dim dr As DataRow
            dr = DataTables("列项设置").Find("表名='" & ary(0) & "' and 列名='" & ary(1) & "' and 下拉选项 Is not null and 停用=false and 条件值='其他'")
            If dr IsNot Nothing Then
                'If dr("多值字段")=True Then
                    'DataTables(e.Table.name).DataCols(c.name).ExtendType = ExtendTypeEnum.Values
                'ElseIf dr("多值字段")=False Then
                    'DataTables(e.Table.name).DataCols(c.name).ExtendType = ExtendTypeEnum.none
                'End If
                e.Sender.AllowEditValue = fdr("允许编辑")
                e.sender.ComboList = dr("下拉选项")
            Else
                e.sender.combolist= " "
            End If
        End If
    End If
End If

群主
当 列项条件列 为空,或 列项条件列的值不在 列项设置表的条件值里,报错

.NET Framework 版本:4.0.30319.42000
Foxtable 版本:2020.1.19.19
错误所在事件:窗口,窗口录入下拉有问题不能限制手动录入,Enter
详细错误信息:
未将对象引用设置到对象的实例。


 回到顶部
总数 26 上一页 1 2 3 下一页