2012-03-22 25 views
1

私はクリスタルレポートを持ち、日付に基づいて数式エディタを使用しています。Crystal Reportsフォーミュラフィールドの問題

If {?PDATERANGE1} <> "" AND {?PDATERANGE2} <> "" Then 
    ToText(DateValue({?PDATERANGE1}), "MMM d, yyyy") & " - " & ToText(DateValue({?PDATERANGE2}), "MMM d, yyyy") 

私はASPとPDATERANGE1とPDATERANGE2からこれを呼び出していますが、「2001年10月10日」と「2001年10月12日」です。

次のエラーが発生しています。

不正な日付書式文字列です。詳細:ファイル{B6624BE5-D6DA-469B-A635-9FE86B125492}のerrorKindエラー.rpt:数式dt_rangeのエラー:「{?PDATERANGE1} <」「AND {?PDATERANGE2} <」「」「Bad date format string 。詳細:errorKind

誰かが間違っていると教えてください。私は水晶レポートの開発者ではありません。

+0

わからない、その日付形式の文字列が私に役立ちます。 – dotjoe

+1

@kalls:値を '10/10/2001'、' 10/12/2001'、 '' 10/10/2001''、 '' 10/12/2001''に設定していますか? –

+1

@ MarkBannister私のお金は、これが原因です。答えとして追加したいかもしれません。 – Ryan

答えて

1

{?PDATERANGE1}{?PDATERANGE2}の値は二重引用符が含まれている場合 - 彼らはそれぞれ"10/10/2001""10/12/2001"になるように - (彼らはそれぞれ10/10/200110/12/2001になるように)、これらの二重引用符を削除する必要があります。

+0

ありがとう@マークバニスター。私は二重引用符を使わずに日付をハードコードしていました。 – kalls

0

""は有効な日付ではないと思います。パラマーターはオプションで、値があるかどうかチェックしていますか?

水晶では、関数のhasvalue({?パラメータ})を使用する必要があります。オプションのパラメータは実際の問題を引き起こす傾向があります。

+0

ありがとう@リーチケット。 – kalls