1. ホーム
  2. crystal-reports

[解決済み] Crystal Report の Datediff 式で間違った計算が行われる

2022-02-07 17:59:58

質問

ある製品の経年劣化を調べるために、クリスタル・レポートで次の数式を使用しています。製造日をDefault_Dateとし、比較する日を現在の日付としています。

datediff("d",CDate({Yarn_Packing_Weighment_Entry.Default_Date}),CurrentDate)

数式にエラーはありませんが、日付が1日から12日までの場合、差分結果が間違っています。

そして13日以降31日まで

DOP列の日付は、Currentdateと比較しているものです。スクリーンショットを添付します。

どこが間違っているのか、アドバイスをお願いします。ありがとうございました。

解決方法を教えてください。

データベースのフィールド{Yarn_Packing_Weighment_Entry.Default_Date}はDD/MM/YYYYフォーマットであると推測されます。CDATEはこれらの日付ではうまく動作しません。使おうとはしますが、あまりうまくいきません。 これを処理するためのさまざまな創造的な方法があると思いますが、私が提案するのは次のとおりです。

datediff("d",
cdate(
split({Yarn_Packing_Weighment_Entry.Default_Date},"/")[2]
+"/"+
split({Yarn_Packing_Weighment_Entry.Default_Date},"/")[1]
+"/"+
split({Yarn_Packing_Weighment_Entry.Default_Date},"/")[3]
),
currentdate
)