繁体   English   中英

Crystal Reports:错误的日期格式字符串错误

[英]Crystal Reports : Bad Date format string error

我是Crystal报表的新手,我有一个Crystal报表,其中有一个数据源,正在使用该报表中的某些字段。

报表名称:库存报表

数据源:我正在提供存储过程-GetInventoryData

字段:ItemID,ShippedDate,ItemName

我必须获取在ShipDataDate的FromData和ToDate之间运送的所有物品,所以我在{?FromDate}到{?ToDate}中使用公式{GetInventoryData; 1.ShippedDate}

发货日期的dataType是String,我必须转换为Date,因为它需要进行比较,但是我在那方面遇到了问题...

ShippedDate值将是:2011-04-19 16:02:14.0000000

我只需要在水晶报表端进行转换。

请帮助我如何将其转换为最新版本

实际上甚至更好的是不要在使用上述日期范围的选择公式中使用该公式。

date(split({GetInventoryData;1.ShippedDate}," ")[1]) in {?daterange}

如果您使用的是字符串,则可以执行小于或大于以下的简单操作:

...where ShippedDate >= '2011-04-19 00:00:00' and ShippedDate <= '2011-04-19 23:59:59'

就像:

...where ShippedDate >= '<from-date> 00:00:00' and ShippedDate <= '<to-date> 23:59:59'

这将起作用,并且您不必强制转换日期。

您也可以用作(如果适用于您):

...where ShippedDate >= '<from-date>' and ShippedDate <= '<to-date>'

一种方法...创建一个称为cvtDate的公式

date(
tonumber(split({GetInventoryData;1.ShippedDate},"-")[1])
,
tonumber(split({GetInventoryData;1.ShippedDate},"-")[2])
,
tonumber(split({GetInventoryData;1.ShippedDate},"-")[3])
)

然后,而不是创建两个日期参数。.仅创建一个称为daterange,它允许在值选项下使用范围值,则选择公式为

{@cvtDate} in {?daterange}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM