Ejemplo n.º 1
0
 //-->Método BuscarNombre
 //-----------------------------------------------------------------------------------------------
 private void BuscarNombre()
 {
     //Hace lo mismo que el procedimiento Mostrar pero la diferencia es que aquí si le estamos enviado
     //un valor :   BuscarNombre(this.txtBuscar.Text)     obviamente el nombre que queremos buscar.
     this.dataListado.DataSource = NFamilias.BuscarNombre(this.txtBuscar.Text);
     this.OcultarColumnas();
     lblTotal.Text = "Total de Registros: " + Convert.ToString(dataListado.Rows.Count);
 }
Ejemplo n.º 2
0
        //--> BORRADO de registros
        //
        //     MUCHO OJO AL HACER COPY-PASTE DEL OTRO PROGRAMA,  SI NO SE EJECUTA EL EVENTO A LA HORA DE ESTARLO PROGRAMANDO
        //     NO LO REGISTRA EN EL FICHERO  FrmFamilias.Designer.cs  Y POR LO TANTO AUNQUE LO TENGA COPIADO NO VA A FUNCIONAR
        //     SALVO QUE A MANOPLA MODIFIQUE EL CODIGO   para ese ejemplo lo he dejado con  el  1     btnEliminar_Click_1
        //
        // ES DECIR HAY QUE HACER EL DBL-CLICK EN EL CONTROL PARA QUE QUEDE EN EL CODIGO REGISTRADO

        private void btnEliminar_Click_1(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 = NFamilias.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);
                            }
                        }
                    }
                    //-->Para volver a pintar el GRID con los cambios
                    this.Mostrar();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + ex.StackTrace);
            }
        }
Ejemplo n.º 3
0
        //-->Método Mostrar
        //-------------------------------------------------------------------------------------------
        private void Mostrar()
        {
            //ESCALADO : Para pintar la información en el Grid (dataListado.DataSource)
            //
            //Vamos a llamar  a la clase  NFamilias a su metodo Mostrar  (CAPA NEGOCIO)
            //
            //El metodo mostar lo que hace es  llamar al metodo Mostrar de la clase   DFamilias()     (CAPA DATOS)
            //
            //EL Metodo Mostrar de la capa datos  lo que hace es llamar al procedimiento almacenado que creamos
            // el  "spMostrar_familila";  que es el que finalmente  captura la información en la base de datos

            //ESCALADO :
            //CAPA PRESENTACION  llama a   CAPA NEGOCIO   que llama   a CAPA DATOS    que conecta con  BB.DD
            this.dataListado.DataSource = NFamilias.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);
        }
Ejemplo n.º 4
0
        //-----------------------------------------------------------------------------------------------------------------
        //     Este evento es el que vamos a utilizar para llevar la info del Grid al formulario de detalle
        //
        // OJO  RECORDAR  :  Este es el evento del doble click del Grid  que se crea desde la ventana de propiedades
        //                   del objeto, del Grid
        private void dataListado_DoubleClick(object sender, EventArgs e)
        {
            //-->Hacer el Convert  los valores que llegan del Grid llegan como Object
            //   el   CurrentRow.Cells  captura lo que tiene la celda actual


            //->Le he indicado todos los campos para que me lleve todos los valores a la solapa del detalle

            this.txtidCodArti.Text  = Convert.ToString(this.dataListado.CurrentRow.Cells["idCodArti"].Value);
            this.txtcDetalle.Text   = Convert.ToString(this.dataListado.CurrentRow.Cells["cDetalle"].Value);
            this.txtIdCodFam.Text   = Convert.ToString(this.dataListado.CurrentRow.Cells["idCodFam"].Value);
            this.txtnPvP.Text       = Convert.ToString(this.dataListado.CurrentRow.Cells["nPvP"].Value);
            this.txtnStock.Text     = Convert.ToString(this.dataListado.CurrentRow.Cells["nStock"].Value);
            this.txtidTipoIva.Text  = Convert.ToString(this.dataListado.CurrentRow.Cells["idTipoIva"].Value);
            this.txtcCodigoBar.Text = Convert.ToString(this.dataListado.CurrentRow.Cells["cCodigoBar"].Value);


            //->Recuperacion de imagenes en VIDEO 15  minuto 04:00 aprox)


            //-------->  TRATAMIENTO INFORMACION LUPA   <-------------------------------------------------------------------------------------------

            //Esto es para capturar el valor de lupa
            this.txtIdCodFam.Text = Convert.ToString(this.dataListado.CurrentRow.Cells["idCodFam"].Value);


            //CAGATOR  :  el profe no busca los valores de otras tablas cuando son lupas, con el diseño que tiene se apaña ya que utiliza
            //            los nombres y no los codigos.
            //RESOLUCION :   Escalo la información llamo a la capa negocios esta llama a la capa datos para mirar en la BB.DD(tabla)
            this.dataListado.DataSource = NFamilias.Mostrar();
            this.txtNombreFamilia.Text  = Convert.ToString(this.dataListado.CurrentRow.Cells["cNombreFamilia"].Value);

            //Vuelvo a colocar el foco en  los Artículos que sino se queda apuntando a las Familias
            this.dataListado.DataSource = NArticulo.Mostrar();

            //-> Para que pinte la  Solapa/folder/TabPage  1   que imagino es la del detalle, la del grid debe ser la 0
            this.tabControl1.SelectedIndex = 1;
            //----------------------------------------------------------------------------------------------------------------------------------
        }
Ejemplo n.º 5
0
        private void btnGuardar_Click(object sender, EventArgs e)
        {
            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
                //----------------------------------------------------------------------------------------------------
                string rpta = "";
                if (this.txtNombre.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(txtNombre, "Indique un Nombre");
                }
                else  //El textBox llega con valor,
                {
                    if (this.IsNuevo)  //Es un alta ??
                    {
                        //-->Vamos a llamar al Metodo Insertar de la CapaNegocio enviandole los valores para insertar en la bb.dd
                        rpta = NFamilias.Insertar(this.txtNombre.Text.Trim().ToUpper()); //Trim() quitar espacios - ToUpper  todo en mayúsculas
                    }
                    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());
                    }

                    //-->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);
            }
        }