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 | <xref:Microsoft.SharePoint.SPBasePermissions.EditListItems> |
Para remover propriedades que fazem parte da definição da fonte de dados, defina os valores dessas propriedades como null
(Nothing
no 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 rsInvalidElementCombination
de erro .
Se você definir a CredentialRetrieval propriedade da definição da fonte de dados como Integrated
ou Store
, qualquer valor fornecido para a Prompt propriedade não será salvo.
Com assinaturas, talvez seja necessário armazenar credenciais no banco de dados do servidor de relatório para que as assinaturas possam ser executadas autônomamente.
Definir a ConnectString propriedade da definição da fonte de dados como null
(Nothing
no Visual Basic) causa uma exceção SOAP com o código rsInvalidXML
de erro . Se você não quiser fornecer um valor para ConnectString, defina seu valor como uma cadeia de caracteres vazia ("").
Esse 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 causa um rsNotSupported
erro. Para fontes de dados com extensões diferentes de .rsds ou .odc, um rsWrongType
erro é retornado.