Option Explicit On Option Strict On Imports System.Data Imports Extensiones Imports Microsoft.Reporting.WebForms Partial Class Contabilidad2_RepOrigenAplicacion Inherits ClsPaginas #Region " PROPIEDADES NORMAL " Private Property DtDatos As DataTable Get DtDatos = DirectCast(ViewState("DtDatos"), DataTable) End Get Set(ByVal value As DataTable) ViewState("DtDatos") = value End Set End Property #End Region #Region " PROPIEDADES ANUAL " Private Property DtDatosAnual As DataTable Get DtDatosAnual = DirectCast(ViewState("DtDatosAnual"), DataTable) End Get Set(ByVal value As DataTable) ViewState("DtDatosAnual") = value End Set End Property Private Property Anos As Integer Get Anos = ViewState("Anos").ToString.ToEntero End Get Set(value As Integer) ViewState("Anos") = value End Set End Property #End Region #Region " PROPIEDADES " Private Property TipoReporte As Integer Get TipoReporte = ViewState("TipoReporte").ToString.ToEntero End Get Set(value As Integer) ViewState("TipoReporte") = value End Set End Property Private Property DtDatosMensual As DataTable Get DtDatosMensual = DirectCast(ViewState("DtDatosMensual"), DataTable) End Get Set(ByVal value As DataTable) ViewState("DtDatosMensual") = value End Set End Property #End Region Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Not Page.IsPostBack Then 'If UsuarioActual.Empresa.UsaAC Then ' TipoReporte = -1 'Else TipoReporte = 1 tdTipoReporte.Visible = True 'End If 'Normal TxtFechaDel.Text = DateSerial(Year(Now), Month(Now), 1).ToShortDateString TxtFechaAl.Text = Date.Now.ToShortDateString 'Anual Anos = 0 Dim ClsConta As New ClsContabilidad If ClsConta.GetEjercicios(UsuarioActual.CveEmpresa) Then DdlEjercicio.DataSource = ClsConta.DtResultados Else DdlEjercicio.DataSource = Nothing End If DdlSubproyecto.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa, -1) DdlSubproyecto.DataBind() DdlEjercicio.SelectedValue = Now.Year.ToString TabContainer_ActiveTabChanged(TabContainer, EventArgs.Empty) End If End Sub Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs) 'Nota: ' 0 = Normal ' 1 = Mensual ' 2 = Anual If TabContainer.ActiveTabIndex = 0 Then CargaDatos() ElseIf TabContainer.ActiveTabIndex = 1 Then CargaDatosMensual() ElseIf TabContainer.ActiveTabIndex = 2 Then CargaDatosAnual() End If End Sub Protected Sub TabContainer_ActiveTabChanged(sender As Object, e As EventArgs) 'Nota: ' 0 = Normal ' 1 = Mensual ' 2 = Anual 'Esconde Todo de lo variable de Filtros TdSubTotales.Visible = False TdEjercicio.Visible = False TdFI.Visible = False TdFF.Visible = False If TabContainer.ActiveTabIndex = 0 Then TdFI.Visible = True TdFF.Visible = True ElseIf TabContainer.ActiveTabIndex = 1 Then TdEjercicio.Visible = True TdSubTotales.Visible = True ElseIf TabContainer.ActiveTabIndex = 2 Then TdEjercicio.Visible = True End If UpFiltros.Update() BtnConsultar_Click(BtnConsultar, EventArgs.Empty) End Sub #Region " NORMAL " Private Sub CargaDatos() 'Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) Dim ObjConta As New ClsContabilidad ' Dim FechaI = String.Format("01/{0}/{1}", DdlPeriodo.SelectedValue.PadLeft(2, "0"c), Anio) ' Dim FechaF = DateAdd(DateInterval.Day, -1, DateAdd(DateInterval.Month, 1, CDate(FechaI))).ToString("dd/MM/yyyy") Dim FechaInicio = If(TxtFechaDel.Text = "" Or TxtFechaDel.Text = "__/__/____", Date.Now, TxtFechaDel.Text.ToDate) Dim FechaFin = If(TxtFechaAl.Text = "" Or TxtFechaAl.Text = "__/__/____", Date.Now, TxtFechaAl.Text.ToDate) TipoReporte = If(TipoReporte = -1, -1, DdlTipoReporte.SelectedValue.ToEntero) Dim CveSubProyecto As String = DdlSubproyecto.SelectedValue.ToString Dim FechaI = String.Format("{0}/{1}/{2}", FechaInicio.Day, FechaInicio.Month, FechaInicio.Year) Dim FechaF = String.Format("{0}/{1}/{2}", FechaFin.Day, FechaFin.Month, FechaFin.Year) If ObjConta.GetOrigenAplicacion(FechaI, FechaF, TipoReporte, CveSubProyecto, UsuarioActual.CveEmpresa) Then DtDatos = ObjConta.DtResultados Else DtDatos = Nothing Alert("Ocurrio un error al cargar los datos de origen y aplicación", TipoMensaje.MsgError) End If ObjConta.Dispose() If DtDatos IsNot Nothing Then CargaGrid() End If End Sub Private Sub CargaGrid() GvDatos.DataSource = DtDatos GvDatos.DataBind() UpDatos.Update() End Sub Protected Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatos.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then ''Titulo y Sumatoria de cambios 'If e.Row.DBCampo("Orden3").ToString.ToEntero = 10 Or e.Row.DBCampo("Orden3").ToString.ToEntero = 30 Then ' e.Row.FCLabel("LbNombre").Font.Bold = True 'End If ''CUENTAS 'If e.Row.DBCampo("Orden3").ToString.ToEntero = 20 Then ' e.Row.FCLabel("LbNombre").Attributes.Add("style", "padding-left: 20px;") 'End If 'TOTAL If e.Row.DBCampo("Nombre").ToString.Trim = "" Then e.Row.Attributes.Add("style", "border-top: 1px solid; margin-top:10px;") e.Row.FCLabel("LbNombre").Font.Bold = True e.Row.FCLabel("LbNombre").Font.Italic = True e.Row.FCLabel("LbNombre").Text = "TOTAL" End If End If End Sub #End Region #Region " MENSUAL " Private Sub CargaDatosMensual() ''Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) Dim ObjConta As New ClsContabilidad TipoReporte = If(TipoReporte = -1, -1, DdlTipoReporte.SelectedValue.ToEntero) Dim CveSubProyecto As String = DdlSubproyecto.SelectedValue.ToString If ObjConta.GetOrigenAplicacionMensual(DdlEjercicio.SelectedValue.ToEntero, TipoReporte, CveSubProyecto, UsuarioActual.CveEmpresa) Then DtDatosMensual = ObjConta.DtResultados Else DtDatosMensual = Nothing Alert("Ocurrio un error al cargar los datos del estado de origen y aplicación de recursos", TipoMensaje.MsgError) End If ObjConta.Dispose() EscondeSubtotales() If DtDatosMensual IsNot Nothing Then CargaGridMensual() End If End Sub Private Sub EscondeSubtotales() 'Esconde Trimestral GvDatosMensual.Columns(4).Visible = False GvDatosMensual.Columns(9).Visible = False GvDatosMensual.Columns(14).Visible = False GvDatosMensual.Columns(18).Visible = False 'Esconde Cuatrimestral GvDatosMensual.Columns(6).Visible = False GvDatosMensual.Columns(12).Visible = False GvDatosMensual.Columns(19).Visible = False If DdlSubtotales.SelectedValue = "2" Then GvDatosMensual.Columns(4).Visible = True GvDatosMensual.Columns(9).Visible = True GvDatosMensual.Columns(14).Visible = True GvDatosMensual.Columns(18).Visible = True ElseIf DdlSubtotales.SelectedValue = "3" Then GvDatosMensual.Columns(6).Visible = True GvDatosMensual.Columns(12).Visible = True GvDatosMensual.Columns(19).Visible = True End If End Sub Private Sub CargaGridMensual() GvDatosMensual.DataSource = DtDatosMensual GvDatosMensual.DataBind() UpDatosMensual.Update() End Sub Protected Sub GvDatosMensual_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatosMensual.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then 'AGRUPADOR DE CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 2 Then e.Row.FCLabel("LbNombre").Font.Bold = True End If 'CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 1 Then e.Row.FCLabel("LbNombre").Attributes.Add("style", "padding-left: 20px;") End If 'TOTALES If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then e.Row.Attributes.Add("style", "border-top: 1px solid;") e.Row.FCLabel("LbNombre").Font.Bold = True e.Row.FCLabel("LbNombre").Font.Italic = True End If End If End Sub #End Region #Region " ANUAL " Private Sub CargaDatosAnual() 'Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) Dim ObjConta As New ClsContabilidad TipoReporte = If(TipoReporte = -1, -1, DdlTipoReporte.SelectedValue.ToEntero) Dim CveSubProyecto As String = DdlSubproyecto.SelectedValue.ToString Anos = (Year(Date.Now) - DdlEjercicio.SelectedValue.ToEntero) + 1 If ObjConta.GetOrigenAplicacionAnual(DdlEjercicio.SelectedValue.ToEntero, TipoReporte, CveSubProyecto, UsuarioActual.CveEmpresa) Then DtDatosAnual = ObjConta.DtResultados Else DtDatosAnual = Nothing Alert("Ocurrio un error al cargar los datos del estado de origen y aplicación de recursos", TipoMensaje.MsgError) End If ObjConta.Dispose() If DtDatosAnual IsNot Nothing Then CargaGridAnual() End If 'Esconde todo For index = 1 To 12 GvDatosAnual.Columns(index).Visible = False Next For index = 1 To Anos GvDatosAnual.Columns(index).Visible = True GvDatosAnual.HeaderRow.FCLabel("LbAno" + index.ToString).Text = (DdlEjercicio.SelectedValue.ToEntero + index - 1).ToString Next End Sub Private Sub CargaGridAnual() GvDatosAnual.DataSource = DtDatosAnual GvDatosAnual.DataBind() UpDatosAnual.Update() End Sub Protected Sub GvDatosAnual_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatosAnual.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then 'AGRUPADOR DE CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 2 Then e.Row.FCLabel("LbNombre").Font.Bold = True End If 'CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 1 Then e.Row.FCLabel("LbNombre").Attributes.Add("style", "padding-left: 20px;") End If 'TOTALES If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then e.Row.Attributes.Add("style", "border-top: 1px solid;") e.Row.FCLabel("LbNombre").Font.Bold = True e.Row.FCLabel("LbNombre").Font.Italic = True End If End If End Sub #End Region End Class