ReportingService2010.ListChildren(String, Boolean) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定したフォルダーの子の一覧を取得します。
public:
cli::array <ReportService2010::CatalogItem ^> ^ ListChildren(System::String ^ ItemPath, bool Recursive);
[System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)]
[System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)]
[System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")]
public ReportService2010.CatalogItem[] ListChildren (string ItemPath, bool Recursive);
[<System.Web.Services.Protocols.SoapDocumentMethod("http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer/ListChildren", ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped, RequestNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", ResponseNamespace="http://schemas.microsoft.com/sqlserver/reporting/2010/03/01/ReportServer", Use=System.Web.Services.Description.SoapBindingUse.Literal)>]
[<System.Web.Services.Protocols.SoapHeader("ServerInfoHeaderValue", Direction=System.Web.Services.Protocols.SoapHeaderDirection.Out)>]
[<System.Web.Services.Protocols.SoapHeader("TrustedUserHeaderValue")>]
member this.ListChildren : string * bool -> ReportService2010.CatalogItem[]
Public Function ListChildren (ItemPath As String, Recursive As Boolean) As CatalogItem()
パラメーター
- ItemPath
- String
親フォルダーの完全なパス名です。
- Recursive
- Boolean
指定したアイテムの下の子アイテムのツリー全体を返すかどうかを示す Boolean
式です。 既定値は false
です。
メモ SharePoint モードでこのパラメーターを に true
設定すると、アプリケーションのパフォーマンスが大幅に低下する可能性があります。
戻り値
CatalogItem オブジェクトの配列。 子が存在しない場合、このメソッドは空の配列を返します。
- 属性
例
次のコード例をコンパイルするには、Reporting Services の WSDL を参照し、特定の名前空間をインポートする必要があります。 詳細については、「 コード例のコンパイルと実行」を参照してください。 次のコード例では、ListChildren メソッドを使用して、レポート サーバー ディレクトリ ツリーのルートの内容を読み取り、最初のアイテムとそのプロパティを XML ドキュメントとして保存します。
Imports System
Imports System.IO
Imports System.Text
Imports System.Web.Services.Protocols
Imports System.Xml
Imports System.Xml.Serialization
Class Sample
Public Shared Sub Main()
Dim rs As New ReportingService2010()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
Dim items As CatalogItem() = Nothing
' Retrieve a list of all items from the report server database.
Try
items = rs.ListChildren("/", True)
Catch e As SoapException
Console.WriteLine(e.Detail.InnerXml.ToString())
End Try
' Serialize the contents as an XML document and write the contents to a file.
Try
Dim fs As New FileStream("CatalogItems.xml", FileMode.Create)
Dim writer As New XmlTextWriter(fs, Encoding.Unicode)
Dim serializer As New XmlSerializer(GetType(CatalogItem()))
serializer.Serialize(writer, items)
Console.WriteLine("Server contents successfully written to a file.")
Catch e As Exception
Console.WriteLine(e.Message)
End Try
End Sub 'Main
End Class 'Sample
using System;
using System.IO;
using System.Text;
using System.Web.Services.Protocols;
using System.Xml;
using System.Xml.Serialization;
class Sample
{
public static void Main()
{
ReportingService2010 rs = new ReportingService2010();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
CatalogItem[] items = null;
// Retrieve a list of all items from the report server database.
try
{
items = rs.ListChildren("/", true);
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.OuterXml);
}
// Serialize the contents as an XML document and write the contents to a file.
try
{
FileStream fs = new FileStream("CatalogItems.xml", FileMode.Create);
XmlTextWriter writer = new XmlTextWriter(fs, Encoding.Unicode);
XmlSerializer serializer = new XmlSerializer(typeof(CatalogItem[]));
serializer.Serialize(writer, items);
Console.WriteLine("Server contents successfully written to a file.");
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
}
}
注釈
次の表に、この操作に関連するヘッダーおよび権限の情報を示します。
SOAP ヘッダーの使用方法 | (In) TrustedUserHeaderValue (Out) ServerInfoHeaderValue |
ネイティブ モードで必要なアクセス許可 | Item の場合は ReadProperties |
SharePoint モードに必要なアクセス許可 | <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> |
このメソッドは、ユーザーが表示する権限を持っている子アイテムのみを返します。 そのため、返されるアイテムは、指定した親アイテムの子アイテムの完全な一覧であるとは限りません。
個人用レポートが有効で、レポート サーバー データベースのルートでこのメソッドが呼び出された場合、このメソッドは、個人用レポート フォルダーのプロパティを表す CatalogItem オブジェクトの配列を返します。 ユーザーが匿名で、個人用レポートが有効である場合、ルートでこのメソッドが呼び出されても、個人用レポートのプロパティは返されません。
このメソッドは、仮想パスをサポートするレポート サーバー データベース内のアイテムの VirtualPath プロパティを返すことができます。 仮想パスは、ユーザーがその下にあるアイテムを表示するパスです。 たとえば、ユーザー個人の "個人用レポート" フォルダーにある Report1 という名前のレポートの仮想パスは、"/個人用レポート" となります。 アイテムの実際のパスは、/Users/Username/My Reports です。
このメソッドが返すプロパティの大部分は読み取り専用です。 Reporting Servicesのアイテム プロパティの詳細については、「レポート サーバー アイテムのプロパティ」を参照してください。