Ir para conteúdo
  • Cadastre-se

Liandrocs

Membros
  • Total de ítens

    87
  • Registro em

  • Última visita

  • Days Won

    1

Tudo que Liandrocs postou

  1. Não utilizo nenhuma DLL do ACBR, nem altero o XML, o ACBR é que faz todo o processo, crio ele em tempo de execução... Tenho outro sistema de NFe e faço do mesmo modo e funciona tudo. Tenho que usar as Dlls do ACBR ? (Quais que preciso ?) O que me parece é que fica algo em memória no componente, que não é limpo, dai quando envio o segundo dá erro, o problema maior é que o primeiro sempre funciona, quando vou fazer o segundo Cte que da o erro, (tando para envio como cancelamento). Um teste que eu tinha feito, era com uma executavel a parte que cria o ACBR para cancelamento, que tb dava erro no segundo cancelamento.
  2. Fiz agora dois conhecimentos, o primeiro passou e imprimiu, o segundo deu o erro REJEIÇÃO: Assinatura difere do calculado. Zipei os XMLs o Cte = 210 funcionou o 211 deu o erro. http://www.4shared.com/zip/kv_edf_x/211-_Cte_com_Erro.html http://www.4shared.com/zip/clfZGQkV/210-_Cte_Correto.html
  3. Se este teste funcionar para você, vou saber que é com o certificado o problema...
  4. Se não for muito incomodo, segue abaixo, os fontes de meu teste que deu o mesmo erro, só no segundo cancelamento(O primeiro funciona). É uma rotina simples de cancelamento pelo XML do Cte. Nele tem as configurações que eu uso, vê se esta faltando algo. http://www.4shared.com/zip/ZZArfIsO/Teste.html Outra coisa, tanto faz se for dois cancelamentos ou duas emissões, o primeiro processo funciona o segundo dá erro. Grato...
  5. Se alguém poder me ajudar, eu poderia passar os fontes do cancelamento para quem poder testar, com seu certificado. é bem simples, cancela o primeiro no segundo cancelamento já da erro para mim...
  6. Sim, incluir ele está agora em um datamodule, e da a mesma coisa... Fiz outro teste tambem, crie um projeto novo com um unico form e uma lista de Cte aprovados, e um unico botão para cancelar, crio e configuro no show do form. Unica coisa que é feita é cancelamento... cte.conhecimento.clear cte.conhcimento.loadfronfile(xxx) cte.conhecimento.cancela('ffffffffffffffffffffff') .... O primeiro cancela normalmente, sem erros o segundo que vou mandar cancelar da erro : REJEIÇÃO: Assinatura difere do calculado. *** Tentei pegar outro certificado, para ver se é problema nele, mas não consegui um que seja de transportadora...
  7. Hoje vou testar com outro certificado, para ter certeza que não é ele...
  8. é coisa doutro, de outro mundo... Passei o ACBR para dentro do data module, crio ele e configuro no create, destruo no detroi.. Até para cancelamento ou envio o primeiro funciona, imprime e envia email, o segundo não vai mais, dá erro e só volta ao normal quando fecho o programa e abro novamente, parece que fica algo em memoria, tambem tentei direto pelo executavel sem o delphi e dá no mesmo. REJEIÇÃO: Assinatura difere do calculado. HELP, HELP, HELP....
  9. Boa Tarde. Criei um projeto novo de um único form. como segue abaixo, só que este executável pega um XML já aprovado em homologação e o cancela. (O primeiro ele cancela, mas o segundo da erro de ASSINATURA DIFERE DO CALCULADO. (Por favor preciso de ajuda, talvez eu esteja esquecendo de algo) //////*********************************************************************************************** unit Unit12; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, FileCtrl, JvDriveCtrls, QuickRpt, ACbrCte, ACBrCTeDACTeQRClass, pcnConversao, pcnAuxiliar; type TForm12 = class(TForm) JvFileListBox1: TJvFileListBox; Button1: TButton; procedure Button1Click(Sender: TObject); procedure FormDestroy(Sender: TObject); procedure FormShow(Sender: TObject); private { Private declarations } public ACBrCTE_C: TACBrCTE; procedure ConfiguraCTE; end; var Form12: TForm12; implementation {$R *.dfm} procedure TForm12.Button1Click(Sender: TObject); var NomeArquivo: string; begin NomeArquivo := JvFileListBox1.Directory + '\' + JvFileListBox1.Items[JvFileListBox1.ItemIndex]; ACBrCTE_C.Conhecimentos.Clear; if FileExists(NomeArquivo) then ACBrCTE_C.Conhecimentos.LoadFromFile(NomeArquivo) else raise Exception.create('Arquivo XML do conhecimento não localizado!'); // Cancela if ACBrCTE_C.Cancelamento('TESTE CANCELAMENTO AMBIENTE HOMOLOGACAO') then begin ShowMessage('Cancelou'); ACBrCTE_C.Conhecimentos.Imprimir; DeleteFile(NomeArquivo); JvFileListBox1.Refresh; end; end; procedure TForm12.FormDestroy(Sender: TObject); begin if Assigned(ACBrCTE_C) then FreeAndNil(ACBrCTE_C); end; procedure TForm12.ConfiguraCTE; var PastaInicial: string; begin PastaInicial := ExtractFilePath(Application.ExeName); ACBrCTE_C.Configuracoes.Arquivos.AdicionarLiteral := True; ACBrCTE_C.Configuracoes.Arquivos.EmissaoPathCTe := True; ACBrCTE_C.Configuracoes.Arquivos.PastaMensal := True; ACBrCTE_C.Configuracoes.Arquivos.PathCan := PastaInicial + 'Canceladas'; ACBrCTE_C.Configuracoes.Arquivos.PathDPEC := PastaInicial + 'DPEC'; ACBrCTE_C.Configuracoes.Arquivos.PathInu := PastaInicial + 'Inutilizacoes'; ACBrCTE_C.Configuracoes.Arquivos.PathCTe := PastaInicial + 'CTE'; ACBrCTE_C.Configuracoes.Arquivos.Salvar := True; // Criação das pastas ForceDirectories(PastaInicial + 'Canceladas'); ForceDirectories(PastaInicial + 'DPEC'); ForceDirectories(PastaInicial + 'Inutilizacoes'); ForceDirectories(PastaInicial + 'PDF'); ForceDirectories(PastaInicial + 'CTE'); ForceDirectories(PastaInicial + 'Geral'); // Configurações -> Certificados ACBrCTE_C.Configuracoes.Certificados.NumeroSerie := NumerodeSerie ACBrCTE_C.Configuracoes.Certificados.Senha := Senha''; // Configurações -> Geral ACBrCTE_C.Configuracoes.Geral.FormaEmissao := teNormal; ACBrCTE_C.Configuracoes.Geral.PathSalvar := PastaInicial + 'Geral'; ACBrCTE_C.Configuracoes.Geral.PathSchemas := PastaInicial + 'Schemas'; ; ACBrCTE_C.Configuracoes.Geral.Salvar := True; // Configurações -> WebServices ACBrCTE_C.Configuracoes.WebServices.AguardarConsultaRet := 0; ACBrCTE_C.Configuracoes.WebServices.AjustaAguardaConsultaRet := False; ACBrCTE_C.Configuracoes.WebServices.Ambiente := taHomologacao; ACBrCTE_C.Configuracoes.WebServices.IntervaloTentativas := 0; ACBrCTE_C.Configuracoes.WebServices.ProxyHost := ''; ACBrCTE_C.Configuracoes.WebServices.ProxyPass := ''; ACBrCTE_C.Configuracoes.WebServices.ProxyPort := ''; ACBrCTE_C.Configuracoes.WebServices.ProxyUser := ''; ACBrCTE_C.Configuracoes.WebServices.Tentativas := 5; ACBrCTE_C.Configuracoes.WebServices.UF := 'RS'; ACBrCTE_C.DACTe.PathPDF := PastaInicial + 'PDF'; ACBrCTE_C.DACTe.ImprimirDescPorc := False; ACBrCTE_C.DACTe.ImprimirHoraSaida := True; ACBrCTE_C.DACTe.ImprimirHoraSaida_Hora := DateToStr(Date); // ACBrCTE_C.DACTe.Logo := PastaInicial + 'LogoCte.jpg'; ACBrCTE_C.DACTe.MostrarPreview := True; ACBrCTE_C.DACTe.Sistema := Application.Title; ACBrCTE_C.DACTe.Site := ''; ACBrCTE_C.DACTe.TipoDACTE := tiPaisagem; ACBrCTE_C.DACTe.Usuario := ''; end; procedure TForm12.FormShow(Sender: TObject); begin JvFileListBox1.Directory := ExtractFilePath(Application.ExeName) + 'XML'; ACBrCTE_C := TACBrCTE.Create(nil); ACBrCTE_C.DACTe := TACBrCTeDACTeQR.Create(nil); // ConfiguraCTE; end;
  10. Sim, mas a eu centralizo todos os comando do ACBRCte dentro deste form, crio uma unica vez, e destruo só no ondestroy desta tela, inclusive a configuração dele é só na criação..
  11. Eu crio o acbrcte em tempo de execução. 1) Crio ele no show de minha tenha de emissão 2) configuro ele, após criar. 3) ao enviar, eu populo as informações e envio. Obs. a primeira sempre dá certo (Grava XML, imprime e imprimePDF), testei duas com dados semelhantes, a segunda que dá o erro de ASSINATURA DIFERE DO CALCULADO. Isso para emissão ou cancelamento. Para voltar a funcionar tenho que fechar a aplicação e retirar o token e reiniciar o processo. Sempre antes de começar a popular a ACBRCte eu uso o ACBRCte.conhecimentos.Clear; Tem outro comando que devo usar para limpar as informações do anterior. Grato.
  12. Amanhã, vou testar com outro certificado, para ter certeza se é o certificado ou o programa.
  13. Boa Tarde, alguem tem uma vaga ideia do que pode ser meu problema, é sempre no segundo envio que dá o erro, ASSINATURA DIFERE DO CALCULADO.
  14. Liandrocs

    Erro Assinatura

    Boa tarde, Estou com um problema que não estou achando a solução. Envio o Cte normalmente, ele envia, salva em PDF e imprime, mas se eo vou cancelar ou emitir um segundo da a mensagem de: REJEIÇÃO - Assinatura Difere do Calculado. Se eu removo o token da invia, fecho o programa e ecoloco o token e renicio o meu programa volta a funcionar mas só para uma tentativa, na segunda dá o mesmo erro de novo.
  15. Bom Dia Estou enviando o XML e esta aprovando mas ao imprimir da erro. Ao tentar enviar o email tambem da o erro. ACBRCTEConhecimentos (Linha 287) TACBrCTe( TConhecimentos( Collection ).ACBrCTe ).DACTE.ImprimirDACTEPDF(CTe); cai nesta ACBRCTEDacteClass procedure TACBrCteDACTEClass.ErroAbstract(NomeProcedure: String); begin raise Exception.Create( NomeProcedure ); <<-- ImprimirPDF end;
  16. Sim, com uma POG. Se o retorno for status = 657 - Codigo do Orgao diverge do orgao autorizador. Isso resolveu meu problema. ACBrNFe1 := TACBrNFe.Create(nil); try ConfiguraACBRNFE(ACBrNFe1); NumeroLote := StrToInt(FormatDateTime('yymmddhhmm', NOW)); ACBrNFe1.EventoNFe.Evento.Clear; ACBrNFe1.EventoNFe.idLote := NumeroLote; with ACBrNFe1.EventoNFe.Evento.Add do begin infEvento.chNFe := Chave; infEvento.CNPJ := CNPJ; infEvento.dhEvento := now; infEvento.tpEvento := teManifDestCiencia; ; end; // Enviar o evento de manifestação if ACBrNFe1.EnviarEventoNFe(NumeroLote) then begin // 657 = Rejeicao: Codigo do Orgao diverge do orgao autorizador // Em todos os casos testados deveria ser o 91 que vem no arquivo de resposta // que eu atribuo ele ao evento e reenvio.. if ACBrNFe1.WebServices.EnvEvento.EventoRetorno.retEvento.Items[0].RetInfEvento.cStat = 657 then begin ACBrNFe1.EventoNFe.Evento.Items[0].InfEvento.cOrgao := ACBrNFe1.WebServices.EnvEvento.EventoRetorno.cOrgao; if not ACBrNFe1.EnviarEventoNFe(NumeroLote) then begin with ACBrNFe1.WebServices.EnvEvento do begin raise Exception.Create('Ocorreram erros ao tentar efetuar a manifestação:' + sLineBreak + 'Lote: ' + IntToStr(EventoRetorno.idLote) + sLineBreak + 'Ambiente: ' + TpAmbToStr(EventoRetorno.tpAmb) + sLineBreak + 'Orgao: ' + IntToStr(EventoRetorno.cOrgao) + sLineBreak + 'Status: ' + IntToStr(EventoRetorno.cStat) + sLineBreak + 'Motivo: ' + EventoRetorno.xMotivo); end; end; end;
  17. Lendo alguns tópicos passados achei isso, que foi alterado... Pessoal, consegui realizar o cancelamento comentando o que tinha sido feito anteriormente na linha 167 da Unit pcnEventoNFe function TInfEvento.getcOrgao: integer; na parte em que está eu comentei e passou normalmente: {Estados que utilizam a SVAN: ES, MA, PA, PI, RN => Devem utilizar 91} // if Result in [32,21,15,22,24] then // Result := 91;
  18. Testei com outra nota com a chave iniciando com 32... e funcionou mas no caso do amigo acima que tb começa com 32, não funcionou...
  19. <envEvento xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.00"> <idLote>1304221517</idLote> <evento xmlns="http://www.portalfiscal.inf.br/nfe" versao="1.00"> <infEvento Id="ID2102104313040344231500018755001000016687101834949401"> <cOrgao>43</cOrgao> <tpAmb>1</tpAmb> <CNPJ>93632370000122</CNPJ> <chNFe>43130403442315000187550010000166871018349494</chNFe> <dhEvento>2013-04-22T15:17:49-03:00</dhEvento> <tpEvento>210210</tpEvento> <nSeqEvento>1</nSeqEvento> <verEvento>1.00</verEvento> <detEvento versao="1.00"> <descEvento>Ciencia da Operacao</descEvento> ...
  20. <retEnvEvento versao="1.00" xmlns="http://www.portalfiscal.inf.br/nfe"> idLote>1304221517</idLote> <tpAmb>1</tpAmb> <verAplic>AN_1.0.0</verAplic> <cOrgao>91</cOrgao> <cStat>128</cStat> <xMotivo>Lote de evento processado</xMotivo> <retEvento versao="1.00"><infEvento> <tpAmb>1</tpAmb> <verAplic>AN_1.0.0</verAplic> <cOrgao>91</cOrgao> <cStat>657</cStat> <xMotivo>Rejeicao: Codigo do Orgao diverge do orgao autorizador</xMotivo> <chNFe>43130403442315000187550010000166871018349494</chNFe> <tpEvento>210210</tpEvento> <nSeqEvento>1</nSeqEvento> <dhRegEvento>2013-04-22T15:20:15-03:00</dhRegEvento></infEvento></retEvento></retEnvEvento>
  21. Estou um problema: Tenho a seguinte NFE para manifestação, 43130403442315000187550010000166871018349494 O Acbr esta colocando no código do orgão 43, e aparece a seguinte mensagem "Codigo do orgao diverge do orgao autorizador", vi que na mensagem de retorno vinha com código do Orgao = 91 dai preenchi o codigo do orgão com 91 e voi aprovado a manifestação. Só que o codigo 43 não foi eu quem informou foi o acbr.
  22. Então, seria um cupom de recebimento com comprovante de CCD ? E só fazer os tratamentos para queda de luz...
  23. Boa Tarde... O recebimento diversos pelo TEF é de conhecimento deles. Pois mandei um email para a SevenPDV é eles disseram que desconhecem o recebimento diversos e que nem fazem testes sobre isso. Minha Duvida... Posso receber parcelas de meus clientes pelo TEF ? Fazendo um Gerencial?
  24. Passei o código do orgão e funcionou corretamente. Grato
  25. Ok, Valeu pela informação, fiz uma função aqui e vou testar... Grato
×
×
  • 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.