以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  请问老师怎么统计本年和本月  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=114835)

--  作者:hrlong
--  发布时间:2018/2/23 15:19:00
--  请问老师怎么统计本年和本月

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

请问老师,我要设置个统计窗口,请问怎么统计本年和本月的数据和,
但是在帮助里只看到 删选本月数据的,请问删选出来了怎么求和呢

筛选本月数据

例如筛选本月的订单:

Dim y As Integer = Date.Today.Year
Dim 
m As Integer = Date.Today.Month
Dim 
dt1 As New Date(ym1)
Dim 
dt2 As New Date(ymDate.DaysInMonth(ym)) \'获取本月的最后一天
Dim 
Filter As String
Filter
 = "日期 >= #" & dt1 & "# And 日期 <= #" & dt2 & "#"
Tables(
"订单").Filter = Filter


--  作者:有点甜
--  发布时间:2018/2/23 15:37:00
--  

用这种方式统计

 

http://www.foxtable.com/webhelp/scr/0681.htm

 

条件根据这里合成

 

http://www.foxtable.com/webhelp/scr/2720.htm

 


--  作者:hrlong
--  发布时间:2018/2/23 16:48:00
--  
好的,谢谢,通过这两个代码的合并已经在命令窗口成功执行了代码统计出来;
请问,我如果要把表放到下面的输入窗口应该怎么弄呢?
要求是完成一次业务员和绩效的输入后,自动更新下面表格的统计
该怎么完善呢?

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

Dim y As Integer = Date.Today.Year
Dim 
m As Integer = Date.Today.Month
Dim 
dt1 As New Date(ym1)
Dim 
dt2 As New Date(ymDate.DaysInMonth(ym)) \'获取本月的最后一天
Dim 
Filter As String
Filter
 = "日期 >= #" & dt1 & "# And 日期 <= #" & dt2 & "#"
Tables(
"订单").Filter = Filter
Dim dtb As New DataTableBuilder("统计")
dtb.AddDef(
"产品"Gettype(String), 32)
dtb.AddDef(
"数量"Gettype(Integer))
dtb.AddDef(
"金额"Gettype(Double))
dtb.Build()

For Each 
nm As String In DataTables("订单").GetValues("产品")
    
Dim dr As DataRow = DataTables("统计").AddNew()
    dr(
"产品") = nm
    dr(
"数量") = DataTables("订单").Compute("Sum(数量)","[产品] = \'" & dr("产品") & "\'")
    dr("金额") = DataTables("订单").Compute("Sum(金额)","[产品] = \'" & dr("产品") & "\'")

Next
MainTable
Tables("统计")

--  作者:有点甜
--  发布时间:2018/2/23 16:49:00
--  

最后写代码

 

Forms("窗口1").Controls("Table1").Table.DataSource = DataTables("统计")