以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- [求助]主从表关联查询问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=44432)
|
-- 作者:wangnovel
-- 发布时间:2013/12/30 22:59:00
-- [求助]主从表关联查询问题
说明:1、有两对表,都是主从关系,主表1和从表1根据ID1关联;主表2和从表2根据ID2关联 2、部门、姓名、ID1和ID2都是字符型;年份和月份都是整型;出勤数为浮点型
[此贴子已经被作者于2013-12-30 22:59:25编辑过]
|
-- 作者:有点甜
-- 发布时间:2013/12/30 23:04:00
--
呃,直接查找不就行了?各个表之间不是可以灵活查找的么?
|
-- 作者:wangnovel
-- 发布时间:2013/12/30 23:16:00
--
一开始也认为是容易的,但试着写了一下,不成功,请指教,最好给个具体的代码,先谢了
|
-- 作者:狐狸爸爸
-- 发布时间:2013/12/31 8:06:00
--
这个没有理由不可以的哦,从表1的DatacolChanged事件:
If e.DataCol.name = "姓名" Then Dim dr1 As DataRow Dim dr2 As DataRow Dim dr3 As DataRow dr1 = DataTables("主表1").Find("id1 = \'" & e.DataRow("id1") & "\'") If dr1 IsNot Nothing Then Dim y As Integer = e.DataRow("年份") Dim m As Integer = e.DataRow("月份") If m =1 Then y = y -1 m = 12 Else m = m -1 End If dr2 = DataTables("主表2").Find("姓名 = \'" & e.DataRow("姓名") & "\' And 年份 = " & y & " and 月份 = " & m) If dr2 IsNot Nothing Then dr3 = DataTables("从表2").Find("id2 = \'" & dr2("id2") & "\'") If dr3 IsNot Nothing Then e.DataRow("上月出勤天数") = dr3("出勤数") End If End If End If End If
|
-- 作者:wangnovel
-- 发布时间:2013/12/31 9:58:00
--
ok,问题解决了,谢谢狐爸和有点甜!
|