Foxtable(狐表)用户栏目专家坐堂 → [求助] 同表不同列的数据如何引用呢?


  共有3159人关注过本帖树形打印复制链接

主题:[求助] 同表不同列的数据如何引用呢?

帅哥哟,离线,有人找我吗?
有点甜
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/25 15:20:00 [只看该作者]

代码

 

If e.DataCol.name = "客户代号" Then
    Dim dr As DataRow = e.DataRow
    Dim filter As String = "客户代号 = '" & e.DataRow("客户代号") & "' And 收款日期 <= #" & e.DataRow("制单日期") & "# and 已入账 = False "
    Dim filter2 As String = "客户代号 = '" & e.DataRow("客户代号") & "' And 制单日期 < #" & new Date(e.DataRow("制单日期").Year, e.DataRow("制单日期").Month, 1) & "#"
    dr("本月已收金额") = DataTables("收款主表").Compute("sum(收款金额)",filter)
    Dim fdr As DataRow = e.DataTable.find(filter2, "制单日期 desc")
    If fdr IsNot Nothing Then
        fdr("上月结余金额") = fdr("累计应收金额")
    End If
    DataTables("收款主表").ReplaceFor("已入账", True, filter)
End If 


 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/8/25 16:12:00 [只看该作者]

代码试完是这样的:

图片点击可在新窗口打开查看此主题相关图片如下:jdfw.gif
图片点击可在新窗口打开查看


 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/8/25 16:13:00 [只看该作者]

如图,变化的是上个月的行,而不是当前行

 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/8/25 16:19:00 [只看该作者]

已入账而且还是false

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/25 16:24:00 [只看该作者]

 呵呵,写错了,

 

If e.DataCol.name = "客户代号" Then
    Dim dr As DataRow = e.DataRow
    Dim filter As String = "客户代号 = '" & e.DataRow("客户代号") & "' And 收款日期 <= #" & e.DataRow("制单日期") & "# and 已入账 = False "
    Dim filter2 As String = "客户代号 = '" & e.DataRow("客户代号") & "' And 制单日期 < #" & new Date(e.DataRow("制单日期").Year, e.DataRow("制单日期").Month, 1) & "#"
    dr("本月已收金额") = DataTables("收款主表").Compute("sum(收款金额)",filter)
    Dim fdr As DataRow = e.DataTable.find(filter2, "制单日期 desc")
    If fdr IsNot Nothing Then
        dr("上月结余金额") = fdr("累计应收金额")
    End If
    DataTables("收款主表").ReplaceFor("已入账", True, filter)
End If


 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/8/25 17:39:00 [只看该作者]

“上月结余金额”列可以了,谢谢!但是"本月已收金额"未有改变,值为空。收款主表中的已入账也没有变true。请问是什么原因呢?

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/8/25 18:00:00 [只看该作者]

代码

 

If e.DataCol.name = "客户代号" Then
    Dim dr As DataRow = e.DataRow
    Dim d As Date = new Date(e.DataRow("制单日期").Year, e.DataRow("制单日期").Month, 1)
    Dim filter As String = "客户代号 = '" & e.DataRow("客户代号") & "' And 收款日期 >= #" & d & "# and 收款日期 < #" & d.addmonths(1) & "# and 已入账 = False "
    Dim filter2 As String = "客户代号 = '" & e.DataRow("客户代号") & "' And 制单日期 < #" & d & "#"
    dr("本月已收金额") = DataTables("收款主表").Compute("sum(收款金额)",filter)
    Dim fdr As DataRow = e.DataTable.find(filter2, "制单日期 desc")
    If fdr IsNot Nothing Then
        dr("上月结余金额") = fdr("累计应收金额")
    End If
    DataTables("收款主表").ReplaceFor("已入账", True, filter)
End If


 回到顶部
美女呀,离线,留言给我吧!
rophy0952
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:581 积分:4989 威望:0 精华:0 注册:2014/6/12 14:55:00
  发帖心情 Post By:2014/8/26 8:03:00 [只看该作者]

嗯,可以了,谢谢有点甜!

 回到顶部
总数 18 上一页 1 2