在2007年访问中报告和过滤日期?

时间:2016-01-06 17:28:05

标签: date ms-access reporting

我让客户在FROM和TO日期之间查找报告。基本上任何一个月客户都可以申请报告,我需要做的是显示截至上个月最后一天的库存中的单位数量。因此,如果客户要查看2015年12月23日 - 2016年12月28日的报告,那么我需要在2015年11月30日显示库存(初始库存)中的单位数量。我有人建议我使用DateSerial,但它似乎没有做我想做的事情。基本上,FROM和TO日期是我从Visual Basic应用程序传递到空表单的值,它们会在报表中使用。

我不确定是否需要更改查询。这是报告的作用..

通过该报告,我需要能够向客户展示以下内容...... 条目标识号

Beginning Inventory (as of last day of previous month)
Unit Price
Bought Units (for report date)
Sold Units (for report date)
Returned Units (for report date)
Subtotal (of bought +sold+returned)
Inventory on hand (beg + subtotal)

所以我所做的是在我的第一个查询中,我得到单价和初始库存(目前没有按上个月的最后一天过滤)。

然后我还有3个查询,一个用于Bought,Sold和Returned,我链接了ItemID,我过滤了TransactionDate(日期之间形式!formdates!txtFrom和form!formdates!txtTo)。

然后我有最后一个查询,我将第一个与另一个结合起来3.现在我非常确定我应该在第一个查询中包含DATESERIAL()函数吗?并过滤TransactionDate(这是我需要查看的列来计算开始的inv,以及查找Bought,Sold,Returned Items)。

请帮忙!

1 个答案:

答案 0 :(得分:2)

DateSerial()函数应返回上个月的最后一天。以下是您的问题的示例查询:

SELECT ID,myDate 从表1 WHERE(((myDate)= DateSerial(年([输入开始日期:]),月([输入开始日期:]),0)))OR(((myDate)之间[输入开始日期:]和[输入结束日期:]));

文档:https://msdn.microsoft.com/en-us/library/bbx05d0c(v=vs.90).aspx