以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=30693)

--  作者:king_really
--  发布时间:2013/4/2 10:50:00
--  [求助]
 你好,请帮忙看看有什么办法。

这个是一个仓库管理软件,在库存查询表中,从右向左第三列(库存),这是从13年1月一直到3/31的,如果我想得到某段时期的库存,比如我想得到1/1到1/31的库存,我该如何做到呢?

谢谢!
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:2013.03.rar



--  作者:Bin
--  发布时间:2013/4/2 10:52:00
--  
密码是多少啊
--  作者:king_really
--  发布时间:2013/4/2 11:20:00
--  
 开发者:888888
--  作者:狐狸爸爸
--  发布时间:2013/4/2 11:57:00
--  

你用的表达式计算,要统计某个日期之前的库存,只需加载这个日期之前的出库和入库数据即可,例如要得到1月31日之前的库存,只可以做个按钮,代码为:

 

Dim dic As new Dictionary(of String,String)
For Each dc As DataCol In DataTables("库存查询InquiryStock").DataCols
    If dc.Expression > "" Then
        dic.Add(dc.name,dc.Expression)
        dc.Expression = ""
    End If
Next
DataTables("入库Handlein").LoadFilter = "收货日期ReceivingDate <= #1/31/2013#"
DataTables("出库Handleout").LoadFilter = "发货日期DeliveryDate <= #1/31/2013#"
DataTables("入库Handlein").Load()
DataTables("出库Handleout").Load()
For Each key As String In dic.keys
    DataTables("库存查询InquiryStock").DataCols(key).Expression = dic(key)
Next

 

注意为了提供速度,在加载数据之前,我们去掉了表达式列的表达式,加载数据之后,重新恢复表达式。

理由:

http://www.foxtable.com/help/topics/1935.htm