/*================================================================================ * GET GRUPOS *================================================================================*/ public static ObservableCollection <GrupoGraficos> getGrupos(OleDbConnection conexion = null) { // Creamos la lista. ObservableCollection <GrupoGraficos> lista = new ObservableCollection <GrupoGraficos>(); if (conexion == null) { conexion = new OleDbConnection(App.Global.CadenaConexion); } using (conexion) { string comandoSQL = "SELECT * FROM GruposGraficos ORDER BY Validez DESC"; OleDbCommand Comando = new OleDbCommand(comandoSQL, conexion); OleDbDataReader lector = null; try { conexion.Open(); lector = Comando.ExecuteReader(); while (lector.Read()) { GrupoGraficos grupo = new GrupoGraficos(lector); lista.Add(grupo); grupo.Nuevo = false; grupo.Modificado = false; } } catch (Exception ex) { Utils.VerError("BdGruposGraficos.getGrupos", ex); } finally { lector.Close(); } } return(lista); }
/*================================================================================ * GET ÚLTIMO GRUPO *================================================================================*/ public static GrupoGraficos GetUltimoGrupo(OleDbConnection conexion = null) { GrupoGraficos grupo = null; if (conexion == null) { conexion = new OleDbConnection(App.Global.CadenaConexion); } using (conexion) { string comandoSQL = "SELECT * FROM GruposGraficos WHERE Validez=(SELECT Max(Validez) FROM GruposGraficos);"; OleDbCommand Comando = new OleDbCommand(comandoSQL, conexion); try { // Ejecutamos el comando y extraemos los gráficos del lector a la lista. conexion.Open(); OleDbDataReader lector = Comando.ExecuteReader(); if (lector.Read()) { grupo = new GrupoGraficos(lector); } lector.Close(); } catch (Exception ex) { Utils.VerError("BdGruposGraficos.GetUltimoGrupo", ex); } } return(grupo); }
/*================================================================================ * GUARDAR GRUPOS *================================================================================*/ public static void GuardarGrupos(IEnumerable <GrupoGraficos> lista) { // Si la lista está vacía, salimos. if (lista == null || lista.Count() == 0) { return; } string SQLInsertar = "INSERT INTO GruposGraficos (Validez, Notas) VALUES (?, ?)"; string SQLActualizar = "UPDATE GruposGraficos SET Validez=?, Notas=? WHERE Id=?"; using (OleDbConnection conexion = new OleDbConnection(App.Global.CadenaConexion)) { try { conexion.Open(); foreach (GrupoGraficos grupo in lista) { if (grupo.Nuevo) { OleDbCommand comando = new OleDbCommand(SQLInsertar, conexion); GrupoGraficos.ParseToCommand(comando, grupo); comando.ExecuteNonQuery(); grupo.Nuevo = false; grupo.Modificado = false; } else if (grupo.Modificado) { OleDbCommand comando = new OleDbCommand(SQLActualizar, conexion); GrupoGraficos.ParseToCommand(comando, grupo); comando.ExecuteNonQuery(); grupo.Modificado = false; } } } catch (Exception ex) { Utils.VerError("BdGruposGraficos.GuardarGrupos", ex); } } }