Ir para conteúdo
  • Cadastre-se

wagner_fix

Membros
  • Total de ítens

    177
  • Registro em

  • Última visita

Posts postados por wagner_fix

  1. Olá pessoal bom dia... Já pesquisei no fórum mas não encontrei nada...

     

    Ao inutilizar uma sequencia de ct-e o contador do meu cliente quer receber uma cópia dessa informação... 

     

    O que preciso saber é como eu pego o nome do arquivo completo... A minha implementação está assim...

     

     

    Depois da inutilização....

     

          ACBrCTeDACTeQR.NumCopias      := 1;
          ACBrCTeDACTeQR.MostrarPreview := True;
          ACBrCTe1.InutCTe.LerXML(ACBrCTe1.Configuracoes.Arquivos.GetPathInu+'\'+
                              IntToStr(UF) +
                              CNPJ + txtModelo.Text + txtSerie.Text +
                              txtCTEIni.Text +
                              txtCTEFim.Text +
                              '-ProcInutCTe.xml');
          ACBrCTeDACTeQR.ImprimirINUTILIZACAOPDF;
          ACBrCTeDACTeQR.ImprimirInutilizacao;
     
    Alguém poderia me ajudar?
     
    Grato
  2. ítalo tinha outra pessoa com o mesmo problema mas era no cancelamento e lá você pediu para atualizar os fontes... Fiz o mesmo procedimento, e funcionou perfeitamente... atualizando o tópico como resolvido.

     

    Agradeço pela atenção de sempre...

     

    Grato,

    Wagner

  3. Olá pessoal boa noite...

     

    Dia 07/12/2014 eu atualizei meus fontes dos componentes ACBR... Reinstalei no meu Delphi e depois disso não consigo mais enviar CCe ao enviar ele dá o erro: Arquivo de Schema não encontrado.

     

    Lembrando que antes da atualização meus clientes emitiam CCe normalmente...

     

    Já confirmei o caminho do schema estão corretos, já baixei pelo o próprio site do sefaz e nada...

     

    Obs.: Ao emitir o CT-e não está dando o erro só no CCe, 

     

    Alguém tem alguma dica?

     

    Grato,

    Wagner

  4. Olá pessoal bom dia...

     

    Ao enviar o XML para o sefaz funciona perfeitamente... Atualiza o protocolo do XML e tudo..

     

    Mas se meu cliente quando termina de enviar para o sefaz e eu dou a opção para ele enviar o XML e o PDF por e-mail e ele confirma que sim..

     

    Enviar o XML perfeitamente por e-mail...

     

    Mas some aquela parte do protocoloco do XML igual as tag abaixo....

     

    <protCTe versao="2.00"><infProt><tpAmb>2</tpAmb><verAplic>SP-CTe-20-05-2014</verAplic><chCTe>35140667397737000160570010000001311000001315</chCTe><dhRecbto>2014-06-06T16:55:57</dhRecbto><nProt>135140006586314</nProt><digVal>xbFkpJMfL8NZJt4TA1Tj1EpqK/U=</digVal><cStat>100</cStat><xMotivo>Autorizado o uso do CT-e</xMotivo></infProt></protCTe></cteProc>

     

    Alguém sabe o que pode estar ocorrendo?

     

    Abraço,

    Wagner

  5. Beto eu fiz para importar dados da NF-e XML mas a idéia é a mesma é só mudar os nomes do campo...

     

    Obs.: Sempre pego informações diretamente do componente não sendo necessário ler o XML... mas caso queira segue o meu exemplo abaixo...

     

    var
        vXMLDoc: TXMLDocument;
        NodePrim, NodePai, NodePriEmi, NodePaiEmi, NodeCabecalho, NodePrim2,
        NodePai2, NodePai3, Nocab2, NodePrim3, NodePai4, NodePai5, Nocab3,
        NodePrim4, NodePai6, NodePai7, NodePai8, NodePai9, Nocab4 : IXMLNode;
        AuxChave, AuxData, AuxPesoB, AuxVNF : String;
    begin
     vXMLDoc             := TXMLDocument.Create(self);
     AbrirXML.Title      := 'Selecione o XML';
     AbrirXML.DefaultExt := '*.xml';
     AbrirXML.Filter     := 'Arquivos XML (*.xml)|*.xml|Arquivos XML (*.xml)|*.xml|Todos os Arquivos (*.*)|*.*';
     if AbrirXML.Execute then begin
       vXMLDoc.LoadFromFile(AbrirXML.FileName); //Le Arquivo Recibo XML');
       vXMLDoc.Active     := True;
       NodePrim           := vXMLDoc.DocumentElement.ChildNodes.FindNode('protNFe');
       NodePai            := NodePrim.ChildNodes.FindNode('infProt');
       NodePriEmi         := vXMLDoc.DocumentElement.ChildNodes.FindNode('NFe');
       NodePaiEmi         := NodePriEmi.ChildNodes.FindNode('infNFe');
       NodeCabecalho      := NodePaiEmi.ChildNodes['ide'];
       NodePrim2          := vXMLDoc.DocumentElement.ChildNodes.FindNode('NFe');
       NodePai2           := NodePrim2.ChildNodes.FindNode('infNFe');
       NodePai3           := NodePai2.ChildNodes.FindNode('transp');
       Nocab2             := NodePai3.ChildNodes['vol'];
       NodePrim3          := vXMLDoc.DocumentElement.ChildNodes.FindNode('NFe');
       NodePai4           := NodePrim3.ChildNodes.FindNode('infNFe');
       NodePai5           := NodePai4.ChildNodes.FindNode('total');
       Nocab3             := NodePai5.ChildNodes['ICMSTot'];
       NodePrim4          := vXMLDoc.DocumentElement.ChildNodes.FindNode('NFe');
       NodePai6           := NodePrim4.ChildNodes.FindNode('infNFe');
       NodePai7           := NodePai6.ChildNodes.FindNode('transp');
       Nocab4             := NodePai7.ChildNodes.FindNode('vol');
     
       AuxChave           := NodePai.ChildNodes['chNFe'].text;
       AuxChave           := FormataChave(AuxChave);
       txtChave.Text      := Trim(AuxChave);
       txtChaveExit(Self);
       AuxData            := NodeCabecalho.ChildNodes['dEmi'].text;
       txtEmissao.Text    := Copy(AuxData,9,2)+'/'+Copy(AuxData,6,2)+'/'+Copy(AuxData,1,4);
       AuxPesoB           := Nocab2.ChildNodes['pesoB'].text;
       AuxPesoB           := StringReplace(AuxPesoB, '.', ',', [rfReplaceAll]);
       txtPBruto.Text     := FormatFloat('###,##0.000', StringFloat(AuxPesoB));
       txtPCalc.Text      := Trim(txtPBruto.Text);
       AuxVNF             := Nocab3.ChildNodes['vNF'].text;
       AuxVNF             := StringReplace(AuxVNF, '.', ',', [rfReplaceAll]);
       txtVlNota.Text     := FormatFloat('###,##0.00', StringFloat(AuxVNF));
       txtVolume.Text     := FormatFloat('###,##0.000', StringFloat(Nocab4.ChildNodes['qVol'].text));
       txtVlNota.SetFocus;
     end;
     
    Espero que tenha te ajudado...
    • Curtir 1
  6. Italo bom dia...

     

    Primeiramente obrigado pela resposta...

     

    Fiz como você me indicou e não funcionou...

     

    Propositalmente peguei um xml já enviado e ok... E tirei a parte que de vez em quando da erro conforme relatei acima...

    <protCTe versao="2.00"><infProt><tpAmb>2</tpAmb><verAplic>SP-CTe-20-05-2014</verAplic><chCTe>35140667397737000160570010000001311000001315</chCTe><dhRecbto>2014-06-06T16:55:57</dhRecbto><nProt>135140006586314</nProt><digVal>xbFkpJMfL8NZJt4TA1Tj1EpqK/U=</digVal><cStat>100</cStat><xMotivo>Autorizado o uso do CT-e</xMotivo></infProt></protCTe></cteProc>

     

    Depois executei o comando que você pediu e não atualizou o XML...

     

    Grato,

    Wagner

  7. Pessoal bom dia tudo bem?

     

    As vezes muito raro mas acontece na hora de enviar o XML para o sefaz, o programa não dá erro nenhum mas na hora de salvar o XML as informações do envio não salva...

     

    Ai se eu mando visualizar o XML, em baixo fica com aquela mensagem. Cte não enviado para o Sefaz.

     

    Mas se eu consulto pela chave foi enviado para o sefaz...

     

    E tenho que arrumar o xml manualmente...

     

    Alguém sabe onde eu posso estar errando?

     

    Grato,

    Wagner

  8. Segue o exemplo...

     

           with DM.SqlAux5 do begin
             LimpaSQL(DM.SqlAux5);
             SQL.Add('SELECT * FROM CTE05 WHERE CODC=:xCODC');
             Parameters.ParambyName('xCODC').Value := StrToInt(txtCod.Text);
             Open;
             First;
           end;
           j := 0;
           j := DM.SqlAux5.RecordCount;
           if j > 0 then begin
             for i := 1 to j do begin
               with infCTeNorm.infDoc.infNFe.Add do begin
                 chave := Trim(DM.SqlAux5.FieldByName('CHAVE').AsString);
                 PIN   := Trim(DM.SqlAux5.FieldByName('PIN').AsString);
                 dPrev := StrToDate(txtGeraDtPrevista.Text);
               end;
               DM.SqlAux5.Next;
             end;
           end;
     
    Faço assim e dá certo...
     
    Abraço,
    Wagner
  9. Olá bom dia...

     

    Depois que eu atualizei os meus fontes para o CTe 2.0 os meus DACTE estão saindo em 2 folhas... E tem alguns clientes meus que imprimi mais de 1000 DACTE mês... E é claro eles estã maluco...

     

    Baixei as atualizações em 06/05/2014

     

    O meu DACTE é em quickreport, o que eu posso fazer para voltar sair em apenas 1 página?

     

    Grato

  10. Tive que fazer para o meu cliente... Acabei de testar e funciona perfeitamente...

     

      while (not DM.SqlAux.Eof ) do begin
       ACBrCTe1.DACTe.NumCopias  := StrToInt(txtQtde.Text);
       PathArquivo               := ACBrCTe1.Configuracoes.Arquivos.GetPathCTe(DM.SqlAux.FieldByName('DTEHR1').AsDateTime);
       Arq                       := PathArquivo+'\'+Trim(DM.SqlAux.FieldByName('CHAVE').AsString)+'-cte.xml';
       ACBrCTe1.Conhecimentos.Clear;
       ACBrCTe1.Conhecimentos.LoadFromFile(Arq);
       ACBrCTe1.DACTe.MostrarPreview := False;
       ACBrCTe1.Conhecimentos.Imprimir;
       DM.SqlAux.Next;
      end;
  11. Olá bom dia a todos...

    Hoje tive problema com o meu cliente para cancelamento de ct-e... E ele não conseguia cancelar... Ao pesquisar na web e o próprio erro dizia: 7 dias (168 horas) pois bem... O que ele estava tentando cancelar era do dia 29/12/2013, só que ele tentou cancelar um do dia 09/01/2014 e hoje é dia 29/01/2014, 20 dias depois e aceitou... Pesquisei no site da fazenda pela chave e lá consta que está cancelado...

     

    Alguém poderia me ajudar qual o prazo real do cancelamento?

     

    Grato,

    Wagner

  12. Faz um While do seu select do banco de dados e esse comando dentro...

     

       PathArquivo := ACBrCTe1.Configuracoes.Arquivos.GetPathCTe(StrToDate(txtEmissao.Text));
       Arq := PathArquivo+'\'+Trim(txtChave.Text)+'-cte.xml';
       ACBrCTe1.Conhecimentos.Clear;
       ACBrCTe1.Conhecimentos.LoadFromFile(Arq);
       ACBrCTe1.Conhecimentos.Imprimir;
     
  13. Eu faço isso no meu sistema...

     

         {Imprimir com a quantidade de cópia desejada}
         if (AuxVisu = 1) then begin
           AuxQtdCopia    := InputBox('Impressão','Informe a Quantidade',Trim(AuxQtdCopia));
           ACBrCTe1.DACTe.NumCopias := StrToInt(AuxQtdCopia);
           ACBrCTe1.Enviar(1,True);
         end;
  14. Italo boa tarde...

     

    Obrigado pela resposta... Mas não funcionou... Tentei pegar alguns exemplos na internet e não encontrei nada...

     

    Eu estou jogando esse comando aqui veja...

     

    Está correto??

     

      if (Application.MessageBox('Deseja Realmente Gerar/Assinar/Validar/Transmitir o CT-e?','Pergunta',MB_YESNO+MB_ICONQUESTION) = IDYES) then begin
         ACBrCTe1.DACTe.MostrarPreview   := False;
         ACBrCTeDACTeQR1.MostrarPreview  := False;
         ACBrCTeDACTeQR1.Email           := '[email protected]';
         ToolBar1.Enabled     := False;
         btnGerar.Enabled     := False;
         btnEmail.Enabled     := False;
         btnDacte.Enabled     := False;
         btnStatus.Enabled    := False;
         btnCancelar.Enabled  := False;
         btnErro.Enabled      := False;
         MemoResp.Lines.Clear;
         MemoResp.Lines.Add('-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------');
         MemoResp.Lines.Add('Gerando XML...');
         MemoResp.Refresh;
         NaoEmitidos;
         // Gera o XML, Assina e Salva o Arquivo
         memoResp.Lines.Add('Se preparando para Assinar...');
         memoResp.Lines.Add('Assinando...');
         memoResp.Refresh;
         ACBrCTe1.Conhecimentos.Assinar;
    .............................
×
×
  • 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.