以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  统计代码中的日期过滤条件如何写代码?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=23595)

--  作者:zpx_2012
--  发布时间:2012/9/13 18:21:00
--  统计代码中的日期过滤条件如何写代码?

各位老师,

在窗口中进行统计如下图:

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20120913-001.jpg
图片点击可在新窗口打开查看

 

代码如下:


Dim b As New SQLCrossTableBuilder("产品出货统计表","出库明细")
b.C
\'b.Filter = "[出库日期] = e.Form.Controls("Year").Value

b.AddTable("出库明细","出库单号","出库单","出库单号")
b.AddTable("出库明细","产品编码","产品编码","产品编码")
b.HGroups.AddDef("{出库明细}.产品编码")
b.HGroups.AddDef("{产品编码}.产品系列")
b.HGroups.AddDef("{出库明细}.名称")
b.VGroups.AddDef("出库日期",DateGroupEnum.Year,"{0}年")
b.VGroups.AddDef("出库日期","{0}月")
b.Totals.AddDef("数量") \'添加数量列用于统产计
b.HorizontalTotal = True \'增加水平自动汇总
b.VerticalTotal = True  \'增加垂直自动汇总
\'b.Subtotal = True
Tables(e.form.Name & "_Table1").DataSource = b.BuildDataSource()

 

两个问题请教:

1、红色的那句代码是想筛选出“出库日期”的年度等于统计年度的数据,这句代码要怎么写?

2、上面那个“统计年度”本想提取“出库日期”的年来形成列表项,但不会写,现在是手工输入2012|2013这样来得到的。

 

谢谢!


--  作者:czy
--  发布时间:2012/9/13 18:57:00
--  
b.Filter = "[出库日期] = #" & e.Form.Controls("Year").Value & "#"
--  作者:zpx_2012
--  发布时间:2012/9/13 19:25:00
--  

谢谢CZY,运行后出错

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20120913-003.jpg
图片点击可在新窗口打开查看

 

是不是这里的设置有问题

 


图片点击可在新窗口打开查看此主题相关图片如下:360截图20120913-002.jpg
图片点击可在新窗口打开查看

 

忘了说一下,表中的出库日期是个具体的日期如:2012-08-21

[此贴子已经被作者于2012-9-13 19:27:53编辑过]

--  作者:布莱克朱
--  发布时间:2012/9/13 19:39:00
--  
组合框?


=\'" &  e.Form.Controls("Year").Value & "\'"

--  作者:czy
--  发布时间:2012/9/13 19:47:00
--  
Dim y As String = e.Form.Controls("Year").Value
Dim a As Date = New Date(y,1,1)
Dim b As Date = New Date(y,12,Date.DaysInMonth(y,12))
b.Filter = "[出库日期] >= #" & a & "# And 出库日期 <= #" & b & "#"

--  作者:zpx_2012
--  发布时间:2012/9/13 19:47:00
--  

谢谢!还是不可以,应该是提取出库日期中的年出来作为条件,但我不知道怎么写,类似这样

 

b.Filter = "[出库日期].year = \'" & e.Form.Controls("Year").Value & "\'"

 

 


--  作者:czy
--  发布时间:2012/9/13 19:49:00
--  

抬头看。


--  作者:zpx_2012
--  发布时间:2012/9/13 20:00:00
--  

可以了,但#号要改朱兄那样才可以。

b.Filter = "[出库日期] >= \'" & a1 & "\' And 出库日期 <= \'" & a2 & "\'"

 

谢谢两位老师!