Pergunta

É possível alterar a seqüência de conexão de um relatório de serviços de informação sql publicado? Eu posso ver o campo binário chamado DataSource no banco de dados ReportServer, mas desde que ele é armazenado como binário Eu não acho que é facilmente atualizável.

Eu preciso voltar a publicar o relatório com a fonte de dados correto? Eu estou esperando que não desde que eu não quero ter que instalar VS2003.

EDIT:. O cliente está executando o SQL Server 2000 Reporting Services com todos os service packs instalados

Foi útil?

Solução

SQL Reporting Services 2000 tem um [serviço de web] ( http://msdn.microsoft.com/en-us/library/aa274396 (SQL.80) .aspx) que você pode usar para mudar a fonte de dados. Dado que, a seguir, permite a mudança de uma fonte de dados para uma fonte de dados compartilhada. Este foi [adaptado de MSDN] ( http: // msdn.microsoft.com/en-us/library/aa225896(SQL.80).aspx) .

// Create our reporting services class
ReportingService theRS = new ReportingService();
theRS.Credentials = System.Net.CredentialCache.DefaultCredentials;

// We need to setup a data source reference to an existing shared data source
DataSourceReference theDSRef = new DataSourceReference();
theDSRef.Reference = "/Path/To/ExistingSharedDataSource";
DataSource[] theDSArray = new DataSource[1];
DataSource theDS = new DataSource();
theDS.Item = (DataSourceReference)theDSRef;
theDS.Name = "NameOfSharedDataSource";
theDSArray[0] = theDS;

try
{
    // Attempt to change the data source of the report
    theRS.SetReportDataSources("/Path/To/ReportName", theDSArray);
    Console.Out.WriteLine("We have changed the data source");
}
catch (System.Web.Services.Protocols.SoapException e)
{
    Console.Out.WriteLine(e.Message);
    Console.Out.WriteLine(e.Detail.InnerXml.ToString());
}

Neste exemplo, o ReportingService classe é tomada a partir da classe Proxy que eu gerado para falar com o serviço web, que é descrito [aqui] ( http://msdn.microsoft.com/en-us/library/aa256607 (SQL.80) .aspx) .

Espero que isso ajude alguns. Deixe-me saber se você está procurando algo diferente.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top