Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Dica
iconfalse

Por se tratar de um relatório, o sub-relatório possui sua própria fonte de dados com seus filtros e/ou parâmetros.

...

Demonstração

...

     Para melhor exemplificar o uso do recurso, será criado um fluxo de uso a seguir, contendo o seguinte cenário:

     O  Conector que será usado, referente a um Provedor Nativo, possui os Objetos de Negócio: Funcionários e o Histórico de Férias desse funcionário.

     Os dados demonstrados que serão usados para criação dos Relatórios estão disponíveis no seguinte endereço:

Bloco de código
titleConector Nativo
https://run.mocky.io/v3/bec2d116-8298-4ff5-93c2-24a340ed0901

Image Added    

     Conforme a representação, as informações de férias no relatório principal de Funcionários, vêm de um sub-relatório de Histórico de Férias.

     O primeiro passo será criar o Relatório Principal, escolhendo o Objeto de Negócio Funcionários.

     O segundo Relatório, que será referenciado como um Sub-Relatório, será configurado com o Objeto de Negócio Histórico de Férias.

Dica
iconfalse

Os objetos de Negócio possuem o campo "Chapa" em comum, é por ele que o sub-relatório Histórico de Férias fará a relação com o Funcionário listado no Relatório Principal.

     Seguindo o Modelo de Relatório Final, os dados de Histórico de Férias (Sub-Relatório) serão trazidos para cada Funcionário da Lista de Funcionários (Relatório Principal).

     Para que isso aconteça, será usado o Filtro pelo Design do Relatório através da String de Filtro. Dessa forma a geração do sub-relatório acompanha cada linha gerada pelo Relatório Principal, assim, para cada Funcionário listado, será retornado Histórico de Férias referente a ele.

     Adicionando o Parâmetro "pCHAPA" diretamente pelo Designer do Relatório, será adicionada a String de Filtro no relatório, condicionando campo CHAPA da Fonte de Dados com o Parâmetro "pCHAPA" criado:

Image Added

Informações

O Filtro feito pelo Objeto de Negócio não se aplica para esse caso, uma vez que seria aplicado para toda a geração do Relatório. Por exemplo, filtrando o funcionário '00001', só seria retornado o Histórico de Férias desse Funcionário, não acompanhando outros funcionários listados pelo Relatório Principal.

Associação do Sub-Relatório e Vínculo de Parâmetros

...

       O componente de Sub-Relatório se encontra na Barra de Controles na lateral esquerda e assim como os outros controles, o componente deve ser arrastado para o Layout para configuração.

...

Nota
Ao definir o 'Nome' do componente, é alterado apenas a exibição do componente no layout do Designer e não irá refletir na Visualização/Geração do relatório.

Demonstração

     Para melhor exemplificar o uso do recurso, será criado um fluxo de uso a seguir, contendo o seguinte cenário:

     Será impresso um relatório contendo como modelo as Versões Publicadas do TReports como Relatório Principal, sendo exibida para cada versão, a Quantidade de Instalações realizadas, que será representado por um sub-relatório. Chegando ao seguinte layout esperado:
       Image Removed

Associação do Sub-Relatório e Vínculo de Parâmetros

       Para a criação do Relatório Principal, será configurado o Objeto de Negócio "Histórico de Versões", aplicando um Filtro simples do campo Aplicação igual a um Parâmetro que será informado pelo usuário no momento da geração.

       No Designer, além dos campos do Objeto de Negócio, será também      No Designer do Relatório Principal, será trazido para o Layout o Componente de Sub-Relatório, referenciando assim um o relatório configurado com sua própria Fonte de Dados e seus Filtros/Parâmetros.

Image Removed

       Esse Relatório, referenciado como um sub-relatório, configurado com o Objeto de Negócio "Instalações por Versão", também possui o Filtro da propriedade Aplicação como um Parâmetro, que será vinculado também ao Filtro criado no Relatório Principal.

        Seguindo o Modelo de geração do Relatório Final, os dados de Quantidades de Instalações (Sub-Relatório), serão trazidos para cada Versão do Histórico de Versões (Relatório Principal), ou seja, para cada linha do Relatório Principal, será retornado o Sub-Relatório correspondente ao campo Versão do Relatório Principal.

       Sendo assim, além do Filtro criado para o Objeto de Negócio, para esse Relatório será configurada também uma Parametrização feita pelo Designer do Relatório, para que a geração do sub-relatório acompanhe cada variação no campo Versão trazida pelo Relatório Principal.

       Com o Parâmetro adicionado pelo Designer do Relatório, será adicionada a String de Filtro no relatório, vinculando a condição ao campo de versão da Fonte de Dados com o Parâmetro "Versão" criado:

Image Removed

Na geração individual desse Relatório, deverão ser informados os valores dos parâmetros criados pelo Designer e pelo Filtro do Objeto de Negócio, resultando no relatório de Quantidade de Instalações para a versão em específico.

Image Removed

de Histórico de Férias:

Image Added

       

Informações
iconfalse
titleVínculo de Parâmetros


Para passar os parâmetros do relatório pai principal para o sub-relatório, deve ser definido um parâmetro no relatório que está sendo usado como sub-relatório.

Ao inserir o sub-relatório no Relatório Principal, é possível selecionar o parâmetro do relatório e um valor que poderão ser passados do Relatório Principal para o parâmetro no sub-relatório.

Para esse caso, será definido que:

  • O Parâmetro Versão pCHAPA do sub-relatório será vinculado ao campo Versão Chapa do Relatório Principal.
  • O Parâmetro Aplicação, será vinculado também ao Parâmetro de Aplicação existente no Relatório Principal.

Image Removed

Image Added

       O relatório Final será gerado, sendo informado pelo usuário o Parâmetro de Aplicação, vinculado ao Parâmetro de Objeto de Negócio do Sub-Relatório, e o Parâmetro de Designer acompanha cada versão diferente retornada pelo Relatório Principal.

Image Removed

...

onde no Modelo de Dados usado é trazido o Histórico de Férias do primeiro Funcionário, mas não do segundo, que não possui um histórico de Férias.

Image Added


Adicionando um Relatório para ser usado como Sub-Relatório

...

Informações
iconfalse
       Há duas formas de seguir com o Cadastro de um Relatório para que ele seja disponibilizado na lista do componente para ser usado como um Sub-Relatório.


Informações
iconfalse
  • Cadastro pelo fluxo de Novo Relatório no Menu Inicial do TReports.

       Nesse caso, pela Listagem de Relatórios, o fluxo a seguir será conforme qualquer outra criação de Relatório, seguindo para a definição de Objeto de Negócio e Filtros e Configuração do Layout pelo Designer

  • Cadastro pelo Designer de Relatórios, disponível com o duplo-clique no componente de Sub-Relatórios.

       Para o Cadastro de Relatório através do Designer, após o duplo-clique no componente, será aberta uma nova aba no Designer completamente vazia, onde ao Salvar, será aberta uma guia para informar o nome do Novo Relatório.

Dica

Ao fazer a criação de um Relatório através da abertura de Nova Guia pelo componente de Sub-Relatórios, o relatório criado é automaticamente vinculado como um Sub-Relatório pelo componente, no entanto, é necessário que essa alteração seja salva no Designer do Relatório Principal.

Informações

O Relatório acessado implica apenas na nova aba do Designer, qualquer fluxo selecionado como Informações Gerais ou configuração de Objeto de Negócio, será referente ao Relatório Principal em edição. Para definição de Objeto de Negócio será necessário acessar a edição do Relatório através da Listagem Principal do TReports.

...