ReportingService2006.SetDataSourceContents Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Define as propriedades de conexão associadas a um DataSource.
public:
void SetDataSourceContents(System::String ^ DataSource, ReportService2006::DataSourceDefinition ^ Definition);
public void SetDataSourceContents (string DataSource, ReportService2006.DataSourceDefinition Definition);
member this.SetDataSourceContents : string * ReportService2006.DataSourceDefinition -> unit
Public Sub SetDataSourceContents (DataSource As String, Definition As DataSourceDefinition)
Parâmetros
- DataSource
- String
A URL totalmente qualificada da fonte de dados, incluindo o nome do arquivo e a extensão de nome de arquivo .rsds.
- Definition
- DataSourceDefinition
Um objeto DataSourceDefinition que contém a definição da fonte de dados.
Exemplos
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
class Sample
{
static void Main(string[] args)
{
ReportingService2006 rs = new ReportingService2006();
rs.Url = "http://<Server Name>/_vti_bin/ReportServer/" +
"ReportService2006.asmx";
rs.Credentials =
System.Net.CredentialCache.DefaultCredentials;
DataSourceDefinition definition =
new DataSourceDefinition();
definition.CredentialRetrieval =
CredentialRetrievalEnum.Integrated;
definition.ConnectString =
"data source=(local);initial catalog=AdventureWorks";
definition.Enabled = true;
definition.EnabledSpecified = true;
definition.Extension = "SQL";
definition.ImpersonateUser = false;
definition.ImpersonateUserSpecified = true;
definition.Prompt = null;
definition.WindowsCredentials = true;
try
{
rs.SetDataSourceContents("http://<Server Name>" +
"/Docs/Documents/Data Sources/AdventureWorks.rsds",
definition);
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.OuterXml);
}
}
}
Imports System
Imports System.IO
Imports System.Text
Imports System.Web.Services
Imports System.Web.Services.Protocols
Class Sample
Public Shared Sub Main()
Dim rs As New ReportingService2006()
rs.Url = "http://<Server Name>/_vti_bin/ReportServer/" + _
"ReportService2006.asmx"
rs.Credentials = _
System.Net.CredentialCache.DefaultCredentials
Dim definition As New DataSourceDefinition()
definition.CredentialRetrieval = _
CredentialRetrievalEnum.Integrated
definition.ConnectString = _
"data source=(local);initial catalog=AdventureWorks"
definition.Enabled = True
definition.EnabledSpecified = True
definition.Extension = "SQL"
definition.ImpersonateUser = False
definition.ImpersonateUserSpecified = True
definition.Prompt = Nothing
definition.WindowsCredentials = False
Try
rs.SetDataSourceContents("http://<Server Name>" + _
"/Docs/Documents/Data Sources/AdventureWorks.rsds", _
definition)
Catch e As SoapException
Console.WriteLine(e.Detail.OuterXml)
End Try
End Sub
End Class
Comentários
A tabela a seguir mostra o cabeçalho e as informações de permissão sobre esta operação.
| Cabeçalhos SOAP | (In) TrustedUserHeaderValue (Out) ServerInfoHeaderValue |
| Permissões necessárias | EditListItems |
Para remover as propriedades que fazem parte da definição da fonte de dados, defina os valores dessas propriedades como null ( Nothing em Visual Basic).
Se você definir a CredentialRetrieval propriedade da definição da fonte de dados como Integrated ou Prompt , não forneça valores para UserName ou Password . Isso causa uma exceção SOAP com o código de erro rsInvalidElementCombination .
Se você definir a CredentialRetrieval propriedade da definição da fonte de dados como Integrated ou Store , qualquer valor que você fornecer para a Prompt propriedade não será salvo.
Com as assinaturas, talvez seja necessário armazenar credenciais no banco de dados do servidor de relatório para que as assinaturas possam ser executadas de forma autônoma.
Definir a ConnectString propriedade da definição da fonte de dados como null ( Nothing em Visual Basic) causa uma exceção SOAP com o código de erro rsInvalidXML . Se você não quiser fornecer um valor para ConnectString , defina seu valor como uma cadeia de caracteres vazia ("").
Este método não dá suporte à alteração de conexões de dados do Office ou arquivos que têm a extensão de nome de arquivo. odc. Isso causará um rsNotSupported erro. Para fontes de dados com extensões diferentes de. rsds ou. odc, um rsWrongType erro é retornado.