Skip to content

Permite criar relatórios em html, baseado em view models. Faz a leitura das propriedades dos objetos e monta automaticamente as colunas. Também permite adicionar agrupamentos e totalizadores.

Notifications You must be signed in to change notification settings

Marciel032/RelatorioVM

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

133 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RelatorioVM

GitHub code size Nuget version GitHub forks GitHub open pull requests

Permite criar relatórios em html, baseado em view models. Faz a leitura das propriedades dos objetos e monta automaticamente as colunas. Também permite adicionar agrupamentos e totalizadores.

Ajustes e melhorias

O projeto ainda está em desenvolvimento e as próximas atualizações serão voltadas nas seguintes tarefas:

  • Criar totalizadores.
  • Criar agrupamentos e seus totalizadores.
  • Permitir customizar as colunas exibidas na tabela.
  • Permitir customizar as fontes e estilos dos textos global.
  • Selecionar o alinhamento do campo.
  • Permitir customizar a ordem das colunas.
  • Permitir customizar a fonte dos textos para filtros, tabelas, totais (nome, tamanho, estilo) individualmente.

💻 Pré-requisitos

Antes de começar, verifique se você atendeu aos seguintes requisitos:

  • Utilize .net core 2.1 ou superior

🚀 Instalando RelatorioVM

PM> Install-Package RelatorioVM

☕ Usando RelatorioVM

Para usar RelatorioVM, siga estas etapas:

Inicialize no Startup.cs

services.UtilizarRelatorioVM();

Receba o construtor do relatório no controlador

public class HomeController : Controller
{
    private IRelatorioVM _relatorioVM;
    public HomeController(IRelatorioVM relatorioVM)
    {
        _relatorioVM = relatorioVM;
    }
}

Crie uma view model para informar ao construtor do relatório qual a estrutura que você quer imprimir

public class ExemploSimplesItemViewModel
{
    [DisplayName("Filial")]
    public int FilialCodigo { get; set; }

    [DisplayName("Pessoa código")]
    public int PessoaCodigo { get; set; }

    public PessoaViewModel Pessoa { get; set; }

    public DateTime Data { get; set; }
    public decimal Valor { get; set; }
}

Popule uma lista da sua view model, com os dados que deseja imprimir

var itens = new List<ExemploSimplesItemViewModel>(){
    ...
};

Utilize o construtor para obter o html, passando a sua lista como conteúdo

relatorioConstrutor
    .AdicionarTabela(itens)
    .Titulo("Teste de relatório")
    .Construir()
    .GerarHtml();

exemplo imagem

Tambem é possível fazer agrupamento e totalização de valores

relatorioConstrutor
    .AdicionarTabela(itens, tabela => {
        tabela
            .Agrupar(agrupar => agrupar.Coluna(x => x.FilialCodigo))
            .Totalizar(totalizar => totalizar.Coluna(x => x.Valor, x => x.Valor));
    })
    .Titulo("Teste de relatório")
    .Construir()
    .GerarHtml();

exemplo imagem

📘 Mais detalhes na Wiki

🤝 Colaboradores

Agradecemos às seguintes pessoas que contribuíram para este projeto:

Marciel Grützmann
Marciel Grützmann
Marciel Grützmann
Patrick J. M. De Bastiani

About

Permite criar relatórios em html, baseado em view models. Faz a leitura das propriedades dos objetos e monta automaticamente as colunas. Também permite adicionar agrupamentos e totalizadores.

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •  

Languages