RS.exe 公用程式 (SSRS)

rs.exe 公用程式會處理您在輸入檔中所提供的指令碼。 使用此公用程式可自動化報表伺服器部署和管理工作。

注意

從 SQL Server 2008 R2 (10.50.x) 開始,可支援 rs 公用程式,運作於設定 SharePoint 整合模式的報表伺服器以及以原生模式設定的伺服器中。 之前舊版只支援原生模式組態。

語法

  
rs {-?}  
{-i input_file}  
{-s serverURL}  
{-u username}  
{-p password}  
{-e endpoint}  
{-l time_out}  
{-b batchmode}  
{-v globalvars=}  
{-t trace}  

檔案位置

RS.exe 位於下列資料夾,視報表伺服器版本而定: 您可以從檔案系統上的任何資料夾執行此公用程式。

適用於:✅ SQL Server Reporting Services (2016)

C:\Program Files (x86)\Microsoft SQL Server\130\Tools\Binn  

適用於:✅ SQL Server Reporting Services (2017 和更新版本)

C:\Program Files\Microsoft SQL Server Reporting Services\Shared Tools

適用於:✅ Power BI 報表伺服器

C:\Program Files\Microsoft Power BI Report Server\Shared Tools

引數

-?
(選擇性) 顯示 rs 引數的語法。

-iinput_file
(必要) 指定要執行的 .rss 檔案。 這個值可以是 .rss 檔案的相對路徑或完整路徑。

-sserverURL
(必要) 指定要對其執行檔案的 Web 伺服器名稱和報表伺服器虛擬目錄名稱。 報表伺服器 URL 的範例為 https://examplewebserver/reportserver。 伺服器名稱開頭的前置詞 http:// 或 https:// 是選擇性的。 如果您省略前置詞,報表伺服器 Script Host 會先嘗試使用 https,而且如果 https 無法運作,則會使用 http。

-u [domain\]username
(選擇性) 指定用來連接到報表伺服器的使用者帳戶。 如果省略 -u-p ,則會使用目前的 Windows 使用者帳戶。

-p <密碼>
(如果已指定 -u 則是必要的) 指定要與 -u 引數一起使用的密碼。 此值區分大小寫。

-e
(選擇性) 指定要在其上執行指令碼的 SOAP 結束點。 有效值為:

  • Mgmt2010

  • Mgmt2006

  • Mgmt2005

  • Exec2005

如果未指定值,則會使用 Mgmt2005 端點。 如需有關 SOAP 端點的詳細資訊,請參閱報表伺服器 Web 服務端點

-ltime_out
(選擇性) 指定與伺服器的連接逾時之前所經過的秒數。預設值是 60 秒。 若未指定逾時值,則使用預設值。 值為 0 指定連接永不逾時。

-b
(選擇性) 指定以批次方式執行指令檔中的命令。 若有任何命令失敗,便會回復此批次。 有些命令無法批次處理,而會依平常方式執行。 只有在指令碼中發生未處理的例外狀況會導致批次復原。 如果指令碼處理例外狀況並從 Main正常地傳回,則會認可該批次。 如果忽略此參數,則會執行此命令而不會建立批次。 如需詳細資訊,請參閱批次方法

-vglobalvar
(選擇性) 指定在指令碼中使用的全域變數。 如果指令碼使用全域變數,則必須指定此引數。 指定的值必須是 .rss 檔案中所定義的全域變數之有效值。 您必須為每個 -v 引數指定一個全域變數。

會在命令列上指定 -v 引數,以及用於設定在執行階段定義於指令碼中的全域變數值。 例如,如果您的指令碼包含名為 parentFolder的變數,您就可以在命令列上指定該資料夾的名稱:

rs.exe -i myScriptFile.rss -s https://myServer/reportserver -v parentFolder="Financial Reports"

全域變數會使用給定的名稱來建立並設定為所提供的值。 例如, -v a="1" -v b="2" 會產生名為 a 的變數,其值為 "1",以及名為 b 的變數,其值為 "2"。

指令碼中的任何函數均可使用全域變數。 反斜線和引號 (\") 將被解譯為雙引號。 只有當字串含有空格時才需要引號。 變數名稱對 Microsoft Visual Basic 而言必須有效。 這些名稱必須以字母字元或底線符號開頭,且包含字母字元、數字或底線。 保留字不可以當做變數名稱使用。 如需使用全域變數的詳細資訊,請參閱運算式中的內建集合 (報表產生器及 SSRS)

-t
(選擇性) 追蹤記錄的輸出錯誤訊息。 此引數未取得值。 如需詳細資訊,請參閱報表伺服器服務追蹤記錄

權限

若要執行工具,您必須有足夠的權限,可以連接到要對其執行指令碼的報表伺服器執行個體。 您可以執行指令碼在本機電腦或遠端電腦執行變更。 若要對安裝在遠端電腦上的報表伺服器執行變更,請在 -s 引數中指定遠端電腦。

範例

下列範例說明如何指定指令檔,其中包含您要執行的 Visual Basic .NET 指令碼和 Web 服務方法。

rs -i c:\scriptfiles\script_copycontent.rss -s https://localhost/reportserver  

如需詳細範例,請參閱 在報表伺服器之間複製內容的範例 Reporting Services rs.exe 指令碼

如需其他範例,請參閱執行 Reporting Services 指令檔

備註

您可以定義指令碼來設定系統屬性、發行報表等等。 您建立的指令碼可以包括 Reporting Services API 的任何方法。 如需有關可供您使用的方法和屬性之詳細資訊,請參閱報表伺服器 Web 服務

指令碼必須以 Visual Basic .NET 程式碼撰寫,然後使用 .rss 副檔名將指令碼儲存在 Unicode 或 UTF-8 文字檔中。 您不可以使用 rs 公用程式來偵錯指令碼。 若要對指令碼進行偵錯,請在 Microsoft Visual Studio 中執行該程式碼。