Option Explicit On Option Strict On Imports System.Data Imports Extensiones Imports Microsoft.Reporting.WebForms Partial Class AF_RepRevision Inherits ClsPaginas #Region " PROPIEDADES" Property DT_Cabeceras As DataTable Get If ViewState("DT_Cabeceras") Is Nothing Then Return New DataTable Else Return DirectCast(ViewState("DT_Cabeceras"), DataTable) End If End Get Set(value As DataTable) ViewState("DT_Cabeceras") = value End Set End Property Property DT_Datos As DataTable Get If ViewState("DT_Datos") Is Nothing Then Return New DataTable Else Return DirectCast(ViewState("DT_Datos"), DataTable) End If End Get Set(value As DataTable) ViewState("DT_Datos") = value End Set End Property #End Region Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not Page.IsPostBack Then CargaCombos() CargaDatos() Dim FechaActual As Date = Now TxtFechaF.Text = $"{FechaActual.Day.ToString("00")}/{FechaActual.Month.ToString("00")}/{FechaActual.Year}" FechaActual = FechaActual.AddDays(-30) TxtFechaI.Text = $"{FechaActual.Day.ToString("00")}/{FechaActual.Month.ToString("00")}/{FechaActual.Year}" End If End Sub #Region " CARGA PARAMETROS " #End Region #Region " CARGA COMBOS " Protected Sub CargaCombos() CargarCentrosDeCosto(Nothing, DdlSubProyecto, Nothing, LblSubProyecto) DdlTipoActivo.DataSource = GlobalDTTipoActivoFijo(UsuarioActual.CveEmpresa).FiltraParametros("", "TipoActivoFijo") DdlTipoActivo.DataBind() DdlTipoActivo.Items.Insert(0, New ListItem("Todos", "-1")) End Sub #End Region #Region " CARGA DATOS " Protected Sub BtnFiltrar_Click(sender As Object, e As EventArgs) CargaDatos() End Sub #End Region #Region " GV DATOS " Private Sub CargaDatos() Dim ObjAF As New ClsAF If ObjAF.GetMetricasValores(-1, -1, -1, -1, DdlSubProyecto.SelectedValue.ToEntero, DdlTipoActivo.SelectedValue.ToEntero, DdlSubTipoActivo.SelectedValue.ToEntero, TxtFechaI.Text.ToDate, TxtFechaF.Text.ToDate, UsuarioActual.CveEmpresa) Then DT_Cabeceras = ObjAF.DSResultados.Tables(0) DT_Datos = ObjAF.DSResultados.Tables(1) 'GvDatos.DataSource = ObjAF.DtResultados Else GvDatos.DataSource = Nothing End If ObjAF.Dispose() 'GvDatos.DataBind() 'UpDatos.Update() If DT_Datos.Rows.Count > 0 Then CargaTablas() End If End Sub Private Sub CargaTablas() Dim IDX_LIMPIAR As Integer = 1 '5 For IDX_LIMPIAR = 2 To 16 CType(GvDatos.Columns(IDX_LIMPIAR), BoundField).DataField = Nothing CType(GvDatos.Columns(IDX_LIMPIAR), BoundField).HeaderText = "" GvDatos.Columns(IDX_LIMPIAR).Visible = False Next Dim x As Integer = 0 Dim limite As Integer = DT_Cabeceras.Rows.Count - 1 For x = 0 To limite CType(GvDatos.Columns(x + 2), BoundField).DataField = DT_Datos.Columns(5 + x).ColumnName CType(GvDatos.Columns(x + 2), BoundField).HeaderText = DT_Cabeceras.Rows(x)("Metrica").ToString GvDatos.Columns(x + 2).Visible = True Next x GvDatos.DataSource = DT_Datos GvDatos.DataBind() UpDatos.Update() 'For IDX_LIMPIAR = 2 To 17 'CType(GvDatos.Columns(IDX_LIMPIAR), BoundField).DataField = Nothing 'CType(GvDatos.Columns(IDX_LIMPIAR), BoundField).HeaderText = DT_Cabeceras.Rows() 'Next End Sub Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then End If End Sub #End Region Protected Sub LnkEliminarMetricaValor_Click(sender As Object, e As EventArgs) End Sub Protected Sub DdlTipoActivo_SelectedIndexChanged(sender As Object, e As EventArgs) DdlSubTipoActivo.Items.Clear() DdlSubTipoActivo.DataSource = GlobalDTSubTipoActivoFijo(UsuarioActual.CveEmpresa).FiltraParametros(String.Format("CveTipoActivoFijo = {0}", DdlTipoActivo.SelectedValue), "SubTipoActivoFijo") DdlSubTipoActivo.DataBind() DdlSubTipoActivo.Items.Insert(0, New ListItem("Todos", "-1")) UpFiltro.Update() End Sub End Class