簡體   English   中英

報告服務中出現ora-00939錯誤,SSRS

[英]ora-00939 error in reporting services, SSRS

我有一個SSRS報告,Oracle是我的后端,並且正在使用以下查詢查詢第二個參數的數據集。

select distinct  X
from  v_stf_sec_user_staffing_center usc
where usc.center_group_id in  (
 select distinct center_group_id from  V_T_STAFFING_CENTER_GROUP scg
where  INSTR(','||REPLACE(:PI_REGION_LIST,' ')||',', ','||scg.group_abbreviation||',') > 0)
and usc.nt_user_name=:PI_NT_USER_NAME

這里PI_REGION_LIST是字符串類型的多值參數。 PI_NT_USER_NAME是默認的字符串值參數

當我嘗試在“數據”選項卡以及Oracle工具中手動執行時,此查詢工作正常。 但是,當我在SSRS中運行報表並為參數PI_REGION_LIST選擇3個以上的值時,報表會在此數據集上引發錯誤

ora-00939錯誤,函數的參數太多。

我無法在這里找出錯誤。

請幫我一個主意。

REPLACE函數采用三個字符串參數,最后一個是可選的。

MS文檔說,多值參數具有以下限制:“查詢必須使用IN子句來指定參數。”

如果您實際上不需要進行替換以除去空格,則應該可以執行以下操作

WHERE scg.group_abbreviation in (:PI_REGION_LIST)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM