以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]如何以列值为条件自动提取其它表中的值  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=102064)

--  作者:yangxiong
--  发布时间:2017/6/12 21:04:00
--  [求助]如何以列值为条件自动提取其它表中的值

请求解决:如何实现(例表见附件)

专柜费用表中“水表起码”“电表起码”均按本表中相同“商户名称”和“抄表日期”的月份的上一个月份为条件,提取“费用总表”中对应的“水表止码”“电表止码”中的值。谢谢!

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目2.rar

[此贴子已经被作者于2017/6/12 21:06:16编辑过]

--  作者:有点蓝
--  发布时间:2017/6/12 21:33:00
--  
专柜费用表DataColChanged事件

Select Case e.DataCol.Name
    Case "商户名称","抄表日期"
        If e.DataRow.IsNull("商户名称") = False AndAlso e.DataRow.IsNull("抄表日期") = False
            Dim d2 As Date = e.DataRow("抄表日期")
            Dim d As Date = d2.AddMonths(-1)
            Dim fd As Date = new Date(d.Year,d.Month,1)
            Dim ld As Date = new Date(d2.Year,d2.Month,1)
            Dim dr As DataRow = DataTables("费用总表").Find("商户名称=\'" & e.DataRow("商户名称") & "\' And 抄表日期 >= #" & fd &  "# And 抄表日期 < #" & ld & "#")
            If dr IsNot Nothing Then
                e.DataRow("水费_水表起码") = dr("水表止码")
                e.DataRow("电费_电表起码") = dr("电表止码")
            End If
        End If
End Select

--  作者:yangxiong
--  发布时间:2017/6/13 10:01:00
--  
谢谢!
--  作者:yangxiong
--  发布时间:2017/6/13 13:11:00
--  

 

[此贴子已经被作者于2017/6/13 14:27:35编辑过]

--  作者:有点色
--  发布时间:2017/6/13 14:25:00
--  

 

Dim dr As DataRow = DataTables("费用总表").Find("商户名称=\'" & e.DataRow("商户名称") & "\' And 抄表日期 < #" & ld & "#", "抄表日期 desc")