我有一個以PDF格式呈現SSRS報告的.bat文件。該報告接受2個參數studentID和SubjectID。當我嘗試傳入每個studentID和SubjectID時,它運行良好。使用不同參數的.bat文件中的循環
我想讓.bat文件執行一個存儲過程,該存儲過程包含studentID和SubjectID列表,併爲每個StudentID和SubjectID運行/循環遍歷。 以下是.bat文件代碼。
@setlocal enableextensions enabledelayedexpansion
@echo off
Set varServerPath=http://xyz/ReportServer
sqlcmd -Q "exec dbo.Storedproc_Studentlist" -S ServerName -d DatabaseName
LOOP:
rs -i C:\ReportRender\Student.rss -s%varServerPath% -e Exec2005 -v studentid="36" -v subjectid="500" -v vOutputFilePath="C:\ReportRender\Output\ZYZReport.pdf" -v vReportPath="/Student Reports/ReportName.rdl" -l 900
pause
exit
我怎麼可以循環通過 「RS」 命令存儲過程的每個結果
dbo.Storedproc_Studentlist
此存儲過程返回
SELECT '1' AS RowNumber,'1789' StudentID, '364' SubjectID, 'C:\Reports\tmurray' OutputLocation
UNION ALL
SELECT '2' AS RowNumber,'1789' StudentID, '365' SubjectID, 'C:\Reports\tmurray' OutputLocation
UNION ALL
SELECT '3' AS RowNumber,'1780' StudentID, '364' SubjectID, 'C:\Reports\mdbrisbin' OutputLocation
感謝,
使用.bat文件通常不容易維護。另一種方法是使用數據驅動訂閱。存儲過程可以提供參數值,報告可以通過電子郵件發送或存儲在共享文件夾中。 – StevenWhite
使用標準版,不能使用數據驅動訂閱:( – sqlsleepless