以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 关于后台数据表的调用问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=194612) |
|
-- 作者:刘效功天津 -- 发布时间:2024/12/27 15:25:00 -- 关于后台数据表的调用问题 老师好,我想设计一个输出 需要的表名 的窗口 ,在窗口的AfterLoad事件中写了如下代码’ <工程造价汇总表>是后台数据表 问题:当我把<工程造价汇总表>加载进来时,下面的代码就能正常起作用,在窗口中能正常显示所需要的表名,如果是不把<工程造价汇总表>加载进来就报错,说找不到<工程造价汇总表>,可是我明明用SQLfind语句在后台数据表中查找的,并且用LOAD加载了数据了 为啥还不起作用呢,还是说找不到表 ,请老师看看代码是哪儿出问题了 谢谢老师 Dim lb As WinForm.CheckedListBox = e.Form.Controls("lbk") Dim bm As String Dim strs() As String = {"全隐框玻璃幕墙单价分析表", "全明框玻璃幕墙单价分析表", "半明半隐框玻璃幕墙单价分析表"} For Each str As String In strs Dim dr As DataRow If DataTables.Contains("工程造价汇总表") Then dr = DataTables("工程造价汇总表").FIND("工程量 > 0 and 项目内容辅助列=\'" & str & " \'") Else dr = DataTables("工程造价汇总表").SQLFIND("工程量 > 0 and 项目内容辅助列=\'" & str & " \'") End If If dr IsNot Nothing Then \'按条件加载 < 工程造价汇总表 > 的数据 DataTables("工程造价汇总表").LoadFilter = "工程量 > 0" DataTables("工程造价汇总表").Load() bm = bm & "|" & str End If Next lb.ComboList = bm |
|
-- 作者:有点蓝 -- 发布时间:2024/12/27 15:37:00 -- 只有把<工程造价汇总表>加载进来,才能使用DataTables("工程造价汇总表")这种用法 DataTables只能用于已经加载的表
|
|
-- 作者:刘效功天津 -- 发布时间:2024/12/27 15:42:00 -- 老师好,我下面的代码不是已经加载了吗 DataTables("工程造价汇总表").LoadFilter = "工程量 > 0"
DataTables("工程造价汇总表").Load() |
|
-- 作者:刘效功天津 -- 发布时间:2024/12/27 15:46:00 -- 不明白啥意思,咱们得SQLfind SQLSELECT 等方法不是都针对后台数据的吗,还有咱们得datadatble(表名).load 这不就是把后台数据表加载进来了吗,搞不清楚界限,请老师赐教 |
|
-- 作者:刘效功天津 -- 发布时间:2024/12/27 15:51:00 -- DataTables("工程造价汇总表").LoadFilter = "工程量 > 0" DataTables("工程造价汇总表").Load() 上面的代码数据都加载进来了,不就是表也加载了,如果表还没加载,数据就无法加载进来,不知我理解的对不对
|
|
-- 作者:有点蓝 -- 发布时间:2024/12/27 15:52:00 -- 加载表数据和加载表是两回事。 下面几种情况表示没有加载表: 1、如果是外部表,没有在外部表管理中添加 2、外部表在BeforeLoadOuterTable事件使用e.cancel=true取消加载 3、内部表在BeforeLoadInnerTable件使用e.cancel=true取消加载
|
|
-- 作者:刘效功天津 -- 发布时间:2024/12/27 15:58:00 -- 老师好,我搞得有点懵,后台数据表没加载,那加载后台数据表像
|
|
-- 作者:有点蓝 -- 发布时间:2024/12/27 16:16:00 -- 对呀,7楼的代码是用来加载表数据的,如果表都没有加载,加载进来的数据它存放到哪儿呢。所以必须先加载表,然后才能加载表数据 |
|
-- 作者:刘效功天津 -- 发布时间:2024/12/27 16:20:00 -- 明白了,谢谢老师指点,解惑 |
|
-- 作者:刘效功天津 -- 发布时间:2024/12/27 16:28:00 -- 老师好,还有点问题请教您,如果我把后台数据表加载进来,DataTables.Load(" 表名") 这样一加载,就把该表名的表和其包含的数据都加载进来了,对吧,那加载后台数据的方法: datatables(" 表名").filer="*****" 和DataTables(" 表名").Load()不就没用了吗? |