SELECT
'PERSONFULLNAME' = LASTNM --+ ', '+ FIRSTNM +' ' + COALESCE(MIDDLEINITIALNM, '')
,PERSONNUM
,EMPLOYMENTSTATUS
,HOMELABORLEVELNAME5
,ISWFCTKEMPLICENCE
,ISWFCSSELICENCE
,ISWFCMGRLICENCE
,ISWFCSCHEDULERLIC
,USERACCOUNTNM
,USERACCOUNTSTATUS
,'HCM_Cost_Center_Manager_Name' = n2.NAME
,TIMEENTRYMETHODNM
FROM dbo.VP_PERSON p
LEFT OUTER JOIN PSHCMirror.dbo.PS_JPM_PROFILE jp
ON SUBSTRING(jp.JPM_PROFILE_ID,7,6) = SUBSTRING(p.HOMELABORLEVELNAME5,1,6)
AND jp.JPM_JP_TYPE = 'BU_DEPT'
LEFT OUTER JOIN PSHCMirror.dbo.PS_JPM_JP_ITEMS jpi
ON jpi.JPM_PROFILE_ID = jp.JPM_PROFILE_ID
AND jpi.JPM_CAT_TYPE = 'HRIS_CNTCT2'
LEFT OUTER JOIN
(
SELECT n1.EMPLID, n1.NAME, 'row_nbr' = ROW_NUMBER() OVER (PARTITION BY n1.EMPLID ORDER BY n1.EFFDT DESC, n1.NAME_TYPE DESC)
FROM PSHCMirror.dbo.PS_NAMES n1
) n2
ON n2.EMPLID = jpi.JPM_PERSON_ID_1
AND n2.row_nbr = 1
WHERE USERACCOUNTSTATUS = 'Active'
AND EMPLOYMENTSTATUS = 'Active'
AND (
@Manager = 'All' OR n2.NAME IN (@Manager)
)
order by 1
名前のリストをパラメータに渡して、デフォルトを 'すべて'に設定しようとするSSRSレポートがあります。条件が期待されるコンテキストで指定された非ブール型の式SSRS
名前の長いリストのため「利用可能な値」が機能しないのと同じクエリを使用するようにパラメータの「デフォルト値」を設定します。
私はエラーが@Manager = 'All' OR n2.NAME IN (@Manager)
から来ていることを知っていますが、それを動作させるための代替方法はわかりません。これは私が小さなリストを持っていれば動作します。
'@ Manager'は複数の値を持つパラメータであるため、=の代わりに' IN'を使う必要があります。 'すべて' IN(@Manager)またはn2.NAME IN(@Manager) ' – stubaker
直接あなたのデータセットを呼び出すストアドプロシージャ内にあるのでしょうか? –
@stubakerあなたは答えとして投稿する必要があります – Nathan