Foxtable(狐表)用户栏目专家坐堂 → 如何设计统计代码


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

主题:如何设计统计代码

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


加好友 发短信
等级:幼狐 帖子:118 积分:781 威望:0 精华:0 注册:2010/6/26 14:14:00
如何设计统计代码  发帖心情 Post By:2010/12/3 10:51:00 [只看该作者]

如果我想做一个仓库系统,如下要求:
“仓库进货明细”表与“仓库出货明细”表是人工输入,但“统计表”要按要求自动统计出来

本月中“类别,品名,规格与色号,单位,单价”都一样的情况下,数量才能相加,如果11月中上月结存数量为10月的月底结存数量

    ,并且汇总所有的数量与金额

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

[此贴子已经被作者于2010-12-3 11:43:42编辑过]

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/12/3 11:15:00 [只看该作者]

呵呵,谁能看明白告诉我一声

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/12/3 11:22:00 [只看该作者]

建议看看下面的帮助内容,先尝试自己做一下:
 
http://help.foxtable.com/topics/0680.htm

 
http://help.foxtable.com/topics/0681.htm


 
搞不定就可以看看下面的代码,只需做一个按钮,按钮代码为:

 

Dim fl As New Filler
DataTables("仓库存在统计表").DataRows.Clear()
fl.SourceTable = DataTables("仓库进货明细")
fl.SourceCols = "类别,品名,规格与色号,单位1,单价"
fl.DataTable = DataTables("仓库存在统计表")
fl.DataCols = "类别,品名,规格与色号,单位1,单价"
fl.Fill()

For Each dr As DataRow In DataTables("仓库存在统计表").DataRows
     Dim Filter As String = "类别 = '" & dr("类别") & "' And "
     Filter = Filter & "品名 = '" & dr("品名") & "' And "
     Filter = Filter & "规格与色号 = '" & dr("规格与色号") & "' And "
     Filter = Filter  & "单位1 = '" & dr("单位1") & "' And "
     Filter = Filter & "单价 = " & dr("单价")
     dr("数量") = DataTables("仓库进货明细").Compute("Sum(数量)",Filter) - DataTables("仓库出货明细").Compute("Sum(数量)",Filter)
Next

 

[此贴子已经被作者于2010-12-3 11:21:56编辑过]

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/12/3 11:42:00 [只看该作者]

好怪,第一次我打开的不是一楼的文件。

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


加好友 发短信
等级:幼狐 帖子:118 积分:781 威望:0 精华:0 注册:2010/6/26 14:14:00
  发帖心情 Post By:2010/12/3 11:45:00 [只看该作者]

不好意思各位大师,我刚才没把列子表做好了,所以重新再做了不好意思,现在可以请帮忙再看一下,谢谢

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

 

“仓库进货明细”表与“仓库出货明细”表是人工输入,但“统计表”要按要求自动统计出来

本月中“类别,品名,规格与色号,单位,单价”都一样的情况下,数量才能相加,如果11月中上月结存数量为10月的月底结存数量

    ,并且汇总所有的数量与金额


 

[此贴子已经被作者于2010-12-3 12:05:20编辑过]

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


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2010/12/3 12:16:00 [只看该作者]

自己做做吧,3楼给你帮助的地址,也帮你写了统计代码,自己不尝试怎么能进步呢?

不可能总是别人帮你全部做好的。

自己先尝试,搞不定再就具体的问题提问,看了别人的答案后,再看看自己的代码为啥不行,这样才是学习的。

 

 

[此贴子已经被作者于2010-12-3 12:16:11编辑过]

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


加好友 发短信
等级:幼狐 帖子:118 积分:781 威望:0 精华:0 注册:2010/6/26 14:14:00
  发帖心情 Post By:2010/12/3 12:36:00 [只看该作者]

狐爸还是帮我看看吧,我刚才也用了3楼的代码进行改正,可是可以,不过再加后面几个功给代码就不行了,所以还的请你老帮帮我,谢谢
[此贴子已经被作者于2010-12-3 12:50:51编辑过]

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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/12/3 12:56:00 [只看该作者]

代码在项目的MainTableChanged事件中

 

 

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


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


加好友 发短信 一级勋章 三级勋章 二级勋章
等级:超级版主 帖子:6318 积分:33957 威望:0 精华:10 注册:2008/8/31 20:56:00
  发帖心情 Post By:2010/12/3 13:45:00 [只看该作者]

楼上的代码比较符有误,改成下面这样:

 

If MainTable.Name = "仓库存在统计表" Then
    Dim f As New Filler
    f.SourceTable = DataTables("仓库入货明细")
    f.DataTable = DataTables("仓库存在统计表")
    f.ExcludeExistValue = True
    f.ExcludeNullValue = True
    f.Fill()
   
    Dim fl As New Filler
    fl.SourceTable = DataTables("仓库出货明细")
    fl.DataTable = DataTables("仓库存在统计表")
    fl.ExcludeExistValue = True
    fl.ExcludeNullValue = True
    fl.Fill()
   
    '以下统计
    Dim dt As DataTable = DataTables("仓库入货明细")
    Dim dt1 As DataTable = DataTables("仓库出货明细")
    For Each dr As DataRow In DataTables("仓库存在统计表").DataRows
        Dim Filter As String = "类别 = '" & dr("类别") & "' And "
        Filter = Filter & "品名 = '" & dr("品名") & "' And "
        Filter = Filter & "规格与色号 = '" & dr("规格与色号") & "' And "
        Filter = Filter  & "单位 = '" & dr("单位") & "' And "
        Filter = Filter & "单价 = " & dr("单价")
        dr("上月结存_数量") = dt.Compute("Sum(数量)",Filter & " And 年月 < " & dr("年月")) - dt1.Compute("Sum(数量)",Filter & " And 年月 < " & dr("年月"))
        dr("本月_入库_数量") = dt.Compute("Sum(数量)",Filter & " And 年月 = " & dr("年月"))
        dr("本月_出库_数量") = dt1.Compute("Sum(数量)",Filter & " And 年月 = " & dr("年月"))
    Next
End If

[此贴子已经被作者于2010-12-3 14:01:10编辑过]

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


加好友 发短信
等级:幼狐 帖子:118 积分:781 威望:0 精华:0 注册:2010/6/26 14:14:00
  发帖心情 Post By:2010/12/3 14:05:00 [只看该作者]

czy大师  以上代码是否放在  “仓库存在统计表”项目的MainTableChanged中的??

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