public static nfeProc Importar(string caminho) { try { FileStream stream = new FileStream(caminho, FileMode.Open); XmlSerializer desserializador = new XmlSerializer(typeof(nfeProc)); nfeProc nfe = (nfeProc)desserializador.Deserialize(stream); return(nfe); } catch (Exception ex) { return(null); } }
public nfeProc DeserializarXML(FileInfo arqXML, int contadorXML) { log.Estatus = ""; abrirLog(arqXML, contadorXML); //Instancia um novo objeto nfeProc; nfe = new nfeProc(); //Se o XML não for NFe/CTe, finaliza o processo; if (eNFeCTe(arqXML) == false) { return(null); } //Se o XML não pertencer a empresa, finaliza o processo; if (pertenceEmpresa() == false) { return(null); } //se o XML estiver em competência inesperada, finaliza o processo; if (pertenceCompetencia() == false) { if (log.Estatus.Equals(TipoStatus.Erro.ToString())) { return(null); } } string escrituracao; if (log.Estatus.Equals(TipoStatus.Aviso.ToString())) { escrituracao = "Não Escriturados"; } else { escrituracao = "Escriturados"; log.Estatus = TipoStatus.Sucesso.ToString(); } log.CaminhoDestino = @"D:\XML\" + DadosLogin.empresa.CNPJ_CPF + "\\" + DadosLogin.competencia.Substring(3, 4) + DadosLogin.competencia.Substring(0, 2) + "\\" + escrituracao + "\\" + log.NaturezaFiscal + "\\" + log.TipoNF; if (nfe != null) { log.NumNf = nfe.NFe.infNFe.ide.nNF; } else { log.NumNf = cte.CTe.infCte.ide.nCT; } return(nfe); }
public static nfeProc Deserializar(string path) { try { _reader = new FileStream(path, FileMode.Open); XmlSerializer serializer = new XmlSerializer(typeof(nfeProc)); nfeProc nfe = (nfeProc)serializer.Deserialize(_reader); _reader.Dispose(); return(nfe); } catch (Exception ex) { _reader.Dispose(); return(null); } }
private void addListaNFeProc(FileInfo arquivoXML, int contadorArq) { //Instancia um novo nfeProc e a Classe de Deserialização do XML e passar i como Id para o Log de ocorrência; nfeProc nfeProcObj = new nfeProc(); GerenciadorSerializacaoXML GestorXML = new GerenciadorSerializacaoXML(ref log); //Se o retorno for diferente de um objeto nulo, salva na lista de nfeProc if ((nfeProcObj = GestorXML.DeserializarXML(arquivoXML, contadorArq)) != null) { //Verifica a redundância no LogXML retorna False antes de Salvar na ListaNfeProc if (vRedunLogXML()) { //CopiarArquivo(arquivoXML); if (log.Estatus != TipoStatus.Aviso.ToString()) { nfeProcObj.nomeArq = arquivoXML.Name; ListaNfeProc.Add(nfeProcObj); } } } }