ReportingService2005.CreateRole(String, String, Task[]) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Ajoute un nouveau rôle à la base de données du serveur de rapports.
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())
Paramètres
- Name
- String
Nom du nouveau rôle. La valeur de ce paramètre doit comprendre entre 1 et 260 caractères.
- Description
- String
Description du nouveau rôle. La valeur de ce paramètre doit comprendre entre 1 et 512 caractères.
- Tasks
- Task[]
Tableau d'objets Task qui représente les tâches à définir pour le rôle. Seule la propriété TaskID de l'objet Task est soumise pour créer un rôle.
Exemples
Pour compiler cet exemple de code, vous devez référencer le Reporting Services WSDL et importer certains espaces de noms. Pour plus d’informations, consultez Compilation et exécution d’exemples de code. L’exemple de code suivant utilise la CreateRole méthode pour créer un rôle d’utilisateur disposant des autorisations nécessaires pour afficher les dossiers et les rapports :
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() );
}
}
}
Remarques
Le tableau suivant présente les informations relatives aux en-têtes et aux autorisations sur cette opération.
En-têtes SOAP | (In) BatchHeaderValue (Out) ServerInfoHeaderValue |
Autorisations requises | CreateRoles (Système) |
Les Name
paramètres et Description
sont obligatoires et ne doivent pas être définis sur null
(Nothing
en Visual Basic). La valeur de Name
doit être unique.
Vous devez affecter au moins une tâche au rôle. Vous ne pouvez pas combiner des tâches au niveau du système et au niveau de l’élément au sein d’un seul rôle. Pour plus d’informations sur les tâches, consultez Tâches et autorisations.