ReportingService2005.CreateRole(String, String, Task[]) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Fügt der Berichtsserver-Datenbank eine neue Rolle hinzu.
public:
void CreateRole(System::String ^ Name, System::String ^ Description, cli::array <ReportService2005::Task ^> ^ Tasks);
public void CreateRole (string Name, string Description, ReportService2005.Task[] Tasks);
member this.CreateRole : string * string * ReportService2005.Task[] -> unit
Public Sub CreateRole (Name As String, Description As String, Tasks As Task())
Parameter
- Name
- String
Der Name der neuen Rolle. Der Wert dieses Parameters muss zwischen 1 und 260 Zeichen lang sein.
- Description
- String
Eine Beschreibung der neuen Rolle. Der Wert dieses Parameters muss zwischen 1 und 512 Zeichen lang sein.
- Tasks
- Task[]
Ein Array von Task -Objekten, das die aufgaben darstellt, die für die Rolle festgelegt werden sollen. Nur die TaskID-Eigenschaft des Task-Objekts wird gesendet, um eine Rolle zu erstellen.
Beispiele
Um dieses Codebeispiel zu kompilieren, müssen Sie auf die Reporting Services WSDL verweisen und bestimmte Namespaces importieren. Weitere Informationen finden Sie unter Kompilieren und Ausführen von Codebeispielen. Im folgenden Codebeispiel wird die CreateRole -Methode verwendet, um eine Benutzerrolle zu erstellen, die über Berechtigungen zum Anzeigen von Ordnern und Berichten verfügt:
Imports System
Imports System.Web.Services.Protocols
Class Sample
Public Shared Sub Main()
Dim rs As New ReportingService2005()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
Dim name As String = "Report Browser"
Dim desc As String = "View folders and reports."
Dim setTasks(2) As Task
setTasks(0) = New Task()
setTasks(1) = New Task()
setTasks(2) = New Task()
Try
Dim returnedTasks As Task() = rs.ListTasks()
Dim t As Task
For Each t In returnedTasks
If t.Name = "View reports" Then
setTasks(0) = t
Else
If t.Name = "View folders" Then
setTasks(1) = t
Else
If t.Name = "View resources" Then
setTasks(2) = t
End If
End If
End If
Next t
rs.CreateRole(name, desc, setTasks)
Catch e As SoapException
Console.WriteLine(e.Detail.InnerXml.ToString())
End Try
End Sub 'Main
End Class 'Sample
using System;
using System.Web.Services.Protocols;
class Sample
{
public static void Main()
{
ReportingService2005 rs = new ReportingService2005();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
string name = "Report Browser";
string desc = "View folders and reports.";
Task[] setTasks = new Task[3];
setTasks[0] = new Task();
setTasks[1] = new Task();
setTasks[2] = new Task();
try
{
Task[] returnedTasks = rs.ListTasks();
foreach( Task t in returnedTasks )
{
if ( t.Name == "View reports" )
{
setTasks[0] = t;
}
else if ( t.Name == "View folders" )
{
setTasks[1] = t;
}
else if ( t.Name == "View resources" )
{
setTasks[2] = t;
}
}
rs.CreateRole( name, desc, setTasks );
}
catch ( SoapException e )
{
Console.WriteLine( e.Detail.InnerXml.ToString() );
}
}
}
Hinweise
In der folgenden Tabelle werden Header- und Berechtigungsinformationen zu diesem Vorgang dargestellt.
SOAP-Header | (In) BatchHeaderValue (Out) ServerInfoHeaderValue |
Erforderliche Berechtigungen | CreateRoles (System) |
Die Name
Parameter und Description
sind erforderlich und sollten nicht auf null
(Nothing
in Visual Basic) festgelegt werden. Der Wert für Name
muss eindeutig sein.
Sie müssen der Rolle mindestens eine Aufgabe zuweisen. Aufgaben auf System- und Elementebene können nicht innerhalb einer einzelnen Rolle kombiniert werden. Weitere Informationen zu Aufgaben finden Sie unter Aufgaben und Berechtigungen.