基本的に、新しいSSRSサーバーに移行する必要がある「マイレポート」レポートを多数含むレポートサーバーがあります。
質問:
古いサーバー インターフェイスからファイルを 1 つずつエクスポートし、新しいサーバー インターフェイスを使用してアップロードすることなく、すべての physical.RDL ファイルを取得する簡単な方法はありますか?
お返事を楽しみにしています
スティーブン
基本的に、新しいSSRSサーバーに移行する必要がある「マイレポート」レポートを多数含むレポートサーバーがあります。
質問:
古いサーバー インターフェイスからファイルを 1 つずつエクスポートし、新しいサーバー インターフェイスを使用してアップロードすることなく、すべての physical.RDL ファイルを取得する簡単な方法はありますか?
お返事を楽しみにしています
スティーブン
RDL のバッチ ダウンロード/アップロードを可能にするサード パーティ ツールがここにあります。
SSRS Web サービス API を使用して、それらすべてを取得する小さな .NET アプリを作成できます。GetItemDefinition メソッドに関する記事には、単一のファイルを取得するためのサンプル コードが含まれています。関連するスニペットは次のとおりです (コピー/貼り付け警告!)。
ReportingService2010 rs = new ReportingService2010();
rs.Url = "http://<Server Name>/_vti_bin/ReportServer/ReportService2010.asmx";
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
string reportName = "http://<Server Name>/Docs/Documents"
+ "/AdventureWorks Sample Reports/Sales Order Detail.rdl";
byte[] reportDefinition = null;
System.Xml.XmlDocument doc = new System.Xml.XmlDocument();
try
{
reportDefinition = rs.GetItemDefinition(reportName);
MemoryStream stream = new MemoryStream(reportDefinition);
string myDocumentsFolder = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
doc.Load(stream);
doc.Save(Path.Combine(myDocumentsFolder, "Sales Order Detail.rdl"));
}
このコード (の一部) に小さなループを記述すると、すべてのファイルをすばやく取得できる場合があります。