Example #1
0
        public void ImprimeAbertura()
        {
            Movimento = MovimentoController.VerificaMovimento(Movimento.Id, "A");

            FDataModule.ACBrECF.AbreRelatorioGerencial(FCaixa.Configuracao.GerencialX);
            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
            FDataModule.ACBrECF.LinhaRelatorioGerencial(" ABERTURA DE CAIXA ");
            FDataModule.ACBrECF.PulaLinhas(1);
            FDataModule.ACBrECF.LinhaRelatorioGerencial("DATA DE ABERTURA  : " + Movimento.DataAbertura);
            FDataModule.ACBrECF.LinhaRelatorioGerencial("HORA DE ABERTURA  : " + Movimento.HoraAbertura);
            FDataModule.ACBrECF.LinhaRelatorioGerencial(Movimento.NomeCaixa + "  OPERADOR: " + Movimento.LoginOperador);
            FDataModule.ACBrECF.LinhaRelatorioGerencial("MOVIMENTO: " + Convert.ToString(Movimento.Id));
            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
            FDataModule.ACBrECF.PulaLinhas(1);
            FDataModule.ACBrECF.LinhaRelatorioGerencial("SUPRIMENTO...: " + Convert.ToDecimal(editValorSuprimento.Text).ToString("0.00"));
            FDataModule.ACBrECF.PulaLinhas(3);
            FDataModule.ACBrECF.LinhaRelatorioGerencial(" ________________________________________ ");
            FDataModule.ACBrECF.LinhaRelatorioGerencial(" VISTO DO CAIXA ");
            FDataModule.ACBrECF.PulaLinhas(3);
            FDataModule.ACBrECF.LinhaRelatorioGerencial(" ________________________________________ ");
            FDataModule.ACBrECF.LinhaRelatorioGerencial(" VISTO DO SUPERVISOR ");

            FDataModule.ACBrECF.FechaRelatorio();
            UPAF.GravaR06("RG");
        }
Example #2
0
 private void acBrTEFD_OnAntesCancelarTransacao(object sender, ACBrFramework.TEFD.AntesCancelarTransacaoEventArgs e)
 {
     if ((FDataModule.ACBrECF.Estado.ToString() == "Venda") || (FDataModule.ACBrECF.Estado.ToString() == "Pagamento"))
     {
         UECF.CancelaCupom();
         CupomCancelado = true;
     }
     else if ((FDataModule.ACBrECF.Estado.ToString() == "Relatorio"))
     {
         FDataModule.ACBrECF.FechaRelatorio();
         UPAF.GravaR06("CC");
     }
     else
     {
         FDataModule.ACBrECF.CorrigeEstadoErro(false);
     }
 }
Example #3
0
        public void ImprimeParcelas(string Nome, string CPF, string COO, decimal ValorTotal, List <ContasParcelasVO> pListaParcelaDetalhe)
        {
            int Elementos, Linhas, Adicional;

            string Valor, Parcela, Vencimento;
            string sContrato;

            Application.DoEvents();

            //TODO:  Carregue o texto do contrato de um arquivo externo

            sContrato = "Pelo presente instrumento particular de Confissão e Assunção de " +
                        "Dívida que entre si fazem, de um lado, <NomeCliente>, inscrito no " +
                        "CPF sob o nº <CPFCliente>, aqui designada simplesmente DEVEDORA e, de outro" +
                        "lado, <QualificaEmpresa>, doravante denominada simplesmente CREDORA, " +
                        "pactuam a CONFISSÃO E ASSUNÇÃO DE DÍVIDA, segundo as cláusulas e condições abaixo enumeradas:" +
                        "01- A CREDORA ajustou com a DEVEDORA venda de mercadoria de acordo com Cupom Fiscal nº <COO>, " +
                        "em data de <DataVenda>, no qual esta assumiu débito no valor de <ValorTotalVenda>; " +
                        "02- Reconhecendo seu débito - em sua certeza, liquidez e exigibilidade -, a DEVEDORA se " +
                        "compromete a pagar a quantia da seguinte forma:";

            sContrato = sContrato.Replace("<NomeCliente>", Nome);
            sContrato = sContrato.Replace("<CPFCliente>", CPF);
            sContrato = sContrato.Replace("<QualificaEmpresa>", new EmpresaController().PegaEmpresa(1).RazaoSocial);
            sContrato = sContrato.Replace("<COO>", COO);
            sContrato = sContrato.Replace("<DataVenda>", FDataModule.ACBrECF.DataHora.ToString("dd/MM/yyyy"));
            sContrato = sContrato.Replace("<ValorTotalVenda>", Convert.ToString(ValorTotal));


            //  INICIO Cabecalho
            FDataModule.ACBrECF.AbreRelatorioGerencial(1);
            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
            FDataModule.ACBrECF.LinhaRelatorioGerencial("        TERMO DE COMPROMISSO CONTRATUAL         ");
            FDataModule.ACBrECF.PulaLinhas(1);
            //  FIM Cabecalho

            //  INICIO CONTRATO PARAMETRIZADO
            Elementos = sContrato.Length; //  Quantas letras tem o contrato
            Linhas    = Elementos / 48;   //  divide pelo numero de colunas, no caso 48
            Adicional = Elementos % 48;   //  Caso sobre algo da divisao, indica que ha mais uma linha a ser impressa.

            if (Adicional > 0)
            {
                Linhas = Linhas + 1;
            }

            Elementos = 1; //  Estou reaproveitando esta variivel para fazer outro controle.

            for (int i = 1; i <= Linhas; i++)
            {
                FDataModule.ACBrECF.LinhaRelatorioGerencial(sContrato.Substring(48, Elementos));
                Elementos = Elementos + 48;
            }

            FDataModule.ACBrECF.PulaLinhas(2);
            //  FIM CONTRATO PARAMETRIZADO

            //  INICIO PARCELAS
            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('_', 48));
            FDataModule.ACBrECF.LinhaRelatorioGerencial("            VALOR       PARCELA    VENCIMENTO   ");
            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('_', 48));

            for (int i = 0; i <= pListaParcelaDetalhe.Count - 1; i++)
            {
                ContasParcelasVO ParcelaDetalhe = pListaParcelaDetalhe[i];

                Valor      = ParcelaDetalhe.Valor.ToString("###,##0.00");
                Valor      = new string(' ', 17 - Valor.Length) + Valor;
                Parcela    = Convert.ToString(ParcelaDetalhe.NumeroParcela);
                Parcela    = new string(' ', 11 - Parcela.Length) + Parcela;
                Vencimento = ParcelaDetalhe.DataVencimento.ToString("dd/MM/yyyy");
                Vencimento = new string(' ', 17 - Vencimento.Length) + Vencimento;

                FDataModule.ACBrECF.LinhaRelatorioGerencial(Valor + Parcela + Vencimento);
            }

            FDataModule.ACBrECF.PulaLinhas(4);
            //  FIM PARCELAS

            //  INICIO RODAPÉ
            FDataModule.ACBrECF.LinhaRelatorioGerencial("    ________________________________________    ");
            FDataModule.ACBrECF.LinhaRelatorioGerencial(Nome.Substring(40, 1));
            FDataModule.ACBrECF.LinhaRelatorioGerencial(CPF);
            FDataModule.ACBrECF.PulaLinhas(2);
            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
            FDataModule.ACBrECF.FechaRelatorio();
            UPAF.GravaR06("RG");
        }
Example #4
0
        public void ImprimeFechamento()
        {
            List <MeiosPagamentoVO> TotalGerado;
            List <MeiosPagamentoVO> TotalDeclarado;
            string  Calculado, Declarado, Diferenca;
            decimal TotCalculado, TotDeclarado, TotDiferenca;
            string  Suprimento, Sangria, NaoFiscal, TotalVenda, Desconto,
                    Acrescimo, Recebido, Troco, Cancelado, TotalFinal;

            try
            {
                FDataModule.ACBrECF.AbreRelatorioGerencial(FCaixa.Configuracao.GerencialX);
                FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
                FDataModule.ACBrECF.LinhaRelatorioGerencial("             FECHAMENTO DE CAIXA                ");
                FDataModule.ACBrECF.PulaLinhas(1);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("DATA DE ABERTURA  : " + Movimento.DataAbertura);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("HORA DE ABERTURA  : " + Movimento.HoraAbertura);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("DATA DE FECHAMENTO: " + Movimento.DataFechamento);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("HORA DE FECHAMENTO: " + Movimento.HoraFechamento);
                FDataModule.ACBrECF.LinhaRelatorioGerencial(Movimento.NomeCaixa + "  OPERADOR: " + Movimento.LoginOperador);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("MOVIMENTO: " + Convert.ToString(Movimento.Id));
                FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
                FDataModule.ACBrECF.PulaLinhas(1);

                //TODO:  Trate os valores nulos
                Suprimento = Movimento.TotalSuprimento.Value.ToString("0.00");
                Sangria    = Movimento.TotalSangria.Value.ToString("0.00");
                NaoFiscal  = "0.00";//Movimento.TotalNaoFiscal.Value.ToString("0.00");
                TotalVenda = Movimento.TotalVenda.Value.ToString("0.00");
                Desconto   = Movimento.TotalDesconto.Value.ToString("0.00");
                Acrescimo  = Movimento.TotalAcrescimo.Value.ToString("0.00");
                Recebido   = Movimento.TotalRecebido.Value.ToString("0.00");
                Troco      = Movimento.TotalTroco.Value.ToString("0.00");
                Cancelado  = Movimento.TotalCancelado.Value.ToString("0.00");
                TotalFinal = Movimento.TotalFinal.Value.ToString("0.00");

                FDataModule.ACBrECF.LinhaRelatorioGerencial("SUPRIMENTO...: " + Suprimento);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("SANGRIA......: " + Sangria);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("NAO FISCAL...: " + NaoFiscal);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("TOTAL VENDA..: " + TotalVenda);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("DESCONTO.....: " + Desconto);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("ACRESCIMO....: " + Acrescimo);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("RECEBIDO.....: " + Recebido);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("TROCO........: " + Troco);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("CANCELADO....: " + Cancelado);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("TOTAL FINAL..: " + TotalFinal);
                FDataModule.ACBrECF.PulaLinhas(3);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("                 CALCULADO  DECLARADO  DIFERENCA");

                //TotalGerado = TotalTipoPagamentoController.EncerramentoTotal(Movimento.Id, 1);
                //TotalDeclarado = TotalTipoPagamentoController.EncerramentoTotal(Movimento.Id, 2);

                //TODO:  Use o DTResumo para calcular os valores CALCULADO DECLARADO e DIFERENCA

                TotCalculado = 0;
                TotDeclarado = 0;
                TotDiferenca = 0;

                FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('-', 48));

                Calculado = TotCalculado.ToString("0.00");
                Declarado = TotDeclarado.ToString("0.00");
                Diferenca = TotDiferenca.ToString("0.00");

                FDataModule.ACBrECF.LinhaRelatorioGerencial("TOTAL.........:" + Calculado + Declarado + Diferenca);
                FDataModule.ACBrECF.PulaLinhas(4);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("    ________________________________________    ");
                FDataModule.ACBrECF.LinhaRelatorioGerencial("                 VISTO DO CAIXA                 ");
                FDataModule.ACBrECF.PulaLinhas(3);
                FDataModule.ACBrECF.LinhaRelatorioGerencial("    ________________________________________    ");
                FDataModule.ACBrECF.LinhaRelatorioGerencial("               VISTO DO SUPERVISOR              ");

                FDataModule.ACBrECF.FechaRelatorio();
                UPAF.GravaR06("RG");
                Application.DoEvents();
            }
            catch (Exception eError)
            {
                Log.write(eError.ToString());
            }
        }
Example #5
0
        private void acBrTEFD_OnComandaECF(object sender, ACBrFramework.TEFD.ComandaECFEventArgs e)
        {
            string Mensagem = "";

            try
            {
                switch (e.Operacao)
                {
                case ACBrFramework.TEFD.OperacaoECF.AbreGerencial:
                {
                    FDataModule.ACBrECF.AbreRelatorioGerencial();
                }
                break;

                case ACBrFramework.TEFD.OperacaoECF.CancelaCupom:
                {
                    ImpressaoOK = false;
                    try
                    {
                        UECF.CancelaCupom();
                        CupomCancelado = true;
                    }
                    catch (Exception eError)
                    {
                        Log.write(eError.ToString());
                        CupomCancelado = false;
                    }
                } break;

                case ACBrFramework.TEFD.OperacaoECF.FechaCupom:
                {
                    if (FCaixa.VendaCabecalho.IdPreVenda > 0)
                    {
                        Mensagem = "PV" + new string('0', 10 - Convert.ToString(FCaixa.VendaCabecalho.IdPreVenda).Length) + Convert.ToString(FCaixa.VendaCabecalho.IdPreVenda);
                    }
                    if (FCaixa.VendaCabecalho.IdDAV > 0)
                    {
                        DavCabecalhoVO DavCabecalho = new DAVController().ConsultaDAVId(FCaixa.VendaCabecalho.IdDAV);
                        Mensagem = Mensagem + "DAV" + DavCabecalho.NumeroDav;
                    }
                    Mensagem = FCaixa.MD5 + Mensagem + "\r" + "\n";
                    try
                    {
                        EmpresaVO Empresa = new EmpresaController().PegaEmpresa(FCaixa.Configuracao.IdEmpresa);
                        if (Empresa.Uf == "MG")
                        {
                            Mensagem = Mensagem + "MINAS LEGAL:" +
                                       Empresa.Cnpj.Substring(8, 1) + FDataModule.ACBrECF.DataHora.ToString("ddMMyyyy");
                            if (FCaixa.VendaCabecalho.ValorFinal >= 1)
                            {
                                Mensagem = Mensagem + FCaixa.VendaCabecalho.ValorFinal.Value.ToString("0.00");
                            }
                            Mensagem = Mensagem + "\r" + "\n";
                        }
                        UECF.FechaCupom(Mensagem + FCaixa.Configuracao.MensagemCupom);
                    }
                    catch (Exception eError)
                    {
                        Log.write(eError.ToString());
                    }
                } break;

                case ACBrFramework.TEFD.OperacaoECF.SubTotalizaCupom:
                    SubTotalizaCupom();     //FDataModule.ACBrECF.SubtotalizaCupom(0);
                    break;

                case ACBrFramework.TEFD.OperacaoECF.FechaVinculado:
                {
                    FDataModule.ACBrECF.FechaRelatorio();
                    UPAF.GravaR06("CC");
                } break;

                case ACBrFramework.TEFD.OperacaoECF.PulaLinhas:
                {
                    FDataModule.ACBrECF.PulaLinhas(FDataModule.ACBrECF.LinhasEntreCupons);
                    FDataModule.ACBrECF.CortaPapel(true);
                    Thread.Sleep(200);
                } break;
                }

                e.RetornoECF = true;
            }
            catch (Exception eError)
            {
                Log.write(eError.ToString());
                e.RetornoECF = false;
            }
        }
Example #6
0
        private void Confirma()
        {
            DAVController         DAVController = new DAVController();
            List <DavCabecalhoVO> ListaDAV;
            List <DavDetalheVO>   ListaDavDetalhe;

            string Numero, DataEmissao, Titulo, Valor, CCF, Mensagem, Tripa;

            // relatorio gerencial
            if (cbRelatorioGerencial.Checked)
            {
                if (FCaixa.StatusCaixa != 3)
                {
                    if (MessageBox.Show("Deseja imprimir o relatorio DAV EMITIDOS?", "Pergunta do Sistema", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                    {
                        ListaDAV = DAVController.ListaDAVPeriodo(Convert.ToDateTime(mkeDataIni.Text).ToString("yyyy-MM-dd"), Convert.ToDateTime(mkeDataFim.Text).ToString("yyyy-MM-dd"));
                        if (ListaDAV != null)
                        {
                            FDataModule.ACBrECF.AbreRelatorioGerencial(FCaixa.Configuracao.DavEmitidos);
                            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
                            FDataModule.ACBrECF.LinhaRelatorioGerencial("DAV EMITIDOS");
                            FDataModule.ACBrECF.LinhaRelatorioGerencial("PERIODO: " + mkeDataIni.Text + " A " + mkeDataFim.Text);
                            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
                            FDataModule.ACBrECF.LinhaRelatorioGerencial("NUMERO     EMISSAO    TITULO               VALOR");
                            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
                            for (int i = 0; i <= ListaDAV.Count - 1; i++)
                            {
                                Numero      = ListaDAV[i].NumeroDav + " ";
                                DataEmissao = ListaDAV[i].DataEmissao + " ";
                                Titulo      = "ORCAMENTO ";
                                Valor       = ListaDAV[i].Valor.ToString("###,##0.00");
                                CCF         = Convert.ToString(ListaDAV[i].Ccf);
                                CCF         = new string('0', 3 - CCF.Length) + CCF;
                                Valor       = new string(' ', 13 - Valor.Length) + Valor;
                                FDataModule.ACBrECF.LinhaRelatorioGerencial(Numero + DataEmissao + Titulo + "   " + Valor);
                            }
                            FDataModule.ACBrECF.LinhaRelatorioGerencial(new string('=', 48));
                            FDataModule.ACBrECF.FechaRelatorio();
                            UPAF.GravaR06("RG");
                        }
                        else
                        {
                            MessageBox.Show("Não existem DAV para o periodo informado.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                    }
                }// if FCaixa.StatusCaixa <> 3 then
                else
                {
                    MessageBox.Show("Terminal em Estado Somente Consulta.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }// if radiogroup1.ItemIndex = 0 then

            // geracao de arquivo
            if (cbGeracaodeArquivo.Checked)
            {
                if (MessageBox.Show("Deseja gerar o arquivo de DAV EMITIDOS?", "Pergunta do Sistema", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                {
                    ListaDAV = DAVController.ListaDAVPeriodo(Convert.ToDateTime(mkeDataIni.Text).ToString("yyyy-MM-dd"), Convert.ToDateTime(mkeDataFim.Text).ToString("yyyy-MM-dd"));
                    if (ListaDAV != null)
                    {
                        EmpresaVO Empresa = new EmpresaController().PegaEmpresa(FCaixa.Configuracao.IdEmpresa);

                        //  registro D1
                        FDataModule.ACBrPAF.PAF_D.RegistroD1.CNPJ        = Empresa.Cnpj;
                        FDataModule.ACBrPAF.PAF_D.RegistroD1.IE          = Empresa.InscricaoEstadual;
                        FDataModule.ACBrPAF.PAF_D.RegistroD1.IM          = Empresa.Cnpj;
                        FDataModule.ACBrPAF.PAF_D.RegistroD1.UF          = Empresa.Uf;
                        FDataModule.ACBrPAF.PAF_D.RegistroD1.RazaoSocial = Empresa.RazaoSocial;

                        //  registro D2
                        FDataModule.ACBrPAF.PAF_D.RegistroD2.Clear();
                        // dados da impressora
                        ImpressoraVO Impressora = new ImpressoraController().PegaImpressora(FCaixa.Configuracao.IdImpressora);
                        for (int i = 0; i <= ListaDAV.Count - 1; i++)
                        {
                            Tripa = Convert.ToString(ListaDAV[i].Id) +
                                    Convert.ToString(ListaDAV[i].IdPessoa) +
                                    Convert.ToString(ListaDAV[i].Ccf) +
                                    Convert.ToString(ListaDAV[i].Coo) +
                                    ListaDAV[i].NomeDestinatario +
                                    ListaDAV[i].CpfCnpjDestinatario +
                                    ListaDAV[i].DataEmissao +
                                    ListaDAV[i].HoraEmissao +
                                    ListaDAV[i].Situacao +
                                    Biblioteca.FormataFloat("V", ListaDAV[i].TaxaAcrescimo) +
                                    Biblioteca.FormataFloat("V", ListaDAV[i].Acrescimo) +
                                    Biblioteca.FormataFloat("V", ListaDAV[i].TaxaDesconto) +
                                    Biblioteca.FormataFloat("V", ListaDAV[i].Desconto) +
                                    Biblioteca.FormataFloat("V", ListaDAV[i].Subtotal) +
                                    Biblioteca.FormataFloat("V", ListaDAV[i].Valor) +
                                    ListaDAV[i].NumeroDav +
                                    ListaDAV[i].NumeroEcf +
                                    Convert.ToString(ListaDAV[i].HashIncremento);

                            ACBrPAFRegistroD2 D2 = new ACBrPAFRegistroD2();

                            if (Biblioteca.MD5String(Tripa) != ListaDAV[i].HashTripa)
                            {
                                D2.RegistroValido = false;
                            }
                            D2.NUM_FAB      = Impressora.Serie;
                            D2.MF_ADICIONAL = Impressora.MFD;
                            D2.TIPO_ECF     = Impressora.Tipo;
                            D2.MARCA_ECF    = Impressora.Marca;
                            D2.MODELO_ECF   = Impressora.Modelo;
                            D2.COO          = Convert.ToString(ListaDAV[i].Coo);
                            D2.NUMERO_ECF   = ListaDAV[i].NumeroEcf;
                            D2.NOME_CLIENTE = ListaDAV[i].NomeDestinatario;
                            D2.CPF_CNPJ     = ListaDAV[i].CpfCnpjDestinatario;
                            D2.NUM_DAV      = ListaDAV[i].NumeroDav;
                            D2.DT_DAV       = Convert.ToDateTime(ListaDAV[i].DataEmissao);
                            D2.TIT_DAV      = "ORCAMENTO";
                            D2.VLT_DAV      = ListaDAV[i].Valor;
                            FDataModule.ACBrPAF.PAF_D.RegistroD2.Add(D2);
                            D2 = null;

                            // registro D3
                            ListaDavDetalhe = DAVController.ListaDavDetalhe(ListaDAV[i].Id);
                            if (ListaDavDetalhe != null)
                            {
                                for (int j = 0; j <= ListaDavDetalhe.Count - 1; j++)
                                {
                                    Tripa = Convert.ToString(ListaDavDetalhe[j].Id) +
                                            Convert.ToString(ListaDavDetalhe[j].IdDavCabecalho) +
                                            Convert.ToString(ListaDavDetalhe[j].IdProduto) +
                                            ListaDavDetalhe[j].NumeroDav +
                                            ListaDavDetalhe[j].DataEmissao +
                                            Convert.ToString(ListaDavDetalhe[j].Item) +
                                            Biblioteca.FormataFloat("V", ListaDavDetalhe[j].Quantidade) +
                                            Biblioteca.FormataFloat("V", ListaDavDetalhe[j].ValorUnitario) +
                                            Biblioteca.FormataFloat("V", ListaDavDetalhe[j].ValorTotal) +
                                            ListaDavDetalhe[j].Cancelado +
                                            ListaDavDetalhe[j].MesclaProduto +
                                            ListaDavDetalhe[j].GtinProduto +
                                            ListaDavDetalhe[j].NomeProduto +
                                            ListaDavDetalhe[j].TotalizadorParcial +
                                            ListaDavDetalhe[j].UnidadeProduto +
                                            Convert.ToString(ListaDavDetalhe[j].HashIncremento);

                                    ACBrPAFRegistroD3 D3 = new ACBrPAFRegistroD3();
                                    if (Biblioteca.MD5String(Tripa) != ListaDavDetalhe[j].HashTripa)
                                    {
                                        D3.RegistroValido = false;
                                    }
                                    D3.DT_INCLUSAO = Convert.ToDateTime(ListaDAV[i].DataEmissao);
                                    D3.NUM_ITEM    = ListaDavDetalhe[j].Item;
                                    D3.COD_ITEM    = ListaDavDetalhe[j].GtinProduto;
                                    D3.DESC_ITEM   = (ListaDavDetalhe[j].NomeProduto);

                                    D3.QTDE_ITEM = ListaDavDetalhe[j].Quantidade;
                                    D3.UNI_ITEM  = ListaDavDetalhe[j].UnidadeProduto;
                                    D3.VL_UNIT   = ListaDavDetalhe[j].ValorUnitario;
                                    D3.VL_DESCTO = 0;
                                    D3.VL_ACRES  = 0;
                                    //D3.COD_TCTP = ListaDavDetalhe[j].TotalizadorParcial;
                                    D3.IND_CANC = ListaDavDetalhe[j].Cancelado;
                                    D3.VL_TOTAL = ListaDavDetalhe[j].ValorTotal;
                                    FDataModule.ACBrPAF.PAF_D.RegistroD2[i].RegistroD3.Add(D3);
                                    D3 = null;
                                }
                            }
                        }

                        FDataModule.ACBrPAF.Path = Application.StartupPath + "\\";
                        FDataModule.ACBrPAF.SaveFileTXT_D("PAF_D.txt");

                        Mensagem = "Arquivo armazenado em: " + Application.StartupPath + "\\PAF_D.txt";
                        MessageBox.Show(Mensagem, "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    else
                    {
                        MessageBox.Show("Não existem DAV para o periodo informado.", "Informação do Sistema", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
            }
        }