Foxtable(狐表)用户栏目专家坐堂 → [原创]求助报表数值小数位问题


  共有4071人关注过本帖平板打印复制链接

主题:[原创]求助报表数值小数位问题

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


加好友 发短信
等级:幼狐 帖子:73 积分:661 威望:0 精华:0 注册:2017/12/8 20:07:00
  发帖心情 Post By:2018/1/24 22:13:00 [只看该作者]

老师您好:之前我忽略了一个问题,“客户往来明细表”中,原来设定的往来查询“开始日期”是月初1日,结束日期是月底(可以跨月查询),这样的话,“上期余额”是正确的。现在我想到一个问题,比如截图1中李四的客户“杭州市”12月20日到12月25日都有业务往来

图片点击可在新窗口打开查看此主题相关图片如下:截图1.png
图片点击可在新窗口打开查看
我在查询时“开始日期”选12月21日,“结束日期”选12月25日

图片点击可在新窗口打开查看此主题相关图片如下:截图2.png
图片点击可在新窗口打开查看
生成报表时“上期余额”无法显示12月20日的往来

图片点击可在新窗口打开查看此主题相关图片如下:截图3.png
图片点击可在新窗口打开查看
报表事件中的代码能帮我改下吗?“上期余额”显示为“客户往来查询”中“开始日期”控件前一天及之前的余额。
Select Case e.Book.TempLate
    Case "客户往来明细账"
        If Forms("客户往来查询").Opened AndAlso Forms("客户往来查询").Controls("startdate").text > ""
            Dim Filter As String = "业务员 = '" & e.DataRow("业务员") & "' and 客户名称 = '" & e.DataRow("客户名称") & "'"
            Dim d As Date = Forms("客户往来查询").Controls("startdate").value
            If  d.Month > 1 Then
                Dim fd As Date = new Date(d.Year,1,1)
                Dim ld As Date = new Date(d.Year,d.Month,1)
                Filter &= " and 日期 >= #" & fd & "# and 日期 < #" & ld & "#"
            End If
            Dim s1 = DataTables("客户往来明细表").Compute("Sum(应收账款)",Filter)
            Dim s2 = DataTables("客户往来明细表").Compute("Sum(已收账款)",Filter)
            vars("上期余额") = s1 - s2
            vars("应收余额") = s1 - s2
        Else
            vars("应收余额") = 0
            vars("上期余额") = 0
        End If
End Select

谢谢老师!





 回到顶部
总数 25 1 2 3 下一页