VS 2008 - Gerando relatórios com o ReportViewer II
Continuando o meu artigo VS 2008 - Gerando relatórios com o ReportViewer I vou incrementar o relatório gerado na primeira parte. Vamos ao trabalho...
Para você recordar estou exibindo a figura do leiaute do relatório criado no Descritor de relatório do ReportViewer;
Nota: Eu inclui um o campo ProductName no relatório de forma a poder exibir os nomes dos produtos no relatório.
Incluindo imagens
Vamos incluir uma imagem no cabeçalho do relatório e alterar o seu título. Para isso primeiro temos que incluir um cabeçalho(Header) no relatório. Clique com o botão direito sobre a área livre do relatório no Descritor e selecione a opção Header. Você verá a área do cabeçalho surgir no topo do Descritor;
Arraste o título do Relatório para a seção Page Header e altere o seu formato conforme a figura abaixo:
A partir da ToolBox selecione o controle Image e arraste para o cabeçalho do relatório (1) e em seguida clique no relatório, e, na janela de propriedades localize a propriedade EmbeddedImages (2) para exibir a janela Embedded Images;
Clique no botão New Image e a partir da janela Import Image selecione a imagem que deseja exibir no relatório;
Após selecionar a imagem a janela Embedde Images irá exibir a imagem, seu nome e o seu tipo. Clique no botão OK para encerrar esta etapa;
Em seguida
selecione o controle Image no relatório e na janela de
propriedades altere o valor da propriedade Source para Embedded
e atribua a propriedade Value à imagem que você selecionou para
exibir; Source =
Embedded |
Pronto, já temos a imagem sendo exibida no controle do relatório.
Personalizando texto , cor e valores
Agora vamos mostrar como usar expressões para personalizar a exibição do campo Discontinued. Este campo possui os valores True e False indicando se um produto esta descontinuado o não. Ao invés de exibir estes valores vamos criar uma expressão para exibir o texto Descontinuado quando o valor do campo for igual a True e o texto Ativo se o campo tiver o valor False.
Selecione o campo do relatório e na janela de propriedades selecione a propriedade Value e clique na opção Expressions para abrir a janela Expression.
Em seguida usando a expressão =IIf(Fields!Discontinued.Value=True,"Descontinuado","Ativo") iremos substituir os valores originais para os definidos na expressão em tempo de execução do relatório.
Nota: A expressão é montada usando os operadores, funções e campos disponíveis na janela Expression.
Usando o mesmo recurso vamos alterar a cor do texto a ser exibido de forma que quando o campo Discontinued for igual a True iremos exibir o texto Descontinuado na cor vermelha (Red) e caso contrário na cor Azul (Blue).
Para isso selecione o campo no relatório e na janela de propriedades procure a propriedade Color e selecione a opção Expression.
Na janela Expression defina a seguinte expressão: =IIf(Fields!Discontinued.Value=True,"Red","Blue") para alterar a cor do texto em tempo de execução.
Podemos ainda definir uma expressão para formatar os preços exibidos no relatório. Selecione o campo UnitPrice no relatório e na janela de propriedades localize a propriedade Format, selecionando a opção Expression. Na janela Expression vamos usar a função FormatCurrency e montar a expressão : =FormatCurrency(Fields!UnitPrice.Value,2)
Executando o projeto iremos obter o formulário mostrado a seguir onde podemos ver as alterações definidas exibidas:
Veja que sem muito esforço criamos um relatório com dados de mais de uma tabela e com alguns recursos como: imagens , e formatação em tempo de execução.
Nosso próximo passo é mostrar como criar gráficos usando o ReportViewer e para isso irei criar outro relatório que será tratado em outro artigo. Acompanhe a última parte em : VS 2008 - Gerando relatórios com o ReportViewer III
Pegue o projeto completo aqui: vb_Report1.zip
Eu sei é apenas VB .NET mas eu gosto...
Referências:
José Carlos Macoratti