public Relatorio(string titulo, IList <IRelatorioParte> partes, RelatorioSaida?saida = null, RelatorioFormato?formato = null, int?largura = null, string nomeArquivo = null, string nomeImpressora = null, IRelatorioEmailServidor emailServidor = null, IList <IRelatorioEmail> emails = null) { Titulo = titulo ?? throw new ArgumentNullException(nameof(titulo)); Partes = partes ?? throw new ArgumentNullException(nameof(partes)); Saida = saida; Formato = formato; Largura = largura; NomeArquivo = nomeArquivo; NomeImpressora = nomeImpressora; EmailServidor = emailServidor; Emails = emails; }
public static IRelatorio GetRelatorio(this DataGrid dataGrid, string cabecalho = null, string titulo = null, string rodape = null, IList <IRelatorioCampo> quebras = null, RelatorioSaida?saida = null, RelatorioFormato?formato = null, string nomeArquivo = null, string nomeImpressora = null, IRelatorioEmailServidor emailServidor = null, IList <IRelatorioEmail> emails = null) { var largura = dataGrid.GetLargura(formato); IList <IRelatorioParte> partes = new List <IRelatorioParte>() { //dataGrid.GetCabecalho(cabecalho), //dataGrid.GetTitulo(titulo), //dataGrid.GetCorpo(), //dataGrid.GetRodape(rodape), }; if (cabecalho != null) { partes.Add(dataGrid.GetCabecalho(cabecalho)); } if (titulo != null) { partes.Add(dataGrid.GetTitulo(cabecalho)); } var listaDeObjeto = dataGrid.GetListaDeObjeto(); if (quebras?.Any() == true) { var partesQuebra = dataGrid.GetQuebras(quebras, listaDeObjeto); foreach (var parteQuebra in partesQuebra) { partes.Add(parteQuebra); } } else { partes.Add(dataGrid.GetCorpo(listaDeObjeto)); } if (rodape != null) { partes.Add(dataGrid.GetRodape(rodape)); } IRelatorio relatorio = new Relatorio( titulo: titulo, partes: partes, saida: saida, formato: formato, largura: largura, nomeArquivo: nomeArquivo, nomeImpressora: nomeImpressora, emailServidor: emailServidor, emails: emails); return(relatorio); }