SQL Server上でt-sqlからのクエリをsuccesfullで実行しましたが、レポートサービスでデータセットクエリを割り当てるときにこのエラーが発生します。レポートサービスの文字列からdatetimeを変換するときに変換が失敗しました
'文字列からdatetimeを変換するときに変換に失敗しました。'
SQL Server上でt-sqlからのクエリをsuccesfullで実行しましたが、レポートサービスでデータセットクエリを割り当てるときにこのエラーが発生します。レポートサービスの文字列からdatetimeを変換するときに変換が失敗しました
'文字列からdatetimeを変換するときに変換に失敗しました。'
サーバーの地域設定によって異なります。あなたのレポートサービスサーバーは、日と月がSQLサーバーとは反対の位置にあると思います。
一貫して適切に地域設定を考慮しなくても、日付は文字列から変換するために取得するための最も簡単な方法は、軍の日付形式を使用することです:YYYY-MM-DD
軍事形式は常に正しく変換されます。
SSRSでパラメータを渡すときに同じ問題が発生しました。 パラメータの種類がテキストの場合、SSRSはサーバー領域の設定を使用して変換を行います。この場合、MM/DD/YYYYとDD/MM/YYYYの違いによりこのエラーが発生します。
解決策は、パラメータタイプをdatetimeに変更することでした。これにより、変換が正しく処理されるようになります。
は、あなたがデータセットのプロパティ]ウィンドウでパラメータを編集するとき、「パラメータ値」フィールドに括弧を置くことを忘れていないことを確認してください:
をこれは、変換エラーを与える:
Parameter Name Parameter Value @queryDateParameter @reportDateParameter
正しいです。
Parameter Name Parameter Value @queryDateParameter [@reportDateParameter]
dd.mm.yyyyをyy-mm-ddに変換することが可能なレポートservice.itsから来るdd.mm.yyyy形式のレポートです。 – engcmreng