Jump to content

wagner_fix

Membros
  • Content Count

    149
  • Joined

  • Last visited

Community Reputation

18 Good

1 Follower

About wagner_fix

  • Rank
    Membro
  • Birthday 11/07/1983

Contact Methods

  • Skype
    linksite.atendimento

Profile Information

  • Sexo
    Masculino
  • Localização
    Campinas
  • Interesses
    Aprender

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. @Italo Jurisato Junior obrigado pela resposta. Também pensei nessa possibilidade. E vou adaptar isso no meu sistema. Grato, Wagner
  2. Obrigado @luisclaudio_jr pela resposta. Era isso que eu estava pensando. Grato, Wagner
  3. Bom dia pessoal tudo bem? Pesquisei aqui no fórum e não achei nada a respeito. Semana passada um cliente meu me questionou quando um caminhão quebra no meio do caminho, ele tem que enviar outro caminhão para terminar a entrega. Hoje no meu sistema tem que encerrar o MDF-e atual (com o local de onde parou) e fazer um novo MDF-e com os novos dados do caminhão. E segundo ele, um amigo transportador que não usa o meu sistema, disse que no sistema dele, ele encerra informando o dado do outro caminhão (fiquei bem confuso). Tentei entender e ele disse que é possível colocar outros dados de caminhão mas sem precisar encerrar o mdf-e. Dei uma boa pesquisada no google, acbr e o próprio manual do MDF-e diz que existe apenas esses eventos: Cancelamento / Encerramento / Inclusão de Condutor. Existe alguma outra forma de substituir o caminhão em precisar encerrar? Dessa forma que ele está fazendo (encerrando o mdf-e e fazendo um novo com os dados do caminhão substituto está correto?) Desde já agradeço a atenção de todos. Wagner
  4. Boa tarde, Eu faço assim! PathMensal := ACBrCTe1.Configuracoes.Arquivos.GetPathCTe(StrToDate(txtEmissao.Text)); ACBrCTe1.Configuracoes.Arquivos.PathSalvar := PathMensal; ACBrCTe1.DACTe.PathPDF := PathMensal; ACBrCTe1.Configuracoes.Geral.Salvar := True; Grato, Wagner
  5. @Italo Jurisato Junior gostaria de agradecer pela paciência e as explicações... Conseguiu mais uma vez me ajudar com um problema que carrego a anos, já tentei a solução em outros tópicos e nunca tinha uma resposta clara... E com a dúvida do José conseguiu resolver o meu problema. Abraço, Wagner
  6. Italo bom dia... Explico: As vezes (não é todos meus clientes), ele vai enviar o CT-e para o sefaz ele envia, mas não retorna o XML com o protocolo e da Timeout. O que acontece no meu sistema? Quando ele envia e me da o retorno de sucesso... Eu atualizo o meu banco de dados falando que foi enviado com protocolo, chave e etc... Mas quando da timeout (sem me retornar o xml atualizado do sefaz), o meu banco de dados não atualiza e ele fica pronto para enviar novamente, ai quando o usuário vai tentar enviar novamente (nesse momento ele gera um novo XML) e quando retorna o status de cte duplicado e eu tento corrigir pelo o consultar ele fala que o DigestValue está diferente. Consegui explicar? Grato, Wagner
  7. Italo realmente foi isso que aconteceu... Então no caso se o sistema fizer uma nova tentativa de envio para ele checar o status (ele vai gerar um novo XML). O LoadFromFile e Consultar não vai funcionar né? Grato, Wagner
  8. Bom dia a todos eu estou com o mesmo problema... E alguns minutos atrás recebi mais um e-mail de cliente falando que o contador reclamou de xml sem o número de protocolo... Eu segui a dica do Italo para fazer manualmente, funcionou perfeitamente aqui AbrirCte.Title := 'Selecione o CTe'; AbrirCte.DefaultExt := '*-cte.xml'; AbrirCte.Filter := 'Arquivos CTe (*-cte.xml)|*-cte.xml|Arquivos XML (*.xml)|*.xml|Todos os Arquivos (*.*)|*.*'; AbrirCte.InitialDir := PathMensal; if AbrirCte.Execute then begin ACBrCTe1.Conhecimentos.Clear; ACBrCTe1.Conhecimentos.LoadFromFile(AbrirCte.FileName); ACBrCTe1.Consultar; end; Só que se eu quiser que o meu sistema detecta que está com o status 204 duplicidade e peço para o sistema arrumar sozinho ele dá um erro DigestValue do documento número do cte não confere. Alguém pode me dar uma dica como eu arrumo isso? Grato, Wagner
  9. Bom dia Italo, obrigado pela resposta... Pois é, os cliente colocam um padrão na empresa e para não perdemos temos que dar novas opções... Tive que fazer isso via programação fora do componente... Abraço, Wagner
  10. Pessoal boa noite. Hoje uma cliente me ligou pedindo uma alteração no sistema que o cliente dela está exigindo receber o XML e PDF apenas com o número do ct-e e não com a chave complera. Por exemplo: se fosse o cte 10500... O arquivo tem que ser 10500.xml ew 10500.pdf Procurei no fórum e não encontrei nada, o componente me da essa possibilidade? Grato, Wagner
  11. Liguei no suporte e ele resolveu. Obrigado desde já pela ajuda. Grato, Wagner
  12. Fiz tudo isso e não funcionou, coloquei esse certificado na minha máquina e foi de primeira. Não sei mais o que eu faço com a maquina com problema. Grato, Wagner
  13. Olá pessoal boa tarde tudo bem? Estou desde ontem a tarde tentando resolver um problema na minha cliente. Ela tinha um certificado A3 venceu e ela comprou o A1 da Valid. Eu instalei via site conforme contava no manual, pronto de lá pra cá não consigo mais emitir NF-e, sempre fica dando o mesmo erro: Falha ao obtrer a Chave Privada do Certificado para Assinatura. Pesquisei em vários fóruns, principalmente aqui e não encontrei nada, só um tópico com o mesmo assunto mas eu fiz os procedimentos e não funcionou. Passos que já fiz: Instalei toda a cadeia de certificado, instalei todas as atualizações do windows, java atualizado, tudo atualizado. Alguém tem mais alguma dica? Grato, Wagner
  14. Bom dia @andremelim tenho um exemplo aqui que eu uso no meu sistema... É só adaptar pelo o que você precisa... (Nesse meu caso estou pegando campos de uma NF-e, mas para o CT-e a lógica é a mesma só mudar os nomes dos campos) 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; AuxPeso : Boolean; 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 if (Application.MessageBox('Deseja Pegar o Peso Bruto? (Sim = Peso Bruto - Não = Peso Líquido)','Pergunta',MB_YESNO+MB_ICONQUESTION) = IDNO) then AuxPeso := False else AuxPeso := True; 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['dhEmi'].text; txtEmissao.Text := Copy(AuxData,9,2)+'/'+Copy(AuxData,6,2)+'/'+Copy(AuxData,1,4); if (AuxPeso = True) then AuxPesoB := NoCab4.ChildNodes['pesoB'].text else AuxPesoB := NoCab4.ChildNodes['pesoL'].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)); txtDtPrev.SetFocus;
×
×
  • Create New...