Ir para conteúdo
  • Cadastre-se

dev botao

Tag Fat esta duplicando no Xml


igorpatrik
  • Este tópico foi criado há 2101 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Amigos estou com um problema aqui na TAG:
            Cobr.Fat.nFat := dm.QNFNUMERO_NOTA_NF.AsString;
            Cobr.Fat.vOrig := dm.QNFVALOR_TOTAL_NF.AsCurrency;
            Cobr.Fat.vDesc := 0.00;
            Cobr.Fat.vLiq := dm.QNFVALOR_TOTAL_NF.AsCurrency;

Mas no xml esta duplicando essa tag de fatura.
 

22180823559112000182550010000001661000001668-nfe.xml

Link para o comentário
Compartilhar em outros sites

  • Moderadores

Não existe no código do ACBr nenhum ponto q cause esse problema. Para ser analisado preciso dos passos para reproduzir o problema com o demo.

djsystem-logo.png
 youtube.png facebook.png instagram.png linkedin.png
André Ferreira de Moraes | Analista de Sistemas
www.djsystem.com.br | www.djpdv.com.br
www.tefhouse.com.br | www.lambretinha.com.br
Link para o comentário
Compartilhar em outros sites

Não quis dizer que esteja no Acbr, pedi mais foi uma ajuda nessa tag que esta gerando duplicado.

Vou colocar a minha tag completa.

 


      { DUPLICATAS }
      if dm.IBTransaction.Active then
        dm.IBTransaction.Commit;
      dm.IBTransaction.StartTransaction;
      dm.QConsulta.close;
      dm.QConsulta.sql.Clear;
      dm.QConsulta.sql.Text :=
        'SELECT * from FATURAS_NOTAS_FISCAIS WHERE COD_NF = :CODNF ' +
        'ORDER BY VENCIMENTO';

      dm.QConsulta.Parambyname('codnf').AsInteger := iCodigoNotaFiscal;
      dm.QConsulta.open;
      dm.QConsulta.Last;
      dm.QConsulta.first;


            Cobr.Fat.nFat := dm.QNFNUMERO_NOTA_NF.AsString;
            Cobr.Fat.vOrig := dm.QNFVALOR_TOTAL_NF.AsCurrency;
            Cobr.Fat.vDesc := 0.00;
            Cobr.Fat.vLiq := dm.QNFVALOR_TOTAL_NF.AsCurrency;

      if (not dm.QConsulta.IsEmpty) AND (dm.QConsulta.recordCount > 1) then
      begin


      //Se tem fatura
        //Alterado por Caiman
        //Tipos permitidos para a tag tPag:
        //01 - Dinheiro; fpDinheiro
        //02 - Cheque; fpCheque
        //03 - Cartão de Crédito; fpCartaoCredito
        //04 - Cartão de Débito; fpCartaoDebito
        //05 - Crédito Loja; fpCreditoLoja
        //10 - Vale Alimentação; fpValeAlimentacao
        //11 - Vale Refeição; fpValeRefeicao
        //12 - Vale Presente; fpValePresente
        //13 - Vale Combustível; fpValeCombustivel
        //14 - Duplicata Mercantil; fpDuplicataMercantil
        //90 - Sem pagamento; fpSemPagamento
        //99 - Outros. fpOutro

        if dm.ACBrNFe1.Configuracoes.Geral.VersaoDF = ve400 then
         begin
            pag.Add.tPag := fpSemPagamento;
         end
      else
      case Ide.indPag of
        ipPrazo:
          begin
            with pag.Add do
            begin
              tPag := fpCreditoLoja;
              vPag := Total.ICMSTot.vNF;
            end;
          end;
        ipOutras, ipVista, ipNenhum:
          begin
            with pag.Add do
            begin
              tPag := fpDinheiro;
              vPag := Total.ICMSTot.vNF;
            end;
          end;
      end;


        while not dm.QConsulta.eof do
        begin
          with Cobr.Dup.Add do
          begin
            nDup := dm.QConsulta.fieldbyname('PARCELA').AsString;
            dVenc := dm.QConsulta.fieldbyname('VENCIMENTO').AsDateTime;
            vDup := dm.QConsulta.fieldbyname('VALOR').AsCurrency;
          end;
          dm.QConsulta.next;
        end;
      end
      else
      //Se não tem fatura
      begin
        if dm.QConsulta.fieldbyname('VENCIMENTO').AsDateTime <= Date then
        begin

          //Alterado por Caiman
          if dm.ACBrNFe1.Configuracoes.Geral.VersaoDF = ve400 then
            begin

            with pag.Add do
              begin

              if Ide.finNFe in [fnDevolucao, fnAjuste] then
                tPag      := fpSemPagamento
              else
                begin
                tPag      := fpOutro;
                vPag      := dm.QNFVALOR_TOTAL_NF.AsCurrency;
                end;
              end;
            end
          else
            Ide.indPag := ipVista;

        end
        else
        begin
        if dm.ACBrNFe1.Configuracoes.Geral.VersaoDF = ve400 then
          begin

          with pag.Add do
            begin
            if Ide.finNFe in [fnDevolucao, fnAjuste] then
            begin
            tPag      := fpSemPagamento
            end
            else
              begin
              tPag      := fpDuplicataMercantil;;
              vPag      := dm.QNFVALOR_TOTAL_NF.AsCurrency;
              end;
            end;
          end
          else
            Ide.indPag := ipPrazo;


        if not (Ide.finNFe in [fnDevolucao, fnAjuste]) then
          begin
          while not dm.QConsulta.eof do
            begin
            with Cobr.Dup.Add do
              begin
              nDup := dm.QConsulta.fieldbyname('PARCELA').AsString;
              dVenc := dm.QConsulta.fieldbyname('VENCIMENTO').AsDateTime;
              vDup := dm.QConsulta.fieldbyname('VALOR').AsCurrency;
              end;
            dm.QConsulta.next;
            end;
          end;
        end;

      end;

      dm.IBTransaction.Commit;
      dm.QConsulta.close;
 

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2101 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.