From f1eee9e57c6bf29b4718d0597383c5186d94c1b4 Mon Sep 17 00:00:00 2001 From: Lucas Moraes Date: Wed, 27 Mar 2024 23:06:06 -0300 Subject: [PATCH 01/46] feat: criar struct MotivoInsucesso --- NFe.Classes/Servicos/Evento/detEventoTipos.cs | 39 +++++++++++++++++++ Zeus NFe.sln.DotSettings.user | 1 + 2 files changed, 40 insertions(+) diff --git a/NFe.Classes/Servicos/Evento/detEventoTipos.cs b/NFe.Classes/Servicos/Evento/detEventoTipos.cs index ba190a858..c2e3832d2 100644 --- a/NFe.Classes/Servicos/Evento/detEventoTipos.cs +++ b/NFe.Classes/Servicos/Evento/detEventoTipos.cs @@ -89,4 +89,43 @@ public enum TipoAutor [XmlEnum("9")] taOutrosOrgaos = 9 } + + /// + /// Motivo de Insucesso. + /// Nota: + /// 1 - Recebedor não encontrado; + /// 2 - Recusa do recebedor; + /// 3 - Endereço inexistente; + /// 4 - Outros (exige informar justificativa); + /// + public enum MotivoInsucesso + { + /// + /// 1 - Recebedor não encontrado + /// + [Description("Recebedor não encontrado")] + [XmlEnum("1")] + RecebedorNaoEncontrado = 1, + + /// + /// 2 - Recusa do recebedor + /// + [Description("Recusa do recebedor")] + [XmlEnum("2")] + RecusaRecebedor = 2, + + /// + /// 3 - Endereço inexistente + /// + [Description("Endereço inexistente")] + [XmlEnum("3")] + EnderecoInexistente = 3, + + /// + /// 4 - Outros + /// + [Description("Outros")] + [XmlEnum("4")] + Outros = 4 + } } \ No newline at end of file diff --git a/Zeus NFe.sln.DotSettings.user b/Zeus NFe.sln.DotSettings.user index 6287208a3..564ff9bc2 100755 --- a/Zeus NFe.sln.DotSettings.user +++ b/Zeus NFe.sln.DotSettings.user @@ -1,4 +1,5 @@  + ExplicitlyExcluded SOLUTION 2 True From 5b8ab91aee278269aa4e003eab6e9632507de2ef Mon Sep 17 00:00:00 2001 From: Lucas Moraes Date: Wed, 27 Mar 2024 23:08:07 -0300 Subject: [PATCH 02/46] feat: adicionar propriedades detevento referente a insucesso na entrega --- NFe.Classes/Servicos/Evento/detEvento.cs | 63 ++++++++++++++++++++++++ 1 file changed, 63 insertions(+) diff --git a/NFe.Classes/Servicos/Evento/detEvento.cs b/NFe.Classes/Servicos/Evento/detEvento.cs index d6e948bcd..2d98141ba 100644 --- a/NFe.Classes/Servicos/Evento/detEvento.cs +++ b/NFe.Classes/Servicos/Evento/detEvento.cs @@ -169,5 +169,68 @@ public bool ShouldSerializeItensAverbados() } #endregion + #region Insucesso NFe + [XmlIgnore] + public DateTimeOffset? dhTentativaEntrega { get; set; } + + /// + /// Proxy para dhTentativaEntrega no formato AAAA-MM-DDThh:mm:ssTZD (UTC - Universal Coordinated Time) + /// + [XmlElement(ElementName = "dhEmi")] + public string ProxyDhTentativaEntrega + { + get { return dhTentativaEntrega.ParaDataHoraStringUtc(); } + set { dhTentativaEntrega = DateTimeOffset.Parse(value); } + } + + /// + /// P31 - Número da tentativa de entrega que não teve sucesso + /// + public int? nTentativa { get; set; } + + /// + /// P32 - Motivo do insucesso + /// + public MotivoInsucesso? tpMotivo { get; set; } + + /// + /// P33 - Justificativa do motivo do insucesso. Informar apenas para tpMotivo = + /// + public string xJustMotivo { get; set; } + + /// + /// P33 - Latitude do ponto de entrega + /// + public decimal? latGPS { get; set; } + + /// + /// P34 - Longitude do ponto de entrega + /// + public decimal? longGPS { get; set; } + + /// + /// P35 - Hash SHA-1, no formato Base64, resultante da concatenação de: Chave de Acesso da NF-e + Base64 + /// da imagem capturada na tentativa da entrega(ex: imagem capturada da assinatura eletrônica, digital do recebedor, foto, etc). + /// + public string hashTentativaEntrega { get; set; } + + /// + /// Data e hora da geração do hash da tentativa de entrega. Formato AAAA-MMDDThh:mm:ssTZD. + /// + [XmlIgnore] + public DateTimeOffset? dhHashTentativaEntrega { get; set; } + + /// + /// Proxy para dhHashTentativaEntrega no formato AAAA-MM-DDThh:mm:ssTZD (UTC - Universal Coordinated Time) + /// + [XmlElement(ElementName = "dhHashTentativaEntrega")] + public string ProxyDhHashTentativaEntrega + { + get { return dhHashTentativaEntrega.ParaDataHoraStringUtc(); } + set { dhHashTentativaEntrega = DateTimeOffset.Parse(value); } + } + + #endregion + } } \ No newline at end of file From 2080748354345630e8389d29ec4295bde99aa984 Mon Sep 17 00:00:00 2001 From: Lucas Moraes Date: Wed, 27 Mar 2024 23:11:26 -0300 Subject: [PATCH 03/46] =?UTF-8?q?feat:=20adicionar=20verifica=C3=A7=C3=A3o?= =?UTF-8?q?=20serializa=C3=A7=C3=A3o=20para=20o=20XML?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- NFe.Classes/Servicos/Evento/detEvento.cs | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/NFe.Classes/Servicos/Evento/detEvento.cs b/NFe.Classes/Servicos/Evento/detEvento.cs index 2d98141ba..497abc1f3 100644 --- a/NFe.Classes/Servicos/Evento/detEvento.cs +++ b/NFe.Classes/Servicos/Evento/detEvento.cs @@ -230,6 +230,26 @@ public string ProxyDhHashTentativaEntrega set { dhHashTentativaEntrega = DateTimeOffset.Parse(value); } } + public bool ShouldSerializenTentativa() + { + return nTentativa.HasValue; + } + + public bool ShouldSerializetpMotivo() + { + return tpMotivo.HasValue; + } + + public bool ShouldSerializelatGPS() + { + return latGPS.HasValue; + } + + public bool ShouldSerializelongGPS() + { + return longGPS.HasValue; + } + #endregion } From 9843d545465e499dd187facc5de3bea89df8b470 Mon Sep 17 00:00:00 2001 From: Lucas Moraes Date: Thu, 28 Mar 2024 07:33:38 -0300 Subject: [PATCH 04/46] =?UTF-8?q?checkpoint:=20Iniciar=20o=20m=C3=A9todo?= =?UTF-8?q?=20RecepcaoEventoInsucessoEntrega?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- NFe.Servicos/ServicosNFe.cs | 54 +++++++++++++++++++++++++++++++++---- 1 file changed, 49 insertions(+), 5 deletions(-) diff --git a/NFe.Servicos/ServicosNFe.cs b/NFe.Servicos/ServicosNFe.cs index 3b0b1a496..2a05163a6 100644 --- a/NFe.Servicos/ServicosNFe.cs +++ b/NFe.Servicos/ServicosNFe.cs @@ -517,7 +517,7 @@ public RetornoRecepcaoEvento RecepcaoEventoCancelamento(int idlote, int sequenci /// Envia eventos do tipo "Cancelamento" já assinado. /// /// - /// + /// /// public RetornoRecepcaoEvento RecepcaoEventoCancelamento(int idlote, List eventos) { @@ -634,7 +634,7 @@ public RetornoRecepcaoEvento RecepcaoEventoCartaCorrecao(int idlote, int sequenc /// Envia eventos do tipo "Carta de correção" já assinado. /// /// - /// + /// /// public RetornoRecepcaoEvento RecepcaoEventoCartaCorrecao(int idlote, List eventos) { @@ -760,15 +760,59 @@ public RetornoRecepcaoEvento RecepcaoEventoEpec(int idlote, int sequenciaEvento, /// Envia eventos do tipo "EPEC" já assinado /// /// - /// - /// - /// + /// /// Retorna um objeto da classe RetornoRecepcaoEvento com o retorno do serviço RecepcaoEvento public RetornoRecepcaoEvento RecepcaoEventoEpec(int idlote, List eventos) { var retorno = RecepcaoEvento(idlote, eventos, ServicoNFe.RecepcaoEventoCartaCorrecao, _cFgServico.VersaoRecepcaoEventoCceCancelamento, false); return retorno; } + + private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(NFeTipoEvento tipoEventoCancelamento, int idlote, + int sequenciaEvento, string protocoloAutorizacao, string chaveNFe, string justificativa, string cpfcnpj, + Estado? ufAutor = null, TipoAutor? tipoAutor = null, string versaoAplicativo = null, string chaveNfeSubstituta = null, DateTimeOffset? dhEvento = null) + { + /*if (!NFeTipoEventoUtils.NFeTipoEventoCancelamento.Contains(tipoEventoCancelamento)) + throw new Exception(string.Format("Informe um dos seguintes tipos de eventos: {0}", + string.Join(", ", + NFeTipoEventoUtils.NFeTipoEventoCancelamento.Select(n => n.Descricao())))); + + var versaoServico = + ServicoNFe.RecepcaoEventoCancelmento.VersaoServicoParaString( + _cFgServico.VersaoRecepcaoEventoCceCancelamento); + + var detEvento = new detEvento + { + nProt = protocoloAutorizacao, + versao = versaoServico, + xJust = justificativa, + descEvento = tipoEventoCancelamento.Descricao(), + cOrgaoAutor = ufAutor, + tpAutor = tipoAutor, + verAplic = versaoAplicativo, + chNFeRef = chaveNfeSubstituta + }; + var infEvento = new infEventoEnv + { + cOrgao = _cFgServico.cUF, + tpAmb = _cFgServico.tpAmb, + chNFe = chaveNFe, + dhEvento = dhEvento ?? DateTime.Now, + tpEvento = tipoEventoCancelamento, + nSeqEvento = sequenciaEvento, + verEvento = versaoServico, + detEvento = detEvento + }; + if (cpfcnpj.Length == 11) + infEvento.CPF = cpfcnpj; + else + infEvento.CNPJ = cpfcnpj; + + var evento = new evento { versao = versaoServico, infEvento = infEvento }; + + var retorno = RecepcaoEvento(idlote, new List { evento }, ServicoNFe.RecepcaoEventoCancelmento, _cFgServico.VersaoRecepcaoEventoCceCancelamento, true); + return retorno;*/ + } /// /// Consulta a situação cadastral, com base na UF/Documento From e4c211f952c84651cae5225e94f19a516855b952 Mon Sep 17 00:00:00 2001 From: Lucas Moraes Date: Thu, 28 Mar 2024 07:40:26 -0300 Subject: [PATCH 05/46] feat: criar evento no enum NFeTipoEvento --- NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs | 7 +++++++ NFe.Servicos/ServicosNFe.cs | 8 ++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs b/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs index a5ef781b3..587b8b519 100644 --- a/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs +++ b/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs @@ -186,6 +186,13 @@ public enum NFeTipoEvento [Description("Cancelamento por substituicao")] [XmlEnum("110112")] TeNfeCancelamentoSubstituicao = 110112, + + /// + /// 110192 - Cancelamento por substituição + /// + [Description("Insucesso na Entrega da NF-e")] + [XmlEnum("110192")] + TeNfeInsucessoNaEntregadaNFe = 110192, /// /// 210200 – Confirmação da Operação diff --git a/NFe.Servicos/ServicosNFe.cs b/NFe.Servicos/ServicosNFe.cs index eff3274b6..14d9a568b 100644 --- a/NFe.Servicos/ServicosNFe.cs +++ b/NFe.Servicos/ServicosNFe.cs @@ -772,11 +772,11 @@ public RetornoRecepcaoEvento RecepcaoEventoEpec(int idlote, List eventos return retorno; } - private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(NFeTipoEvento tipoEventoCancelamento, int idlote, + private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(NFeTipoEvento tipoEventoInsucesso, int idlote, int sequenciaEvento, string protocoloAutorizacao, string chaveNFe, string justificativa, string cpfcnpj, Estado? ufAutor = null, TipoAutor? tipoAutor = null, string versaoAplicativo = null, string chaveNfeSubstituta = null, DateTimeOffset? dhEvento = null) { - /*if (!NFeTipoEventoUtils.NFeTipoEventoCancelamento.Contains(tipoEventoCancelamento)) + /*if (!NFeTipoEventoUtils.NFeTipoEventoCancelamento.Contains(tipoEventoInsucesso)) throw new Exception(string.Format("Informe um dos seguintes tipos de eventos: {0}", string.Join(", ", NFeTipoEventoUtils.NFeTipoEventoCancelamento.Select(n => n.Descricao())))); @@ -790,7 +790,7 @@ private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(NFeTipoEvento tipoE nProt = protocoloAutorizacao, versao = versaoServico, xJust = justificativa, - descEvento = tipoEventoCancelamento.Descricao(), + descEvento = tipoEventoInsucesso.Descricao(), cOrgaoAutor = ufAutor, tpAutor = tipoAutor, verAplic = versaoAplicativo, @@ -802,7 +802,7 @@ private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(NFeTipoEvento tipoE tpAmb = _cFgServico.tpAmb, chNFe = chaveNFe, dhEvento = dhEvento ?? DateTime.Now, - tpEvento = tipoEventoCancelamento, + tpEvento = tipoEventoInsucesso, nSeqEvento = sequenciaEvento, verEvento = versaoServico, detEvento = detEvento From 4f0262fc6f623aade78e371ee2ccf1b88ecc4370 Mon Sep 17 00:00:00 2001 From: Lucas Moraes Date: Thu, 28 Mar 2024 07:41:11 -0300 Subject: [PATCH 06/46] =?UTF-8?q?fix:=20renomear=20a=20descri=C3=A7=C3=A3o?= =?UTF-8?q?=20do=20evento=20no=20summary?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs b/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs index 587b8b519..26cd61262 100644 --- a/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs +++ b/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs @@ -188,7 +188,7 @@ public enum NFeTipoEvento TeNfeCancelamentoSubstituicao = 110112, /// - /// 110192 - Cancelamento por substituição + /// 110192 - Insucesso na Entrega da NF-e /// [Description("Insucesso na Entrega da NF-e")] [XmlEnum("110192")] From 613238fb2b511d19031a78fb6316789077fa6b43 Mon Sep 17 00:00:00 2001 From: Lucas Moraes Date: Thu, 28 Mar 2024 08:00:17 -0300 Subject: [PATCH 07/46] feat: finalizar RecepcaoEventoInsucessoEntrega --- NFe.Servicos/ServicosNFe.cs | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/NFe.Servicos/ServicosNFe.cs b/NFe.Servicos/ServicosNFe.cs index 14d9a568b..39c79bf34 100644 --- a/NFe.Servicos/ServicosNFe.cs +++ b/NFe.Servicos/ServicosNFe.cs @@ -772,14 +772,11 @@ public RetornoRecepcaoEvento RecepcaoEventoEpec(int idlote, List eventos return retorno; } - private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(NFeTipoEvento tipoEventoInsucesso, int idlote, - int sequenciaEvento, string protocoloAutorizacao, string chaveNFe, string justificativa, string cpfcnpj, - Estado? ufAutor = null, TipoAutor? tipoAutor = null, string versaoAplicativo = null, string chaveNfeSubstituta = null, DateTimeOffset? dhEvento = null) + private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(int idlote, + int sequenciaEvento, string cpfcnpj, string chaveNFe, DateTimeOffset dhTentativaEntrega, MotivoInsucesso motivo, string hashTentativaEntrega, + int? nTentativa = null, DateTimeOffset? dhHashTentativaEntrega = null, decimal? latGps = null, decimal? longGps = null, + string justificativa = null, Estado? ufAutor = null, TipoAutor? tipoAutor = null, string versaoAplicativo = null, DateTimeOffset? dhEvento = null) { - /*if (!NFeTipoEventoUtils.NFeTipoEventoCancelamento.Contains(tipoEventoInsucesso)) - throw new Exception(string.Format("Informe um dos seguintes tipos de eventos: {0}", - string.Join(", ", - NFeTipoEventoUtils.NFeTipoEventoCancelamento.Select(n => n.Descricao())))); var versaoServico = ServicoNFe.RecepcaoEventoCancelmento.VersaoServicoParaString( @@ -787,14 +784,18 @@ private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(NFeTipoEvento tipoE var detEvento = new detEvento { - nProt = protocoloAutorizacao, versao = versaoServico, - xJust = justificativa, - descEvento = tipoEventoInsucesso.Descricao(), + descEvento = NFeTipoEvento.TeNfeInsucessoNaEntregadaNFe.Descricao(), cOrgaoAutor = ufAutor, - tpAutor = tipoAutor, verAplic = versaoAplicativo, - chNFeRef = chaveNfeSubstituta + dhTentativaEntrega = dhTentativaEntrega, + nTentativa = nTentativa, + tpMotivo = motivo, + xJustMotivo = justificativa, + latGPS = latGps, + longGPS = longGps, + hashTentativaEntrega = hashTentativaEntrega, + dhHashTentativaEntrega = dhHashTentativaEntrega }; var infEvento = new infEventoEnv { @@ -802,7 +803,7 @@ private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(NFeTipoEvento tipoE tpAmb = _cFgServico.tpAmb, chNFe = chaveNFe, dhEvento = dhEvento ?? DateTime.Now, - tpEvento = tipoEventoInsucesso, + tpEvento = NFeTipoEvento.TeNfeInsucessoNaEntregadaNFe, nSeqEvento = sequenciaEvento, verEvento = versaoServico, detEvento = detEvento @@ -815,7 +816,7 @@ private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(NFeTipoEvento tipoE var evento = new evento { versao = versaoServico, infEvento = infEvento }; var retorno = RecepcaoEvento(idlote, new List { evento }, ServicoNFe.RecepcaoEventoCancelmento, _cFgServico.VersaoRecepcaoEventoCceCancelamento, true); - return retorno;*/ + return retorno; } /// From 7d5b8a9f97429252e32d8fdf4c710f965ce94164 Mon Sep 17 00:00:00 2001 From: Lucas Moraes Date: Thu, 28 Mar 2024 08:27:43 -0300 Subject: [PATCH 08/46] feat: criar propriedade do enum ServicosNFe.cs RecepcaoEventoInsucessoEntregaNFe --- NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs | 5 +++++ NFe.Servicos/ServicoNfeFactory.cs | 1 + NFe.Servicos/ServicosNFe.cs | 4 ++-- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs b/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs index 26cd61262..f9b644a6f 100644 --- a/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs +++ b/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs @@ -53,6 +53,11 @@ public enum ServicoNFe /// serviço destinado à recepção de mensagem do Evento EPEC da NF-e /// RecepcaoEventoEpec, + + /// + /// serviço destinado à recepção de mensagem do Evento Insucesso na Entrega da NFe + /// + RecepcaoEventoInsucessoEntregaNFe, /// /// serviço destinado à recepção de mensagem do Evento de Manifestação do destinatário da NF-e diff --git a/NFe.Servicos/ServicoNfeFactory.cs b/NFe.Servicos/ServicoNfeFactory.cs index c2fe83977..f8950f334 100644 --- a/NFe.Servicos/ServicoNfeFactory.cs +++ b/NFe.Servicos/ServicoNfeFactory.cs @@ -212,6 +212,7 @@ public static INfeServico CriaWsdlOutros(ServicoNFe servico, ConfiguracaoServico case ServicoNFe.RecepcaoEventoCancelmento: case ServicoNFe.RecepcaoEventoCartaCorrecao: + case ServicoNFe.RecepcaoEventoInsucessoEntregaNFe: if (cfg.UsaSvanNFe4(cfg.VersaoRecepcaoEventoCceCancelamento)) { return new RecepcaoEvento4SVAN(url, certificado, cfg.TimeOut); diff --git a/NFe.Servicos/ServicosNFe.cs b/NFe.Servicos/ServicosNFe.cs index 39c79bf34..070a5efab 100644 --- a/NFe.Servicos/ServicosNFe.cs +++ b/NFe.Servicos/ServicosNFe.cs @@ -775,7 +775,7 @@ public RetornoRecepcaoEvento RecepcaoEventoEpec(int idlote, List eventos private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(int idlote, int sequenciaEvento, string cpfcnpj, string chaveNFe, DateTimeOffset dhTentativaEntrega, MotivoInsucesso motivo, string hashTentativaEntrega, int? nTentativa = null, DateTimeOffset? dhHashTentativaEntrega = null, decimal? latGps = null, decimal? longGps = null, - string justificativa = null, Estado? ufAutor = null, TipoAutor? tipoAutor = null, string versaoAplicativo = null, DateTimeOffset? dhEvento = null) + string justificativa = null, Estado? ufAutor = null, string versaoAplicativo = null, DateTimeOffset? dhEvento = null) { var versaoServico = @@ -815,7 +815,7 @@ private RetornoRecepcaoEvento RecepcaoEventoInsucessoEntrega(int idlote, var evento = new evento { versao = versaoServico, infEvento = infEvento }; - var retorno = RecepcaoEvento(idlote, new List { evento }, ServicoNFe.RecepcaoEventoCancelmento, _cFgServico.VersaoRecepcaoEventoCceCancelamento, true); + var retorno = RecepcaoEvento(idlote, new List { evento }, ServicoNFe.RecepcaoEventoInsucessoEntregaNFe, _cFgServico.VersaoRecepcaoEventoCceCancelamento, true); return retorno; } From a40556150f854458c232955538ee3bed2af8ad93 Mon Sep 17 00:00:00 2001 From: Lucas Moraes Date: Sun, 31 Mar 2024 18:18:59 -0300 Subject: [PATCH 09/46] =?UTF-8?q?feature:=20Criar=20bot=C3=A3o=20para=20te?= =?UTF-8?q?ste=20do=20evento=20insucesso=20na=20entrega=20da=20NFe?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- NFe.AppTeste/MainWindow.xaml | 2 ++ NFe.AppTeste/MainWindow.xaml.cs | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/NFe.AppTeste/MainWindow.xaml b/NFe.AppTeste/MainWindow.xaml index 2589fda74..d60737c05 100644 --- a/NFe.AppTeste/MainWindow.xaml +++ b/NFe.AppTeste/MainWindow.xaml @@ -962,6 +962,8 @@ Margin="375,185,0,0" VerticalAlignment="Top" Width="177" Click="BtnConsultaRecibo_Click" />