Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Pode aceder a toda a funcionalidade do servidor de relatórios através da API SOAP do Reporting Services. A API SOAP é um serviço Web e, como tal, pode ser facilmente acedida para fornecer funcionalidades de relatórios empresariais às suas aplicações empresariais personalizadas. Pode aceder ao serviço Web numa aplicação Windows simplesmente escrevendo código que faz chamadas ao serviço. Ao utilizar o Microsoft .NET Framework, pode gerar uma classe proxy que expõe as propriedades e métodos do serviço Web. Pode então usar uma infraestrutura e ferramentas familiares para construir aplicações empresariais baseadas na tecnologia Reporting Services.
Integração da funcionalidade de Gestão de Relatórios usando o Windows Forms
Ao contrário do acesso a URLs, a API SOAP expõe o conjunto completo de funções de gestão disponíveis através do servidor de relatórios. Isto significa que toda a funcionalidade administrativa do Gestor de Relatórios está disponível para os programadores através do SOAP. Assim, pode desenvolver uma ferramenta completa de gestão e administração utilizando o Windows Forms. Por exemplo, na sua aplicação Windows, pode querer permitir que os utilizadores recuperem o conteúdo do namespace do servidor de relatórios. Pode usar o método do serviço ListChildren Web para listar todos os itens na base de dados do servidor de relatórios e depois usar um controlo Listview, Treeview ou Combobox para mostrar esses itens aos seus utilizadores. O seguinte código de serviço Web pode ser usado para recuperar a lista atual de relatórios disponíveis na pasta Meus Relatórios de um utilizador quando este seleciona um botão num formulário:
' Button click event that retrieves a list of reports from
' the My Reports folder and displays them in a combo box
Private Sub listReportsButton_Click(sender As Object, e As System.EventArgs)
' Create a new Web service object and set credentials
' to Windows Authentication
Dim rs As New ReportingService2010()
rs.Credentials = System.Net.CredentialCache.DefaultCredentials
' Return the list of items in My Reports
Dim items As CatalogItem() = rs.ListChildren("/Adventureworks Sample Reports", False)
Dim ci As CatalogItem
For Each ci In items
' If the item is a report, add it to
' a combo box
If ci.TypeName = "Report" Then
catalogComboBox.Items.Add(ci.Name)
End If
Next ci
End Sub 'listReportsButton_Click
// Button click event that retrieves a list of reports from
// the My Reports folder and displays them in a combo box
private void listReportsButton_Click(object sender, System.EventArgs e)
{
// Create a new Web service object and set credentials
// to Windows Authentication
ReportingService2010 rs = new ReportingService2010();
rs.Credentials = System.Net.CredentialCache.DefaultCredentials;
// Return the list of items in My Reports
CatalogItem[] items = rs.ListChildren("/Adventureworks Sample Reports", false);
foreach (CatalogItem ci in items)
{
// If the item is a report, add it to
// a combo box
if (ci.TypeName == "Report")
catalogComboBox.Items.Add(ci.Name);
}
}
A partir daí, pode permitir que os utilizadores selecionem o relatório a partir da caixa Combo e pré-visualizem o relatório no formulário, seja usando um controlo do navegador Web ou um controlo de imagem.
Ative a visualização e navegação de relatórios usando o Windows Forms
Existem dois métodos disponíveis para integrar relatórios nas suas aplicações Windows Forms.
Pode usar a API SOAP para renderizar relatórios para qualquer um dos formatos de renderização suportados usando o Render método. Existem pequenas desvantagens em permitir a visualização e navegação de relatórios através do SOAP:
Não pode tirar partido da funcionalidade integrada da barra de ferramentas de relatórios que está incluída no Visualizador HTML através do acesso a URL.
Se renderizar para HTML, deve renderizar separadamente quaisquer imagens ou recursos como fluxos adicionais usando o RenderStream método.
Há uma pequena vantagem de desempenho em renderizar relatórios usando acesso a URL em vez de usar a API SOAP.
No entanto, o Render método da API SOAP pode ser usado para renderizar relatórios e guardá-los em vários formatos de saída programáticamente. Este método é uma vantagem em relação ao acesso a URLs, que requer interação do utilizador. Quando renderiza um relatório usando o método SOAP API Render , pode renderizar para qualquer um dos formatos de saída suportados.
Também pode usar os controlos do Visualizador de Relatórios distribuídos livremente que estão incluídos com Microsoft Visual Studio 2008. Os controlos do Visualizador de Relatórios facilitam a incorporação de funcionalidades do Reporting Services em aplicações personalizadas. Os controlos do Visualizador de Relatórios destinam-se a programadores que pretendem fornecer relatórios pré-concebidos e totalmente elaborados como parte de um conjunto de funcionalidades da aplicação. Por exemplo, uma aplicação de gestão de sites pode incluir relatórios que mostram análises de click-stream nos sites das empresas. Incorporar os controlos numa aplicação oferece uma alternativa simplificada à inclusão dos componentes do servidor Reporting Services na implementação da sua aplicação. Os controlos fornecem funcionalidade de relatório, mas sem o suporte extra de autoria, publicação ou distribuição e entrega de relatórios que se encontra nos Reporting Services.
Existem duas versões dos controlos do Visualizador de Relatórios, uma para aplicações cliente Windows ricas e outra para aplicações ASP.NET. Os controlos suportam tanto modos de processamento local como de processamento remoto. No modo de processamento local, a sua aplicação fornece a definição do relatório e os conjuntos de dados e aciona o processamento de relatórios. No modo de processamento remoto, a recuperação de dados e o processamento de relatórios ocorrem no servidor de relatórios e o controlo é usado para visualização e navegação de relatórios. Este modelo permite-lhe construir aplicações avançadas que podem ser escaladas do ambiente de trabalho para a empresa.
Os controlos do Visualizador de Relatórios estão documentados na Ajuda Online do Visual Studio. Para mais informações, consulte a documentação do produto Visual Studio.