老师好,我想设计一个输出 需要的表名 的窗口 ,在窗口的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
只有把<工程造价汇总表>加载进来,才能使用DataTables("工程造价汇总表")这种用法
DataTables只能用于已经加载的表
老师好,我下面的代码不是已经加载了吗
DataTables("工程造价汇总表").LoadFilter = "工程量 > 0" DataTables("工程造价汇总表").Load()
不明白啥意思,咱们得SQLfind SQLSELECT 等方法不是都针对后台数据的吗,还有咱们得datadatble(表名).load 这不就是把后台数据表加载进来了吗,搞不清楚界限,请老师赐教
DataTables("工程造价汇总表").LoadFilter = "工程量 > 0" DataTables("工程造价汇总表").Load()
上面的代码数据都加载进来了,不就是表也加载了,如果表还没加载,数据就无法加载进来,不知我理解的对不对
老师好,我搞得有点懵,后台数据表没加载,那加载后台数据表像
DataTables("工程造价汇总表").LoadFilter = "工程量 > 0" DataTables("工程造价汇总表").Load() 这样的加载后台数据代码有啥意义,加载进来的数据它存放到哪儿,它不得有个数据表做依托吗,数据表都没有,它加载进来放哪儿呀,搞不清理加载数据表 和加载数据二者之间的内在关系,请老师赐教,
|
对呀,7楼的代码是用来加载表数据的,如果表都没有加载,加载进来的数据它存放到哪儿呢。所以必须先加载表,然后才能加载表数据
老师好,还有点问题请教您,如果我把后台数据表加载进来,DataTables.Load(" 表名") 这样一加载,就把该表名的表和其包含的数据都加载进来了,对吧,那加载后台数据的方法: datatables(" 表名").filer="*****" 和DataTables(" 表名").Load()不就没用了吗?