以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助] 列表项目问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=57559)

--  作者:wumingrong1
--  发布时间:2014/9/26 16:31:00
--  [求助] 列表项目问题
我有某列的内容存在有“|”的内容;比如:“程控交换机|ZXJ10B”。那么如果我有一个控件的列表项目来源于该列,那么我的列表项目将会自动把该内容分割为:“程控交换机”  和   “ZXJ10B” 做为列表内容。我该如何更改命令才能实现显示完整的“程控交换机|ZXJ10B”做为列表内容?

e.Sender.ComboList = DataTables("机房板件端口表").GetComboListString("设备名称型号 ")

--  作者:菲舍尔
--  发布时间:2014/9/26 16:33:00
--  

木有其他办法的,你只能把你字段内容中的“|”用其他符号代替

 


--  作者:有点甜
--  发布时间:2014/9/26 16:33:00
--  
 不能有 | ,必须替换成其他字符。
--  作者:wumingrong1
--  发布时间:2014/9/26 21:59:00
--  
如果我把它换成: “ 程控交换机 * ZXJ10B ”   这样的格式;为什么在查询时却提示:没有找到需要查询的内容

查询按钮命令:

vars("查询") = True
Dim flt As String
For Each c As Col In Tables("机房板件端口表").Cols
    For Each ctl As WinForm.Control In e.Form.Controls
        If c.Name = ctl.Name Then
            If e.Form.Controls(ctl.Name).Text > "" Then
                If c.IsDate Then
                    flt + = " And " & c.Name & " = #" & e.Form.Controls(ctl.Name).Text & "#"
                ElseIf c.IsString Then
                    flt + = " And " & c.Name & " Like \'%" & e.Form.Controls(ctl.Name).Text & "%\'"
                End If
            End If
        End If
    Next
Next
If flt > "" Then
    flt = flt.SubString(5)
Else
    MessageBox.Show("请输入查询条件")
End If
Tables("机房板件端口表").Filter = flt
vars("查询") = False
[此贴子已经被作者于2014-9-28 8:57:19编辑过]

--  作者:wumingrong1
--  发布时间:2014/9/28 14:48:00
--  
帮忙看一下4楼的问题
--  作者:有点甜
--  发布时间:2014/9/28 14:51:00
--  
vars("查询") = True
Dim flt As String
For Each c As Col In Tables("机房板件端口表").Cols
    For Each ctl As WinForm.Control In e.Form.Controls
        If c.Name = ctl.Name Then
            If e.Form.Controls(ctl.Name).Text > "" Then
                If c.IsDate Then
                    flt + = " And " & c.Name & " = #" & e.Form.Controls(ctl.Name).Text & "#"
                ElseIf c.IsString Then
                    flt + = " And " & c.Name & " Like \'%" & e.Form.Controls(ctl.Name).Text.Replace("*", "[*]") & "%\'"
                End If
            End If
        End If
    Next
Next
If flt > "" Then
    flt = flt.SubString(5)
Else
    MessageBox.Show("请输入查询条件")
End If
Tables("机房板件端口表").Filter = flt
vars("查询") = False

--  作者:Bin
--  发布时间:2014/9/28 14:51:00
--  
不能用* 号  非要用加上  e.Form.Controls(ctl.Name).Text.replace("*","[*]")
--  作者:wumingrong1
--  发布时间:2017/6/27 20:01:00
--  

我想实现只显示 今天日期 和 昨天日期 在选项框中;我的命令该怎么写?

 

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20170627141829955.jpg
图片点击可在新窗口打开查看

--  作者:有点蓝
--  发布时间:2017/6/27 20:32:00
--  
e.sender.combolist = format(dt.adddays(-1),"yyyy-MM-dd") & "|" & format(dt,"yyyy-MM-dd")

题外话:像 & "" 这种和空字符串拼接就没有必要了,完全多余。

--  作者:wumingrong1
--  发布时间:2019/9/25 10:23:00
--  

ComboBox控件的 Enter 中写有以下这个命令可以正常使用

e.Sender.ComboList = DataTables("岗位执行操作维护表").GetComboListString("列表项目1" ,"表名 = \'批量数据灵活匹配数据表\' and  执行类型  =  \'" & User.Name & "\'  ")

但是使用以下命令直接到数据库中去读取数据就读取不到、这是为什么?

e.Sender.ComboList = DataTables("岗位执行操作维护表").sqlGetComboListString("列表项目1" ,"表名 = \'批量数据灵活匹配数据表\' and  执行类型  =  \'" & User.Name & "\'  ")