BoletoNet / boleto2net

Nova versão do Boleto.Net
Apache License 2.0
162 stars 139 forks source link

Geração de PDF único dos boletos #182

Open oscarpires opened 5 years ago

oscarpires commented 5 years ago

Boa tarde pessoal,

Me corrijam se estiver errado, mas o código abaixo testando e observando o funcionamento, ele coleta todos os boletos carregados na classe proxy e faz a geração de todos em um único PDF. O comportamento padrão não deveria ser, gerar um arquivo PDF para cada boleto? Qual a razão de montar o HTML de todo conteúdo, de diferentes pagadores e gerar em arquivo único?

            var html = new StringBuilder();
            foreach (Boleto boletoTmp in boletos) {
                using (BoletoBancario imprimeBoleto = new BoletoBancario {
                    Boleto = boletoTmp,
                    OcultarInstrucoes = false,
                    MostrarComprovanteEntrega = true,
                    MostrarEnderecoCedente = true
                })
                {
                    html.Append("<div style=\"page-break-after: always;\">");
                    html.Append(imprimeBoleto.MontaHtml());
                    html.Append("</div>");
                }
            }
            switch (extensaoArquivo.ToUpper())
            {
                case "HTM":
                    GerarArquivoTexto(html.ToString(), nomeArquivo);
                    break;
                case "PDF":
                    GerarArquivoPDF(html.ToString(), nomeArquivo);
                    break;
                default:
                    break;
            }
rafd75 commented 5 years ago

@oscarpires boa tarde.

Aqui, eu monto a coleção "boletos" apenas com aqueles títulos que quero o PDF... No meu caso, para impressão, eu nunca adiciono mais de um "pagador".

Então, para uma NF com 3 vencimentos, gero apenas 1 PDF com 3 boletos, entendeu?

Nunca gerei 1 PDF por vencimento... (no caso de ter mais de 1 vencimento por NF)...

--- voltando ao ponto que você comentou... esse código que vc copiou, é da classe proxy?

Se for, daria para implementar dentro do ForEach um controle de "quebra" - seja por NF, seja por Pagador... e então gerar um PDF ... (no caso, precisaria adicionar a NF ou PAGADOR no nome do arquivo... e então teria 1 PDF por QUEBRA... ex: Boleto-NF123.PDF, Boleto-NF124.PDF ... ou Boleto-PagadorJose.PDF ... etc