public static EstadoOperacion modificarColumna(COLUMNA Columna)
        {
            try
            {
                using (Switch contexto = new Switch())
                {
                    using (contexto.CreateConeccionScope())
                    {
                        string query = "ModificarColumna";

                        DbCommand Comando = crearComando(contexto, Columna, query);

                        if (Comando.ExecuteNonQuery() != 1)
                        {
                            return new EstadoOperacion(false, null, null);
                        }

                        return new EstadoOperacion(true, null, null);
                    }
                }
            }
            catch (DbException ex)
            {
                return new EstadoOperacion(false, ex.Message, ex, false);
            }
            catch (Exception e)
            {

                return new EstadoOperacion(false, e.Message, e);
            }
        }
        public static EstadoOperacion eliminarColumna(COLUMNA Columna)
        {
            DbFactory Factoria = DataAccessFactory.ObtenerProveedor();
            try
            {
                using (Switch contexto = new Switch())
                {
                    using (contexto.CreateConeccionScope())
                    {
                        string query = "EliminarColumna";

                        DbCommand Comando = contexto.CreateCommand(query, CommandType.StoredProcedure);
                        Comando.Parameters.Add(Factoria.CrearParametro("@codigo", Columna.COL_CODIGO));

                        if (Comando.ExecuteNonQuery() != 1)
                        {
                            return new EstadoOperacion(false, null, null);
                        }

                        return new EstadoOperacion(true, null, null);
                    }
                }
            }
            catch (DbException dbex)
            {
                return new EstadoOperacion(false, dbex.Message, dbex);
            }
            catch (Exception e)
            {

                return new EstadoOperacion(false, e.Message, e);
            }
        }
 public static EstadoOperacion insertarColumna(COLUMNA Columna)
 {
     COLUMNA columna = DataAccess.Mensajeria.ColumnaDA.obtenerColumnaPorNombre(Columna.COL_NOMBRE);
     if (columna != null)
     {
         return new EstadoOperacion(false, "Ya existe una columna con ese Nombre", null);
     }
     return DataAccess.Mensajeria.ColumnaDA.insertarColumna(Columna);
 }
        public static EstadoOperacion modificarColumna(COLUMNA Columna)
        {
            COLUMNA columnAntigua = DataAccess.Mensajeria.ColumnaDA.obtenerColumnaPorCodigo(Columna.COL_CODIGO);

            if (columnAntigua.COL_NOMBRE.ToUpper() != Columna.COL_NOMBRE.ToUpper())
            {
                COLUMNA columnaMismoNombre = DataAccess.Mensajeria.ColumnaDA.obtenerColumnaPorNombre(Columna.COL_NOMBRE);
                if (columnaMismoNombre != null)
                {
                    return new EstadoOperacion(false, "Ya existe una columna con ese Nombre", null);
                }
            }

            return DataAccess.Mensajeria.ColumnaDA.modificarColumna(Columna);
        }
 protected void dsColumna_Selected(object sender, ObjectDataSourceStatusEventArgs e)
 {
     if (Request.QueryString["Tabla"] != "-1")
     {
         List<COLUMNA> lista = (List<COLUMNA>)e.ReturnValue;
         if (lista.Count == 0)
         {
             COLUMNA columna = new COLUMNA();
             columna.COL_NOMBRE = "";
             TIPO_DATO_COLUMNA tipoDato = new TIPO_DATO_COLUMNA()
             {
                 TDC_NOMBRE=""
             };
             lista.Add(columna);
         }
     }
 }
        protected void imgAgregar_Click(object sender, ImageClickEventArgs e)
        {
            COLUMNA columna = new COLUMNA()
            {
                COL_NOMBRE = ((TextBox)this.grvColumna.FooterRow.FindControl("txtNombreFooter")).Text,
                COL_LONGITUD = int.Parse(((TextBox)this.grvColumna.FooterRow.FindControl("txtLongitudFooter")).Text)
            };

            TABLA tabla = new TABLA()
            {
                TBL_CODIGO = int.Parse(((HiddenField)this.frmTabla.FindControl("hdnCodigo")).Value)
            };
            columna.TABLA = tabla;

            TIPO_DATO_COLUMNA tipoDato = new TIPO_DATO_COLUMNA()
            {
                TDC_CODIGO = int.Parse(((DropDownList)this.grvColumna.FooterRow.FindControl("drlTipoFooter")).SelectedValue)
            };
            columna.TIPO_DATO_COLUMNA = tipoDato;

            EstadoOperacion Estado = BusinessLayer.Mensajeria.ColumnaBL.insertarColumna(columna);

            if (Estado.Estado)
            {
                this.grvColumna.DataBind();
            }
            else
            {
                this.lblMensaje.Text = Estado.Mensaje;
            }
        }
 public static EstadoOperacion eliminarColumna(COLUMNA Columna)
 {
     return DataAccess.Mensajeria.ColumnaDA.eliminarColumna(Columna);
 }
        private static DbCommand crearComando(Switch contexto, COLUMNA Columna, string query)
        {
            DbFactory Factoria = DataAccessFactory.ObtenerProveedor();

            DbCommand Comando = contexto.CreateCommand(query, CommandType.StoredProcedure);

            Comando.Parameters.Add(Factoria.CrearParametro("@codigo", Columna.COL_CODIGO));
            Comando.Parameters.Add(Factoria.CrearParametro("@nombre", Columna.COL_NOMBRE));
            Comando.Parameters.Add(Factoria.CrearParametro("@longitud", Columna.COL_LONGITUD));
            Comando.Parameters.Add(Factoria.CrearParametro("@tabla", Columna.TABLA != null ? Columna.TABLA.TBL_CODIGO : 0));
            Comando.Parameters.Add(Factoria.CrearParametro("@tipoDatoColumna", Columna.TIPO_DATO_COLUMNA.TDC_CODIGO));

            return Comando;
        }