private void cmbPeriodo_SelectedIndexChanged(object sender, EventArgs e) { cnx = new SqlConnection(cdn); cmd = new SqlCommand(); cmd.Connection = cnx; CalculoNomina.Core.NominaHelper nh = new CalculoNomina.Core.NominaHelper(); nh.Command = cmd; Periodos.Core.PeriodosHelper ph = new Periodos.Core.PeriodosHelper(); ph.Command = cmd; Periodos.Core.Periodos p = new Periodos.Core.Periodos(); if (!FLAG_COMBOBOX) { Periodos.Core.Periodos a = (Periodos.Core.Periodos)cmbPeriodo.SelectedValue; p.idperiodo = a.idperiodo; } else p.idperiodo = int.Parse(cmbPeriodo.SelectedValue.ToString()); List<CalculoNomina.Core.tmpPagoNomina> lstPeriodos = new List<CalculoNomina.Core.tmpPagoNomina>(); lstvPeriodos.Items.Clear(); try { cnx.Open(); periodo = int.Parse(ph.DiasDePago(p).ToString()); cnx.Close(); } catch (Exception error) { MessageBox.Show("Error: \r\n \r\n" + error.Message, "Error"); } switch (cmbTipoNomina.Text) { case "Normal": try { cnx.Open(); lstPeriodos = nh.obtenerPeriodosNomina(GLOBALES.IDEMPRESA, GLOBALES.NORMAL, periodo); cnx.Close(); cnx.Dispose(); } catch (Exception) { MessageBox.Show("Error: Al obtener los periodos de la empresa.", "Error"); cnx.Dispose(); return; } break; case "Extraordinaria normal": try { cnx.Open(); lstPeriodos = nh.obtenerPeriodosNomina(GLOBALES.IDEMPRESA, GLOBALES.EXTRAORDINARIO_NORMAL, periodo); cnx.Close(); cnx.Dispose(); } catch (Exception) { MessageBox.Show("Error: Al obtener los periodos de la empresa.", "Error"); cnx.Dispose(); return; } break; } for (int i = 0; i < lstPeriodos.Count; i++) { ListViewItem Lista; Lista = lstvPeriodos.Items.Add(lstPeriodos[i].fechainicio.ToShortDateString()); Lista.SubItems.Add(lstPeriodos[i].fechafin.ToShortDateString()); } }