2017-05-03 65 views
0

我有一個問題與2報告都出於同樣的原因我使用SSRS/SQL 2014.我的存儲過程需要2個日期並返回一個非常基本的數據集,只有2列名稱和一個號碼。如果我在SSMS中運行SP,它可以很好地工作,但如果我將它放入報告中,報告只會繼續運行,不會失敗,但不會返回任何數據。最初我在報告中有一個矩陣,但是要回到基礎,我只想嘗試從數據集中返回最上面的一個名稱,但報告再次運行。我已經檢查過,以確保用於運行報告的帳戶具有權限,並且可以在其他報告中使用該權限,但對於此帳戶沒有任何反應,並且我已經用盡了其他方式的想法。我已經重建了這個報告幾次,我可以看到SP很好,並將字段名稱還原,但沒有進一步成功。我在Visual Studio和SSRS報告構建器中構建了該報告。我很欣賞這有點含糊,但只是尋找一些進一步的想法嘗試。 謝謝SSRS報告無法運行存儲過程

+0

你可以發佈存儲過程嗎? –

+1

首先嚐試從設計人員手動執行查詢。在Visual Studio中右擊數據集名稱,選擇'query',然後單擊'!'按鈕,在提示時添加參數值並查看會發生什麼。如果它工作正常,那麼很可能參數被錯誤地傳遞/解析。如果它不起作用,則在SQL服務器框(SQL Profiler)上運行一個跟蹤並查看服務器本身正在執行的查詢。在此發佈測試結果。 –

回答

0

這可能是你的存儲過程中有一個打開的事務。這不會阻止存儲過程在SSMS中運行,但會阻止呈現SSRS報告。根據您的過程的開始,您的存儲過程應以最小分號(;)或可能END/COMMIT/COMMIT TRAN結尾。

0

對不起延遲迴復,但只是剛到辦公室。感謝所有的建議,我在確定答案之前,確實經歷了他們。

我沒有通過報告手動通過變量,並沒有得到任何東西,當檢查分析器時,我可以看到他們正確地通過。

我拿出輸出並粘貼到SSMS中,但是當我通過一個較小的日期範圍時,最初我獲取信息,雖然有兩個日期範圍的數據。

我以爲我會這麼做,因爲我多年前記得類似的問題,我實際上標記了SP並重新編譯並在SSMS中運行它,然後在Visual Studio和報告服務器上運行原始報告現在一切工作正常。我唯一的假設是,執行計劃已被破壞。我希望這可以幫助別人。

+0

感謝您的解決方案。這個問題被稱爲「參數嗅探」 –