Foxtable(狐表)用户栏目专家坐堂 → 窗口列表项目排除空值


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

主题:窗口列表项目排除空值

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
窗口列表项目排除空值  发帖心情 Post By:2010/1/16 9:28:00 [显示全部帖子]

请DX帮我看看,窗口组合框列表项目怎么不能排除空置,我代码哪里有问题,谢谢。
Dim cmb As WinForm.ComboBox = e.form.Controls("精度")
cmb.ComboList = DataTables("基础表").GetComboListString("精度","精度 = 'IsNot Nothing'")
Dim cmb3 As WinForm.ComboBox = e.form.Controls("装夹难度")
cmb3.ComboList = DataTables("基础表").GetComboListString("装夹","装夹 = 'IsNot Nothing'")
Dim cmb1 As WinForm.ComboBox = e.form.Controls("钢性")
cmb1.ComboList = DataTables("基础表").GetComboListString("钢性","钢性 = 'IsNot Nothing'")

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2010/1/16 13:15:00 [显示全部帖子]

还是不行我两种都试了:
第一种:
Dim cmb As WinForm.ComboBox = e.form.Controls("精度")
cmb.ComboList = DataTables("基础表").GetComboListString("精度","精度 = 'Is Not Null '")
Dim cmb3 As WinForm.ComboBox = e.form.Controls("装夹难度")
cmb3.ComboList = DataTables("基础表").GetComboListString("装夹","装夹 = 'Is Not Null '")
Dim cmb1 As WinForm.ComboBox = e.form.Controls("钢性")
cmb1.ComboList = DataTables("基础表").GetComboListString("钢性","钢性 = 'Is Not Null '")
第二种:
Dim cmb As WinForm.ComboBox = e.form.Controls("精度")
cmb.ComboList = DataTables("基础表").GetComboListString("精度","精度 Is Not Null ")
Dim cmb3 As WinForm.ComboBox = e.form.Controls("装夹难度")
cmb3.ComboList = DataTables("基础表").GetComboListString("装夹","装夹 Is Not Null ")
Dim cmb1 As WinForm.ComboBox = e.form.Controls("钢性")
cmb1.ComboList = DataTables("基础表").GetComboListString("钢性","钢性 Is Not Null ")

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2010/1/16 15:08:00 [显示全部帖子]

我这样也是过了,也是不行:
Dim cmb As WinForm.ComboBox = e.form.Controls("精度")
cmb.ComboList = DataTables("基础表").GetComboListString("精度")
Dim cmb3 As WinForm.ComboBox = e.form.Controls("装夹难度")
cmb3.ComboList = DataTables("基础表").GetComboListString("装夹 ")
Dim cmb1 As WinForm.ComboBox = e.form.Controls("钢性")
cmb1.ComboList = DataTables("基础表").GetComboListString("钢性")

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2010/1/16 15:29:00 [显示全部帖子]

我是用5楼代码的结果,好像3个代码都会一样的结果,请看图片:

图片点击可在新窗口打开查看此主题相关图片如下:打开窗口时报错图片.bmp
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:点确定能打开窗口,请看精度下拉项目.bmp
图片点击可在新窗口打开查看

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2010/1/16 15:55:00 [显示全部帖子]

精度列是字符型,结果一样的,在表中属性PrepareEdit事件中设置能正常使用,但我现在想做成窗口录入。
If e.IsFocusCell Then
    If e.Col.Name = "难度情况_精度" Then
        e.Col.Combolist = DataTables("基础表").GetComboListString("精度")
    End If
    If e.Col.Name = "难度情况_切削" Then
        e.Col.Combolist = DataTables("基础表").GetComboListString("切削")
    End If
    If e.Col.Name = "难度情况_装夹" Then
        e.Col.Combolist = DataTables("基础表").GetComboListString("装夹")
    End If
    If e.Col.Name = "难度情况_钢性" Then
        e.Col.Combolist = DataTables("基础表").GetComboListString("钢性")
    End If
    If e.Col.Name = "工序_班组" Then
        e.Col.Combolist = DataTables("基础表").GetComboListString("班组")
    End If
    If e.Col.Name = "工艺_工作中心组" Then
        e.Col.Combolist = DataTables("基础表").GetComboListString("工作中心组","[班组] = '" & e.Row("工序_班组") & "'")
    End If
End If

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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2010/1/16 16:05:00 [显示全部帖子]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:铣床产品工艺录入.rar


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


加好友 发短信
等级:三尾狐 帖子:790 积分:5695 威望:0 精华:0 注册:2009/4/17 18:42:00
  发帖心情 Post By:2010/1/16 16:30:00 [显示全部帖子]

呵呵,可能是我昨天刚开始代码出错,就改成在控件属性中设置来源于数据表了,忘了改回来,谢谢C版

 回到顶部