以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 理解下狐爸的动态另载数据方法,如有不对请指正。 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=48877) |
-- 作者:ndxfke -- 发布时间:2014/4/8 9:38:00 -- 理解下狐爸的动态另载数据方法,如有不对请指正。 关于动态加载外部数据,我一直没整太明白。 论坛里看了一些贴子,感觉有点众说纷云。刚找到狐爸一个例子,如下: http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=2127&replyID=&skin=1我来理解下步骤,如有不对,请各位大狐指正。 同时也是种分享,希望对动态加载不熟悉的狐友们也是一种帮助。 1、在 BeforeLoadOuterTable 事件中,利用一种不成立的条件,让数据加载为空。如果多表,就利用循环的方法来不加载数据; If e.DataTableName = "订单字段"
Then e.SelectString = "Select * From 订单表 Where 编号字段 < 0" End If 疑惑点: .写了以上事件代码,还需要在【数据表】菜单 —【外部数据表】中设置加载条件吗? 2、数据调用时(不管任何事件中),用SQL语句来加载你要的数据; Dim cmd As New SQLCommand
Dim dt As DataTable cmd.C cmd.CommandText = "SELECT
DISTINCT 产品字段,客户字段 From 订单表名" dt = cmd.ExecuteReader() 疑惑点: .执行(1)BeforeLoadOuterTable 的事件代码,通过loadfilter的语句,是加载不进来数据的? .每执行(2)的加载代码,数据表的所有数据都会被重写?(也就数据表中只存在,当前加载语句加载进来的数据) |
-- 作者:Bin -- 发布时间:2014/4/8 9:40:00 -- 1.不需要 2. 什么重写? 你只是把数据库的表加载到 DT这个变量来而已.
|
-- 作者:ndxfke -- 发布时间:2014/4/8 9:51:00 -- 2. 什么重写? 你只是把数据库的表加载到 DT这个变量来而已. 哦,这个明白。 如果我想把外部数据源中的{订单}数据,加载到数据表里。是不是就loadfilter 来加载呢?
|
-- 作者:Bin -- 发布时间:2014/4/8 9:56:00 -- 在表里加载其他的表, 可以使用FILL |
-- 作者:ndxfke -- 发布时间:2014/4/8 10:08:00 -- 哦,我再看看。 |