簡體   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