/// <summary> /// Metodo para Guardar/Modificar una entidad Parametro /// </summary> /// <param name="info"></param> internal int Guardar(ParametroInfo info) { try { Logger.Info(); var parametroDAL = new ParametroDAL(); int result = info.ParametroID; if (info.ParametroID == 0) { result = parametroDAL.Crear(info); } else { parametroDAL.Actualizar(info); } return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
public static void GerarArquivo(string nome, string tipo, string conteudo) { try { string path = ""; string pathOrigemRemessa = ParametroDAL.GetValor("OrigemRemessaPath"); string pathOrigemRetorno = ParametroDAL.GetValor("OrigemRetornoPath"); if (tipo.Equals("REM")) { path = @pathOrigemRemessa + nome; } else { path = @pathOrigemRetorno + nome; } if (!File.Exists(path)) { using (StreamWriter sw = File.CreateText(path)) { sw.WriteLine(conteudo); } } } catch (Exception e) { System.Console.WriteLine(e.Message); } }
private X509Certificate2 ObterCertificado() { try { string pathCertPath = ParametroDAL.GetValor("CertPath"); string certPath = @pathCertPath; string certPass = ParametroDAL.GetValor("CertPass"); X509Certificate2 myCert = new X509Certificate2(certPath, certPass); //parametro adicionado no final return(myCert); } catch (Exception ex) { throw; } }
public static void MoverArquivos(string arquivo) { string pathOrigemImportacao = ParametroDAL.GetValor("OrigemImportacaoPath"); string pathDestinoImportacao = ParametroDAL.GetValor("DestinoImportacaoPath"); DirectoryInfo dirOrigemImportacao = new DirectoryInfo(@pathOrigemImportacao); string dirDestinoImportacao = @pathDestinoImportacao; foreach (FileInfo f in dirOrigemImportacao.GetFiles("*.txt")) { if (f.Name.Equals(arquivo + ".txt")) { File.Move(f.FullName, dirDestinoImportacao + f.Name); } } string pathOrigemRemessa = ParametroDAL.GetValor("OrigemRemessaPath"); string pathDestinoRemessa = ParametroDAL.GetValor("DestinoRemessaPath"); DirectoryInfo dirOrigemRemessa = new DirectoryInfo(@pathOrigemRemessa); string dirDestinoRemessa = @pathDestinoRemessa; // reavaliar essa rotina, pois não deixe mover um arquivo caso exista outro com mesmo nome na mesma pasta foreach (FileInfo f in dirOrigemRemessa.GetFiles("*.REM")) { if (f.Name.Equals(arquivo + ".REM")) { File.Move(f.FullName, dirDestinoRemessa + f.Name); } } string pathOrigemRetorno = ParametroDAL.GetValor("OrigemRetornoPath"); string pathDestinoRetorno = ParametroDAL.GetValor("DestinoRetornoPath"); DirectoryInfo dirOrigemRetorno = new DirectoryInfo(@pathOrigemRetorno); string dirDestinoRetorno = @pathDestinoRetorno; foreach (FileInfo f in dirOrigemRetorno.GetFiles("*.RET")) { if (f.Name.Equals(arquivo + ".RET")) { File.Move(f.FullName, dirDestinoRetorno + f.Name); } } }
/// <summary> /// Obtiene un lista de Parametro /// </summary> /// <returns></returns> internal IList <ParametroInfo> ObtenerTodos() { try { Logger.Info(); var parametroDAL = new ParametroDAL(); IList <ParametroInfo> result = parametroDAL.ObtenerTodos(); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene un lista paginada /// </summary> /// <param name="pagina"></param> /// <param name="filtro"></param> /// <returns></returns> internal ResultadoInfo <ParametroInfo> ObtenerPorPagina(PaginacionInfo pagina, ParametroInfo filtro) { try { Logger.Info(); var parametroDAL = new ParametroDAL(); ResultadoInfo <ParametroInfo> result = parametroDAL.ObtenerPorPagina(pagina, filtro); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
/// <summary> /// Obtiene una entidad por su Clave /// </summary> /// <param name="parametroInfo"></param> /// <returns></returns> internal ParametroInfo ObtenerPorParametroTipoParametro(ParametroInfo parametroInfo) { try { Logger.Info(); var parametroDAL = new ParametroDAL(); ParametroInfo result = parametroDAL.ObtenerPorParametroTipoParametro(parametroInfo); return(result); } catch (ExcepcionGenerica) { throw; } catch (Exception ex) { Logger.Error(ex); throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } }
public JsonResult Delete(Int32 Id) { string auxMsgErro = string.Empty; string auxMsgSucesso = string.Empty; ParametroTO obj = new ParametroTO { Id = Id }; if (ParametroDAL.Delete(obj) == null) { auxMsgErro = "Falha ao tentar excluir o registro, favor tente novamente"; } else { auxMsgSucesso = "Registro excluído com sucesso"; } return(Json(new { msgErro = auxMsgErro, msgSucesso = auxMsgSucesso })); }
public JsonResult Insert(String Chave, String Valor) { string auxMsgErro = string.Empty; string auxMsgSucesso = string.Empty; ParametroTO obj = new ParametroTO { Chave = Chave, Valor = Valor }; if (ParametroDAL.Insert(obj) == null) { auxMsgErro = "Falha ao tentar inserir o registro, favor tente novamente"; } else { auxMsgSucesso = "Registro inserido com sucesso"; } return(Json(new { msgErro = auxMsgErro, msgSucesso = auxMsgSucesso })); }
public JsonResult Get() { int draw = Convert.ToInt32(Request.Form["draw"]); int start = Convert.ToInt32(Request.Form["start"]); int length = Convert.ToInt32(Request.Form["length"]); string textoFiltro = Request.Form["search[value]"]; string sortColumn = Request.Form[string.Format("columns[{0}][name]", Request.Form["order[0][column]"])]; string sortColumnDir = Request.Form["order[0][dir]"]; int totRegistros = 0; int totRegistrosFiltro = 0; IList <ParametroTO> dados = ParametroDAL.Get(start, length, ref totRegistros, textoFiltro, ref totRegistrosFiltro, sortColumn, sortColumnDir); if (start > 0 && dados.Count == 0) { start -= length; dados = ParametroDAL.Get(start, length, ref totRegistros, textoFiltro, ref totRegistrosFiltro, sortColumn, sortColumnDir); return(Json(new { draw = draw, recordsFiltered = totRegistrosFiltro, recordsTotal = totRegistros, data = dados, voltarPagina = 'S' }, JsonRequestBehavior.AllowGet)); } return(Json(new { draw = draw, recordsFiltered = totRegistrosFiltro, recordsTotal = totRegistros, data = dados }, JsonRequestBehavior.AllowGet)); }
public JsonResult Update(String Chave, String Valor, Int32 Id) { string auxMsgErro = string.Empty; string auxMsgSucesso = string.Empty; ParametroTO obj = new ParametroTO { Chave = Chave, Valor = Valor, Id = Id }; if (ParametroDAL.Update(obj) == null) { auxMsgErro = "Falha ao tentar alterar o registro, favor tente novamente"; } else { auxMsgSucesso = "Registro alterado com sucesso"; } return(Json(new { msgErro = auxMsgErro, msgSucesso = auxMsgSucesso })); }
public static List <ArquivoRps> SetValues() { List <ArquivoRps> arquivosRpsCol = new List <ArquivoRps>(); try { string pathOrigemImportacao = ParametroDAL.GetValor("OrigemImportacaoPath"); DirectoryInfo diretorio = new DirectoryInfo(@pathOrigemImportacao); FileInfo[] arquivos = diretorio.GetFiles(); foreach (FileInfo file in arquivos) { if (FileIsValid(file)) { string[,] values = GetValues(); ArquivoRps arquivoRps = new ArquivoRps(); arquivoRps.NomeArquivo = file.Name; arquivoRps.NomeArquivoREM = file.Name.Replace(".txt", ".REM"); arquivoRps.NomeArquivoRET = file.Name.Replace(".txt", ".RET"); string[] DadosNFOrigem = ParametroDAL.GetValor("DadosNFOrigem").Split(';'); // Primeira linha --> Dados do Prestador if ((lines[1].IndexOf("001|") == 0)) { arquivoRps.Rps.NumeroLote = RpsDAL.GetUltimoLote(); arquivoRps.Rps.CpfCnpj = DadosNFOrigem[0]; arquivoRps.Rps.InscricaoMunicipal = DadosNFOrigem[1]; arquivoRps.Rps.Quantidade = "1"; // Analisar o arquivo se será 1 ou N lotes por arquivo arquivoRps.Rps.InfDeclaracaoPrestacaoServico.IdentificacaoRps.Numero = Convert.ToString(LoteRpsDAL.GetUltimoRPS()); //Sequencial => Controle do banco --> Só precisa ser gerado sequencialmente quando o lote for processado com sucesso arquivoRps.Rps.InfDeclaracaoPrestacaoServico.IdentificacaoRps.Serie = DadosNFOrigem[2]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.IdentificacaoRps.Tipo = DadosNFOrigem[3]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.DataEmissao = DateTime.Now.ToString("yyyy-MM-dd"); arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Status = DadosNFOrigem[4]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Competencia = arquivoRps.Rps.InfDeclaracaoPrestacaoServico.DataEmissao; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Prestador.CpfCnpj = arquivoRps.Rps.CpfCnpj; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Prestador.InscricaoMunicipal = arquivoRps.Rps.InscricaoMunicipal; } // Segunda linha --> Dados do Tomador if ((lines[2].IndexOf("002|") == 0)) { arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.CpfCnpj = values[2, 1]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.RazaoSocial = values[2, 3]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Logradouro = values[2, 11]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Numero = values[2, 12]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Bairro = values[2, 8]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.CodigoMunicipio = values[2, 6]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Uf = values[2, 7]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Cep = values[2, 10]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.Contato.Telefone = values[2, 5]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.Contato.Email = values[2, 4].ToLower().TrimEnd(); } // Terceira linha --> Dados do Serviço if ((lines[3].IndexOf("005|") == 0)) { decimal valorServico = Convert.ToDecimal(values[3, 1]) / 100; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.Valores.ValorServicos = Convert.ToString(valorServico).Replace(",", "."); arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.IssRetido = DadosNFOrigem[5]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.ItemListaServico = DadosNFOrigem[6]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.CodigoCnae = DadosNFOrigem[7]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.CodigoTributacaoMunicipio = arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.ItemListaServico; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.Discriminacao = values[3, 18]; // Ir na tabela Regra verificar se há alguma regra estabelecida RegraTO regraGeral = RegraDAL.GetTodos("*"); if (regraGeral.Regra != null) { //string discriminacao = regraGeral.Discriminacao; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.Discriminacao = regraGeral.Discriminacao; } RegraTO regra = RegraDAL.GetPorCpfCnpjPrestador(arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Tomador.CpfCnpj); if (regra.CpfCnpj_Prestador != null) { string discriminacao = regra.Discriminacao; string[] srt_discriminacao = discriminacao.Split('|'); foreach (string valor in srt_discriminacao) { switch (valor) { case "DataEmissao": // Campo crítico string dtEmissao = GetExpressaoComData(arquivoRps.Rps.InfDeclaracaoPrestacaoServico.DataEmissao, regra.Expressoes); discriminacao = discriminacao.Replace(valor, dtEmissao); break; case "ValorServicos": discriminacao = discriminacao.Replace(valor, arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.Valores.ValorServicos); break; case "IssRetido": discriminacao = discriminacao.Replace(valor, arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.IssRetido); break; case "ItemListaServico": discriminacao = discriminacao.Replace(valor, arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.ItemListaServico); break; case "CodigoCnae": discriminacao = discriminacao.Replace(valor, arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.CodigoCnae); break; } } arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.Discriminacao = discriminacao.Replace("|", ""); } arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.CodigoMunicipio = DadosNFOrigem[8]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.ExigibilidadeISS = DadosNFOrigem[9]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.Servico.MunicipioIncidencia = DadosNFOrigem[10]; } arquivoRps.Rps.InfDeclaracaoPrestacaoServico.OptanteSimplesNacional = DadosNFOrigem[11]; arquivoRps.Rps.InfDeclaracaoPrestacaoServico.IncentivoFiscal = DadosNFOrigem[12]; arquivosRpsCol.Add(arquivoRps); } } } catch (Exception) { throw; } return(arquivosRpsCol); }
public static List <Rps> ObterDadosEnvio() { List <Rps> rpsCollection = new List <Rps>(); Rps rps = null; try { string pathOrigemImportacao = ParametroDAL.GetValor("OrigemImportacaoPath"); DirectoryInfo diretorio = new DirectoryInfo(@pathOrigemImportacao); FileInfo[] arquivos = diretorio.GetFiles(); if (arquivos.Length != 0) { // Busca arquivos do diretorio foreach (FileInfo file in arquivos) { // Somente arquivos TXT/CSV if ((file.Extension.ToUpper().Equals(".TXT")) || (file.Extension.ToUpper().Equals(".CSV"))) { string[] lines = System.IO.File.ReadAllLines(file.FullName); if (lines.Length != 0) { string[] linhaCab = lines[0].Split('|'); string[] columns = new string[50]; string[,] values = new string[lines.Length, columns.Length]; // Verifica se o arquivo possui o cabeçalho SISPEC if ((lines[0].IndexOf("000|") == 0) || (linhaCab.Length == 17)) { int i = 0; // Preenche a matriz values com os valores dos campos foreach (string line in lines) { columns = line.Split('|'); int j = 0; foreach (string field in columns) { values[i, j] = field; //Console.WriteLine("\t Line[" + i + "] - Field[" + j + "]: " + field); j++; } i++; } rps = new Rps(); //string[] DadosNFPlamedAju = ParametroDAL.GetValor("DadosNFPlamedAju").Split(';'); string[] DadosNFOrigem = ParametroDAL.GetValor("DadosNFOrigem").Split(';'); // Primeira linha --> Dados do Prestador if ((lines[1].IndexOf("001|") == 0)) { rps.NumeroLote = RpsDAL.GetUltimoLote(); rps.CpfCnpj = DadosNFOrigem[0]; rps.InscricaoMunicipal = DadosNFOrigem[1]; rps.Quantidade = "1"; // Analisar o arquivo se será 1 ou N lotes por arquivo rps.InfDeclaracaoPrestacaoServico.IdentificacaoRps.Numero = Convert.ToString(LoteRpsDAL.GetUltimoRPS()); //Sequencial => Controle do banco --> Só precisa ser gerado sequencialmente quando o lote for processado com sucesso rps.InfDeclaracaoPrestacaoServico.IdentificacaoRps.Serie = DadosNFOrigem[2]; rps.InfDeclaracaoPrestacaoServico.IdentificacaoRps.Tipo = DadosNFOrigem[3]; rps.InfDeclaracaoPrestacaoServico.DataEmissao = DateTime.Now.ToString("yyyy-MM-dd"); rps.InfDeclaracaoPrestacaoServico.Status = DadosNFOrigem[4]; rps.InfDeclaracaoPrestacaoServico.Competencia = rps.InfDeclaracaoPrestacaoServico.DataEmissao; rps.InfDeclaracaoPrestacaoServico.Prestador.CpfCnpj = rps.CpfCnpj; rps.InfDeclaracaoPrestacaoServico.Prestador.InscricaoMunicipal = rps.InscricaoMunicipal; } // Segunda linha --> Dados do Tomador if ((lines[2].IndexOf("002|") == 0)) { rps.InfDeclaracaoPrestacaoServico.Tomador.CpfCnpj = values[2, 1]; rps.InfDeclaracaoPrestacaoServico.Tomador.RazaoSocial = values[2, 3]; rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Logradouro = values[2, 11]; rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Numero = values[2, 12]; rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Bairro = values[2, 8]; rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.CodigoMunicipio = values[2, 6]; rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Uf = values[2, 7]; rps.InfDeclaracaoPrestacaoServico.Tomador.Endereco.Cep = values[2, 10]; rps.InfDeclaracaoPrestacaoServico.Tomador.Contato.Telefone = values[2, 5]; rps.InfDeclaracaoPrestacaoServico.Tomador.Contato.Email = values[2, 4].ToLower().TrimEnd(); } // Terceira linha --> Dados do Serviço if ((lines[3].IndexOf("005|") == 0)) { decimal valorServico = Convert.ToDecimal(values[3, 1]) / 100; rps.InfDeclaracaoPrestacaoServico.Servico.Valores.ValorServicos = Convert.ToString(valorServico).Replace(",", "."); rps.InfDeclaracaoPrestacaoServico.Servico.IssRetido = DadosNFOrigem[5]; rps.InfDeclaracaoPrestacaoServico.Servico.ItemListaServico = DadosNFOrigem[6]; rps.InfDeclaracaoPrestacaoServico.Servico.CodigoCnae = DadosNFOrigem[7]; rps.InfDeclaracaoPrestacaoServico.Servico.CodigoTributacaoMunicipio = rps.InfDeclaracaoPrestacaoServico.Servico.ItemListaServico; rps.InfDeclaracaoPrestacaoServico.Servico.Discriminacao = values[3, 18]; // Ir na tabela Regra verificar se há alguma regra estabelecida RegraTO regraGeral = RegraDAL.GetTodos("*"); if (regraGeral.Regra != null) { //string discriminacao = regraGeral.Discriminacao; rps.InfDeclaracaoPrestacaoServico.Servico.Discriminacao = regraGeral.Discriminacao; } RegraTO regra = RegraDAL.GetPorCpfCnpjPrestador(rps.InfDeclaracaoPrestacaoServico.Tomador.CpfCnpj); if (regra.CpfCnpj_Prestador != null) { string discriminacao = regra.Discriminacao; string[] srt_discriminacao = discriminacao.Split('|'); foreach (string valor in srt_discriminacao) { switch (valor) { case "DataEmissao": // Campo crítico string dtEmissao = GetExpressaoComData(rps.InfDeclaracaoPrestacaoServico.DataEmissao, regra.Expressoes); discriminacao = discriminacao.Replace(valor, dtEmissao); break; case "ValorServicos": discriminacao = discriminacao.Replace(valor, rps.InfDeclaracaoPrestacaoServico.Servico.Valores.ValorServicos); break; case "IssRetido": discriminacao = discriminacao.Replace(valor, rps.InfDeclaracaoPrestacaoServico.Servico.IssRetido); break; case "ItemListaServico": discriminacao = discriminacao.Replace(valor, rps.InfDeclaracaoPrestacaoServico.Servico.ItemListaServico); break; case "CodigoCnae": discriminacao = discriminacao.Replace(valor, rps.InfDeclaracaoPrestacaoServico.Servico.CodigoCnae); break; } } rps.InfDeclaracaoPrestacaoServico.Servico.Discriminacao = discriminacao.Replace("|", ""); } rps.InfDeclaracaoPrestacaoServico.Servico.CodigoMunicipio = DadosNFOrigem[8]; rps.InfDeclaracaoPrestacaoServico.Servico.ExigibilidadeISS = DadosNFOrigem[9]; rps.InfDeclaracaoPrestacaoServico.Servico.MunicipioIncidencia = DadosNFOrigem[10]; } rps.InfDeclaracaoPrestacaoServico.OptanteSimplesNacional = DadosNFOrigem[11]; rps.InfDeclaracaoPrestacaoServico.IncentivoFiscal = DadosNFOrigem[12]; rpsCollection.Add(rps); } } else { Console.WriteLine("Conteúdo de arquivo no formato inválido (layout inválido)."); } } else { Console.WriteLine("Arquivo no formato inválido (tipo inválido)."); } nomeArquivo = file.Name.Split('.')[0]; } } else { Console.WriteLine("Nenhum arquivo para importação."); } } catch (Exception e) { Console.WriteLine(e.Message); } return(rpsCollection); }
// GerarNotaFiscal public string Gerar() { string msg = "Não encontrou arquivo para importação."; try { // Retornar uma coleção de RPs //List<Rps> lotesRps = Importacao.ObterDadosEnvio(); List <ArquivoRps> lotesRps = Importacao.SetValues(); if (lotesRps.Count > 0) { msg = "Encontrou " + lotesRps.Count.ToString() + " arquivo(s) para importação."; int i = 0; foreach (ArquivoRps dados in lotesRps) { string xmlCabecalho = GerarXMLCabecalho(); // Recepcionando o arquivo XML assinado string xmlDados = GerarXML(dados); xmlDados = AssinarXML(xmlDados, "Rps"); xmlDados = AssinarXML(xmlDados, "EnviarLoteRpsEnvio"); NfseWSServiceSoapClient servico = new NfseWSServiceSoapClient(); string xmlRetorno = servico.RecepcionarLoteRps(xmlCabecalho, xmlDados); //string consultLote = servico.ConsultarLoteRps(xmlCabecalho, xmlDados); // Gerando arquivos REM/RET nos respectivos diretorios Importacao.GerarArquivo(dados.NomeArquivoREM, "REM", xmlDados); Importacao.GerarArquivo(dados.NomeArquivoRET, "RET", xmlRetorno); string pathOrigemImportacao = ParametroDAL.GetValor("OrigemImportacaoPath"); string pathOrigemRemessa = ParametroDAL.GetValor("OrigemRemessaPath"); string pathOrigemRetorno = ParametroDAL.GetValor("OrigemRetornoPath"); string pathDestinoImportacao = ParametroDAL.GetValor("DestinoImportacaoPath"); string pathDestinoRemessa = ParametroDAL.GetValor("DestinoRemessaPath"); string pathDestinoRetorno = ParametroDAL.GetValor("DestinoRetornoPath"); string arquivoImportacao = @pathDestinoImportacao + DateTime.Now.ToString("yyyyMMdd_HHmmss") + "_" + dados.NomeArquivo; // Movendo arquivo de importacao da origem para destino com outro nome File.Move(@pathOrigemImportacao + dados.NomeArquivo, arquivoImportacao); string arquivoRemessa = @pathDestinoRemessa + DateTime.Now.ToString("yyyyMMdd_HHmmss") + "_" + dados.NomeArquivoREM; // Movendo arquivo de remessa da origem para destino com outro nome File.Move(@pathOrigemRemessa + dados.NomeArquivoREM, arquivoRemessa); string arquivoRetorno = @pathDestinoRetorno + DateTime.Now.ToString("yyyyMMdd_HHmmss") + "_" + dados.NomeArquivoRET; // Movendo arquivo de retorno da origem para destino com outro nome File.Move(@pathOrigemRetorno + dados.NomeArquivoRET, arquivoRetorno); // Lendo arquivo da pasta Backup string conteudoImportacao = Importacao.LerArquivoImportacao(arquivoImportacao); // Gravando na base o lote SalvarLote(dados.Rps, lotesRps.Count, i); // Gravando na base o resultado do envio SalvarDadosEnvio(dados.Rps, xmlDados, xmlRetorno, arquivoImportacao, conteudoImportacao, arquivoRemessa, arquivoRetorno); i++; System.Threading.Thread.Sleep(5000); //Delay de 5 segundos para chamada sincrona } } } catch (Exception ex) { msg = ex.Message; } return(msg); }