[スポンサードリンク]

単純に「)」前後がおかしい場合もあるが、そうでない場合

状況

「’)’ 付近に不適切な構文があります。」
「引用符が閉じられていません」
「警告: NULL 値は集計またはその他の SET 演算で削除されました。」
などのエラーが出る場合。

ソースを見ても、「正しいだろ」と思った場合。

原因

SSRSのチェックボックス付きのドロップダウンリストからパラメータを受け取る場合、クエリはIN句でデータを受け取る(23行目)。
しかし、ここでパラメータ「@ShohinCd」に空白を指定すると、「SHOHIN_CD IN ()」となり構文エラーとなる。

対応策

チェックボックス付きのドロップダウンにNULLや空白を表示したい場合はドロップダウンのラベルは空白で、コード値は「*」などを設定した方がよい。

検索クエリ側では
「(CASE WHEN ISNULL(SHOHIN_CD,”) = ” THEN ‘*’ ELSE SHOHIN_CD END) IN ・・・」
として、NULLや空白を「*」に置き換える。

ドロップダウン側では、NULLや空白は「*」をパラメータに入れ、検索側でもNULLや空白は「*」に置き換える

ドロップダウンのクエリ例

検索クエリ例

※NCHAR(39)はシングルクォーテーションを表す。

SSRSでのエラー

チェックボックス付きのドロップダウンリストで空白値を選択すると、何も対策がされていない場合。
SSRSの「レポート実行」時に「引用符が閉じられていない」というエラーが発生する。

使用的に空白やNULLはチェックボックス付きドロップダウンリストには表示されないようにするといった仕様を検討するなどの対策が必要。

[スポンサードリンク]

関連記事

コメント

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

CAPTCHA


ピックアップ記事

  1. あいまい検索での否定 ○○以外の書き方 あいまい検索での否定は「[^任意の文字・文字列]…
  2. NPOIを使ってExcelの読み書きをする方法 (さらに…)…
  3. ビューの定義を検索して、ビューで参照しているテーブルまたはビューを探す (さらに……
  4. 本記事ではXMLからSQLを取得し、SQLiteで実行する。プリペアードステートメントを使用する。 …
  5. ビューの作り方、ANSI_NULLS、QUOTED_IDENTIFIER、WITH(NOLOCK) …

カテゴリー

[スポンサードリンク]




ページ上部へ戻る