Ir para conteúdo
  • Cadastre-se

KriarTecnologia

Membros
  • Total de ítens

    86
  • Registro em

  • Última visita

Tudo que KriarTecnologia postou

  1. Boa tarde Ítalo, sua orientação foi excelente, deu certo, muito obrigado, valeu! ACBrNFe1.Configuracoes.Geral.SSLXmlSignLib:= xsLibXml2; (funcionou)
  2. Bom dia senhores, tem uma postagem do Italo em 2015 do acbrmdfe, que apresentava o mesmo problema, ele fala em configuração a partir do acbr, por faovr deem uma olhada:
  3. a criação do .xml, assinatura, envio para sefaz, retorno ok da sefaz, reenvio de nfce em contingência, retorno ok de nfce, pesquisa de documento, funciona perfeitamente tanto standalone quanto no servidor vcl .dll no iis (isapi). Uso o certificado para essas operações sem problemas.
  4. Bom dia José, como eu disse para um sistema em vcl como é o DemoNFe o cancelamento funciona. Estou usando o intraweb como mencionei anteriormente: utilizo um servidor vcl .dll no iis já utilizei todas essas opções: TSSLHttpLib = (httpNone, httpWinINet, httpWinHttp, httpOpenSSL, httpIndy); o mesmo codigo quando executado em modo standalone funciona e cancela a nfc-e normalmente, uso a seguintes configuração: ACBrNFe1.Configuracoes.Geral.VersaoDF := ve400; ACBrNFe1.SSL.SSLType := LT_TLSv1_2; ACBrNFe1.Configuracoes.Geral.SSLLib := libOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLCryptLib := cryOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLHttpLib := httpOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLXmlSignLib:= xsMsXml; ACBrNFe1.Configuracoes.Geral.VersaoQRCode := veqr200; a criação do .xml, assinatura, envio para sefaz, retorno ok da sefaz, reenvio de nfce em contingência, retorno ok de nfce, pesquisa de documento, funciona perfeitamente tanto standalone quanto no servidor vcl .dll no iis (isapi).
  5. Obrigado pela atenção Juliana, quando alguém fizer alguma menção sobre o assunto aparecerá aqui? Ou em outro local, se for em outra postagem por favor me passe o link. desde já agradeço pela atenção!
  6. bom dia senhores, estou com o seguintes retorno quanto envio um evento de cancelamento de nfc-e (acbrnfe) para o servidor da sefaz: HTTP/1.1 400 Bad Request Isso utilizando um servidor vcl .dll no iis já utilizei todas essas opções: TSSLHttpLib = (httpNone, httpWinINet, httpWinHttp, httpOpenSSL, httpIndy); o mesmo codigo quando executado em modo standalone funciona e cancela a nfc-e normalmente, uso a seguintes configuração: ACBrNFe1.Configuracoes.Geral.VersaoDF := ve400; ACBrNFe1.SSL.SSLType := LT_TLSv1_2; ACBrNFe1.Configuracoes.Geral.SSLLib := libOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLCryptLib := cryOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLHttpLib := httpOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLXmlSignLib:= xsMsXml; ACBrNFe1.Configuracoes.Geral.VersaoQRCode := veqr200; ACBrNFe1.Configuracoes.WebServices.UF := qryLojas.FieldByName('sigla_estado').AsString; // Seta Versão a ser utilizada em execução with acbrnfe1.Configuracoes do begin Geral.ModeloDF := moNFce; //Geral.idCSC := '000001'; //Geral.CSC := frmlogon.qryLojas_csc.AsString; //'39d58c8a-9ce8-43dc-83b7-1ea1fc3123f2'; Certificados.NumeroSerie := qryLojas.FieldByName('certdigital_nserie').AsString; //NFe_CertDigitalSenha; Certificados.Senha := qryLojas.FieldByName('certdigital_senha').AsString; //NFe_CertDigitalSerie; Certificados.ArquivoPFX := qryLojas.FieldByName('certdigital_caminho').AsString; if length(trim(qryLojas.FieldByName('id_csc').AsString)) > 0 then begin Geral.idCSC := copy( '000000' + trim(qryLojas.FieldByName('id_csc').AsString), length('000000' + trim(qryLojas.FieldByName('id_csc').AsString)) - 5, 6); Geral.CSC := qryLojas.FieldByName('csc').AsString; //'39d58c8a-9ce8-43dc-83b7-1ea1fc3123f2'; end; Geral.FormaEmissao := teNormal; Geral.Salvar := True; // ACBrCTe1.Configuracoes.arquivos.PathSalvar := edtPathLogs.Text; Geral.Salvar := True; arquivos.PathSalvar := copy(trim(qryCupom_capa.FieldByName('arquivo_nfce').AsString), 1, length(trim(qryCupom_capa.FieldByName('arquivo_nfce').AsString)) - 52); WebServices.Visualizar := false; alguém pode me dar uma dica?
  7. tudo funciona no servidor vcl-isapi-datasnep rest .dll grava, assina, envia, retorna ok, reenvia contingência retorna ok, consulta documento retorna ok, o envio de cancelamento dá erro grave, e funciona com o mesmo código em standalone.
  8. Bom dia, obrigado por responder, todas essas questões no link enviado já havia pesquisado, estou procurando uma solução através do componente acbrnfe pois é ele que tem o controle, sei que tem uma configuração a ser seguida pois em 2015 o Ítalo publicou algo a respeito para o acbrdfe: no modo standalone funciona (intraweb) chamando e enviando a mesma requisição pelo browser, enviei de vários servidores, pois ele envia por um servidor datasnap rest - vcl, com windows server 2012 originalíssimo e mesmo assim dá erro. todas as outras requisições ao servidor da sefaz funciona sem problema no isapi .dll iis. Grava, assina, envia, retorna ok, perquisa do documento na sefaz e reenvio no caso de contingência. perguntei sobre minha configuração, gostaria de um parecer de vocês.
  9. boa noite senhores, estou com o seguintes retorno quanto envio um evento de cancelamento de nfc-e (acbrnfe) para o servidor da sefaz: HTTP/1.1 400 Bad Request Isso utilizando um servidor vcl .dll no iis já utilizei todas essas opções: TSSLHttpLib = (httpNone, httpWinINet, httpWinHttp, httpOpenSSL, httpIndy); o mesmo codigo quando executado em modo standalone funciona e cancela a nfc-e normalmente, uso a seguintes configuração: ACBrNFe1.Configuracoes.Geral.VersaoDF := ve400; ACBrNFe1.SSL.SSLType := LT_TLSv1_2; ACBrNFe1.Configuracoes.Geral.SSLLib := libOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLCryptLib := cryOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLHttpLib := httpOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLXmlSignLib:= xsMsXml; ACBrNFe1.Configuracoes.Geral.VersaoQRCode := veqr200; ACBrNFe1.Configuracoes.WebServices.UF := qryLojas.FieldByName('sigla_estado').AsString; // Seta Versão a ser utilizada em execução with acbrnfe1.Configuracoes do begin Geral.ModeloDF := moNFce; //Geral.idCSC := '000001'; //Geral.CSC := frmlogon.qryLojas_csc.AsString; //'39d58c8a-9ce8-43dc-83b7-1ea1fc3123f2'; Certificados.NumeroSerie := qryLojas.FieldByName('certdigital_nserie').AsString; //NFe_CertDigitalSenha; Certificados.Senha := qryLojas.FieldByName('certdigital_senha').AsString; //NFe_CertDigitalSerie; Certificados.ArquivoPFX := qryLojas.FieldByName('certdigital_caminho').AsString; if length(trim(qryLojas.FieldByName('id_csc').AsString)) > 0 then begin Geral.idCSC := copy( '000000' + trim(qryLojas.FieldByName('id_csc').AsString), length('000000' + trim(qryLojas.FieldByName('id_csc').AsString)) - 5, 6); Geral.CSC := qryLojas.FieldByName('csc').AsString; //'39d58c8a-9ce8-43dc-83b7-1ea1fc3123f2'; end; Geral.FormaEmissao := teNormal; Geral.Salvar := True; // ACBrCTe1.Configuracoes.arquivos.PathSalvar := edtPathLogs.Text; Geral.Salvar := True; arquivos.PathSalvar := copy(trim(qryCupom_capa.FieldByName('arquivo_nfce').AsString), 1, length(trim(qryCupom_capa.FieldByName('arquivo_nfce').AsString)) - 52); WebServices.Visualizar := false; alguém pode me dar uma dica?
  10. boa tarde senhores, estou com o seguintes retorno quanto envio um evento de cancelamento de nfc-e (acbrnfe) para o servidor da sefaz: HTTP/1.1 400 Bad Request Isso utilizando um servidor vcl .dll no iis já utilizei todas essas opções: TSSLHttpLib = (httpNone, httpWinINet, httpWinHttp, httpOpenSSL, httpIndy); o mesmo codigo quando executado em modo standalone funciona e cancela a nfc-e normalmente, uso a seguintes configuração: ACBrNFe1.Configuracoes.Geral.VersaoDF := ve400; ACBrNFe1.SSL.SSLType := LT_TLSv1_2; ACBrNFe1.Configuracoes.Geral.SSLLib := libOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLCryptLib := cryOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLHttpLib := httpOpenSSL; ACBrNFe1.Configuracoes.Geral.SSLXmlSignLib:= xsMsXml; ACBrNFe1.Configuracoes.Geral.VersaoQRCode := veqr200; ACBrNFe1.Configuracoes.WebServices.UF := qryLojas.FieldByName('sigla_estado').AsString; // Seta Versão a ser utilizada em execução with acbrnfe1.Configuracoes do begin Geral.ModeloDF := moNFce; //Geral.idCSC := '000001'; //Geral.CSC := frmlogon.qryLojas_csc.AsString; //'39d58c8a-9ce8-43dc-83b7-1ea1fc3123f2'; Certificados.NumeroSerie := qryLojas.FieldByName('certdigital_nserie').AsString; //NFe_CertDigitalSenha; Certificados.Senha := qryLojas.FieldByName('certdigital_senha').AsString; //NFe_CertDigitalSerie; Certificados.ArquivoPFX := qryLojas.FieldByName('certdigital_caminho').AsString; if length(trim(qryLojas.FieldByName('id_csc').AsString)) > 0 then begin Geral.idCSC := copy( '000000' + trim(qryLojas.FieldByName('id_csc').AsString), length('000000' + trim(qryLojas.FieldByName('id_csc').AsString)) - 5, 6); Geral.CSC := qryLojas.FieldByName('csc').AsString; //'39d58c8a-9ce8-43dc-83b7-1ea1fc3123f2'; end; Geral.FormaEmissao := teNormal; Geral.Salvar := True; // ACBrCTe1.Configuracoes.arquivos.PathSalvar := edtPathLogs.Text; Geral.Salvar := True; arquivos.PathSalvar := copy(trim(qryCupom_capa.FieldByName('arquivo_nfce').AsString), 1, length(trim(qryCupom_capa.FieldByName('arquivo_nfce').AsString)) - 52); WebServices.Visualizar := false; alguém pode me dar uma dica?
  11. bom dia senhores! preciso instalar o fortes resport a primeira vez e está dando erro: me lembro que tem de entrar na pasta branches e executar lá de dentro, mas não tá dando certo. por favor alguem pode me dar as dicas que faltam? estou usando o delphi seattle. desde já agradeço pela atenção.
  12. boa tarde Waldir! DEU CERTO! sabe o que era!? estava gravando um arguivo txt de log no evento ontransmit do acbrnfe, o que derrubava a conexão com o servidor da sefaz: procedure TServerMethods1.ACBrNFe1Transmit(const Dados, URL, SoapAction, MimeType: string; var Resposta: string; var HTTPResultCode, InternalErrorCode: Integer); begin Writeln(varq, 'ACBrNFe1Transmit01' ); end; Consegui enviar para sefaz e foi recebido normalmente, o acbr é muita ferramenta, vs estão de parabéns. permite que eu tenha n camadas de aplicação, demais. obrigado a todos!
  13. Obrigado pela atenção Waldir! Eu testei a geração da nota diretamente pelo intraweb e dá erro de memória quando vai gravar o arquivo .xml (ACBrNFe1.NotasFiscais.Items[0].GravarXML) realmente não sendo possível usar diretamente no intraweb, como vc disse. Antes disso já havia construido um servidor vcl datasnapRest que tem algumas funções e todas funcionando perfeitamente enviando e-mail com o acbremail, menos a função que envia a nfce para sefaz veja o código abaixo: try ACBrNFe1.NotasFiscais.Items[0].GravarXML (****** gera e grava o .xml sem problemas ****** except on E : Exception do begin ApagaPagamentos; vMensagemReturn := '!@#$% ERRO AO GRAVAR O ARQUIVO.XML DA NFC-E' +E.Message; exit end; end; Writeln(varq, 'GeraEnviaNFce03' ); try ACBrNFe1.NotasFiscais.Items[0].Assinar; (****** assina o arquivo .xml sem problemas ****** except on E : Exception do begin ApagaPagamentos; vMensagemReturn := '!@#$% ERRO AO ASSINAR O ARQUIVO.XML DA NFC-E' +E.Message; exit end; end; O problema está aqui quando vai enviar a nfce para sefaz: try ACBrNFe1.Enviar(1,true,true); (****** gera o erro mostrado na imagem abaixo ******) except on E: Exception do begin if length(UTF8Encode(ACBrNFe1.WebServices.Enviar.RetornoWS)) <> 0 then vMensagemReturn := UTF8Encode(ACBrNFe1.WebServices.Enviar.RetornoWS) else vMensagemReturn := '!@#$% ERRO NO ENVIO - ' +E.ClassName +E.Message; (****** retorna o erro mostrado na imagem abaixo ******) exit; end; ***** Essa mensagem de erro é gerada no ACBrDfeWebService.pas e não sei o que realmente está acontecendo: const CErroSemResposta = 'Erro ao obter resposta do webservice.'; procedure TDFeWebService.VerificarSemResposta; begin { Sobrescrever apenas se necessário } if EstaVazio(FPRetWS) then raise EACBrDFeException.Create( CErroSemResposta + ifthen(NaoEstaVazio(FPRetornoWS),sLineBreak+FPRetornoWS,'')); end; Desde já agradeço pela atenção.
  14. Boa tarde senhores! Uma dúvida, o acbrnfe funciona diretamente no intraweb? desde já agradeço pela atenção.
  15. Boa tarde senhores! estou com o erro 12175 no envio da nfce e não consegui encontrar a resposta com a solução aqui no fórum. meu código de configuração: ACBrNFe1.Configuracoes.Geral.VersaoDF := ve400; ACBrNFe1.SSL.SSLType := LT_TLSv1_2; ACBrNFe1.Configuracoes.Geral.SSLLib := libWinCrypt; ACBrNFe1.Configuracoes.Geral.SSLCryptLib := cryWinCrypt; ACBrNFe1.Configuracoes.Geral.SSLHttpLib := httpWinHttp; ACBrNFe1.Configuracoes.Geral.SSLXmlSignLib:= xsMsXml; ACBrNFe1.Configuracoes.Geral.VersaoQRCode := veqr200; desde já agradeço pela atenção! Minha configuração do ssl e tls no windows server2008 : (já tentei todo tipo de configuração)
  16. Bom dia senhores: Não estou encontrando o: infRespTec.CNPJ := xCNPJ_RespTec; infRespTec.xContato := xContato_RespTec; // Nome do responsável técnico infRespTec.email := xEmail_RespTec; infRespTec.fone := xFone_RespTec; ACBrNFe1.Configuracoes.RespTec.infRespTec.CNPJ (não existe) ACBrNFe1.RespTec.infRespTec.CNPJ (não existe) ACBrNFe1.infRespTec.CNPJ (não existe) Não encontro o grupo infresptec em nenhum lugar, só consigo encontrar acbrnfe1.configuracoes.resptec desde já agradeço pela atenção.
  17. bom dia! obrigado pela atenção! essa mensagem abaixo seria enviada pelo acbr? (isso no ERP - vcl local)
  18. Boa tarde senhores! Revi a lógica do meu código e ele realmente passa pelo except no try: try ACBrNFe1.Enviar(1,false,true,false); except on E: Exception do begin vMensagemReturn := '!@#$% ERRO NO ENVIO - ' +E.ClassName +E.Message; exit; end; end; consegui capturar a mensagem de retorno: blz, acho que o webservice não respondeu. no sistema antigo seria esse erro: FICA UMA PERGUNTA FINAL: ONDE ENCONTRO, NO ACBR, ESSE RETORNO MOSTRADO ACIMA PELO MEU SISTEMA ANTIGO? desde já agradeço pela atenção.
  19. Boa tarde senhores! OK o BigWings tem razão, mas agora preciso só resolver o problema do UTF8Encode(ACBrNFe1.WebServices.Enviar.RetornoWS); está em branco. porque o retorno UTF8Encode(ACBrNFe1.WebServices.Enviar.RetornoWS); está em branco.? Será que quando ocorre o erro http 500 ele vai ficar em branco? Abaixo a imagem de quando eu não trato com try except o ACBrNFe1.Enviar(1,false,true,false);
  20. Bom dia senhores! Primeiramente quero agradecer pela atenção que sempre tive neste fórum. Obrigado pelas sugestões e por apontar os detalhes observados no código. Utilizando a sugestão do Daniel ficou o seguinte: CORPO PRINCIPAL: GeraEnviaNFce; // ##### PROCEDURE QUE VAI CHAMAR O MÉTODO ACBrNFe1.Enviar(1,false,true,false); if vTemErro then begin result := vMensagemReturn; qryCupom_capa.Edit; qryCupom_capa.FieldByName('nro_nfce').Value := 0; try qryCupom_capa.ApplyUpdates; qryCupom_capa.CommitUpdates; Except on E : Exception do begin vMensagemReturn := '!@#$% Ocorreu um problema ao regravar(0) o registro(data) de (cupom_capa) - ApropriaNroNFce' +E.Message; qryCupom_capa.CancelUpdates; end; end; exit; end; Writeln(varq, 'ProcessaNFce14' ); AlteraEventoVendaCupomCaixa; // ##### PROCEDURE QUE SERÁ EXECUTADA EM SEGUIDA begin result := vMensagemReturn; exit; end; ##### PROCEDURE QUE VAI CHAMAR O MÉTODO ACBrNFe1.Enviar(1,false,true,false); procedure TServerMethods1.GeraEnviaNFce; begin try ACBrNFe1.Enviar(1,false,true,false); // ##### NESSE PONTO ACONTECE O ERRO E NÃO ENTRA NO EXCEPT except vMensagemReturn := '!@#$% ERRO NO ENVIO - ' + UTF8Encode(ACBrNFe1.WebServices.Enviar.RetornoWS); exit; end; ##### NESSE PONTO ACONTECE O ERRO E NÃO ENTRA NO EXCEPT Em seguida ele vai direto para a procedure: AlteraEventoVendaCupomCaixa; // ##### PROCEDURE QUE SERÁ EXECUTADA EM SEGUIDA procedure TServerMethods1.AlteraEventoVendaCupomCaixa; begin vTemErro := true; if (pos('<cStat>100<',UTF8Encode(ACBrNFe1.WebServices.Enviar.RetWS))=0) and (pos('<cStat>110<',UTF8Encode(ACBrNFe1.WebServices.Enviar.RetWS))=0) and (pos('<cStat>301<',UTF8Encode(ACBrNFe1.WebServices.Enviar.RetWS))=0) and (pos('<cStat>302<',UTF8Encode(ACBrNFe1.WebServices.Enviar.RetWS))=0) and (pos('<cStat>303<',UTF8Encode(ACBrNFe1.WebServices.Enviar.RetWS))=0) and (pos('<cStat>233<',UTF8Encode(ACBrNFe1.WebServices.Enviar.RetWS))=0) and (pos('<cStat>234<',UTF8Encode(ACBrNFe1.WebServices.Enviar.RetWS))=0) and (pos('<cStat>205<',UTF8Encode(ACBrNFe1.WebServices.Enviar.RetWS))=0) and not vEmiteEmteOffLine then begin vMensagemReturn := '!@#$% ERRO NO ENVIO ***** ' + UTF8Encode(ACBrNFe1.WebServices.Enviar.RetornoWS); exit; end; onde envia a mensagem de erro para o navegador. Com o acbr Monitor não daria mais certo? desde já agradeço pela atenção e pela disposição em me atender, obrigado. O UTF8Encode(ACBrNFe1.WebServices.Enviar.RetornoWS); está em branco:
  21. Bom dia Senhores! quando uso try: try ACBrNFe1.Enviar(1,false,true,false); except on E : Exception do begin vMensagemReturn := '!@#$% ERRO NO ENVIO - ' +E.ClassName +E.Message; //exit; end; end; consigo ter o controle, mas não tenho, não sei onde recuperar a mensagem de retorno. a mensagem seria essa:
  22. gerei o mesmo procedimento no sistema antigo (ERP) e o erro é o seguinte: O acbrnfe está tentando mostrar esse erro (é o mesmo banco e os mesmos dados) no sistema web que está sendo desenvolvido em intraweb chamando um servidor vcl - acbr -- web para executar o acbrnfe, mas ele não admite nenhum retorno em forma de show na tela, provocando o erro 500 no servidor vcl - acbr - web. O significado do erro não importa agora, o que eu quero é ter o controle na minha aplicação web sobre essas mensagens de retorno.
  23. Obrigado pela atenção! O problema não é se está ou não indo para sefaz, o que preciso é ter o controle do retorno sem que o acbr assuma esse controle enviando mensagens na tela pois isso tá derrubando meu servidor vcl datasnaprest. o procedimento passa pelo evento ontransmit mas não passa no evento ontransmiterror para que eu possa setar a variável Tratado := true; Quando emito em contingência gera o arquivo .xml normalmente, é a mesma rotina, e o mesmo .xml é gerado para ser enviado. Minha aplicação precisa continuar tendo o controle do retorno sem que esse seja exibido na tela. desde já agradeço pela ajuda.
  24. Primeiro passo (chamando a função de envio no acbrnfe) segundo processo rastreado: terceiro processo rastreado: quarto procedimento rastreado: quinto processo dá erro: quando chama a tratarResposta. tratarResposta: (não consigo prosseguir o rastreamento) - parece que dá erro aqui.
×
×
  • 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.