public static TRetDownloadNFe DownloadNFe(TDownloadNFe downloadNFe, TCodUfIBGE CodUF, X509Certificate2 cert) { XmlNode xmlNodeRetorno = null; TRetDownloadNFe retornoDownloadNFe = null; C_WebService.ListaUrl listaURL = WsUrls.BuscaURL(CodUF, downloadNFe.tpAmb); //CABEÇALHO DownloadNF.nfeCabecMsg cab = new DownloadNF.nfeCabecMsg(); cab.cUF = PegarCodigoUF(CodUF); //UF DO CABEÇALHO cab.versaoDados = Funcoes.ConvertEnumToString(downloadNFe.versao); //VERSÃO DO CABEÇALHO //CRIA UMA INSTANCIA DA CONEXÃO COM O WEBSERVICE DownloadNF.NfeDownloadNF wsMsg = new DownloadNF.NfeDownloadNF(listaURL.UrlNfeDownloadNF); wsMsg.nfeCabecMsgValue = cab; //ASSOCIA CABEÇALHO NFE wsMsg.Timeout = 100000; //DEFINE TEMPO MAXIMO DE ESPERA POR RETORNO wsMsg.ClientCertificates.Add(cert); //ASSOCIA CERTIFICADO A CONEXAO WEBSERVICE wsMsg.SoapVersion = SoapProtocolVersion.Soap12; //DEFINE PROTOCOLO USADO NA CONEXÃO XmlDocument dados = new XmlDocument(); dados.LoadXml(Funcoes.RemoveNameSpaceFromXml(downloadNFe.Serialize())); //ENVIA REQUISIÇÂO PARA SEFAZ E OBTEM RETORNO xmlNodeRetorno = wsMsg.nfeDownloadNF(dados); retornoDownloadNFe = TRetDownloadNFe.Deserialize(xmlNodeRetorno.OuterXml); return(retornoDownloadNFe); }
public void Enviar(Entidade_DownloadNFe ObjEnt, out Entidade_DownloadNFe objDados) { Entidade_Status eRetStatus = new Entidade_Status(); eDownloadNFe = new Entidade_DownloadNFe(); mLog = new Model_LogNfe(); NFuncoes = new NegocioFuncoesGerais(); docTran = new XmlDocument(); ns = new XmlSerializerNamespaces(); Settings = new XmlWriterSettings(); xmlStatus = new XmlSerializer(typeof(TDownloadNFe)); try { //Passando os dados para a Class que vai ser serelizada ObjDownloadNFeEnv = new TDownloadNFe(ObjEnt); // E DEFINIDO O TIPO DE LEITURA DO XML Settings.Encoding = UTF8Encoding.UTF8; Settings.NewLineHandling = NewLineHandling.None; Settings.Indent = true; Settings.IndentChars = ""; ns.Add(string.Empty, "http://www.portalfiscal.inf.br/nfe"); Sw = new UTF8StringWriter(); Wx = XmlWriter.Create(Sw, Settings); xmlStatus.Serialize(Sw, ObjDownloadNFeEnv, ns); string xmlGer = Sw.ToString(); docTran.LoadXml(xmlGer); docTran.PreserveWhitespace = false; CertEmpresa = AssinaturaDigital.FindCertOnStore(ObjEnt.id_loja); EnviarXml(docTran, CertEmpresa, ref ObjEnt); objDados = null; } catch (Exception Ex) { Mensagem.MensagemErro(Mensagem.TipoMensagem.Status, "DownloaNFe", Ex.Message.ToString()); mLog.InsertErroLog(NFuncoes.TiraCampos(Ex.Message.ToString())); objDados = null; } }
public static TRetDownloadNFe DownloadNFe(TDownloadNFe downloadNFe, string codUF, X509Certificate2 cert) { return(C_WebService.DownloadNFe(downloadNFe, (TCodUfIBGE)Enum.Parse(typeof(TCodUfIBGE), codUF), cert)); }