以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  combobox不加载表取数  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=149930)

--  作者:15666282205
--  发布时间:2020/5/15 15:51:00
--  combobox不加载表取数
老师,我用以下代码实现combobox自动获取公司名称,可是只有在加载表以后才行,我的表是启动时不加载。如何实现不加载表的时候,从后台获取公司名称呢?用的阿里云SQL.

Dim cmb As WinForm.ComboBox
cmb
= Forms("窗口1").Controls("ComboBox1")
cmb.ComboList =
DataTables("客户").GetComboListString("公司名称")


--  作者:有点蓝
--  发布时间:2020/5/15 15:56:00
--  
http://www.foxtable.com/webhelp/topics/0696.htm

ExecuteReader用于从后台提取数据生成一个临时的DataTable,而这个DataTable只存在于代码的运行过程中,不会以表的形式呈现给用户。

示例一

同样,假定窗口中有一个组合框(ComboBox),希望这个窗口能够列出订单表所有的客户名称,如果订单表采用动态加载,或者根本没有加载,那么显然无法从订单表中获得所有客户名称,只能利用ExecuteReader直接从后台提取:

Dim cmd As New SQLCommand
Dim
 dt As DataTable
Dim
 cmb As WinForm.ComboBox
cmd.CommandText = "SELECT DISTINCT 客户 From {订单}"
dt = cmd.ExecuteReader()
cmb = e.Form.Controls(
"ComboBox1")
cmb.ComboList= dt.GetComboListString(
"客户"
)

上述代码可以设置在窗口的AfterLoad事件中。


--  作者:15666282205
--  发布时间:2020/5/15 16:16:00
--  
.NET Framework 版本:4.0.30319.1026
Foxtable 版本:2019.6.18.1
错误所在事件:
详细错误信息:
Microsoft Jet 数据库引擎找不到输入表或查询 \'~TMPCLP合同信息\'。 确定它是否存在,以及它的名称的拼写是否正确。

老师,提示这个错误

--  作者:有点蓝
--  发布时间:2020/5/15 16:26:00
--  
http://www.foxtable.com/webhelp/topics/2344.htm