public static void UpdateWithValidation(tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposRow row)
        {
            ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber);

            if (RowIsValid(row))
            {
                Update(row);
            }
        }
        public static void Update(tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposRow row)
        {
            if (row.RowState == DataRowState.Detached)
            {
                ((tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposDataTable)row.Table).Addtpu_ProveedoresObservacionesTiposRow(row);
            }

            Update(row.Table);
        }
 /// <summary>
 /// Obtiene un registro de la tabla tpu_ProveedoresObservacionesTipos que luego puede ser persistido en la base de datos.
 /// </summary>
 public static tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposRow GetByPk(string IdProveedorObservacionTipo)
 {
     tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposRow row = mz.erp.dataaccess.tpu_ProveedoresObservacionesTipos.GetByPk(IdProveedorObservacionTipo);
     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);
 }
        /// <summary>
        /// Valida un tpu_ProveedoresObservacionesTiposRow.
        /// </summary>
        public static bool RowIsValid(tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposRow row)
        {
            ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber);
            bool   isValid = true;
            string mensaje;


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

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

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

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

            if (!ActivoIsValid(row.Activo, out mensaje))
            {
                row.SetColumnError("Activo", 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 (!IdReservadoIsValid(row.IdReservado, out mensaje))
            {
                row.SetColumnError("IdReservado", mensaje);
                isValid = false;
            }

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

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

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

            return(isValid);
        }
        /// <summary>
        /// Envia los cambios del tpu_ProveedoresObservacionesTiposRow a la base de datos.
        /// </summary>
        public static void Update(tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposRow row)
        {
            ApplicationAssert.Check(row != null, "El argumento row no debe ser nulo.", ApplicationAssert.LineNumber);

            mz.erp.dataaccess.tpu_ProveedoresObservacionesTipos.Update(row);
        }
        /// <summary>
        /// Establece los valores por defecto de tpu_ProveedoresObservacionesTiposRow.
        /// </summary>
        public static tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposRow SetRowDefaultValues(tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposRow row)
        {
            row.IdProveedorObservacionTipo      = Util.NewStringId();
            row.IdProveedorObservacionTipoPadre = string.Empty;
            row.Descripcion                  = string.Empty;
            row.FechaCreacion                = DateTime.Now;
            row.Activo                       = false;
            row.IdConexionCreacion           = Security.IdConexion;
            row.UltimaModificacion           = null;
            row.IdConexionUltimaModificacion = Security.IdConexion;
            row.IdReservado                  = 0;
            row.RowId      = Guid.Empty;
            row.IdSucursal = 0;
            row.IdEmpresa  = 0;

            return(row);
        }
        public override void Commit()
        {
            foreach (object obs in _tiposObservacionesNuevas)
            {
                TipoObservacionNueva on = (TipoObservacionNueva)obs;
                if (on.Modo == "NEW")
                {
                    tpu_ProveedoresObservacionesTiposDataset.tpu_ProveedoresObservacionesTiposRow row = _data.tpu_ProveedoresObservacionesTipos.Newtpu_ProveedoresObservacionesTiposRow();
                    row.Descripcion                = on.DescripcionTipo;
                    row.FechaCreacion              = DateTime.Now;
                    row.Activo                     = true;
                    row.IdConexionCreacion         = Security.IdConexion;
                    row.IdProveedorObservacionTipo = on.KeyTipo;
                    if (on.KeyTipoPadre != "RAIZ")
                    {
                        row.IdProveedorObservacionTipoPadre = on.KeyTipoPadre;
                    }
                    row.IdReservado = 0;
                    row.IdEmpresa   = Security.IdEmpresa;
                    row.IdSucursal  = Security.IdSucursal;
                    _data.tpu_ProveedoresObservacionesTipos.Addtpu_ProveedoresObservacionesTiposRow(row);

                    string idVariable1 = string.Empty;
                    string idVariable2 = string.Empty;
                    long   idPerfil    = Security.IdPerfil;

                    if (on.KeyTipoPadre != "RAIZ" & !_modificaPerfilesSubTipos)
                    {
                        idVariable1 = "Proveedores.Observaciones.Add.SubTipos";
                        idVariable2 = "Proveedores.Observaciones.Ver.SubTipos";
                        foreach (sy_PerfilesDataset.sy_PerfilesRow rowP in _tablePerfiles.Rows)
                        {
                            this.agregarVariable(idVariable1, rowP.IdPerfil);
                            this.agregarVariable(idVariable2, rowP.IdPerfil);
                        }
                        _modificaPerfilesSubTipos = true;
                    }
                    else if (on.KeyTipoPadre.Equals("RAIZ") & !_modificaPerfilesTipos)
                    {
                        idVariable1 = "Proveedores.Observaciones.Add.Tipos";
                        idVariable2 = "Proveedores.Observaciones.Ver.Tipos";
                        foreach (sy_PerfilesDataset.sy_PerfilesRow rowP in _tablePerfiles.Rows)
                        {
                            this.agregarVariable(idVariable1, rowP.IdPerfil);
                            this.agregarVariable(idVariable2, rowP.IdPerfil);
                        }
                        _modificaPerfilesTipos = true;
                    }
                }
                else                 //MODIF
                {
                    DataRow rowT = mz.erp.businessrules.tpu_ProveedoresObservacionesTipos.GetByPk(on.KeyTipo);
                    rowT["Descripcion"] = on.DescripcionTipo;
                    rowT["Activo"]      = on.Activo;
                    if (on.KeyTipoPadre == "RAIZ")
                    {
                        rowT["IdProveedorObservacionTipoPadre"] = System.DBNull.Value;
                    }
                    _data.tpu_ProveedoresObservacionesTipos.ImportRow(rowT);
                }
            }
        }