private void btnGenerar_Click(object sender, EventArgs e) { if (clbEmpleados.CheckedItems.Count > 0) { eprEmpleados.Clear(); if (ControlValidation.validarFechas(DateTime.Parse(dtpFechaInicio.Text), DateTime.Parse(dtpFechaFin.Text))) { eprFecInic.Clear(); SaveFileDialog m_Archivo = new SaveFileDialog(); m_Archivo.Filter = "XLS|*.xls"; m_Archivo.Title = string.Format(" {0} - {1} ", "Inari", "Reporte"); try { if (m_Archivo.ShowDialog() == DialogResult.OK) { m_RutaArchivo = m_Archivo.FileName; btnGenerar.Enabled = false; BackgroundWorker Procesar = new BackgroundWorker(); Procesar.DoWork += ProcesarReporte; Procesar.RunWorkerCompleted += ProcesarTerminado; Procesar.RunWorkerAsync(); } } catch { } } else { eprFecInic.SetError(dtpFechaInicio, "La fecha de inicio debe ser menor o igual que la fecha fin"); } } else { eprEmpleados.SetError(lblEmployee, "Seleccione por lo menos a un empleado"); } }