/// <summary> /// O método realiza a importação dos registros que foram analisados com sucesso. /// </summary> private void ImportarArquivo() { try { List <LoteFechamento> listaSucesso = VS_listaLoteFechamento.Where(p => p.status == LoteStatus.Sucess).ToList(); if (listaSucesso.Any()) { int sucesso, erro; VS_listaLoteFechamento = CLS_ArquivoEfetivacaoBO.SalvarRegistrosLote(__SessionWEB.__UsuarioWEB.Usuario.ent_id, listaSucesso, VS_arquivo, out sucesso, out erro); // Configura e atualiza GridView UCComboQtdePaginacao.Valor = 10; grvArquivo.PageIndex = 0; grvArquivo.PageSize = Convert.ToInt32(UCComboQtdePaginacao.Valor); grvArquivo.DataBind(); // Configura importação dos registro do arquivo lblSucesso.Text = sucesso.ToString(); lblErro.Text = erro.ToString(); lblTotal.Text = (sucesso + erro).ToString(); ConfigurarPasso(ePasso.ImportacaoArquivo); // Configura mensagem da importação dos registro lblMessage.Text = sucesso > 0 ? ( erro > 0 ? UtilBO.GetMessage(String.Format("Importação de dados de {0} de {1} realizada com sucesso, porém alguns registros não foram importados devido a erros encontrados.", nomeEfetivacao.ToLower(), nomeBimestre.ToLower()), UtilBO.TipoMensagem.Sucesso) : UtilBO.GetMessage(String.Format("Importação de dados de {0} de {1} realizada com sucesso.", nomeEfetivacao.ToLower(), nomeBimestre.ToLower()), UtilBO.TipoMensagem.Sucesso) ) : UtilBO.GetMessage(String.Format("Não foi possível realizar importação de dados de {0} de {1} devido a erros encontrados.", nomeEfetivacao.ToLower(), nomeBimestre.ToLower()), UtilBO.TipoMensagem.Erro); if (sucesso > 0) { ApplicationWEB._GravaLogSistema ( LOG_SistemaTipo.Insert, String.Format("Importação de dados de {0} de {1} - sucesso: {2} / erro: {3} / tur_id: {4} / tpc_id: {5}", nomeEfetivacao.ToLower(), nomeBimestre.ToLower(), sucesso.ToString(), erro.ToString(), VS_tur_id.ToString(), VS_tpc_id.ToString()) ); } } else { lblMessage.Text = UtilBO.GetMessage("Não existem registros processados com sucesso para realizar a importação.", UtilBO.TipoMensagem.Alerta); } } catch (ValidationException ex) { lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Erro); } catch (Exception ex) { ApplicationWEB._GravaErro(ex); lblMessage.Text = UtilBO.GetErroMessage("Erro ao tentar importar dados do arquivo.", UtilBO.TipoMensagem.Erro); } finally { updMessage.Update(); } }
/// <summary> /// O método analisa os registros do arquivo de fechamento. /// </summary> private void AnalisarArquivo() { try { //if (ValidarNomeArquivo()) if (GestaoEscolarUtilBO.VerificarArquivo(fupArquivo.PostedFile)) { int sucesso, erro; string nomeArquivoSemExtensao = Path.GetFileNameWithoutExtension(fupArquivo.PostedFile.FileName); string nomeArquivo = fupArquivo.PostedFile.FileName; int tamanhoArquivo = fupArquivo.PostedFile.ContentLength; string typeMime = fupArquivo.PostedFile.ContentType; Stream arquivo = CopiarArquivo(fupArquivo.PostedFile.InputStream); VS_arquivo = CriarAnexo(arquivo, nomeArquivo, tamanhoArquivo, typeMime); arquivo.Position = 0; VS_listaLoteFechamento = CLS_ArquivoEfetivacaoBO.AnalisarRegistrosLote ( (string)GetGlobalResourceObject("Mensagens", "MSG_DISCIPLINA"), __SessionWEB.__UsuarioWEB.Usuario.ent_id, VS_cal_id, VS_tpc_id, VS_tur_id, arquivo, nomeArquivoSemExtensao, out sucesso, out erro ); if (VS_listaLoteFechamento.Any()) { UCComboQtdePaginacao.Valor = 10; grvArquivo.PageIndex = 0; grvArquivo.PageSize = UCComboQtdePaginacao.Valor; grvArquivo.DataBind(); updArquivo.Update(); // Configura análise dos registro do arquivo lblSucesso.Text = sucesso.ToString(); lblErro.Text = erro.ToString(); lblTotal.Text = (sucesso + erro).ToString(); ConfigurarPasso(ePasso.AnaliseArquivo); } else { lblMessage.Text = UtilBO.GetErroMessage("Não existem registros para analisar no arquivo enviado.", UtilBO.TipoMensagem.Alerta); updMessage.Update(); } } } catch (ValidationException ex) { lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); } catch (ArgumentException ex) { lblMessage.Text = UtilBO.GetErroMessage(ex.Message, UtilBO.TipoMensagem.Alerta); } catch (Exception ex) { lblMessage.Text = UtilBO.GetErroMessage("Erro ao realizar a análise dos registros do arquivo.", UtilBO.TipoMensagem.Erro); ApplicationWEB._GravaErro(ex); } finally { updMessage.Update(); } }