Foxtable(狐表)用户栏目专家坐堂 → 请教高效流水帐统计问题


请教高效流水帐统计问题
选择项
222222
您还未登录,不能参与。 [ 参与人数 0 人 截止时间:2041/2/10 20:05:00 | 查看参与用户]
您需要达到所设定的数值才能参与:文章 0 积分 0 魅力 0 金钱 0 威望 0
  共有6111人关注过本帖树形打印复制链接

主题:请教高效流水帐统计问题

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


加好友 发短信
等级:小狐 帖子:300 积分:2307 威望:0 精华:0 注册:2012/11/14 11:25:00
请教高效流水帐统计问题  发帖心情 Post By:2013/9/26 20:05:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:蒸发收碱.table


图片点击可在新窗口打开查看此主题相关图片如下:9月26日.jpg
图片点击可在新窗口打开查看
我使用高效流水帐模式统计每天收碱数量,出现问题是:

1、当月第一个数据不能正常统计(见项目例子)。

2、当月最后一天数据不能正常统计(曾经出现过)。

3、表中日期到24日,在今天(26日)出现月份切换(见图片)。

请教大师是什么原因?如何处理?


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


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

 看半天,理解不了你的意思。

 第一个问题解决。

 第二个问题,没有发现,25号的数据怎么就统计不正确了?

 第三个问题,你说得月份切换,是什么意思啊?你的例子未能体现

 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:蒸发收碱.table
[此贴子已经被作者于2013-9-26 20:36:03编辑过]

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


加好友 发短信
等级:小狐 帖子:300 积分:2307 威望:0 精华:0 注册:2012/11/14 11:25:00
  发帖心情 Post By:2013/9/26 20:44:00 [只看该作者]

第三个问题是:应该在日期列出现26日时才切换到下个月份,现在表中日期列只统计到24日,表相当于转换到下个月份,因为没有输入数据所以显示空白,相当于在今天(9月26日)执行了表中没有的26日,不清楚是什么原因造成的?请教

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


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

 不会啊,只有在日期列输入2013-09-26,才会筛选下一个月的数据哦。我输入2013-09-24的时候,筛选正常。

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


加好友 发短信
等级:小狐 帖子:300 积分:2307 威望:0 精华:0 注册:2012/11/14 11:25:00
  发帖心情 Post By:2013/9/26 21:07:00 [只看该作者]

我这现在就是这种情况,能不能麻烦你指导一下


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


加好友 发短信
等级:小狐 帖子:300 积分:2307 威望:0 精华:0 注册:2012/11/14 11:25:00
  发帖心情 Post By:2013/9/26 21:10:00 [只看该作者]

 

[此贴子已经被作者于2013-9-26 21:27:04编辑过]

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


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

 用下面这个gif软件,录制一段你操作情况来看看? 

 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:随时随地gif.exe.zip

[此贴子已经被作者于2013-9-26 21:15:24编辑过]

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


加好友 发短信
等级:小狐 帖子:300 积分:2307 威望:0 精华:0 注册:2012/11/14 11:25:00
  发帖心情 Post By:2013/9/26 21:48:00 [只看该作者]

为什么  If drs.Count = 1 Then
            e.DataRow("全月用量_标号统计")=e.DataRow("数量")
        Else
下起作用?

而必须使用drs(0)("全月用量_标号统计") = drs(0)("数量")


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


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

 如果满足条件的话,肯定会起作用的,你试试表里只有一行数据的情况,肯定会执行的。

 多写下面的代码,只是为了确保第一行有数据。

 你编写的代码还有值得改进的地方,不然每修改一行数据,整个表重新统计一次,太不划算了。

 高效流水账不是你这样设计的。


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


加好友 发短信
等级:小狐 帖子:300 积分:2307 威望:0 精华:0 注册:2012/11/14 11:25:00
  发帖心情 Post By:2013/9/26 22:08:00 [只看该作者]

第三个问题我怀疑原因可能是:我设计的加载是代码与筛选代码不一致?

加载代码如下;

Dim dn As Date = Date.Today
If dn.Day < 26 Then
    dn = dn.AddMonths(-1)
End If
Dim dn1 As Date = New Date(dn.Year,dn.Month,26)
Dim dn2 As Date = dn1.AddMonths(1).AddDays(-1)
Dim Filter As String
Filter = "日期 >=  '" & dn1 & "'And 日期 <= '" & dn2 & "'"

With DataTables("蒸发收碱")
    .LoadFilter = Filter

筛选代码如下:

Dim dt As Date = e.DataRow("日期")
If dt.Day < 26 Then
    dt = dt.AddMonths(-1)
End If
Dim dt1 As Date = New Date(dt.Year,dt.Month ,26)
Dim dt2 As Date = dt1.AddMonths(1).AddDays(-1)
If e.DataCol.name = "日期" Then
    If e.DataRow.IsNull("日期") = False
        Dim Filter As String
        Filter = "日期 >= #" & dt1 & "# And 日期 <= #" & dt2 & "#"
        Tables("蒸发收碱").Filter = Filter
    End If
End If

    .Load()
End With

如果是这样,在第二天统计前一天数据情况下(最主要是26日统计25日的数据),如何处理比较好?如果不是这个原因?请教大师指点可能还会有什么可能,我再处理,谢谢。


 回到顶部
总数 12 1 2 下一页