private void btnGuardar_Click(object sender, EventArgs e) { try { if (Val_NewObject()) { if (DesersionDAL.insertDesersion(NewObject, Inicio.CurrentUser)) { MessageBox.Show("La desersión ha sido registrada exitosamente.", "Registro satisfactorio", MessageBoxButtons.OK, MessageBoxIcon.Information); EditingObject = null; this.Close(); } else { MessageBox.Show("Ocurrio un error inesperado al intentar registrar la desersión, por favor cierre el formulario y vuelva a intentarlo. Si el problema persiste contacte con el desarrollador al correo [email protected].", "Registro interrumpido", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } catch (Exception ex) { string folderName = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "\\Errores_" + Assembly.GetExecutingAssembly().GetName().Name + "_V_" + Assembly.GetExecutingAssembly().GetName().Version.ToString(); string fileName = "Exeptions_" + Name + ".txt"; Validation.FormManager frmManager = new Validation.FormManager(); frmManager.writeException(folderName, fileName, ex, "Ocurrio un error inesperado al intentar registrar la desersión"); MessageBox.Show("Ocurrio un error inesperado al intentar registrar la desersión, por favor cierre el formulario y vuelva a intentarlo. Si el problema persiste contacte con el desarrollador al correo " + Properties.Settings.Default.developerEmail, "Registro interrumpido", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public static Desersion getDesersionById(Int64 pId) { Desersion item = null; using (MySqlConnection _con = new Conexion().Conectar()) { try { _con.Open(); MySqlCommand cmdGetItemById = new MySqlCommand("select * from desersion where Id=@pId", _con); cmdGetItemById.Parameters.AddWithValue("@pId", pId); MySqlDataReader _reader = cmdGetItemById.ExecuteReader(); while (_reader.Read()) { item = new Desersion( _reader.GetInt64(0), _reader.GetString(1), _reader.GetString(2), _reader.GetInt64(3) ); } _reader.Close(); } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(item); }
public static bool insertDesersion(Desersion item, Useremp pUser) { bool result = true; using (MySqlConnection _con = new Conexion().Conectar()) { _con.Open(); MySqlTransaction _trans = _con.BeginTransaction(); try { MySqlCommand cmdInsertDesersion = new MySqlCommand("Insert into desersion (FhRegistro, Nota, IdMatricula) values (@FhRegistro, @Nota, @IdMatricula)", _con, _trans); cmdInsertDesersion.Parameters.AddWithValue("@FhRegistro", item.FhRegistro); cmdInsertDesersion.Parameters.AddWithValue("@Nota", item.Nota); cmdInsertDesersion.Parameters.AddWithValue("@IdMatricula", item.IdMatricula); if (cmdInsertDesersion.ExecuteNonQuery() <= 0) { result = false; } else { MySqlCommand cmdUltimoId = new MySqlCommand("select last_insert_id() as id;", _con); cmdUltimoId.Transaction = _trans; item.Id = Convert.ToInt32(cmdUltimoId.ExecuteScalar()); } MySqlCommand cmdUpdateMatricula = new MySqlCommand("Update matricula set Estado='D' where Id=@Id", _con, _trans); cmdUpdateMatricula.Parameters.AddWithValue("@Id", item.IdMatricula); if (cmdUpdateMatricula.ExecuteNonQuery() <= 0) { result = false; } if (result) { _trans.Commit(); } else { _trans.Rollback(); } } catch (Exception ex) { _con.Close(); throw ex; } finally { _con.Close(); } } return(result); }
private bool Val_NewObject() { bool result = true; NewObject = new Desersion(); if (!Validation.Validation.Val_StringsLength(txtNota.Text, 1)) { errNota.SetError(txtNota, "La descripcion de la dersesion esta vacia, este valor es obligatorio."); valNota.BackColor = Color.Red; result = false; } else { if (!Validation.Validation.Val_StringsLength(txtNota.Text, 20)) { errNota.SetError(txtNota, "La descripcion de la dersesion debe tener al menos 20 caracteres, este valor es obligatorio."); valNota.BackColor = Color.Red; result = false; } else { valNota.BackColor = Color.FromArgb(0, 100, 182); errNota.Clear(); NewObject.Nota = txtNota.Text; } } Curso curso = CursoDAL.getCursoById(CurrentMatricula.IdCurso); if (dtpFhRegistro.Value < Convert.ToDateTime(curso.FhRegistro)) { errFhRegistro.SetError(dtpFhRegistro, "La fecha de la dersesion especificada debe ser mayor a la fecha de inicio del curso, este valor es obligatorio."); valFhRegistro.BackColor = Color.Red; result = false; } else { valFhRegistro.BackColor = Color.FromArgb(0, 100, 182); errFhRegistro.Clear(); NewObject.Nota = txtNota.Text; } NewObject.IdMatricula = CurrentMatricula.Id; return(result); }