/// <summary> /// Insere cartões de arquivos XLS e TXT. /// </summary> /// <param name="ds"></param> /// <param name="idArquivo"></param> /// <param name="tpLog"></param> /// <param name="mapArq"></param> private void InsereCartoes(DataSet ds, int idArquivo, ENLog.TipoLog tpLog, ENLog.MapaArquivos mapArq) { int qtdCgr = 0; try { var acsCrgDetEn = new ACSOPRGCRDetalheEN(); var crgCn = new CargaCN(); List<ValidationResult> lstVr = null; int numLinha = 0; foreach (DataRow dr in ds.Tables[0].Rows) { try { if (!String.IsNullOrEmpty(dr["Identificacao"].ToString())) { numLinha++; lstVr = acsCrgDetEn.Mapeia(dr, crgCn.CriaMapaColuna(dr)); if (lstVr.Count == 0) { lstVr = crgCn.Valida(acsCrgDetEn); if (lstVr.Count == 0) { acsCrgDetEn.NumLinha = numLinha; acsCrgDetEn.IdArquivo = idArquivo; acsCrgDetEn.Insere(); qtdCgr++; } else { tpLog = ENLog.TipoLog.Informação; this.InsereLogErros(mapArq, tpLog, qtdCgr, numLinha, lstVr); } } else { tpLog = ENLog.TipoLog.Informação; this.InsereLogErros(mapArq, tpLog, qtdCgr, numLinha, lstVr); } } } catch (Exception e) { tpLog = ENLog.TipoLog.Alerta; string descErro = String.Format("Erro ao processar arquivo de Programação de Carga de Cartões. Linha: {0}", numLinha); this.InsereLog(mapArq, qtdCgr, tpLog, descErro); } } } catch (Exception e) { tpLog = ENLog.TipoLog.Erro; string descErro = "Erro ao processar arquivo de Programação de Carga de Cartões"; this.InsereLog(mapArq, qtdCgr, tpLog, descErro); throw; } switch (tpLog) { case upSight.Global.Log.EN.TipoLog.Erro: Log.AtualizaArquivo<ENLog.MapaArquivos>(mapArq, ENLog.StatusProcessamentoArquivo.NaoProcessado, mapArq.Arquivo, "Finaliza processamento de arquivo"); break; default: Log.AtualizaArquivo<ENLog.MapaArquivos>(mapArq, ENLog.StatusProcessamentoArquivo.ProcessadoOk, mapArq.Arquivo, "Finaliza processamento de arquivo"); break; } string desc = String.Format("Total de cargas realizadas: {0}", qtdCgr); this.InsereLog(mapArq, qtdCgr, ENLog.TipoLog.Informação, desc); }