GleysondsMota Postado 6 Fevereiro Postado 6 Fevereiro Boa tarde! já procurei em vários tópicos estou enviando o evento de cancelamento recebo o retorno Requisição Ambiente : 1 - Produção Cidade : Contagem/MG Provedor : Pronim Versão: 1.01 Data/Hora: 06/02/2026 13:08:52 Método Executado: Enviar Evento u evento de cancelamento recebo o retorno mas não consigo Parâmetros de Envio Chave NFSe : 31186011205901943000109000000000010826021481772028 Evento : Cancelamento de NFS-e Parâmetros de Retorno Chave NFSe : 31186011205901943000109000000000010826021481772028 Data : 06/02/2026 Tipo Evento : Cancelamento de NFS-e Num. Seq. Evento: 0 ID do Evento : 31186011205901943000109000000000010826021481772028101101 Sucesso : True Sucesso Canc. : True Desc. Situação : Nota Cancelada Nome Arquivo : C:\Usialpha\Docs\05901943000109\202602\NFSe\05901943000109\202602\NFSe\Eventos\31186011205901943000109000000000010826021481772028101101-procEveNFSe.xml NFS-e Numero....: 108 Cod. Verificacao: 31186011205901943000109000000000010826021481772028 Prestador.......: ALPHAINFO TECNOLOGIA LTDA Tomador.........: A MODERNA LINGERIE LTDA . Protocolo.......: Nome do arquivo.: C:\Usialpha\Docs\05901943000109\202602\NFSe\05901943000109\202602\NFSe\Notas\C:\Usialpha\Docs\05901943000109\202602\NFSe\05901943000109\202602\NFSe\Notas\31186011205901943000109000000000010826021481772028-nfse.xml ==> Xml da nota salvo na pasta e com o nome informado acima. Estou tentando verificar desta forma se retornou como cancelada if ACBrNFSeX1.NotasFiscais.Items[i].NFSe.SituacaoNfse = ACBrNFSeXConversao.snCancelado then porem ACBrNFSeX1.NotasFiscais.Items[i].NFSe.SituacaoNfse -> retorna sempre normal Tem alguma forma de recuperar este resultado? como recupero estas variáveis tipo SucessoCanc? tmEnviarEvento: begin with EnviarEvento do begin memoLog.Lines.Add('Método Executado: ' + MetodoToStr(tmEnviarEvento)); memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Envio'); with InfEvento.pedRegEvento do begin memoLog.Lines.Add('Chave NFSe : ' + chNFSe); memoLog.Lines.Add('Evento : ' + tpEventoToDesc(tpEvento)); end; memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Retorno'); memoLog.Lines.Add('Chave NFSe : ' + idNota); memoLog.Lines.Add('Data : ' + DateToStr(Data)); memoLog.Lines.Add('Tipo Evento : ' + tpEventoToDesc(tpEvento)); memoLog.Lines.Add('Num. Seq. Evento: ' + IntToStr(nSeqEvento)); memoLog.Lines.Add('ID do Evento : ' + idEvento); memoLog.Lines.Add('Sucesso : ' + BoolToStr(Sucesso, True)); memoLog.Lines.Add('Sucesso Canc. : ' + BoolToStr(SucessoCanc, True)); memoLog.Lines.Add('Desc. Situação : ' + DescSituacao); memoLog.Lines.Add('Nome Arquivo : ' + PathNome); LoadXML(XmlEnvio, WBXmlEnvio, 'temp1.xml'); LoadXML(XmlRetorno, WBXmlRetorno, 'temp2.xml'); ListaDeErros(Erros); ListaDeAlertas(Alertas); end; end; Muito obrigado.
Consultores Juliomar Marchetti Postado 12 Fevereiro Consultores Postado 12 Fevereiro habilite os logs de webservice e pegue os soaps para entendermos o que está ocorrendo. mas parece que não está nesse comando retornando se está cancelado . pode ser que tenha mudanças Juliomar Marchetti Ajude o Projeto ACBr crescer - Seja Pro discord: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!
GleysondsMota Postado 12 Fevereiro Autor Postado 12 Fevereiro Bom dia! Seria este o arquivo, obrigado pela atenção: 31186011205901943000109000000000010926026706025164101101-procEveNFSe.xml
Consultores Juliomar Marchetti Postado 12 Fevereiro Consultores Postado 12 Fevereiro 7 horas atrás, GleysondsMota disse: Bom dia! Seria este o arquivo, obrigado pela atenção: 31186011205901943000109000000000010926026706025164101101-procEveNFSe.xml 8.08 kB · 1 download esse é o xml gerado do evento. digo o código de soap , em webservice tem a propriedade para salvar Juliomar Marchetti Ajude o Projeto ACBr crescer - Seja Pro discord: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!
GleysondsMota Postado 12 Fevereiro Autor Postado 12 Fevereiro Boa noite, criei uma basta nova com apenas uma a nota de testes com todos os arquivos que foram gerados. de envio e cancelamento. acho que desta forma fica mais fácil de identificar onde estou errando, obrigado. Docs.7z
GleysondsMota Postado 13 Fevereiro Autor Postado 13 Fevereiro 14 horas atrás, Juliomar Marchetti disse: esse é o xml gerado do evento. digo o código de soap , em webservice tem a propriedade para salvar Bom dia, Sou novato no fórum, não sei se posso usar o (Citar), mas acho que é através dele que recebe a resposta, eu criei uma pasta e salvei todos os arquivos salvos de envio e cancelamento acho que assim fica melhor para analise,. Docs.7z
Consultores Juliomar Marchetti Postado 24 Fevereiro Consultores Postado 24 Fevereiro como é proprio tentou validar tmCancelarNFSe: begin with CancelaNFSe do begin memoLog.Lines.Add('Método Executado: ' + MetodoToStr(tmCancelarNFSe)); memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Envio'); memoLog.Lines.Add('Numero da NFSe: ' + InfCancelamento.NumeroNFSe); memoLog.Lines.Add('Série da NFSe : ' + InfCancelamento.SerieNFSe); memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Retorno'); memoLog.Lines.Add('Situação: ' + Situacao); memoLog.Lines.Add('Link : ' + Link); memoLog.Lines.Add('Sucesso : ' + BoolToStr(Sucesso, True)); memoLog.Lines.Add(' '); memoLog.Lines.Add('Retorno do Pedido de Cancelamento:'); memoLog.Lines.Add('Situação : ' + RetCancelamento.Situacao); memoLog.Lines.Add('Data/Hora: ' + DateToStr(RetCancelamento.DataHora)); memoLog.Lines.Add('Mensagem : ' + RetCancelamento.MsgCanc); memoLog.Lines.Add('Sucesso : ' + RetCancelamento.Sucesso); memoLog.Lines.Add('Link : ' + RetCancelamento.Link); memoLog.Lines.Add('Nome Arq.: ' + PathNome); LoadXML(XmlEnvio, WBXmlEnvio, 'temp1.xml'); LoadXML(XmlRetorno, WBXmlRetorno, 'temp2.xml'); ListaDeErros(Erros); ListaDeAlertas(Alertas); ou ainda se for Padrão nacional validar tudo tmEnviarEvento: begin with EnviarEvento do begin memoLog.Lines.Add('Método Executado: ' + MetodoToStr(tmEnviarEvento)); memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Envio'); with InfEvento.pedRegEvento do begin memoLog.Lines.Add('Chave NFSe : ' + chNFSe); memoLog.Lines.Add('Evento : ' + tpEventoToDesc(tpEvento)); end; memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Retorno'); memoLog.Lines.Add('Chave NFSe : ' + idNota); memoLog.Lines.Add('Data : ' + DateToStr(Data)); memoLog.Lines.Add('Tipo Evento : ' + tpEventoToDesc(tpEvento)); memoLog.Lines.Add('Num. Seq. Evento: ' + IntToStr(nSeqEvento)); memoLog.Lines.Add('ID do Evento : ' + idEvento); memoLog.Lines.Add('Sucesso : ' + BoolToStr(Sucesso, True)); memoLog.Lines.Add('Sucesso Canc. : ' + BoolToStr(SucessoCanc, True)); memoLog.Lines.Add('Desc. Situação : ' + DescSituacao); memoLog.Lines.Add('Nome Arquivo : ' + PathNome); LoadXML(XmlEnvio, WBXmlEnvio, 'temp1.xml'); LoadXML(XmlRetorno, WBXmlRetorno, 'temp2.xml'); ListaDeErros(Erros); ListaDeAlertas(Alertas); end; Juliomar Marchetti Ajude o Projeto ACBr crescer - Seja Pro discord: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!
GleysondsMota Postado 24 Fevereiro Autor Postado 24 Fevereiro 17 horas atrás, Juliomar Marchetti disse: como é proprio tentou validar tmCancelarNFSe: begin with CancelaNFSe do begin memoLog.Lines.Add('Método Executado: ' + MetodoToStr(tmCancelarNFSe)); memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Envio'); memoLog.Lines.Add('Numero da NFSe: ' + InfCancelamento.NumeroNFSe); memoLog.Lines.Add('Série da NFSe : ' + InfCancelamento.SerieNFSe); memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Retorno'); memoLog.Lines.Add('Situação: ' + Situacao); memoLog.Lines.Add('Link : ' + Link); memoLog.Lines.Add('Sucesso : ' + BoolToStr(Sucesso, True)); memoLog.Lines.Add(' '); memoLog.Lines.Add('Retorno do Pedido de Cancelamento:'); memoLog.Lines.Add('Situação : ' + RetCancelamento.Situacao); memoLog.Lines.Add('Data/Hora: ' + DateToStr(RetCancelamento.DataHora)); memoLog.Lines.Add('Mensagem : ' + RetCancelamento.MsgCanc); memoLog.Lines.Add('Sucesso : ' + RetCancelamento.Sucesso); memoLog.Lines.Add('Link : ' + RetCancelamento.Link); memoLog.Lines.Add('Nome Arq.: ' + PathNome); LoadXML(XmlEnvio, WBXmlEnvio, 'temp1.xml'); LoadXML(XmlRetorno, WBXmlRetorno, 'temp2.xml'); ListaDeErros(Erros); ListaDeAlertas(Alertas); ou ainda se for Padrão nacional validar tudo tmEnviarEvento: begin with EnviarEvento do begin memoLog.Lines.Add('Método Executado: ' + MetodoToStr(tmEnviarEvento)); memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Envio'); with InfEvento.pedRegEvento do begin memoLog.Lines.Add('Chave NFSe : ' + chNFSe); memoLog.Lines.Add('Evento : ' + tpEventoToDesc(tpEvento)); end; memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Retorno'); memoLog.Lines.Add('Chave NFSe : ' + idNota); memoLog.Lines.Add('Data : ' + DateToStr(Data)); memoLog.Lines.Add('Tipo Evento : ' + tpEventoToDesc(tpEvento)); memoLog.Lines.Add('Num. Seq. Evento: ' + IntToStr(nSeqEvento)); memoLog.Lines.Add('ID do Evento : ' + idEvento); memoLog.Lines.Add('Sucesso : ' + BoolToStr(Sucesso, True)); memoLog.Lines.Add('Sucesso Canc. : ' + BoolToStr(SucessoCanc, True)); memoLog.Lines.Add('Desc. Situação : ' + DescSituacao); memoLog.Lines.Add('Nome Arquivo : ' + PathNome); LoadXML(XmlEnvio, WBXmlEnvio, 'temp1.xml'); LoadXML(XmlRetorno, WBXmlRetorno, 'temp2.xml'); ListaDeErros(Erros); ListaDeAlertas(Alertas); end; Boa tarde, não sei se está correto mas consegui desta forma, Vou deixar aqui pois pode ajudar alguém que esteja com o mesmo problema: tmCancelarNFSe: begin with CancelaNFSe do begin memoLog.Lines.Add('Método Executado: ' + MetodoToStr(tmCancelarNFSe)); memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Envio'); memoLog.Lines.Add('Numero da NFSe: ' + InfCancelamento.NumeroNFSe); memoLog.Lines.Add('Série da NFSe : ' + InfCancelamento.SerieNFSe); memoLog.Lines.Add(' '); memoLog.Lines.Add('Parâmetros de Retorno'); memoLog.Lines.Add('Situação: ' + Situacao); memoLog.Lines.Add('Link : ' + Link); memoLog.Lines.Add('Sucesso : ' + BoolToStr(Sucesso, True)); memoLog.Lines.Add(' '); memoLog.Lines.Add('Retorno do Pedido de Cancelamento:'); memoLog.Lines.Add('Situação : ' + RetCancelamento.Situacao); memoLog.Lines.Add('Data/Hora: ' + DateToStr(RetCancelamento.DataHora)); memoLog.Lines.Add('Mensagem : ' + RetCancelamento.MsgCanc); memoLog.Lines.Add('Sucesso : ' + RetCancelamento.Sucesso); memoLog.Lines.Add('Link : ' + RetCancelamento.Link); memoLog.Lines.Add('Nome Arq.: ' + PathNome); if ACBrNFSeX1.WebService.CancelaNFSe.RetCancelamento.Situacao = 'Cancelado' then begin try Sucesso_Canc := true; cancelaNFS(vCodigoCanc, qryNFSE.FieldByName('nfs_Numero').AsString); exec; except on e: Exception do begin If dtmUsinagem.AdoUsinarte.InTransaction then dtmUsinagem.AdoUsinarte.RollbackTrans; Alerta(ErroExcept, 'Atenção!!!', 'Erro ao cancelar NFSE.' + #13 + 'Motivo: ' + e.Message); Exit; end; end; end else begin Sucesso_Canc := false; if (ACBrNFSeX1.Configuracoes.Geral.Layout = loABRASF) and (ACBrNFSeX1.Configuracoes.Geral.Provedor = proVersaTecnologia) then begin if Erros.Count > 0 then begin for i := 0 to Erros.Count -1 do begin if (Erros[i].Codigo = 'E906') and (Erros[i].Descricao = 'Esta NFSe já foi cancelada') then begin Sucesso_Canc := true; cancelaNFS(vCodigoCanc, qryNFSE.FieldByName('nfs_Numero').AsString); end; end; end; end; end; LoadXML(XmlEnvio, WBXmlEnvio, 'temp1.xml'); LoadXML(XmlRetorno, WBXmlRetorno, 'temp2.xml'); ListaDeErros(Erros); ListaDeAlertas(Alertas); end; 1
Consultores Juliomar Marchetti Postado 24 Fevereiro Consultores Postado 24 Fevereiro Obrigado por reportar. Fechando. Para novas dúvidas, criar um novo tópico. Juliomar Marchetti Ajude o Projeto ACBr crescer - Seja Pro discord: juliomar telegram: juliomar e-mail: [email protected] http://www.juliomarmarchetti.com.br Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!
Recommended Posts