示例#1
0
        /// <summary>
        /// Verifica que el codiog sap sea un nombre pero si esta vacio lo deja pasar. En caso de que lo deje pasar entonces regresa (0, true) si esta
        /// vacio. Si no esta vacio regresa (numero, true). Si no lo deja pasar, es decir, no es un numero, regresa (0, false)
        /// </summary>
        /// <param name="check">El string que se trata de convertir a integer</param>
        /// <param name="mensaje">El mensaje a mostrar</param>
        /// <returns></returns>
        public keyBoolean mensajeAdvSap(string check, string mensaje)
        {
            keyBoolean vals = new keyBoolean();

            vals.key     = 0;
            vals.boolean = false;
            int value;

            if (string.IsNullOrWhiteSpace(check))
            {
                vals.boolean = true;
            }
            else
            {
                if (int.TryParse(check, out value))
                {
                    vals.key     = value;
                    vals.boolean = true;
                }
                else
                {
                    MessageBox.Show("Ingresar un valor valido para " + mensaje);
                }
            }

            return(vals);
        }
示例#2
0
        //Funcion para el guardado de materiales
        private void nuevoMaterial()
        {
            //Funciones de ayuda
            helperFunctions help = new helperFunctions();

            //Extrae la informacion del combobox. El value y el text.
            keyValue dtMarca   = help.validarCombos(cmb_Marca);
            keyValue dtFamilia = help.validarCombos(cmb_Familia);

            //Definicion de las variables del formulario
            string catalogo     = this.txt_Catalogo.Text;
            string codigosap    = this.txt_SAP.Text;
            string marca        = dtMarca.Text;
            string familia      = dtFamilia.Text;
            string descripcion  = this.txt_Descripcion.Text;
            string comentarios  = this.txt_Comentarios.Text;
            string specenercom  = this.txt_specEnercom.Text;
            string speccatalogo = this.txt_specCatalogo.Text;
            string specul       = this.txt_specUl.Text;
            string spectexto    = this.txt_specUl.Text;
            string specvarias   = this.txt_specVarias.Text;
            int    idMarca      = dtMarca.Value;
            int    idFamilia    = dtMarca.Value;

            //Validacion de variables
            bool null_catalogo     = string.IsNullOrWhiteSpace(catalogo);
            bool null_codigosap    = string.IsNullOrWhiteSpace(codigosap);
            bool null_marca        = string.IsNullOrWhiteSpace(marca);
            bool null_familia      = string.IsNullOrWhiteSpace(familia);
            bool null_descripcion  = string.IsNullOrWhiteSpace(descripcion);
            bool null_comentarios  = string.IsNullOrWhiteSpace(comentarios);
            bool null_specenercom  = string.IsNullOrWhiteSpace(specenercom);
            bool null_speccatalogo = string.IsNullOrWhiteSpace(speccatalogo);
            bool null_specul       = string.IsNullOrWhiteSpace(specul);
            bool null_spectexto    = string.IsNullOrWhiteSpace(spectexto);
            bool null_specvarias   = string.IsNullOrWhiteSpace(specvarias);

            //Revision de valores vacios y mensaje de advertencia para el usuario
            if (help.mensajeAdvEmpty(null_marca, "la marca."))
            {
                return;
            }
            if (help.mensajeAdvEmpty(null_familia, "la familia."))
            {
                return;
            }
            if (help.mensajeAdvEmpty(null_descripcion, "la descripcion."))
            {
                return;
            }

            //Revision de valores que solo pueden ser de tipo int como el codigo SAP
            keyBoolean resultado = help.mensajeAdvSap(codigosap, "el codigo SAP. Solo se pueden ingresar numeros enteros.");

            if (!resultado.boolean)
            {
                return;
            }

            //Guardado de codigo SAP a integer
            int intCodigosap = resultado.key;

            //Guardado de los items que son strings en listas para pasarlos al SQL
            List <string> strCampos = new List <string>()
            {
                catalogo, descripcion, comentarios, specenercom, speccatalogo,
                specul, spectexto, specvarias, familia, marca
            };

            //Guardado de los items que son ints en listas para pasarlos al SQL
            List <int> intCampos = new List <int>()
            {
                idFamilia, idMarca, intCodigosap
            };

            //Guardado de las validaciones de strings en lista para pasarlos al SQL
            List <bool> null_strCampos = new List <bool>()
            {
                null_catalogo, null_descripcion, null_comentarios, null_specenercom,
                null_speccatalogo, null_specul, null_spectexto, null_specvarias
            };

            //Guardado de las validaciones de strings en lista para pasarlos al SQL
            List <bool> null_intCampos = new List <bool>()
            {
                null_marca, null_familia, null_codigosap
            };

            //Corre el comando SQL. Si la funcion regresa 1 fue exitoso, si regresa 0 es fallido.
            sqlCommands sql    = new sqlCommands();
            int         result = sql.nuevoMaterial(strCampos, intCampos, null_strCampos, null_intCampos);

            if (result == 1)
            {
                MessageBox.Show("Datos guardados exitosamente.");
                this.limpiarFormulario();
            }
        }