以文本方式查看主题

-  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=101222)

--  作者:binabc2004
--  发布时间:2017/5/26 21:38:00
--  筛选订单日期如何可以安年月筛选
Hi  大家好!
               我做了一个订单日期筛选,但是它是按年月日筛选,我想做成按年月就可以筛选。还有我只要更改订单日期之后不会在订单日期筛选中出现,要关闭之后才会显视。我应该在那里改程序啦!谢谢大家帮忙啊。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试表.table



--  作者:有点蓝
--  发布时间:2017/5/26 22:27:00
--  
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试表.table


--  作者:binabc2004
--  发布时间:2017/5/26 22:45:00
--  
谢谢,不过我一改订单日期和增加新订单日期还不能自动更新出新筛选项目,应该如何添加代码
--  作者:有点蓝
--  发布时间:2017/5/26 23:03:00
--  
修改后马上保存就可以了。

不想保存的话,就增加一个年月列,然后通过年月列操作

--  作者:binabc2004
--  发布时间:2017/5/27 6:16:00
--  
嗯,明白。谢谢
--  作者:binabc2004
--  发布时间:2017/6/16 16:21:00
--  
请教,在临时表内如何才能把开始日期至终点日期进行筛选出来
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:模拟关联表.rar

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


--  作者:有点色
--  发布时间:2017/6/16 17:52:00
--  

Dim filter As String
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 >= #" & .Value & "#"
    End If
End With
With e.Form.Controls("DateTimePicker2")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 <= #" & .Value & "#"
    End If
End With

Dim bd1 As New GroupTableBuilder("统计表1",DataTables("订单"))
Dim dt1 As fxDataSource
bd1.Groups.AddDef("客户编号")
bd1.Totals.AddDef("数量","总数量") \'对数量进行统计
bd1.Totals.AddDef("金额","总")
bd1.Filter = filter
bd1.Totals.AddDef("金额",AggregateEnum.Min,"最小值")
dt1 = bd1.BuildDataSource()
Dim t As Table = Forms("窗口2").controls("Table1").Table
t.DataSource = dt1 \'将统计结果绑定到Table


--  作者:binabc2004
--  发布时间:2017/6/17 9:43:00
--  
谢谢!
         按你代码输入一样没有筛选出来。


--  作者:binabc2004
--  发布时间:2017/6/17 9:44:00
--  
查找代码没反应
--  作者:有点蓝
--  发布时间:2017/6/17 10:06:00
--  
你是想统计后再按日期范围进行筛选?还是想按日期范围进行统计?


Dim filter As String 
With e.Form.Controls("DateTimePicker1")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 >= #" & .Value & "#"
    End If
End With
With e.Form.Controls("DateTimePicker2")
    If .Value IsNot Nothing Then
        If Filter >"" Then
            Filter = Filter & " And "
        End If
        Filter = Filter & "日期 <= #" & .Value & "#"
    End If
End With
Dim bd1 As New GroupTableBuilder("统计表1",DataTables("订单"))
Dim dt1 As fxDataSource
bd1.Groups.AddDef("日期", DateGroupEnum.Year, "年")
bd1.Groups.AddDef("日期", "月")
bd1.Groups.AddDef("产品编号") 
bd1.Totals.AddDef("数量", "", "数量_值")
bd1.Totals.AddDef("金额", "", "金额_值")
bd1.SamePeriodGrowth = True
bd1.CircleGrowth = True
bd1.Filter = Filter 
dt1 = bd1.BuildDataSource()
Dim t As Table = Forms("窗口2").controls("Table1").Table
t.DataSource = dt1 \'将统计结果绑定到Table