private void btnGrabar_Click(object sender, EventArgs e) { var pagos = _pagos.Where(p => p.Válido).ToList(); string s = String.Format("Hay {0} pagos válidos de un total de {1}.\n¿Está seguro " + "que desea grabar esta rendición?", pagos.Count(), _pagos.Count()); if (MessageBox.Show(s, "Grabar rendición", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { try { RendicionBSERepository.GrabarRendición(Archivo, pagos); MessageBox.Show("Los datos se grabaron correctamente.", "Grabar rendición", MessageBoxButtons.OK, MessageBoxIcon.Information); _pagos = _pagos.Where(p => !p.Válido); txtArchivo.Text = ""; dgvDatos.DataSource = null; toolStripStatusLabel1.Text = ""; btnGrabar.Enabled = false; } catch (Exception ex) { ShowError("Error al intentar grabar los pagos: \n", ex); } } }
private void btnProcesar_Click(object sender, EventArgs e) { if (!File.Exists(Archivo)) { MessageBox.Show("El archivo no existe.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (CabecerasArchivosRepository.ExisteArchivo(TipoArchivo.RendiciónBSE, Archivo)) { if (MessageBox.Show("El archivo ya ha sido cargado.\n¿Desea cargarlo nuevamente?", "Precaución", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) { return; } } var rendición = RendicionBSERepository.CargarRendición(Archivo); _pagos = from p in PagosBSERepository.ObtenerPagosRelacionados(rendición) orderby p.Id select p; foreach (var p in _pagos) { p.Válido = p.ImportePagado == p.ImporteAPagar && p.DetallePago != null; } //cómo es el código de barras de un pago de varias cuotas? var query = from p in _pagos select new { p.Válido, p.Id, p.Comprobante, p.Documento, p.Alumno, p.Carrera, p.Curso, p.FechaVto, p.FechaPago, p.ImporteAPagar, p.ImportePagado, p.CodigoBarra }; dgvDatos.SetDataSource(query); toolStripStatusLabel1.Text = String.Format("Se han leído {0} filas", query.Count()); btnGrabar.Enabled = query.Any(t => t.Válido); }