private void btnEliminar_Click(object sender, EventArgs e) { try { //Variable de tipo DialogResult entiendo que sire para capturar datos de preguntas al usuario DialogResult Opcion; //Tipo de mensaje que va a mostrar al usuario los botones SI o No Opcion = MessageBox.Show("Realmente Desea Eliminar los Registros", "Sistema de Ventas", MessageBoxButtons.OKCancel, MessageBoxIcon.Question); if (Opcion == DialogResult.OK) //Si es que SI, que ok { string Codigo; string Rpta = ""; //->Bucle para recorrerse todo el GRID y mira que esta marcado para borrarlo.....este sistema no vale para muchos registros // si cada vez que va a borrar se tiene que recorrer todo el GRID menuda mierder foreach (DataGridViewRow row in dataListado.Rows) { if (Convert.ToBoolean(row.Cells[0].Value)) //Pregunta por el valor de la columna cero del GRID { Codigo = Convert.ToString(row.Cells[1].Value); //Trinca el valor de la columna 1 es decir el IdFamilia //Envia el codigo al metodo ELIMINAR de la CapaNegocio de de Familias, OjO conviertiendo a Int que es como //es el tipo de campo en la tabla Familias Rpta = NImpuestos.Eliminar(Convert.ToInt32(Codigo)); //Utiliza EQUALS para comparar cadenas de texto en vez de hacerlo a machete : if Rpta == "OK" if (Rpta.Equals("OK")) { this.MensajeOk("Se Eliminó Correctamente el registro"); } else { this.MensajeError(Rpta); } } } //-->Volver a pintar el GRID con los cambios y dejar el Check de eliminación deshabilitado chkEliminar.Checked = false; this.Mostrar(); } } catch (Exception ex) { MessageBox.Show(ex.Message + ex.StackTrace); } }
private void Mostrar() { //ESCALADO : Para pintar la información en el Grid (dataListado.DataSource) // //Vamos a llamar a la clase NImpuestos a su metodo Mostrar (CAPA NEGOCIO) // //El metodo mostar lo que hace es llamar al metodo Mostrar de la clase DImpuestos() (CAPA DATOS) // //ESCALADO : //CAPA PRESENTACION llama a CAPA NEGOCIO que llama a CAPA DATOS que conecta con BB.DD this.dataListado.DataSource = NImpuestos.Mostrar(); this.OcultarColumnas(); //-->Pintamos el total de registros : OjO el count es int tenemos que convertirlo a String lblTotal.Text = "Total de Registros: " + Convert.ToString(dataListado.Rows.Count); }
private void btnGuardar_Click(object sender, EventArgs e) { //-->VALIDACION DE CAMPOS. NOTA en el curso de C# ví que esto se puede hacer en las propiedades GET/SET //---------------------------------------------------------------------------------------------------- string rpta = ""; try //Control de errores bien.... { ////-- VALIDACION DE CAMPOS NOTA : en el curso de C# ví que esto se puede hacer en las propiedades GET/SET ////---------------------------------------------------------------------------------------------------- if (this.txtcDetIva.Text == string.Empty) //Si está vacía y como es un campo obligatorio, pues hay que meterlo { //-->Este metodo lo tengo en este mismo módulo MensajeError("Faltan por indicar datos, serán remarcados"); //--Vamos a indicar el mensaje a mostrar cuando salga el error. errorIcono.SetError(txtcDetIva, "Indique un Nombre"); } else //El textBox llega con valor, { if (this.IsNuevo) //Es un alta ?? { //VAMOS A UTILIZAR PUNTO DECIMAL //-->Vamos a llamar al Metodo Insertar de la CapaNegocio enviandole los valores para insertar en la bb.dd rpta = NImpuestos.Insertar(this.txtcDetIva.Text.Trim().ToUpper(), Convert.ToDecimal(this.txtnPorcIva.Text), Convert.ToDecimal(this.txtnPorReq.Text)); } else //Es una modificacion PARECE QUE ESTA MODIFICANDO TODOS !!! { //-->Vamos a llamar al Metodo Editar de la CapaNegocio enviandole los valores //rpta = NFamilias.Editar(Convert.ToInt32(this.txtIdFamilias.Text), this.txtNombre.Text.Trim().ToUpper()); //rpta = NImpuestos.Editar(this.txtcDetIva.Text.Trim().ToUpper(), Convert.ToDecimal(this.txtnPorcIva.Text), Convert.ToDecimal(this.txtnPorReq.Text)); } //--> Ahora vamos a ver si la operación tuvo éxito o no, el "OK" que estamos poniendo aquí es el que está // indicado en la CAPADATOS en los metodos // Insertar y Editar de esta forma: rpta = SqlCmd.ExecuteNonQuery() == 1 ? "OK" : "NO se Ingreso el Registro"; //Por eso pongo OK sino pondría lo que tuviera puesto... if (rpta.Equals("OK")) //Comparando cadenas con : Equals() { if (this.IsNuevo) { this.MensajeOk("Se Insertó de forma correcta el registro"); } else { this.MensajeOk("Se Actualizó de forma correcta el registro"); } } else //Si no han tenido éxito la inserción o modificacion ERROR { //-->Vamos a enviar al error el valor de rpta que va a ser lo que tengo puesto en la CAPADATOS this.MensajeError(rpta); } //-->Borra la pelotilla del error si estuviera errorIcono.Clear(); //->Una vez insertado el registro dejamos las variables como estaban. this.IsNuevo = false; this.IsEditar = false; this.Botones(); this.Limpiar(); this.Mostrar(); } } catch (Exception ex) { MessageBox.Show(ex.Message + ex.StackTrace); } }