私の SSRS レポートには、250 以上の uniqueidentifier データ型の値を含む多値パラメーターがあります。これは、パラメーター ドロップダウンで値を少し選択すると問題なく動作しますが、ユーザーが (すべて選択) を選択すると、次のエラーが発生します。
An error occurred during local report processing.
String or binary data would be truncated.
各 uniqueidentifier フィールドの長さは 36 文字です。つまり、250 個を合計すると 9000 文字の文字列になります。これが、切り捨てが発生する原因です。
この状況に対処するには、どのようなアプローチを取る必要がありますか?
編集:
ストアド プロシージャのスナップショットを結合します。
ALTER PROCEDURE [dbo].[spReport]
@StartDate as datetime
,@EndDate as datetime
,@LocationId uniqueidentifier
,@UserIds uniqueidentifier
@UserIds は複数値パラメーターです。クエリの where 句で使用されます。
WHERE (U.UserId IN (@UserIds) OR @UserIds IS NULL)