テーブルの値をレポートのコンマ結合文字列にマップする手順があります。
残念ながら、ユーザー インターフェイスのバグにより、一部の値'none'
はnull
. 値は単なる文字列であると確信している'none'
ので、手順はそのように処理しようとします。
に遭遇した場合、プロシージャは何も返さないはず'none'
ですが、そうではありません。たとえば、以下に渡す'none'
と@DrugUse
、何も返されないはずですよね? ただし、それでも返され'd'
ます。それで、私は何を間違っていますか?
ALTER FUNCTION [dbo].[MapConsumerAdvice]
(
@AdultThemes as VarChar,
@DrugUse as VarChar
)
RETURNS VarChar(20)
AS
BEGIN
DECLARE @Result as VarChar(999)
SET @Result = ''
IF (@AdultThemes > 0)
SET @Result = ',' + 'a'
IF (@DrugUse IS NOT NULL) AND (@DrugUse != 'none')
SET @Result = @Result + ',' + 'd'
RETURN SUBSTRING(@Result, 2, LEN(@Result))