ssrs查询参数工作不正常

zed5wv10  于 2021-07-26  发布在  Java
关注(0)|答案(1)|浏览(376)

我有4个参数在我的ssrs报告数据正在捕获与sp

  1. ALTER PROCEDURE [adjuster].[rpt_HIIGAdjusterLicense]
  2. @Adjustername varchar (max),
  3. @State char (3),
  4. @LicenseStatus char (3),
  5. @RenewalNotAllowed varchar (5)
  6. AS BEGIN(
  7. SELECT
  8. FirstName +' '+ LastName as AdjusterName ,
  9. StateLicense,
  10. LicenseNumber,
  11. LicenseStatus,
  12. ExpirationDate,
  13. RenewalNotAllowed,
  14. NPN
  15. FROM adjuster.vw_HIIGAdjusterLicense
  16. Where ( FirstName LIKE (CASE WHEN @Adjustername IS NULL THEN FirstName ELSE @Adjustername + '%' END))
  17. OR (@State = 'ALL' OR @State IN (SELECT Value FROM dbo.FnSplit(@State, ',')))
  18. OR ( @LicenseStatus = 'ALL' OR @LicenseStatus IN (SELECT Value FROM dbo.FnSplit(@LicenseStatus, ',')))
  19. AND (@RenewalNotAllowed = 'ALL' OR @RenewalNotAllowed IN (SELECT Value FROM dbo.FnSplit(@RenewalNotAllowed, ',')))
  20. )
  21. END
  22. GO

参数数据集是

  1. SELECT DISTINCT 2 AS Priority, LicenseStatus
  2. FROM vw_License
  3. UNION ALL
  4. SELECT 1 AS Priority, 'ALL' AS Choice
  5. ORDER BY Priority, LicenseStatus
  6. SELECT DISTINCT 2 AS Priority, StateLicense
  7. FROM vw_License
  8. UNION ALL
  9. SELECT 1 AS Priority, 'ALL' AS Choice
  10. ORDER BY Priority, StateLicense
  11. SELECT DISTINCT 2 AS Priority, RenewalNotAllowed
  12. FROM LicenseDetail
  13. UNION ALL
  14. SELECT 1 AS Priority, 'ALL' AS Choice
  15. ORDER BY Priority, RenewalNotAllowed

在ssrs中,当名称值为'null'时,状态值为'all',状态值为'all',续订不允许值为'n'。报告仍显示“y”值为renewalnotallowed的记录。
但is应显示具有“n”值的记录,以供续订不允许。请参考下图

p3rjfoxz

p3rjfoxz1#

更换外罩 OR @state和@licensestatus的where子句中的 AND s
当前如果 @State 那么“all”是你的第二行吗 WHERE 子句的计算结果为 True 所以每一行都会被返回。

相关问题