Beispiel #1
0
        /// <summary>
        /// Método que valida el estatus del CheckBox ProductoContenido
        /// </summary>
        private void validaCheck()
        {
            //Valida cada estado de la página
            switch ((Pagina.Estatus)Session["estatus"])
            {
            //En caso de que el estado de la pagina sea nuevo.
            case Pagina.Estatus.Edicion:
            {
                //Invoca al constructor de la clase Producto y asigna como paramétro el valor de la variable de session id_registro
                using (SAT_CL.Almacen.Producto producto = new SAT_CL.Almacen.Producto((int)Session["id_registro"]))
                {
                    //Valida, si el id_producto_contenido es igual a cero(no tiene producto contenido).
                    if (producto.id_producto_contenido == 0)
                    {
                        //Deshabilita los controles y el check box quedara sin seleccionar
                        chkProductoContenido.Checked = false;
                        txtProductoContenido.Enabled = false;
                        txtCantidadContenido.Enabled = false;
                    }
                    //En caso contrario (tiene producto contenido)
                    else
                    {
                        //Habilita los controles y el check box quedara  seleccionado
                        chkProductoContenido.Checked = true;
                        txtProductoContenido.Enabled = true;
                        txtCantidadContenido.Enabled = true;
                    }
                }
                break;
            }

            //Si la pagina se encuentra en modo lectura
            case Pagina.Estatus.Lectura:
            {
                //Invoca al constructor de la clase Producto y asigna como paramétro el valor de la variable de session id_registro
                using (SAT_CL.Almacen.Producto producto = new SAT_CL.Almacen.Producto((int)Session["id_registro"]))
                {
                    //Valida, si el id_producto_contenido es igual a cero(no tiene producto contenido).
                    if (producto.id_producto_contenido == 0)
                    {
                        //Check box quedara sin seleccionar
                        chkProductoContenido.Checked = false;
                    }
                    //En caso contrario
                    else
                    {
                        //Check box quedara seleccionado
                        chkProductoContenido.Checked = true;
                    }
                }
                break;
            }
            }
        }
Beispiel #2
0
        /// <summary>
        /// Método que permite almacenar los datos que se ingresaron en los controles del formulario
        /// </summary>
        private void guardarProducto()
        {
            //Creación del objeto retorno
            RetornoOperacion retorno = new RetornoOperacion();
            //Creació del objeto resultado1
            RetornoOperacion resultado1 = minimosMaximos();
            //Creación del objeto resultado2
            RetornoOperacion resultado2 = productoContenido();

            if (resultado1.OperacionExitosa && resultado2.OperacionExitosa)
            {
                //Valida cada estado de la página
                switch ((Pagina.Estatus)Session["estatus"])
                {
                //En caso de que el estado de la página sea nuevo
                case Pagina.Estatus.Nuevo:
                {
                    //Asigna al objeto retorno los datos ingresados invocando al método inserción de la clase Producto
                    retorno = SAT_CL.Almacen.Producto.InsertaProducto(
                        ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor, Cadena.VerificaCadenaVacia(txtSKU.Text.ToUpper(), ""), txtDescripcion.Text.ToUpper(),
                        Convert.ToInt32(ddlUnidadMedida.SelectedValue), Convert.ToInt32(ddlCategoria.SelectedValue), txtFabricante.Text.ToUpper(),
                        Convert.ToInt32(Cadena.VerificaCadenaVacia(txtGarantia.Text, "0")), SAT_CL.Almacen.Producto.Estatus.Activo,
                        Convert.ToByte(ddlMonedaEntrada.SelectedValue), Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtPrecioEntrada.Text, "0.0")), Convert.ToByte(ddlMonedaSalida.SelectedValue),
                        Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtPrecioSalida.Text, "0.0")), Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCantidadMayoreo.Text, "0.0")),
                        Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtPrecioMayoreo.Text, "0.0")),
                        Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCantidadMinima.Text, "0.0")), Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCantidadMaxima.Text, "0.0")),
                        Convert.ToInt32(Cadena.VerificaCadenaVacia(Cadena.RegresaCadenaSeparada(txtProductoContenido.Text, "ID:", 1), "0")),
                        Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCantidadContenido.Text, "0")),
                        Convert.ToBoolean(chkSinInventario.Checked),
                        ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario);
                    break;
                }

                //En caso de que el estado de la página sea edicion
                case Pagina.Estatus.Edicion:
                {
                    //Invoca al constructor de la clase Producto para poder instanciar sus  métodos
                    using (SAT_CL.Almacen.Producto producto = new SAT_CL.Almacen.Producto((int)Session["id_registro"]))
                    {
                        if (producto.id_producto > 0)
                        {
                            //Asigna al objeto retorno los datos ingresados en los controles invocando el método de edición de la clase Producto
                            retorno = producto.EditaProducto(((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor, Cadena.VerificaCadenaVacia(txtSKU.Text.ToUpper(), ""), txtDescripcion.Text.ToUpper(),
                                                             Convert.ToInt32(ddlUnidadMedida.SelectedValue), Convert.ToInt32(ddlCategoria.SelectedValue), txtFabricante.Text.ToUpper(),
                                                             Convert.ToInt32(Cadena.VerificaCadenaVacia(txtGarantia.Text, "0")), SAT_CL.Almacen.Producto.Estatus.Activo,
                                                             Convert.ToByte(ddlMonedaEntrada.SelectedValue), Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtPrecioEntrada.Text, "0.0")), Convert.ToByte(ddlMonedaSalida.SelectedValue),
                                                             Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtPrecioSalida.Text, "0.0")), Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCantidadMayoreo.Text, "0.0")),
                                                             Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtPrecioMayoreo.Text, "0.0")),
                                                             Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCantidadMinima.Text, "0.0")), Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCantidadMaxima.Text, "0.0")),
                                                             Convert.ToInt32(Cadena.VerificaCadenaVacia(Cadena.RegresaCadenaSeparada(txtProductoContenido.Text, "ID:", 1), "0")),
                                                             Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCantidadContenido.Text, "0")),
                                                             Convert.ToBoolean(chkSinInventario.Checked), ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario);
                        }
                    }
                    break;
                }
                }
                //Valida si la inserción a la base de datos se realizo correctamente
                if (retorno.OperacionExitosa)
                {
                    //A la variable de sessión estatus le asigna el estado de la pagina en modo lectura
                    Session["estatus"] = Pagina.Estatus.Lectura;
                    //A la variable de session id_registro le asigna el valor insertado en la tabla Producto
                    Session["id_registro"] = retorno.IdRegistro;
                    //Invoca al método inicializa forma
                    inicializaForma();
                }
                //Muestra el mensaje de error
                TSDK.ASP.ScriptServer.MuestraNotificacion(this, retorno, ScriptServer.PosicionNotificacion.AbajoDerecha);
            }
            //Valida la operación exitosa  del objeto resultado1
            if (!resultado1.OperacionExitosa)
            {
                //Muestra el mensaje de error.
                TSDK.ASP.ScriptServer.MuestraNotificacion(this, resultado1, ScriptServer.PosicionNotificacion.AbajoDerecha);
            }
            //Valida la operación exitosa del objeto resultado2
            else if (!resultado2.OperacionExitosa)
            {
                //Muestra el mnesaje de error.
                TSDK.ASP.ScriptServer.MuestraNotificacion(this, resultado2, ScriptServer.PosicionNotificacion.AbajoDerecha);
            }
        }
Beispiel #3
0
        /// <summary>
        /// Evento que permite seleccionar y ejecutar acciones del menú.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void lkbElementoMenu_Click(object sender, EventArgs e)
        {
            //Creación del objeto botonMenu que obtiene las opciones de los menú desplegable .
            LinkButton botonMenu = (LinkButton)sender;

            //Permite ejecutar acciones determinadas por cada opción del menú
            switch (botonMenu.CommandName)
            {
            //Si la elección del menú es la opción Nuevo
            case "Nuevo":
            {
                //Asigna a la variable de session estatus el estado del formulario en nuevo
                Session["estatus"] = Pagina.Estatus.Nuevo;
                //Asigna a la variable de session id_registro el valor de 0.
                Session["id_registro"] = 0;
                //Invoca al método inicializaForma
                inicializaForma();
                //Se realiza un enfoque al primer control
                txtSKU.Focus();
                break;
            }

            //Si la elección del menú es la opcion Abrir
            case "Abrir":
            {
                //Invoca al método inicializaAperturaRegistro();
                inicializaAperturaRegistro(163, ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor);
                break;
            }

            //Si la elección del menú es la opción Guardar
            case "Guardar":
            {
                //Invoca al método guardaProducto();
                guardarProducto();
                break;
            }

            //Si la elección del menú es la opción Editar
            case "Editar":
            {
                using (SAT_CL.Almacen.Producto oc = new SAT_CL.Almacen.Producto((int)Session["id_registro"]))
                {
                    //Asigna a la variable session estaus el estado de la pagina nuevo
                    Session["estatus"] = Pagina.Estatus.Edicion;
                    //Invoca el método inicializaForma();
                    inicializaForma();
                    //Se realiza un enfoque al primer control
                    txtSKU.Focus();
                }
                break;
            }

            //Si la elección del menú es la opción Eliminar
            case "Eliminar":
            {
                //Creación del objeto retorno
                RetornoOperacion retorno = new RetornoOperacion();
                //Invoca al constructor de la clase Producto para poder instanciar sus  métodos
                using (SAT_CL.Almacen.Producto producto = new SAT_CL.Almacen.Producto((int)Session["id_registro"]))
                {
                    //Valida que exista el registro
                    if (producto.id_producto > 0)
                    {
                        //Asigna los valores al objeto retorno invocando el método DeshabilitarProducto.
                        retorno = producto.DeshabilitaProducto(((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario);
                    }
                }
                //Valida si la inserción a la base de datos se realizo correctamente
                if (retorno.OperacionExitosa)
                {
                    //A la variable de sessión estatus le asigna el estado de la pagina en modo Nuevo
                    Session["estatus"] = Pagina.Estatus.Nuevo;
                    //A la variable de session id_registro le asigna el valor insertado en la tabla Producto
                    Session["id_registro"] = 0;
                    //Invoca al método inicializa forma
                    inicializaForma();
                }
                //Mensaje de que la operación de deshabilitar registros se realizo correctamente.
                TSDK.ASP.ScriptServer.MuestraNotificacion(this, retorno, ScriptServer.PosicionNotificacion.AbajoDerecha);
                break;
            }

            //Si la elección del menú es la opción Bitacora
            case "Bitacora":
            {
                //Invoca al método bitacora
                inicializaBitacora(Session["id_registro"].ToString(), "163", "Producto");
                break;
            }

            //Si la elección del menú es la opcion Referencia
            case "Referencias":
            {
                //Invoca al método inicializaReferencia que muestra las observaciones hechas a un registro de Producto
                inicializaReferenciaRegistro(Session["id_registro"].ToString(), "163",
                                             ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor.ToString());
                break;
            }
            }
        }
Beispiel #4
0
        /// <summary>
        /// Método que permite inicializar los valores de los controles en base a cada estado de la página
        /// </summary>
        private void inicializaValores()
        {
            //Valida cada estado de la página
            switch ((Pagina.Estatus)Session["estatus"])
            {
            //En caso de que el estado de la pagina sea nuevo.
            case Pagina.Estatus.Nuevo:
            {
                //Limpia los controles del formulario.
                lblIdProducto.Text           = "Por Asignar";
                txtSKU.Text                  = "";
                txtDescripcion.Text          = "";
                txtFabricante.Text           = "";
                txtGarantia.Text             = "";
                txtPrecioEntrada.Text        = "";
                txtPrecioSalida.Text         = "";
                txtCantidadMayoreo.Text      = "";
                txtPrecioMayoreo.Text        = "";
                txtCantidadMinima.Text       = "";
                txtCantidadMaxima.Text       = "";
                txtProductoContenido.Text    = "SIN PRODUCTO ID: 0";
                txtCantidadContenido.Text    = "0.0";
                chkProductoContenido.Checked = false;
                chkSinInventario.Checked     = false;
                //Invoca al constructor de la clase CompaniaEmisorReceptor para obtener el nombre de la compañia
                using (SAT_CL.Global.CompaniaEmisorReceptor emisor = new SAT_CL.Global.CompaniaEmisorReceptor(((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor))
                {
                    //Asigina al txtCompania el nombre de la compañia del usuario.
                    txtCompaniaEmisor.Text = emisor.nombre + " ID:" + emisor.id_compania_emisor_receptor.ToString();
                }
                break;
            }

            //En caso de que el estado de la página sea edición o Lectura
            case Pagina.Estatus.Edicion:
            case Pagina.Estatus.Lectura:
            {
                //Invoca al constructor de la clase Producto y asigna como paramétro el valor de la variable de session id_registro
                using (SAT_CL.Almacen.Producto producto = new SAT_CL.Almacen.Producto((int)Session["id_registro"]))
                {
                    //Valida que exista el registro
                    if (producto.id_producto > 0)
                    {
                        //Asigna al label Id el identificador del producto.
                        lblIdProducto.Text = producto.id_producto.ToString();
                        //Invoca al constructor de la clase CompaniaEmisor para obtener el nombre de las compañias.
                        using (SAT_CL.Global.CompaniaEmisorReceptor emisor = new SAT_CL.Global.CompaniaEmisorReceptor(producto.id_compania_emisor))
                        {
                            //Valida que el registro exista
                            if (emisor.id_compania_emisor_receptor > 0)
                            {
                                //Asigna al control los nombres y id de cada compañia
                                txtCompaniaEmisor.Text = string.Format("{0}   ID:{1}", emisor.nombre, emisor.id_compania_emisor_receptor);
                            }
                        }
                        txtSKU.Text                    = producto.sku;
                        txtDescripcion.Text            = producto.descripcion;
                        txtFabricante.Text             = producto.fabricante;
                        txtGarantia.Text               = producto.garantia.ToString();
                        txtPrecioEntrada.Text          = producto.precio_entrada.ToString();
                        txtPrecioSalida.Text           = producto.precio_salida.ToString();
                        txtCantidadMayoreo.Text        = producto.cantidad_mayoreo.ToString();
                        txtPrecioMayoreo.Text          = producto.precio_salida_mayoreo.ToString();
                        txtCantidadMinima.Text         = producto.cantidad_minima.ToString();
                        txtCantidadMaxima.Text         = producto.cantidad_maxima.ToString();
                        ddlEstatus.SelectedValue       = producto.id_estatus.ToString();
                        ddlMonedaEntrada.SelectedValue = producto.id_moneda_entrada.ToString();
                        ddlMonedaSalida.SelectedValue  = producto.id_moneda_salida.ToString();
                        ddlCategoria.SelectedValue     = producto.categoria.ToString();
                        chkSinInventario.Checked       = producto.bit_sin_inventario;
                        //Invoca a la clase unidadMedida
                        using (SAT_CL.Global.UnidadMedida unidad = new SAT_CL.Global.UnidadMedida(producto.id_unidad))
                        {
                            //ASigna valores al dropdownlist TipoMedida
                            ddlTipoMedida.SelectedValue = unidad.id_tipo_unidad_medida.ToString();
                            //Carga los valores al DropDownList ddlUnidadMedida
                            SAT_CL.CapaNegocio.m_capaNegocio.CargaCatalogo(ddlUnidadMedida, 44, "", Convert.ToInt32(ddlTipoMedida.SelectedValue), "", 0, "");
                            ddlUnidadMedida.SelectedValue = producto.id_unidad.ToString();
                        }
                        //Valida que exista el producto contenido
                        if (producto.id_producto_contenido > 0)
                        {
                            //Invoca al método que valida el check box chkProductocontenido
                            validaCheck();
                            //Invoca al constructor de la clase Producto y obtiene el nombre del producto contenido.
                            using (SAT_CL.Almacen.Producto contenido = new SAT_CL.Almacen.Producto(producto.id_producto_contenido))
                            {
                                //Asigna a la caja de texto el valor correspondiente al producto contenido
                                txtProductoContenido.Text = contenido.descripcion + " ID:" + contenido.id_producto.ToString();
                            }
                            txtCantidadContenido.Text = producto.cantidad_contenido.ToString();
                        }
                        //En caso contrario
                        else
                        {
                            //Invoca al método que valida el check box chkProductocontenido
                            validaCheck();
                            //Asigna a la caja de texto el valor correspondiente al producto contenido
                            txtProductoContenido.Text = "SIN PRODUCTO ID: 0";
                            txtCantidadContenido.Text = producto.cantidad_contenido.ToString();
                        }
                    }
                }

                break;
            }
            }
        }
Beispiel #5
0
        /// <summary>
        /// Habilita los controles de producto contenido
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void chkProductoContenido_CheckedChanged(object sender, EventArgs e)
        {
            //Valida el estado del check box (true)
            if (chkProductoContenido.Checked == true)
            {
                //Habilita los controles txtProductoContenido y txtCantidadContenido
                txtProductoContenido.Enabled = true;
                txtCantidadContenido.Enabled = true;
                //Invoca al constructor de la clase Producto y asigna como paramétro el valor de la variable de session id_registro
                using (SAT_CL.Almacen.Producto producto = new SAT_CL.Almacen.Producto((int)Session["id_registro"]))
                {
                    //Valida que exista el producto contenido
                    if (producto.id_producto_contenido > 0)
                    {
                        //Invoca al constructor de la clase Producto y obtiene el nombre del producto contenido.
                        using (SAT_CL.Almacen.Producto contenido = new SAT_CL.Almacen.Producto(producto.id_producto_contenido))
                        {
                            //Asigna a la caja de texto el valor correspondiente al producto contenido
                            txtProductoContenido.Text = contenido.descripcion + " ID:" + contenido.id_producto.ToString();
                        }
                        txtCantidadContenido.Text = producto.cantidad_contenido.ToString();
                    }
                    //Si no tiene producto contenido
                    else
                    {
                        //Limpia las cajas de texto
                        txtProductoContenido.Text = "";
                        txtCantidadContenido.Text = "";
                    }
                }
            }
            //en caso contrario de que no sea verdadero el estado del checkbox chkProductoContenido
            else
            {
                //Valida los estatus de la pagina
                switch ((Pagina.Estatus)Session["estatus"])
                {
                //En caso de que el estado de la página sea nuevo y edicion
                case Pagina.Estatus.Nuevo:
                case Pagina.Estatus.Edicion:
                {
                    //Deshabilita los controles
                    txtProductoContenido.Enabled     =
                        txtCantidadContenido.Enabled = false;
                    //Asigna a la caja de texto el valor correspondiente al producto contenido
                    txtProductoContenido.Text = "SIN PRODUCTO ID: 0";
                    txtCantidadContenido.Text = "0.0";

                    break;
                }

                //En caso de que el estado de  la página sea Lectura.
                case Pagina.Estatus.Lectura:
                {
                    //Deshabilita los controles
                    txtProductoContenido.Enabled     =
                        txtCantidadContenido.Enabled = false;
                    //Invoca al constructor de la clase Producto y asigna como paramétro el valor de la variable de session id_registro
                    using (SAT_CL.Almacen.Producto producto = new SAT_CL.Almacen.Producto((int)Session["id_registro"]))
                    {
                        //Valida que exista el producto contenido
                        if (producto.id_producto_contenido > 0)
                        {
                            //Invoca al constructor de la clase Producto y obtiene el nombre del producto contenido.
                            using (SAT_CL.Almacen.Producto contenido = new SAT_CL.Almacen.Producto(producto.id_producto_contenido))
                            {
                                //Asigna a la caja de texto el valor correspondiente al producto contenido
                                txtProductoContenido.Text = contenido.descripcion + " ID:" + contenido.id_producto.ToString();
                            }
                            txtCantidadContenido.Text = producto.cantidad_contenido.ToString();
                        }
                        //En caso de que no exista el producto contenido
                        else
                        {
                            //Asigna a la caja de texto el valor correspondiente al producto contenido
                            txtProductoContenido.Text = "SIN PRODUCTO ID: 0";
                            txtCantidadContenido.Text = producto.cantidad_contenido.ToString();
                        }
                    }
                    break;
                }
                }
            }
        }