我现在开始玩动态加载数据,有一些问题还没搞懂,请求帮助:
有一表,我原来在项目属性
BeforeLoadOuterTable事件没有代码。
原窗口
AfterLoad事件代码:
Tables("产品目录").OpenView("车间主管")
Tables("产品目录.产品工序").OpenView("车间主管")
Tables("产品目录.产品工序.产品工艺").OpenView("车间主管")
e.Form.Controls("TreeView1").BuildDataTree("产品目录", "", "客户", "机型", "所属部分","图号")
原目录树
NodeMouseClick事件代码:
Dim Value() As String
Value = e.Node.FullPath.Split("\")
Select Case e.Node.Level
Case 0
Tables("产品目录").Filter = "[客户] = '" & Value(0) & "'"
Case 1
Tables("产品目录").Filter = "[客户] = '" & Value(0) & "' And [机型] = '" & Value(1) & "'"
Case 2
Tables("产品目录").Filter = "[客户] = '" & Value(0) & "' And [机型] = '" & Value(1) & "' And [所属部分] = '" & Value(2) & "'"
Case 3
Tables("产品目录").Filter = "[客户] = '" & Value(0) & "' And [机型] = '" & Value(1) & "' And [所属部分] = '" & Value(2) & "'And [图号] = '" & Value(3) & "'"
End Select
原已文本框
TextChanged代码:
with e.Form
Dim dst As WinForm.Table = .Controls("Table1")
Dim txb1 As WinForm.TextBox = .Controls("TextBox1")
Tables("产品目录").Filter = "[图号] Like '*" & txb1.text & "*'or [名称] Like '*" & txb1.text & "*'"
end with修改后:我在项目属性
BeforeLoadOuterTable事件加入代码:
If e.DataTableName = "产品目录" Then
e.SelectString = "Select * From 产品目录 Where _Identify < 0"
End If
在窗口
AfterLoad代码修改成:
Dim cmd As New SQLCommand
Dim dt As DataTable
cmd.C
cmd.CommandText = "SELECT DISTINCT 客户,机型,所属部分,图号 From 产品目录"
dt = cmd.ExecuteReader()
Dim trv As WinForm.TreeView = e.Form.Controls("TreeView1")
trv.BuildDataTree(dt, "","客户", "机型","所属部分","图号")
在目录树
NodeMouseClick事件代码修改成:
Dim Value() As String
Dim Filter As string
Value = e.Node.FullPath.Split("-:special:1:-)
Select Case e.Node.Level
Case 0
Filter = "[客户] = '" & Value(0) & "'"
Case 1
Filter = "[客户] = '" & Value(0) & "' And [机型] = '" & Value(1) & "'"
Case 2
Filter = "[客户] = '" & Value(0) & "' And [机型] = '" & Value(1) & "' And [所属部分] = '" & Value(2) & "'"
Case 3
Filter = "[客户] = '" & Value(0) & "' And [机型] = '" & Value(1) & "' And [所属部分] = '" & Value(2) & "'And [图号] = '" & Value(3) & "'"
End Select
DataTables("产品目录").LoadFilter = Filter
DataTables("产品目录").Load()以上目录树能正常执行,但是现在有2个问题:
1.在窗口
AfterLoad怎样加表视图,原视图代码报错。
2.文本框代码应怎么写。
谢谢
表视图现在又没问题了,还有,我的窗口有3个表,由以下视图代码可以看出,如果关联表也用动态加载数据,代码应该怎么写。谢谢
Tables("产品目录").OpenView("车间主管")
Tables("产品目录.产品工序").OpenView("车间主管")
Tables("产品目录.产品工序.产品工艺").OpenView("车间主管")
现在3个表都是用
Normal类型绑定表非副本,但是非副本用行颜色时,一定要选突出,这样不好看,有没有其他解决方案,谢谢
[此贴子已经被作者于2010-1-29 10:13:13编辑过]
关联表动态加载筛选行思路:筛选光标所在产品目录表图号的行,代码应怎么写,放哪里,谢谢
多谢狐爸提供代码,但是不成功,我是在窗口中加以组合框,并绑定到产品目录表图号中,这样不行,能不能提供一个加载关联行的代码,谢谢
6楼的要求不能满足我的要求,还是做当选定主表产品目录时,两个关联表子表都加载图号列相同的行,谢谢
1、逻辑问题要自己处理,我只是帮你修改了语法问题。
2、提问题要抓住重点,要让人容易理解,最好是有简单的例子。