private void RemplazoDeAeronaveDesdeHasta(string aeronum, string fecha1, string fecha2)
 {
     DialogResult dialogResult = MessageBox.Show("Esta aeronave tiene viajes pendientes de realizar ¿quiere buscar un remplazo de la aeronave?", "Confirmación", MessageBoxButtons.YesNo);
     if (dialogResult == DialogResult.Yes)
     {
         db = new DbComunicator();
         db.EjecutarQuery("SELECT TS.fnAeronavesParaRemplazarA(" + aeronum + ") as Cantidad");
         db.getLector().Read();
         if (Convert.ToInt16(db.getLector()["Cantidad"].ToString()) > 0) RemplazarEnViajesDesdeHasta(aeronum, fecha1, fecha2);
         else
         {
             MessageBox.Show("No existe aeronave que pueda remplazar la aeronave actual");
             AgregarAeronaveRemplazo form = new AgregarAeronaveRemplazo(DGV_aeronave.SelectedRows[0]);
             form.ShowDialog();
             this.RemplazoDeAeronaveDesdeHasta(aeronum, fecha1, fecha2);
         }
     }
     if (dialogResult == DialogResult.No){
         DialogResult dialogResult2 = MessageBox.Show("¿Desea cancelar los vuelos pendientes?", "Confirmación", MessageBoxButtons.YesNo);
         if (dialogResult2 == DialogResult.Yes){
             DbComunicator db5 = new DbComunicator();
             SqlCommand spCancelacionViajes = db5.GetStoreProcedure("TS.spCancelacionViajesDesdeHasta");
             spCancelacionViajes.Parameters.Add(new SqlParameter("@Aero", aeronum));
             spCancelacionViajes.Parameters.Add(new SqlParameter("@Desde", Convert.ToDateTime(fecha1)));
             spCancelacionViajes.Parameters.Add(new SqlParameter("@Hasta", Convert.ToDateTime(fecha2)));
             spCancelacionViajes.Parameters.Add(new SqlParameter("@HOY", Convert.ToDateTime(AerolineaFrba.Properties.Settings.Default.FechaSistema)));
             spCancelacionViajes.ExecuteNonQuery();
             MessageBox.Show("Ya se cancelaron los viajes pendientes de la aeronave: " + aeronum);
         }
     }
 }
 private void RemplazarEnViajeDesdeHasta(string aeronum, string fecha1, string fecha2, string viaje)
 {
     DbComunicator db2 = new DbComunicator();
     db2.EjecutarQuery("SELECT TS.fnAeronavesParaRemplazarAEn(" + aeronum + "," + viaje + ") as Cantidad");
     db2.getLector().Read();
     if (Convert.ToInt16(db2.getLector()["Cantidad"].ToString()) > 0)
     {
         DbComunicator db3 = new DbComunicator();
         db3.EjecutarQuery("SELECT TOP 1 A2.Aero_Num as AeroFutura FROM TS.Aeronave AS A, TS.Aeronave AS A2 WHERE A.Aero_Num=" + aeronum.ToString() + " AND A.Aero_Num!=A2.Aero_Num AND A2.Aero_Fabricante=A.Aero_Fabricante AND A.Aero_Servicio=A2.Aero_Servicio AND A2.Aero_Baja_Fuera_De_Servicio=0 and A2.Aero_Baja_Vida_Util=0 AND A2.Aero_Borrado=0");
         db3.getLector().Read();
         string aerofutura = db3.getLector()["AeroFutura"].ToString();
         DbComunicator db4 = new DbComunicator();
         SqlCommand spRemplazarAeroEn = db4.GetStoreProcedure("TS.spRemplazarAeroEnDesdeHasta");
         spRemplazarAeroEn.Parameters.Add(new SqlParameter("@Aero", aeronum));
         spRemplazarAeroEn.Parameters.Add(new SqlParameter("@Desde", Convert.ToDateTime(fecha1)));
         spRemplazarAeroEn.Parameters.Add(new SqlParameter("@Hasta", Convert.ToDateTime(fecha2)));
         spRemplazarAeroEn.Parameters.Add(new SqlParameter("@AeroFutura", aerofutura));
         spRemplazarAeroEn.ExecuteNonQuery();
         MessageBox.Show("Ya se remplazo la aeronave " + aeronum + " por la aeronave " + aerofutura + " en el viaje " + viaje);
     }
     else
     {
         MessageBox.Show("No existe aeronave que pueda remplazar la aeronave actual en el viaje: " + viaje);
         AgregarAeronaveRemplazo form = new AgregarAeronaveRemplazo(DGV_aeronave.SelectedRows[0]);
         form.ShowDialog();
         this.RemplazarEnViajeDesdeHasta(aeronum, fecha1, fecha2, viaje);
     }
 }