Пример #1
0
        /// <summary>
        /// Valida que los campos requeridos contengan valor
        /// </summary>
        /// <returns></returns>
        private bool ValidaCamposGuardar()
        {
            var guardar = true;
            var mensaje = string.Empty;


            if (Contexto.ProductoId == 0)
            {
                guardar = false;
                txtProductoId.Focus();
                mensaje = Properties.Resources.ProductoEdicion_CodigoMayorCero;
            }
            else
            if (string.IsNullOrWhiteSpace(Contexto.ProductoDescripcion))
            {
                guardar = false;
                txtDescripcion.Focus();
                mensaje = Properties.Resources.ProductoEdicion_Descripcion_Requerida;
            }
            else
            {
                int familiaId = Extensor.ValorEntero(Convert.ToString(cboFamilia.SelectedValue));
                if (familiaId == 0)
                {
                    guardar = false;
                    cboFamilia.Focus();
                    mensaje = Properties.Resources.ProductoEdicion_Familia_Requerida;
                }
                else
                {
                    int subFamiliaId = Extensor.ValorEntero(Convert.ToString(cboSubFamilia.SelectedValue));
                    if (subFamiliaId == 0)
                    {
                        guardar = false;
                        cboSubFamilia.Focus();
                        mensaje = Properties.Resources.ProductoEdicion_SubFamilia_Requeria;
                    }
                    else
                    {
                        int unidadId = Extensor.ValorEntero(Convert.ToString(cboUnidad.SelectedValue));
                        if (unidadId == 0)
                        {
                            guardar = false;
                            cboUnidad.Focus();
                            mensaje = Properties.Resources.ProductoEdicion_Unidad_Requerida;
                        }
                    }
                }
            }
            if (guardar)
            {
                var          productoPL = new ProductoPL();
                ProductoInfo producto   = productoPL.ObtenerPorDescripcion(Contexto.ProductoDescripcion);
                if (producto != null && Contexto.UsuarioModificacionID == null)
                {
                    mensaje = string.Format(Properties.Resources.ProductoEdicion_Descripcion_Existente,
                                            producto.ProductoId);
                    txtDescripcion.Focus();
                    guardar = false;
                }
                if (producto == null)
                {
                    producto = productoPL.ObtenerPorIDSinActivo(Contexto);
                }
                if (producto != null && Contexto.UsuarioModificacionID == null)
                {
                    mensaje = string.Format(Properties.Resources.ProductoEdicion_Codigo_Existente,
                                            producto.Descripcion);
                    txtProductoId.Focus();
                    guardar = false;
                }

                producto = productoPL.ObtenerPorMaterialSAP(Contexto.MaterialSAP);
                if (producto != null && Contexto.ProductoId != producto.ProductoId)
                {
                    mensaje = string.Format(Properties.Resources.ProductoEdicion_Material_Existente,
                                            producto.ProductoId);
                    txtMaterialSAP.Focus();
                    guardar = false;
                }
            }
            if (!string.IsNullOrWhiteSpace(mensaje))
            {
                SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning);
            }
            return(guardar);
        }
Пример #2
0
        // Obtiene los datos del producto seleccionado
        private void ObtenerDatosProducto(string filtro)
        {
            try
            {
                var          productoPl     = new ProductoPL();
                ProductoInfo productoActual = skAyudaProducto.Info;
                productoActual = productoPl.ObtenerPorIDSinActivo(productoActual);

                if (productoActual != null)
                {
                    if (productoActual.Familia.FamiliaID == (int)FamiliasEnum.MateriaPrimas ||
                        productoActual.Familia.FamiliaID == (int)FamiliasEnum.Premezclas)
                    {
                        if (productoActual.Activo == EstatusEnum.Activo)
                        {
                            skAyudaProducto.Info          = productoActual;
                            skAyudaProducto.Info.Familias = new List <FamiliaInfo>()
                            {
                                new FamiliaInfo()
                                {
                                    FamiliaID = (int)FamiliasEnum.MateriaPrimas
                                },
                                new FamiliaInfo()
                                {
                                    FamiliaID = (int)FamiliasEnum.Premezclas
                                }
                            };
                        }
                        else
                        {
                            skAyudaProducto.LimpiarCampos();
                            SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                              Properties.Resources.MonitoreoSilos_ProductoInactivo,
                                              MessageBoxButton.OK,
                                              MessageImage.Stop);
                            skAyudaProducto.Info = new ProductoInfo()
                            {
                                ProductoId = 0,
                                Familia    = new FamiliaInfo()
                                {
                                    FamiliaID = (int)FamiliasEnum.MateriaPrimas
                                },
                                Familias = new List <FamiliaInfo>()
                                {
                                    new FamiliaInfo()
                                    {
                                        FamiliaID = (int)FamiliasEnum.MateriaPrimas
                                    },
                                    new FamiliaInfo()
                                    {
                                        FamiliaID = (int)FamiliasEnum.Premezclas
                                    }
                                },
                                Activo = EstatusEnum.Activo
                            };
                        }
                    }
                    else
                    {
                        skAyudaProducto.LimpiarCampos();
                        skAyudaProducto.Info = new ProductoInfo()
                        {
                            ProductoId = 0,
                            Familia    = new FamiliaInfo()
                            {
                                FamiliaID = (int)FamiliasEnum.MateriaPrimas
                            },
                            Familias = new List <FamiliaInfo>()
                            {
                                new FamiliaInfo()
                                {
                                    FamiliaID = (int)FamiliasEnum.MateriaPrimas
                                },
                                new FamiliaInfo()
                                {
                                    FamiliaID = (int)FamiliasEnum.Premezclas
                                }
                            },
                            Activo = EstatusEnum.Activo
                        };
                        SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                          Properties.Resources.MonitoreoSilos_MsgProductoInvalido,
                                          MessageBoxButton.OK,
                                          MessageImage.Stop);
                    }
                }
                else
                {
                    skAyudaProducto.LimpiarCampos();
                    SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal],
                                      Properties.Resources.MonitoreoSilos_MsgProductoInvalido,
                                      MessageBoxButton.OK,
                                      MessageImage.Stop);
                    skAyudaProducto.Info = new ProductoInfo()
                    {
                        ProductoId = 0,
                        Familia    = new FamiliaInfo()
                        {
                            FamiliaID = (int)FamiliasEnum.MateriaPrimas
                        },
                        Familias = new List <FamiliaInfo>()
                        {
                            new FamiliaInfo()
                            {
                                FamiliaID = (int)FamiliasEnum.MateriaPrimas
                            },
                            new FamiliaInfo()
                            {
                                FamiliaID = (int)FamiliasEnum.Premezclas
                            }
                        },
                        Activo = EstatusEnum.Activo
                    };
                }
            }
            catch (Exception ex)
            {
                Logger.Error(ex);
            }
        }