public Core.RespostaCancelamentoNfse CancelarNfse(Layouts.Betha.CancelarNfseEnvio envioCancelamento, Core.Empresa empresa, Core.ArquivosEnvio localArquivos) { try { ValidarCaminhos(localArquivos); var serializar = new Layouts.Serializador(); serializar.SalvarXml <Layouts.Betha.CancelarNfseEnvio>(envioCancelamento, localArquivos.SalvarCancelarNfseEnvioEm); var envio = new NFSE.Net.Envio.Processar(); ExecutarConsultas(() => { envio.ProcessaArquivo(empresa, localArquivos.SalvarCancelarNfseEnvioEm, localArquivos.SalvarCancelarNfseRespostaEm, Servicos.CancelarNfse); }); bool erro = false; var respostaEnvioLote = serializar.TryLerXml <Layouts.Betha.CancelarNfseReposta>(localArquivos.SalvarCancelarNfseRespostaEm, out erro); if (respostaEnvioLote != null) { if (respostaEnvioLote.Item is ListaMensagemRetorno) { var retorno = new Core.RespostaCancelamentoNfse(); ListaMensagemRetorno mensagensErro = (ListaMensagemRetorno)respostaEnvioLote.Item; retorno.Sucesso = false; retorno.CodigoErro = mensagensErro.MensagemRetorno[0].Codigo; retorno.Correcao = mensagensErro.MensagemRetorno[0].Correcao; retorno.MensagemErro = mensagensErro.MensagemRetorno[0].Mensagem; return(retorno); } else { var retorno = new Core.RespostaCancelamentoNfse(); tcCancelamentoNfse cancelamento = (tcCancelamentoNfse)respostaEnvioLote.Item; retorno.Sucesso = cancelamento.Confirmacao.InfConfirmacaoCancelamento.Sucesso; retorno.DataHoraCancelamento = cancelamento.Confirmacao.InfConfirmacaoCancelamento.DataHora; retorno.NumeroNfse = cancelamento.Confirmacao.Pedido.InfPedidoCancelamento.IdentificacaoNfse.Numero; return(retorno); } } else { return new Core.RespostaCancelamentoNfse() { Sucesso = false, CodigoErro = "00", MensagemErro = "Erro desconhecido" } }; } catch (System.Reflection.TargetInvocationException e) { throw e.InnerException; } }
private void button9_Click(object sender, EventArgs e) { try { var empresa = RetornaEmpresa(false); var localArquivos = Core.ArquivosEnvio.GerarCaminhos("", @"C:\NotasEletronicas\30-JeF DISTRIBUIDORA DE\nfse\cancelamento"); var envio = new Envio.EnvioCompleto(); Layouts.Betha.CancelarNfseEnvio nfseCancelar = new Layouts.Betha.CancelarNfseEnvio(); nfseCancelar.Pedido = new Layouts.Betha.tcPedidoCancelamento(); nfseCancelar.Pedido.InfPedidoCancelamento = new Layouts.Betha.tcInfPedidoCancelamento(); nfseCancelar.Pedido.InfPedidoCancelamento.CodigoCancelamento = "123"; nfseCancelar.Pedido.InfPedidoCancelamento.Id = "123"; nfseCancelar.Pedido.InfPedidoCancelamento.IdentificacaoNfse = new Layouts.Betha.tcIdentificacaoNfse(); nfseCancelar.Pedido.InfPedidoCancelamento.IdentificacaoNfse.Cnpj = "03657739000169"; nfseCancelar.Pedido.InfPedidoCancelamento.IdentificacaoNfse.CodigoMunicipio = 4204202; nfseCancelar.Pedido.InfPedidoCancelamento.IdentificacaoNfse.InscricaoMunicipal = "4545"; nfseCancelar.Pedido.InfPedidoCancelamento.IdentificacaoNfse.Numero = "125456"; var resposta = envio.CancelarNfse(nfseCancelar, empresa, localArquivos); if (resposta.Sucesso) { MessageBox.Show(resposta.DataHoraCancelamento.ToLongDateString()); } else { MessageBox.Show(resposta.CodigoErro + " - " + resposta.MensagemErro + " - " + resposta.Correcao); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }