以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  菜单中组合框动态获取表中对应列数据产生的问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=187945)

--  作者:HANZHIGANG
--  发布时间:2023/8/22 15:58:00
--  菜单中组合框动态获取表中对应列数据产生的问题
以下代码用于菜单功能区中列表框中数据动态列表项目的取得
Dim itm As Object
For Each itm In RibbonTabs(RibbonTabs.SelectedTab.Name).Groups(RibbonTabs.SelectedTab.name).Items
    If RibbonTabs.SelectedTab.Name <> "主界面" Then
        With RibbonTabs(RibbonTabs.SelectedTab.Name).Groups(RibbonTabs.SelectedTab.Name).Items(itm.name)
            If TypeOf itm Is RibbonMenu.ComboBox Then
                .Items.Clear

                For Each c As String In DataTables(RibbonTabs.SelectedTab.Name).SQLGetValues(itm.name) 
               上面这句代码可以取得包括逻辑值TRUE和false作为列表项目,是没有问题的,只不过列表项目无法排序

               For Each c As String In DataTables(RibbonTabs.SelectedTab.Name).SQLGetValues(itm.name, "", itm.name)
               但是改为上面这句后,其他都可以取得值,并且进行了排序,但是逻辑列的值就取不出来了。
                    Dim b As New RibbonMenu.Button(c)
                    b.Text = c
                    .Items.Add(b)
                Next
            End If
        End With
    End If
Next

老师,上面黑字体的部分怎么解决呢?请指导

--  作者:有点蓝
--  发布时间:2023/8/22 16:35:00
--  
我测试没有问题


图片点击可在新窗口打开查看此主题相关图片如下:1.png
图片点击可在新窗口打开查看


--  作者:HANZHIGANG
--  发布时间:2023/8/23 9:36:00
--  
老师,我也测了一下,用内部表是没问题的,用云服务器上的SQLSEVER数据库就代不出来了
这个问题如何解决?请老师指导

--  作者:有点蓝
--  发布时间:2023/8/23 9:56:00
--  
算是一个bug。因为SqlServer的逻辑列类型是bit,拼接的SQL有问题。问题已反馈

不过逻辑列也就2个选项,建议判断为逻辑列直接写死吧

--  作者:HANZHIGANG
--  发布时间:2023/8/23 10:04:00
--  
老师指导一下如何判断列类型
--  作者:有点蓝
--  发布时间:2023/8/23 10:06:00
--  
http://www.foxtable.com/webhelp/topics/1356.htm