/// <summary> /// Esta accion sirve para eliminar el Usuario seleccionado /// </summary> private void Btn4_Click(object sender, RoutedEventArgs e) { //Se capturan en variables, los datos en los campos de texto y datepicker de la interfaz string nombreUsuario = string.Empty; nombreUsuario = Nombre_Usuario.Text; string añoCredencial = string.Empty; añoCredencial = Año_Credencial.Text; Regex revision = new Regex(@"\d{4}"); //Comparamos si encaja la expresion if (revision.IsMatch(Año_Credencial.Text)) { añoCredencial = Año_Credencial.Text; } else { MessageBox.Show("Error, este campo es para anotar años solamente"); return; } int folioSecuencia = new int(); if (int.TryParse(Folio_Secuencia.Text, out int resultado)) { folioSecuencia = resultado; } else { MessageBox.Show("Favor de poner solo numeros en el folio de la secuencia"); return; } string folioCredencial = string.Empty; folioCredencial = string.Format("{0}-{1}", añoCredencial, folioSecuencia); // DateTime fechaRegistro = new DateTime(); if (DateTime.TryParseExact(Fecha_Registro.Text, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime resultFecha)) { fechaRegistro = resultFecha; } else { MessageBox.Show("Error, el formato de la fecha de publicacion es incorrecto.\nEl formato para la fecha es la siguiente 'dd/MM/yyyy'"); return; } //De esas variables, se genera un modelo del Usuario UsuariosLibreria usuarioCapturado = new UsuariosLibreria(); usuarioCapturado.Nombre_Usuario = nombreUsuario; usuarioCapturado.Fecha_Registro = fechaRegistro; usuarioCapturado.Folio_Credencial = folioCredencial; //Del modelo, se usa el metodo para borrar el usuario de la base de datos BorrarUsuarios(usuarioCapturado); //Al final, se reinicia la interfaz iniciarPresentacion(); }
/// <summary> /// Este metodo sirve para eliminar un usuario seleccionado de la base de datos, con un modelo de Usuario /// generado de los datos de la interfaz /// </summary> private void BorrarUsuarios(UsuariosLibreria usuarioCapturado) { try { //Se usa una nueva conexion de la base de datos using (SqlConnection conexiones = CrearConexion()) { //Abrimos conexiones.Open(); //Usamos una transaccion para aplicar cambios en la base de datos using (var trans = conexiones.BeginTransaction()) { try { //Creamos un comando con la conexion using (var cmd = conexiones.CreateCommand()) { //Colocamos la transaccion dentro del comando cmd.Transaction = trans; //Creamos la consulta string revisionUsuarios = string.Format("SELECT COUNT(*) FROM UsuariosLibreria Where Folio_Credencial = '{0}'", usuarioCapturado.Folio_Credencial); //La consulta se pone el comando cmd.CommandText = revisionUsuarios; //Se ejecuta la consulta Int32 conteo = Convert.ToInt32(cmd.ExecuteScalar()); //Se revisa la consulta if (conteo != 0) { //Si existe este usuario, se hace la siguiente consulta para eliminar el usuario de la base de datos y se ejecuta string queryBorrar = string.Format("DELETE FROM UsuariosLibreria Where Folio_Credencial = '{0}'", usuarioCapturado.Folio_Credencial); cmd.CommandText = queryBorrar; cmd.ExecuteNonQuery(); //Al final enviamos este mensaje al mensaje MessageBox.Show("Se ha borrado el Usuarios de la base de datos"); } } //Se comete los cambios dentro de la base de datos trans.Commit(); } catch (Exception ex) { trans.Rollback(); } } } } catch (Exception ex) { } }
/// <summary> /// Este metodo sirve para dos operaciones, registrar un nuevo usuario y actualizar un usuario existente /// usando un modelo de Usuario generado con los datos de la interfaz /// </summary> private void RegistrarUsuarios(UsuariosLibreria usuariosCapturado) { try { //Usamos una nueva conexion a la base de datos using (SqlConnection conexiones = CrearConexion()) { //Abrimos la conexion conexiones.Open(); //Creamos una nueva transaccion que usara al finalizar la operacion using (var trans = conexiones.BeginTransaction()) { try { //Se crea un comando con la conexion using (var cmd = conexiones.CreateCommand()) { //Insertamos la transaccion en el comando cmd.Transaction = trans; //Creamos la consulta string revisionUsuarios = string.Format("SELECT COUNT(*) FROM UsuariosLibreria Where Folio_Credencial = '{0}'", usuariosCapturado.Folio_Credencial); //Ponemos la consulta en el comando cmd.CommandText = revisionUsuarios; //Ejecutamos Int32 conteo = Convert.ToInt32(cmd.ExecuteScalar()); //Revisamos si existe el usuario if (conteo != 0) { //Si existe el usuario, hacemos la consulta para actualizar y ejecutarla string queryActualizar = string.Format("UPDATE UsuariosLibreria SET Nombre_Usuario = '{0}', Fecha_Registro = '{1}' " + "WHERE Folio_Credencial = '{2}'", usuariosCapturado.Nombre_Usuario, usuariosCapturado.Fecha_Registro.ToString("yyyy-MM-dd"), usuariosCapturado.Folio_Credencial); cmd.CommandText = queryActualizar; cmd.ExecuteNonQuery(); //Enviamos este mensaje al usuario MessageBox.Show("Se ha actualizado los datos del Usuario existente"); } else { //Si no existe el usuario, hacemos la consulta para insertar el nuevo usuario y ejecutarla string queryRegistrar = string.Format("INSERT INTO UsuariosLibreria (Nombre_Usuario, Fecha_Registro, Folio_Credencial) " + "VALUES ('{0}', '{1}', '{2}')", usuariosCapturado.Nombre_Usuario, usuariosCapturado.Fecha_Registro.ToString("yyyy-MM-dd"), usuariosCapturado.Folio_Credencial); cmd.CommandText = queryRegistrar; cmd.ExecuteNonQuery(); //Enviamos este mensaje al usuario MessageBox.Show("Se ha generado un nuevo Usuario"); } } //Cometemos los cambios en la base de datos trans.Commit(); } catch (Exception ex) { trans.Rollback(); } } } } catch (Exception ex) { } }