示例#1
0
        public static bool AllowFunction(string IdVariable)
        {
            ///Como primer paso me fijo si tiene permiso definida por la variable (Sy_variables)
            ///En caso contrario: Tomo el usuario (_idUsuario)
            ///Con este dato busco los perfiles
            ///con los perfiles busco la IdVariable
            ///Si no la encuentro AllowFuncion devuelve false

            ///
            bool resultVariable = Variables.GetValueBool(IdVariable);

            if (resultVariable)
            {
                return(true);
            }
            else
            {
                bool resultPerfil = false;
                sy_PerfilesUsuariosEmpresasDataset perfiles = sy_PerfilesUsuariosEmpresas.GetList(_idUsuario, _idEmpresa);
                foreach (sy_PerfilesUsuariosEmpresasDataset.sy_PerfilesUsuariosEmpresasRow row in perfiles.sy_PerfilesUsuariosEmpresas.Rows)
                {
                    long IdPerfil = row.IdPerfil;
                    sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow rowVP = sy_VariablesPerfiles.GetByPk(IdVariable, IdPerfil);
                    if (rowVP != null)
                    {
                        resultPerfil = Convert.ToBoolean(rowVP.Valor);
                    }
                    if (resultPerfil)
                    {
                        return(true);
                    }
                }
                return(resultPerfil);
            }
        }
        /// <summary>
        /// Valida un sy_VariablesPerfilesRow.
        /// </summary>
        public static bool RowIsValid(sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow row)
        {
            ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber);
            bool   isValid = true;
            string mensaje;


            if (!IdVariableIsValid(row.IdVariable, out mensaje))
            {
                row.SetColumnError("IdVariable", mensaje);
                isValid = false;
            }

            if (!IdPerfilIsValid(row.IdPerfil, out mensaje))
            {
                row.SetColumnError("IdPerfil", mensaje);
                isValid = false;
            }

            if (!ValorIsValid(row.Valor, out mensaje))
            {
                row.SetColumnError("Valor", mensaje);
                isValid = false;
            }

            if (!FechaCreacionIsValid(row.FechaCreacion, out mensaje))
            {
                row.SetColumnError("FechaCreacion", mensaje);
                isValid = false;
            }

            if (!IdConexionCreacionIsValid(row.IdConexionCreacion, out mensaje))
            {
                row.SetColumnError("IdConexionCreacion", mensaje);
                isValid = false;
            }

            /*if ( !UltimaModificacionIsValid( row.UltimaModificacion, out mensaje) )
             * {
             *      row.SetColumnError( "UltimaModificacion" , mensaje);
             *      isValid=false;
             *
             * }
             *
             * if ( !IdConexionUltimaModificacionIsValid( row.IdConexionUltimaModificacion, out mensaje) )
             * {
             *      row.SetColumnError( "IdConexionUltimaModificacion" , mensaje);
             *      isValid=false;
             *
             * }*/

            if (!RowIdIsValid(row.RowId, out mensaje))
            {
                row.SetColumnError("RowId", mensaje);
                isValid = false;
            }
            ;

            return(isValid);
        }
        private bool existeVariable(string idVariable, long idPerfil)
        {
            bool existeVariable = false;

            sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow rowV = mz.erp.businessrules.sy_VariablesPerfiles.GetByPk(idVariable, idPerfil);
            return(rowV != null);
        }
        public static void UpdateWithValidation(sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow row)
        {
            ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber);

            if (RowIsValid(row))
            {
                Update(row);
            }
        }
示例#5
0
        public static void Update(sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow row)
        {
            if (row.RowState == DataRowState.Detached)
            {
                ((sy_VariablesPerfilesDataset.sy_VariablesPerfilesDataTable)row.Table).Addsy_VariablesPerfilesRow(row);
            }

            Update(row.Table);
        }
 public static object GetValue(string IdVariable, int IdPerfil)
 {
     sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow row = sy_VariablesPerfiles.GetByPk(IdVariable, IdPerfil);
     if (row != null)
     {
         return(row.Valor);
     }
     else
     {
         return(null);
     }
 }
 public static sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow GetByPk(string IdVariable, long IdPerfil, string IdTransaction)
 {
     sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow row = mz.erp.dataaccess.sy_VariablesPerfiles.GetByPk(IdVariable, IdPerfil, IdTransaction);
     if (row != null)
     {
         foreach (DataColumn dc in row.Table.Columns)
         {
             if (!dc.Caption.ToUpper().Equals("ROWID"))
             {
                 if (row[dc] == System.DBNull.Value)
                 {
                     row[dc] = Util.DefaultValue(dc.DataType);
                 }
             }
         }
     }
     return(row);
 }
        private bool agregarVariable(string idVariable, long idPerfil)
        {
            bool existeVariable = false;

            sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow rowV = mz.erp.businessrules.sy_VariablesPerfiles.GetByPk(idVariable, idPerfil);
            if (rowV == null)
            {
                rowV                    = _dataPeriles.sy_VariablesPerfiles.Newsy_VariablesPerfilesRow();
                rowV.IdVariable         = idVariable;
                rowV.IdPerfil           = idPerfil;
                rowV.Valor              = string.Empty;
                rowV.FechaCreacion      = DateTime.Now;
                rowV.IdConexionCreacion = Security.IdConexion;
                _dataPeriles.sy_VariablesPerfiles.Addsy_VariablesPerfilesRow(rowV);
            }
            else
            {
                existeVariable = true;
                _dataPeriles.sy_VariablesPerfiles.ImportRow(rowV);
            }
            return(existeVariable);
        }
        /// <summary>
        /// Envia los cambios del sy_VariablesPerfilesRow a la base de datos.
        /// </summary>
        public static void Update(sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow row)
        {
            ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber);

            mz.erp.dataaccess.sy_VariablesPerfiles.Update(row);
        }
示例#10
0
        /// <summary>
        /// Establece los valores por defecto de sy_VariablesPerfilesRow.
        /// </summary>
        public static sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow SetRowDefaultValues(sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow row)
        {
            row.IdVariable         = Util.NewStringId();
            row.IdPerfil           = 0;
            row.Valor              = string.Empty;
            row.FechaCreacion      = mz.erp.businessrules.Sistema.DateTime.Now;
            row.IdConexionCreacion = Security.IdConexion;
            //row.UltimaModificacion = null;
            row.IdConexionUltimaModificacion = Security.IdConexion;
            row.RowId = Guid.Empty;

            return(row);
        }
示例#11
0
        public void Commit()
        {
            foreach (DataRow row in _result.Rows)
            {
                if (row.RowState.Equals(DataRowState.Modified))
                {                //Es una modificacion
                    string idVariable     = (string)row["IdVariable"];
                    string idTipoVariable = (string)row["Tipo"];
                    string valor          = string.Empty;
                    if (row["ValorDefault"] != System.DBNull.Value)
                    {
                        valor = (string)row["ValorDefault"];
                    }
                    string usuario = (string)row["Usuario"];
                    string perfil  = (string)row["Perfil"];
                    string puesto  = (string)row["Puesto"];
                    if (!usuario.Equals(string.Empty))                    //Es una variable de sy_VariablesUsuarios
                    {
                        string idUsuario = (string)row["IdUsuario"];
                        sy_VariablesUsuariosDataset.sy_VariablesUsuariosRow rowU = sy_VariablesUsuarios.GetByPk(idVariable, idUsuario);
                        if (rowU != null)
                        {
                            rowU.Valor = valor;
                            _dataUsuarios.sy_VariablesUsuarios.ImportRow(rowU);
                        }
                    }
                    else if (!perfil.Equals(string.Empty))                   //Es una variable de sy_VariablesPerfiles
                    {
                        long idPerfil = Convert.ToInt64(row["IdPerfil"]);
                        sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow rowP = sy_VariablesPerfiles.GetByPk(idVariable, idPerfil);
                        if (rowP != null)
                        {
                            rowP.Valor = valor;
                            _dataPerfiles.sy_VariablesPerfiles.ImportRow(rowP);
                        }
                    }
                    else if (!puesto.Equals(string.Empty))                   //Es una variable de sy_VariablesPuestos
                    {
                        long idPuesto = Convert.ToInt64(row["IdPuesto"]);
                        sy_VariablesPuestosDataset.sy_VariablesPuestosRow rowPU = sy_VariablesPuestos.GetByPk(idVariable, Security.IdEmpresa, Security.IdSucursal, idPuesto);
                        if (rowPU != null)
                        {
                            rowPU.Valor = valor;
                            _dataPuestos.sy_VariablesPuestos.ImportRow(rowPU);
                        }
                    }
                    else                     //Es una variable de sy_Variables
                    {
                        sy_VariablesDataset.sy_VariablesRow rowG = sy_Variables.GetByPk(idVariable);
                        if (rowG != null)
                        {
                            rowG.ValorDefault   = valor;
                            rowG.IdTipoVariable = idTipoVariable;
                            _dataGenericas.sy_Variables.ImportRow(rowG);
                        }
                    }
                }
            }

            //Borro las variables eliminadas
            foreach (Variable var in _variablesBorradas)
            {
                var.Commit(_dataGenericas, _dataUsuarios, _dataPerfiles, _dataPuestos);
            }
        }
示例#12
0
        public void Commit()
        {
            foreach (ConfiguracionNueva cn in _configuracionesNuevas)
            {
                switch (cn.TipoHabilitado)
                {
                case "Usuario":
                {
                    ArrayList keys = new ArrayList();
                    keys.Add(cn.IdVariable);
                    keys.Add(cn.IdHabilitado);
                    sy_VariablesUsuariosDataset.sy_VariablesUsuariosRow rowU1 = (sy_VariablesUsuariosDataset.sy_VariablesUsuariosRow)_dataUsuarios.sy_VariablesUsuarios.Rows.Find(keys.ToArray());
                    if (rowU1 == null)
                    {
                        sy_VariablesUsuariosDataset.sy_VariablesUsuariosRow rowU = mz.erp.businessrules.sy_VariablesUsuarios.GetByPk(cn.IdVariable, cn.IdHabilitado);
                        if (rowU == null)
                        {
                            rowU                    = _dataUsuarios.sy_VariablesUsuarios.Newsy_VariablesUsuariosRow();
                            rowU.IdVariable         = cn.IdVariable;
                            rowU.IdUsuario          = cn.IdHabilitado;
                            rowU.Valor              = "@" + cn.DescripcionDatoNuevo;
                            rowU.FechaCreacion      = DateTime.Now;
                            rowU.IdConexionCreacion = Security.IdConexion;
                            _dataUsuarios.sy_VariablesUsuarios.Addsy_VariablesUsuariosRow(rowU);
                        }
                        else
                        {
                            rowU.Valor = rowU.Valor + "@" + cn.DescripcionDatoNuevo;
                            _dataUsuarios.sy_VariablesUsuarios.ImportRow(rowU);
                        }
                    }
                    else
                    {
                        rowU1.Valor = rowU1.Valor + "@" + cn.DescripcionDatoNuevo;
                    }
                    break;
                }

                case "Perfil":
                {
                    ArrayList keys = new ArrayList();
                    keys.Add(cn.IdVariable);
                    keys.Add(cn.IdHabilitadoL);
                    sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow rowP1 = (sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow)_dataPerfiles.sy_VariablesPerfiles.Rows.Find(keys.ToArray());
                    if (rowP1 == null)
                    {
                        sy_VariablesPerfilesDataset.sy_VariablesPerfilesRow rowP = mz.erp.businessrules.sy_VariablesPerfiles.GetByPk(cn.IdVariable, cn.IdHabilitadoL);
                        if (rowP == null)
                        {
                            rowP                    = _dataPerfiles.sy_VariablesPerfiles.Newsy_VariablesPerfilesRow();
                            rowP.IdVariable         = cn.IdVariable;
                            rowP.IdPerfil           = cn.IdHabilitadoL;
                            rowP.Valor              = "@" + cn.DescripcionDatoNuevo;
                            rowP.FechaCreacion      = DateTime.Now;
                            rowP.IdConexionCreacion = Security.IdConexion;
                            _dataPerfiles.sy_VariablesPerfiles.Addsy_VariablesPerfilesRow(rowP);
                        }
                        else
                        {
                            rowP.Valor = rowP.Valor + "@" + cn.DescripcionDatoNuevo;
                            _dataPerfiles.sy_VariablesPerfiles.ImportRow(rowP);
                        }
                    }
                    else
                    {
                        rowP1.Valor = rowP1.Valor + "@" + cn.DescripcionDatoNuevo;
                    }

                    break;
                }

                case "Puesto":
                {
                    ArrayList keys = new ArrayList();
                    keys.Add(cn.IdVariable);
                    keys.Add(Security.IdEmpresa);
                    keys.Add(Security.IdSucursal);
                    keys.Add(cn.IdHabilitadoL);
                    sy_VariablesPuestosDataset.sy_VariablesPuestosRow rowP1 = (sy_VariablesPuestosDataset.sy_VariablesPuestosRow)_dataPuestos.sy_VariablesPuestos.Rows.Find(keys.ToArray());
                    if (rowP1 == null)
                    {
                        sy_VariablesPuestosDataset.sy_VariablesPuestosRow rowP = mz.erp.businessrules.sy_VariablesPuestos.GetByPk(cn.IdVariable, Security.IdEmpresa, Security.IdSucursal, cn.IdHabilitadoL);
                        if (rowP == null)
                        {
                            rowP                    = _dataPuestos.sy_VariablesPuestos.Newsy_VariablesPuestosRow();
                            rowP.IdVariable         = cn.IdVariable;
                            rowP.IdPuesto           = cn.IdHabilitadoL;
                            rowP.IdEmpresa          = Security.IdEmpresa;
                            rowP.IdSucursal         = Security.IdSucursal;
                            rowP.Valor              = "@" + cn.DescripcionDatoNuevo;
                            rowP.FechaCreacion      = DateTime.Now;
                            rowP.IdConexionCreacion = Security.IdConexion;
                            _dataPuestos.sy_VariablesPuestos.Addsy_VariablesPuestosRow(rowP);
                        }
                        else
                        {
                            rowP.Valor = rowP.Valor + "@" + cn.DescripcionDatoNuevo;
                            _dataPuestos.sy_VariablesPuestos.ImportRow(rowP);
                        }
                    }
                    else
                    {
                        rowP1.Valor = rowP1.Valor + "@" + cn.DescripcionDatoNuevo;
                    }
                    break;
                }

                case "Empresa":
                {
                    ArrayList keys = new ArrayList();
                    keys.Add(cn.IdVariable);
                    keys.Add(cn.IdHabilitadoL);
                    sy_VariablesEmpresasDataset.sy_VariablesEmpresasRow rowE1 = (sy_VariablesEmpresasDataset.sy_VariablesEmpresasRow)_dataEmpresas.sy_VariablesEmpresas.Rows.Find(keys.ToArray());
                    if (rowE1 == null)
                    {
                        sy_VariablesEmpresasDataset.sy_VariablesEmpresasRow rowE = mz.erp.businessrules.sy_VariablesEmpresas.GetByPk(cn.IdVariable, cn.IdHabilitadoL);
                        if (rowE == null)
                        {
                            rowE                    = _dataEmpresas.sy_VariablesEmpresas.Newsy_VariablesEmpresasRow();
                            rowE.IdVariable         = cn.IdVariable;
                            rowE.IdEmpresa          = cn.IdHabilitadoL;
                            rowE.Valor              = "@" + cn.DescripcionDatoNuevo;
                            rowE.FechaCreacion      = DateTime.Now;
                            rowE.IdConexionCreacion = Security.IdConexion;
                            _dataEmpresas.sy_VariablesEmpresas.Addsy_VariablesEmpresasRow(rowE);
                        }
                        else
                        {
                            rowE.Valor = rowE.Valor + "@" + cn.DescripcionDatoNuevo;
                            _dataEmpresas.sy_VariablesEmpresas.ImportRow(rowE);
                        }
                    }
                    else
                    {
                        rowE1.Valor = rowE1.Valor + "@" + cn.DescripcionDatoNuevo;
                    }
                    break;
                }

                case "Sucursal":
                {
                    ArrayList keys = new ArrayList();
                    keys.Add(cn.IdVariable);
                    keys.Add(cn.IdHabilitadoLAux);
                    keys.Add(cn.IdHabilitadoL);
                    sy_VariablesSucursalesDataset.sy_VariablesSucursalesRow rowS1 = (sy_VariablesSucursalesDataset.sy_VariablesSucursalesRow)_dataSucursales.sy_VariablesSucursales.Rows.Find(keys.ToArray());
                    if (rowS1 == null)
                    {
                        sy_VariablesSucursalesDataset.sy_VariablesSucursalesRow rowS = mz.erp.businessrules.sy_VariablesSucursales.GetByPk(cn.IdVariable, cn.IdHabilitadoLAux, cn.IdHabilitadoL);
                        if (rowS == null)
                        {
                            rowS                     = _dataSucursales.sy_VariablesSucursales.Newsy_VariablesSucursalesRow();
                            rowS.IdVariable          = cn.IdVariable;
                            rowS.IdEmpresa           = cn.IdHabilitadoLAux;
                            rowS.IdSucursal          = cn.IdHabilitadoL;
                            rowS.Valor               = "@" + cn.DescripcionDatoNuevo;
                            rowS.FechaCreacion       = DateTime.Now;
                            rowS.IdConecxionCreacion = Security.IdConexion;
                            _dataSucursales.sy_VariablesSucursales.Addsy_VariablesSucursalesRow(rowS);
                        }
                        else
                        {
                            rowS.Valor = rowS.Valor + "@" + cn.DescripcionDatoNuevo;
                            _dataSucursales.sy_VariablesSucursales.ImportRow(rowS);
                        }
                    }
                    else
                    {
                        rowS1.Valor = rowS1.Valor + "@" + cn.DescripcionDatoNuevo;
                    }
                    break;
                }
                }
            }
        }