Option Explicit On Option Strict On Imports System.Data Imports Extensiones Imports Microsoft.Reporting.WebForms Partial Class Contabilidad_RepBalanceGeneral Inherits ClsPaginas #Region " P R O P I E D A D E S - B A L A N C E - G E N E R A L" 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 Private Property TotalActivoActual As Double Get TotalActivoActual = ViewState("TotalActivoActual").ToString.ToDouble End Get Set(value As Double) ViewState("TotalActivoActual") = value End Set End Property Private Property TotalActivoAnterior As Double Get TotalActivoAnterior = ViewState("TotalActivoAnterior").ToString.ToDouble End Get Set(value As Double) ViewState("TotalActivoAnterior") = value End Set End Property Private Property TotalPasivoActual As Double Get TotalPasivoActual = ViewState("TotalPasivoActual").ToString.ToDouble End Get Set(value As Double) ViewState("TotalPasivoActual") = value End Set End Property Private Property TotalPasivoAnterior As Double Get TotalPasivoAnterior = ViewState("TotalPasivoAnterior").ToString.ToDouble End Get Set(value As Double) ViewState("TotalPasivoAnterior") = value End Set End Property Private Property TotalPatrimonioActual As Double Get TotalPatrimonioActual = ViewState("TotalPatrimonioActual").ToString.ToDouble End Get Set(value As Double) ViewState("TotalPatrimonioActual") = value End Set End Property Private Property TotalPatrimonioAnterior As Double Get TotalPatrimonioAnterior = ViewState("TotalPatrimonioAnterior").ToString.ToDouble End Get Set(value As Double) ViewState("TotalPatrimonioAnterior") = value End Set End Property Private Property TotalPasivoPatrimonioActual As Double Get TotalPasivoPatrimonioActual = ViewState("TotalPasivoPatrimonioActual").ToString.ToDouble End Get Set(value As Double) ViewState("TotalPasivoPatrimonioActual") = value End Set End Property Private Property TotalPasivoPatrimonioAnterior As Double Get TotalPasivoPatrimonioAnterior = ViewState("TotalPasivoPatrimonioAnterior").ToString.ToDouble End Get Set(value As Double) ViewState("TotalPasivoPatrimonioAnterior") = value End Set End Property Private Property FechaInicioActual As Date Get FechaInicioActual = ViewState("FechaInicioActual").ToString.ToDate End Get Set(value As Date) ViewState("FechaInicioActual") = value End Set End Property Private Property FechaFinActual As Date Get FechaFinActual = ViewState("FechaFinActual").ToString.ToDate End Get Set(value As Date) ViewState("FechaFinActual") = value End Set End Property Private Property FechaInicioAnterior As Date Get FechaInicioAnterior = ViewState("FechaInicioAnterior").ToString.ToDate End Get Set(value As Date) ViewState("FechaInicioAnterior") = value End Set End Property Private Property FechaFinAnterior As Date Get FechaFinAnterior = ViewState("FechaFinAnterior").ToString.ToDate End Get Set(value As Date) ViewState("FechaFinAnterior") = value End Set End Property #End Region #Region " PROPIEDADES - NORMAL " Private Property TipoReporte As Integer Get TipoReporte = ViewState("TipoReporte").ToString.ToEntero End Get Set(value As Integer) ViewState("TipoReporte") = value End Set End Property 'PROPIEDADES DE TITULOS Private Property TituloActivoCirculante As String Get TituloActivoCirculante = ViewState("TituloActivoCirculante").ToString End Get Set(value As String) ViewState("TituloActivoCirculante") = value End Set End Property Private Property TituloActivoNoCirculante As String Get TituloActivoNoCirculante = ViewState("TituloActivoNoCirculante").ToString End Get Set(value As String) ViewState("TituloActivoNoCirculante") = value End Set End Property Private Property TituloActivoDiferido As String Get TituloActivoDiferido = ViewState("TituloActivoDiferido").ToString End Get Set(value As String) ViewState("TituloActivoDiferido") = value End Set End Property Private Property TituloPasivoCirculante As String Get TituloPasivoCirculante = ViewState("TituloPasivoCirculante").ToString End Get Set(value As String) ViewState("TituloPasivoCirculante") = value End Set End Property Private Property TituloPasivoNoCirculante As String Get TituloPasivoNoCirculante = ViewState("TituloPasivoNoCirculante").ToString End Get Set(value As String) ViewState("TituloPasivoNoCirculante") = value End Set End Property Private Property TituloPasivoDiferido As String Get TituloPasivoDiferido = ViewState("TituloPasivoDiferido").ToString End Get Set(value As String) ViewState("TituloPasivoDiferido") = value End Set End Property Private Property TituloCapital As String Get TituloCapital = ViewState("TituloCapital").ToString End Get Set(value As String) ViewState("TituloCapital") = value End Set End Property 'PROPIEDADES DE FILTROS Private Property FiltroActivoCirculante As String Get FiltroActivoCirculante = ViewState("FiltroActivoCirculante").ToString End Get Set(value As String) ViewState("FiltroActivoCirculante") = value End Set End Property Private Property FiltroActivoNoCirculante As String Get FiltroActivoNoCirculante = ViewState("FiltroActivoNoCirculante").ToString End Get Set(value As String) ViewState("FiltroActivoNoCirculante") = value End Set End Property Private Property FiltroActivoDiferido As String Get FiltroActivoDiferido = ViewState("FiltroActivoDiferido").ToString End Get Set(value As String) ViewState("FiltroActivoDiferido") = value End Set End Property Private Property FiltroPasivoCirculante As String Get FiltroPasivoCirculante = ViewState("FiltroPasivoCirculante").ToString End Get Set(value As String) ViewState("FiltroPasivoCirculante") = value End Set End Property Private Property FiltroPasivoNoCirculante As String Get FiltroPasivoNoCirculante = ViewState("FiltroPasivoNoCirculante").ToString End Get Set(value As String) ViewState("FiltroPasivoNoCirculante") = value End Set End Property Private Property FiltroPasivoDiferido As String Get FiltroPasivoDiferido = ViewState("FiltroPasivoDiferido").ToString End Get Set(value As String) ViewState("FiltroPasivoDiferido") = value End Set End Property Private Property FiltroCapital As String Get FiltroCapital = ViewState("FiltroCapital").ToString End Get Set(value As String) ViewState("FiltroCapital") = value End Set End Property Private Property FiltroUtilidad As String Get FiltroUtilidad = ViewState("FiltroUtilidad").ToString End Get Set(value As String) ViewState("FiltroUtilidad") = value End Set End Property #End Region #Region " PROPIEDADES - MENSUAL " 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 #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 Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Not Page.IsPostBack Then If UsuarioActual.Empresa.UsaContabilidad Or UsuarioActual.Empresa.UsaAC Then BtnConsultar.Enabled = True TabNormal.Enabled = True TabMensual.Enabled = True TabAnual.Enabled = True If UsuarioActual.Empresa.UsaAC Then TipoReporte = -1 Else tdTipoReporte.Visible = True TipoReporte = 1 End If CargaSegmentosNegocio() InicializaValores() 'SI NO USA AC If TipoReporte > 0 Then LtlTituloHacienda.Text = "CAPITAL" LtlTotalHacienda.Text = "Total Capital:" LtlTotalPasivoPatrimonio.Text = "Total del Pasivo y Capital:" GvActivo.Columns(2).Visible = False GvActivoNoCirculante.Columns(2).Visible = False GvActivoDiferido.Columns(2).Visible = False GvPasivo.Columns(2).Visible = False GvPasivoNoCirculante.Columns(2).Visible = False GvPasivoDiferido.Columns(2).Visible = False GvPatrimonio.Columns(2).Visible = False GvUtilidad.Columns(2).Visible = False GvPatrimonioGenerado.Visible = False GvPatrimonioActualizacion.Visible = False TdTotalActivoAnterior.Visible = False TdTotalPasivoAnterior.Visible = False TdTotalPasivo.Visible = False TdTotalPatrimonio.Visible = False Else GvUtilidad.Visible = False GvActivoDiferido.Visible = False GvPasivoDiferido.Visible = False End If UpPatrimonio.Update() CargaEjercicios() DdlEjercicio.SelectedValue = Now.Year.ToString 'Anual Anos = 0 TabContainer_ActiveTabChanged(Tabs, EventArgs.Empty) Else Alert("La empresa no usa Contabilidad ni Armonización Contable", TipoMensaje.MsgError) End If End If End Sub #Region " INICIALIZA VALORES " Private Sub InicializaValores() TotalActivoActual = 0 TotalActivoAnterior = 0 TotalPasivoActual = 0 TotalPasivoAnterior = 0 TotalPatrimonioActual = 0 TotalPatrimonioAnterior = 0 TotalPasivoPatrimonioActual = 0 TotalPasivoPatrimonioAnterior = 0 ConfiguraTitulos() ConfiguraFiltros() End Sub Private Sub ConfiguraTitulos() TituloActivoCirculante = "ACTIVO CIRCULANTE" TituloActivoNoCirculante = "ACTIVO NO CIRCULANTE" TituloActivoDiferido = "ACTIVO DIFERIDO" TituloPasivoCirculante = "PASIVO CIRCULANTE" TituloPasivoNoCirculante = "PASIVO NO CIRCULANTE" TituloPasivoDiferido = "PASIVO DIFERIDO" TituloCapital = "CAPITAL CONTABLE" Select Case UsuarioActual.CveEmpresa Case 7 TituloActivoNoCirculante = "ACTIVO FIJO" TituloPasivoNoCirculante = "PASIVO A LARGO PLAZO" End Select End Sub Private Sub ConfiguraFiltros() FiltroActivoCirculante = "Tipo in ('A','B','C') AND (Sup = 'ACTIVO CIRCULANTE' OR Nombre = 'ACTIVO CIRCULANTE' OR Sup = 'CIRCULANTE' OR Nombre ='CIRCULANTE' OR Sup = 'Activo a corto plazo' OR Nombre ='Activo a corto plazo' )" FiltroActivoNoCirculante = "Tipo in ('A','B','C') AND (Sup = 'ACTIVO NO CIRCULANTE' OR Nombre = 'ACTIVO NO CIRCULANTE' OR Sup = 'FIJO' OR Nombre ='FIJO' OR Sup = 'Activo a largo plazo' OR Nombre ='Activo a largo plazo')" FiltroActivoDiferido = "Tipo In ('A','B','C') AND (Sup = 'DIFERIDO' OR Nombre = 'DIFERIDO')" FiltroPasivoCirculante = "Tipo in ('D') AND (Sup = 'PASIVO CIRCULANTE' OR (Sup = 'PASIVO' AND Nombre <> 'DIFERIDO' AND Nombre <> 'PASIVO NO CIRCULANTE' ) OR Sup = 'CIRCULANTE' OR Nombre = 'PASIVO CIRCULANTE' OR Sup = 'CORTO PLAZO' OR Nombre = 'CORTO PLAZO' OR Sup = 'Pasivo a corto plazo' OR Nombre = 'Pasivo a corto plazo')" FiltroPasivoNoCirculante = "Tipo in ('D') AND (Sup = 'PASIVO NO CIRCULANTE' OR Nombre = 'PASIVO NO CIRCULANTE' OR Sup = 'LARGO PLAZO' OR Nombre = 'LARGO PLAZO' OR Nombre = 'PASIVO LARGO PLAZO' OR Sup = 'Pasivo a largo plazo' OR Nombre = 'Pasivo a largo plazo')" FiltroPasivoDiferido = "Tipo in ('D') AND (Sup = 'DIFERIDO' OR Nombre = 'DIFERIDO')" FiltroCapital = "Tipo in ('F') AND (Sup = 'PATRIMONIO CONTRIBUIDO' OR Nombre = 'PATRIMONIO CONTRIBUIDO' OR Sup = 'CAPITAL CONTABLE' OR Sup = 'CAPITAL' OR Nombre = 'CAPITAL CONTABLE' OR Nombre = 'CAPITAL')" FiltroUtilidad = "Tipo in ('F') AND (Codigo = '_UTILIDAD')" Select Case UsuarioActual.CveEmpresa Case 119 FiltroActivoNoCirculante = "Tipo in ('A','B','C') AND (Sup = 'ACTIVO NO CIRCULANTE' OR Nombre = 'ACTIVO NO CIRCULANTE' OR Sup = 'ACTIVO FIJO' OR Nombre ='ACTIVO FIJO')" FiltroActivoDiferido = "Tipo in ('A','B','C') AND (Sup = 'ACTIVO NO CIRCULANTE' OR Nombre = 'ACTIVO NO CIRCULANTE' OR Sup = 'ACTIVO DIFERIDO' OR Nombre ='ACTIVO DIFERIDO')" FiltroCapital = "Tipo in ('F') AND (Sup = 'PATRIMONIO CONTRIBUIDO' OR Nombre = 'PATRIMONIO CONTRIBUIDO' OR Sup = 'CAPITAL CONTABLE' OR Sup = 'CAPITAL' OR Nombre = 'CAPITAL CONTABLE' )" End Select End Sub Private Sub CargaEjercicios() Dim ClsConta As New ClsContPAQi(UsuarioActual.Empresa) If ClsConta.GetEjercicios() Then DdlEjercicio.DataSource = ClsConta.DtResultados Else DdlEjercicio.DataSource = Nothing End If ClsConta.Dispose() DdlEjercicio.DataBind() End Sub Private Sub CargaTitulosGV() If GvActivoNoCirculante.HeaderRow IsNot Nothing Then GvActivoNoCirculante.HeaderRow.FCLabel("LbTitulo").Text = "ACTIVO FIJO" End If If GvPasivoNoCirculante.HeaderRow IsNot Nothing Then GvPasivoNoCirculante.HeaderRow.FCLabel("LbTitulo").Text = "PASIVO LARGO PLAZO" End If If GvPatrimonio.HeaderRow IsNot Nothing Then GvPatrimonio.HeaderRow.FCLabel("LbTitulo").Text = "CAPITAL CONTABLE" End If End Sub Private Sub CargaSegmentosNegocio() Dim ObjContpaq As New ClsContPAQi(UsuarioActual.Empresa) Dim strGlobal As String = "" If ObjContpaq.GetSegmentosNegocio(-1, "-1") Then DdlSegmentoNegocio.DataSource = ObjContpaq.DtResultados DdlSegmentoNegocio.DataBind() End If ObjContpaq.Dispose() DdlSegmentoNegocio.Items.Insert(0, New ListItem("Todos", "-1")) DdlSegmentoNegocio.SelectedValue = "-1" End Sub #End Region #Region " REPORTE NORMAL " Private Sub CargaDatos() Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) Dim FechaI = String.Format("01/{0}/{1}", DdlPeriodo.SelectedValue.PadLeft(2, CChar("0")), If(DdlEjercicio.SelectedValue.Length = 0, Now.Year.ToString, DdlEjercicio.SelectedValue)).ToDate Dim FechaF = FechaI.ToDate.LastDayOfMonth TipoReporte = If(TipoReporte = -1, -1, DdlTipoReporte.SelectedValue.ToEntero) Dim IdCuentaAhorroDesahorro = If(UsuarioActual.CveEmpresa = 48, 87, 9999) If ObjConta.GetBalanceGeneral("01/01/1000".ToDate, FechaF, UsuarioActual.CveEmpresa, TipoReporte, UsuarioActual.Empresa.UsaAC, IdCuentaAhorroDesahorro, SegmentoNegocio:=DdlSegmentoNegocio.SelectedValue.ToEntero) Then DtDatos = ObjConta.DtResultados CargaGrids() CargaTitulosGV() SumaTotales() Else DtDatos = Nothing Alert("Ocurrio un error al cargar los datos del estado de situación financiera", TipoMensaje.MsgError) End If ObjConta.Dispose() End Sub Private Sub CargaGrids() 'ACTIVO CIRCULANTE Dim DtActivoCirculante = DtDatos.FiltraParametros(FiltroActivoCirculante) AgregaRowTotal("ACTIVO CIRCULANTE", DtActivoCirculante) GvActivo.DataSource = DtActivoCirculante GvActivo.DataBind() 'ACTIVO NO CIRCULANTE Dim DtActivoNoCirculante = DtDatos.FiltraParametros(FiltroActivoNoCirculante) AgregaRowTotal(TituloActivoNoCirculante, DtActivoNoCirculante) GvActivoNoCirculante.DataSource = DtActivoNoCirculante GvActivoNoCirculante.DataBind() 'ACTIVO DIFERIDO Dim DtActivoDiferido = DtDatos.FiltraParametros(FiltroActivoDiferido) AgregaRowTotal("ACTIVO DIFERIDO", DtActivoDiferido) GvActivoDiferido.DataSource = DtActivoDiferido GvActivoDiferido.DataBind() UpActivo.Update() 'PASIVO CIRCULANTE Dim DtPasivoCirculante = DtDatos.FiltraParametros(FiltroPasivoCirculante) AgregaRowTotal("PASIVO CIRCULANTE", DtPasivoCirculante) GvPasivo.DataSource = DtPasivoCirculante GvPasivo.DataBind() 'PASIVO NO CIRCULANTE Dim DtPasivoNoCirculante = DtDatos.FiltraParametros(FiltroPasivoNoCirculante) AgregaRowTotal(TituloPasivoNoCirculante, DtPasivoNoCirculante) GvPasivoNoCirculante.DataSource = DtPasivoNoCirculante GvPasivoNoCirculante.DataBind() 'PASIVO DIFERIDO Dim DtPasivoDiferido = DtDatos.FiltraParametros(FiltroPasivoDiferido) AgregaRowTotal("PASIVO DIFERIDO", DtPasivoDiferido) GvPasivoDiferido.DataSource = DtPasivoDiferido GvPasivoDiferido.DataBind() UpPasivo.Update() 'PATRIMONIO Dim DtPatrimonioContribuido = DtDatos.FiltraParametros(FiltroCapital) AgregaRowTotal(If(TipoReporte < 0, "PATRIMONIO CONTRIBUIDO", "CAPITAL"), DtPatrimonioContribuido) GvPatrimonio.DataSource = DtPatrimonioContribuido GvPatrimonio.DataBind() Dim DtUtilidad = DtDatos.FiltraParametros(FiltroUtilidad) If DtUtilidad.Rows.Count > 1 Then AgregaRowTotal(If(TipoReporte < 0, "PATRIMONIO CONTRIBUIDO", "UTILIDAD"), DtUtilidad) End If GvUtilidad.DataSource = DtUtilidad GvUtilidad.DataBind() Dim DtPatrimonioGenerado = DtDatos.FiltraParametros("Tipo in ('F') AND (Sup = 'PATRIMONIO GENERADO' OR Nombre = 'PATRIMONIO GENERADO')") AgregaRowTotal("PATRIMONIO GENERADO", DtPatrimonioGenerado) GvPatrimonioGenerado.DataSource = DtPatrimonioGenerado GvPatrimonioGenerado.DataBind() Dim DtPatrimonioActualizacion = DtDatos.FiltraParametros("Tipo in ('F') AND (Sup = 'EXCESO O INSUFICIENCIA EN LA ACTUALIZACION D/PATRI' OR Nombre = 'EXCESO O INSUFICIENCIA EN LA ACTUALIZACION D/PATRI')") AgregaRowTotal("EXCESO O INSUFICIENCIA EN LA ACTUALIZACION", DtPatrimonioActualizacion) GvPatrimonioActualizacion.DataSource = DtPatrimonioActualizacion GvPatrimonioActualizacion.DataBind() UpPatrimonio.Update() End Sub Private Sub AgregaRowTotal(Titulo As String, ByRef Dt As DataTable) Dim Row = Dt.NewRow Row.Item("Nombre") = $"   TOTAL {Titulo}" Row.Item("CtaMayor") = -1 If Dt.Rows.Count > 0 Then Row.Item("ImporteActual") = Dt.Rows(0)("ImporteActual").ToString Row.Item("ImporteAnterior") = Dt.Rows(0)("ImporteAnterior").ToString Dt.Rows.RemoveAt(0) Else Row.Item("ImporteActual") = "0.00" Row.Item("ImporteAnterior") = "0.00" End If Dt.Rows.Add(Row) End Sub Private Sub SumaTotales() TotalPasivoPatrimonioActual = TotalPasivoActual + TotalPatrimonioActual TotalPasivoPatrimonioAnterior = TotalPasivoAnterior + TotalPatrimonioAnterior 'Llena Lb´s Totales LbTotalActivoActual.Text = TotalActivoActual.ToString.FormatoNumero LbTotalActivoAnterior.Text = TotalActivoAnterior.ToString.FormatoNumero LbTotalPasivoActual.Text = TotalPasivoActual.ToString.FormatoNumero LbTotalPasivoAnterior.Text = TotalPasivoAnterior.ToString.FormatoNumero LbTotalPatrimonioActual.Text = TotalPatrimonioActual.ToString.FormatoNumero LbTotalPatrimonioAnterior.Text = TotalPatrimonioAnterior.ToString.FormatoNumero LbTotalPasivoPatrimonioActual.Text = TotalPasivoPatrimonioActual.ToString.FormatoNumero LbTotalPasivoPatrimonioAnterior.Text = TotalPasivoPatrimonioAnterior.ToString.FormatoNumero Dim Descuadre = False 'COLOREA ROJO SI NO CUADRAN TOTALES If TotalActivoActual <> TotalPasivoPatrimonioActual Then LbTotalActivoActual.ForeColor = Drawing.Color.Red LbTotalPasivoPatrimonioActual.ForeColor = Drawing.Color.Red Descuadre = True Else LbTotalActivoActual.ForeColor = Drawing.Color.Black LbTotalPasivoPatrimonioActual.ForeColor = Drawing.Color.Black End If If TotalActivoAnterior <> TotalPasivoPatrimonioAnterior Then LbTotalActivoAnterior.ForeColor = Drawing.Color.Red LbTotalPasivoPatrimonioAnterior.ForeColor = Drawing.Color.Red Descuadre = True Else LbTotalActivoAnterior.ForeColor = Drawing.Color.Black LbTotalPasivoPatrimonioAnterior.ForeColor = Drawing.Color.Black End If If Descuadre Then LbDescuadre.Text = "Las sumas de los totales están descuadradas." Else LbDescuadre.Text = "" End If End Sub #Region "GV´S ROW DATA BOUND" Protected Sub GvActivo_RowDataBound(sender As Object, e As GridViewRowEventArgs) If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Then TotalActivoActual += e.Row.DBCampo("ImporteActual").ToString.ToDouble TotalActivoAnterior += e.Row.DBCampo("ImporteAnterior").ToString.ToDouble e.Row.FCLabel("LbNombre").Font.Italic = True Else e.Row.FCHyperLink("HLActual").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}&IdSegNeg={3}", e.Row.DBCampo("Id"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, TipoReporte, DdlSegmentoNegocio.SelectedValue.ToEntero) e.Row.FCHyperLink("HLAnterior").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}&IdSegNeg={3}", e.Row.DBCampo("Id"), e.Row.DBCampo("FechaFAnterior").ToDate.ToShortDateString, TipoReporte, DdlSegmentoNegocio.SelectedValue.ToEntero) End If If e.Row.DBCampo("ImporteActual").ToString.ToDouble < 0 Then e.Row.FCHyperLink("HLActual").ForeColor = Drawing.Color.Red End If If e.Row.DBCampo("ImporteAnterior").ToString.ToDouble < 0 Then e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red End If End If End Sub Protected Sub GvPasivo_RowDataBound(sender As Object, e As GridViewRowEventArgs) If e.Row.RowType = DataControlRowType.DataRow Then 'Totales If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Then TotalPasivoActual += e.Row.DBCampo("ImporteActual").ToString.ToDouble TotalPasivoAnterior += e.Row.DBCampo("ImporteAnterior").ToString.ToDouble e.Row.FCLabel("LbNombre").Font.Italic = True 'Cuentas Else e.Row.FCHyperLink("HLActual").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&IdSegNeg={2}", e.Row.DBCampo("Id"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, DdlSegmentoNegocio.SelectedValue.ToEntero) e.Row.FCHyperLink("HLAnterior").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&IdSegNeg={2}", e.Row.DBCampo("Id"), e.Row.DBCampo("FechaFAnterior").ToDate.ToShortDateString, DdlSegmentoNegocio.SelectedValue.ToEntero) End If 'Colorea NEGATIVOS If e.Row.DBCampo("ImporteActual").ToString.ToDouble < 0 Then e.Row.FCHyperLink("HLActual").ForeColor = Drawing.Color.Red End If If e.Row.DBCampo("ImporteAnterior").ToString.ToDouble < 0 Then e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red End If End If End Sub Protected Sub GvPatrimonio_RowDataBound(sender As Object, e As GridViewRowEventArgs) 'If e.Row.RowType = DataControlRowType.Header Then ' If e.Row.FCLabel("LbTitulo") IsNot Nothing Then e.Row.FCLabel("LbTitulo").Text = "CAPITAL CONTABLE" 'End If If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Or e.Row.DBCampo("CtaMayor").ToString.ToEntero = 2 Then TotalPatrimonioActual += e.Row.DBCampo("ImporteActual").ToString.ToDouble TotalPatrimonioAnterior += e.Row.DBCampo("ImporteAnterior").ToString.ToDouble e.Row.FCLabel("LbNombre").Font.Italic = True 'e.Row.ControlStyle.BackColor = Drawing.Color.LightGray 'e.Row.ControlStyle.ForeColor = Drawing.Color.White 'e.Row.ControlStyle.Font.Bold = True Else e.Row.FCHyperLink("HLActual").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&IdSegNeg={2}", e.Row.DBCampo("Id"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, DdlSegmentoNegocio.SelectedValue.ToEntero) e.Row.FCHyperLink("HLAnterior").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&IdSegNeg={2}", e.Row.DBCampo("Id"), e.Row.DBCampo("FechaFAnterior").ToDate.ToShortDateString, DdlSegmentoNegocio.SelectedValue.ToEntero) End If If e.Row.DBCampo("ImporteActual").ToString.ToDouble < 0 Then e.Row.FCHyperLink("HLActual").ForeColor = Drawing.Color.Red End If If e.Row.DBCampo("ImporteAnterior").ToString.ToDouble < 0 Then e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red End If End If End Sub #End Region #End Region #Region " REPORTE MENSUAL " Private Sub CargaDatosMensual() Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) TipoReporte = If(TipoReporte = -1, -1, DdlTipoReporte.SelectedValue.ToEntero) If ObjConta.GetBalanceGeneralMensual(DdlEjercicio.SelectedValue.ToEntero, TipoReporte, DdlSubtotales.SelectedValue.ToEntero) Then DtDatosMensual = ObjConta.DtResultados Else DtDatosMensual = Nothing Alert("Ocurrió un error al cargar los datos del balance general mensual", 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 If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 5 Or e.Row.DBCampo("CtaMayor").ToString.ToEntero = 4 Then e.Row.FCHyperLink("HLEnero").Text = "" e.Row.FCHyperLink("HLFebrero").Text = "" e.Row.FCHyperLink("HLMarzo").Text = "" e.Row.FCHyperLink("HLAbril").Text = "" e.Row.FCHyperLink("HLMayo").Text = "" e.Row.FCHyperLink("HLJunio").Text = "" e.Row.FCHyperLink("HLJulio").Text = "" e.Row.FCHyperLink("HLAgosto").Text = "" e.Row.FCHyperLink("HLSeptiembre").Text = "" e.Row.FCHyperLink("HLOctubre").Text = "" e.Row.FCHyperLink("HLNoviembre").Text = "" e.Row.FCHyperLink("HLDiciembre").Text = "" End If 'AGRUPADOR DE CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 4 Then e.Row.FCLabel("LbNombre").Font.Bold = True End If 'TITULO DE CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 5 Then e.Row.FCLabel("LbNombre").Attributes.Add("style", "padding-left: 10px;") End If 'CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 1 Then e.Row.FCLabel("LbNombre").Attributes.Add("style", "padding-left: 20px;") e.Row.FCHyperLink("HLEnero").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/01/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLFebrero").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/02/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLMarzo").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/03/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLAbril").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/04/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLMayo").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/05/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLJunio").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/06/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLJulio").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/07/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLAgosto").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/08/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLSeptiembre").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("09/01/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLOctubre").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/10/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLNoviembre").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/11/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLDiciembre").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FF={1}&TP={2}", e.Row.DBCampo("Id"), String.Format("01/12/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLTrimestral1").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FI={1}&FF={2}&TP={3}", e.Row.DBCampo("Id"), String.Format("01/01/{0}", DdlEjercicio.SelectedValue.ToString), String.Format("01/03/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLTrimestral2").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FI={1}&FF={2}&TP={3}", e.Row.DBCampo("Id"), String.Format("01/04/{0}", DdlEjercicio.SelectedValue.ToString), String.Format("01/06/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLTrimestral3").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FI={1}&FF={2}&TP={3}", e.Row.DBCampo("Id"), String.Format("01/07/{0}", DdlEjercicio.SelectedValue.ToString), String.Format("01/09/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLTrimestral4").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FI={1}&FF={2}&TP={3}", e.Row.DBCampo("Id"), String.Format("01/10/{0}", DdlEjercicio.SelectedValue.ToString), String.Format("01/12/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLCuatrimestral1").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FI={1}&FF={2}&TP={3}", e.Row.DBCampo("Id"), String.Format("01/01/{0}", DdlEjercicio.SelectedValue.ToString), String.Format("01/04/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLCuatrimestral2").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FI={1}&FF={2}&TP={3}", e.Row.DBCampo("Id"), String.Format("01/05/{0}", DdlEjercicio.SelectedValue.ToString), String.Format("01/08/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) e.Row.FCHyperLink("HLCuatrimestral3").NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FI={1}&FF={2}&TP={3}", e.Row.DBCampo("Id"), String.Format("01/09/{0}", DdlEjercicio.SelectedValue.ToString), String.Format("01/12/{0}", DdlEjercicio.SelectedValue.ToString).ToDate.LastDayOfMonth.ToShortDateString, TipoReporte) 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").Attributes.Add("style", "padding-left: 10px;") e.Row.FCLabel("LbNombre").Font.Italic = True End If 'SUMAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 6 Then e.Row.FCLabel("LbNombre").Font.Bold = True End If End If End Sub #End Region #Region " REPORTE ANUAL " Private Sub CargaDatosAnual() Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) TipoReporte = If(TipoReporte = -1, -1, DdlTipoReporte.SelectedValue.ToEntero) If ObjConta.GetBalanceGeneralAnual(DdlEjercicio.SelectedValue.ToEntero, TipoReporte) Then DtDatosAnual = ObjConta.DtResultados Else DtDatosAnual = Nothing Alert("Ocurrio un error al cargar los datos del balance general anual", TipoMensaje.MsgError) End If ObjConta.Dispose() Anos = (Year(Date.Now) - DdlEjercicio.SelectedValue.ToEntero) + 1 'Esconde todo For index = 1 To 20 GvDatosAnual.Columns(index).Visible = False Next For index = 1 To Anos GvDatosAnual.Columns(index).Visible = True GvDatosAnual.Columns(index).HeaderText = (DdlEjercicio.SelectedValue.ToEntero + index - 1).ToString Next If DtDatosAnual IsNot Nothing Then CargaGridAnual() End If 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 If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 5 Or e.Row.DBCampo("CtaMayor").ToString.ToEntero = 4 Then For index = 1 To Anos e.Row.FCHyperLink("HLAno" + index.ToString).Text = "" Next End If 'AGRUPADOR DE CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 4 Then e.Row.FCLabel("LbNombre").Font.Bold = True End If 'TITULO DE CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 5 Then e.Row.FCLabel("LbNombre").Attributes.Add("style", "padding-left: 10px;") e.Row.FCLabel("LbNombre").Font.Italic = True End If 'CUENTAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 1 Then e.Row.FCLabel("LbNombre").Attributes.Add("style", "padding-left: 20px;") For index = 1 To Anos e.Row.FCHyperLink("HLAno" + index.ToString).NavigateUrl = String.Format("/Contabilidad/RepAnexoCatalogo.aspx?ID={0}&FI={1}&FF={2}&TP={3}", e.Row.DBCampo("Id"), String.Format("01/01/{0}", (DdlEjercicio.SelectedValue.ToEntero + index - 1).ToString), String.Format("31/12/{0}", (DdlEjercicio.SelectedValue.ToEntero + index - 1).ToString), TipoReporte) Next 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").Attributes.Add("style", "padding-left: 10px;") e.Row.FCLabel("LbNombre").Font.Italic = True End If 'SUMAS If e.Row.DBCampo("CtaMayor").ToString.ToEntero = 6 Then e.Row.FCLabel("LbNombre").Font.Bold = True End If End If End Sub #End Region Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs) 'Nota: ' 0 = Normal ' 1 = Mensual ' 2 = Anual If Tabs.ActiveTabIndex = 0 Then TotalActivoActual = 0 TotalActivoAnterior = 0 TotalPasivoActual = 0 TotalPasivoAnterior = 0 TotalPatrimonioActual = 0 TotalPatrimonioAnterior = 0 TotalPasivoPatrimonioActual = 0 TotalPasivoPatrimonioAnterior = 0 CargaDatos() ElseIf Tabs.ActiveTabIndex = 1 Then CargaDatosMensual() ElseIf Tabs.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 TdPeriodo.Visible = False If Tabs.ActiveTabIndex = 0 Then TdPeriodo.Visible = True ElseIf Tabs.ActiveTabIndex = 1 Then TdSubTotales.Visible = True ElseIf Tabs.ActiveTabIndex = 2 Then End If UpFiltros.Update() BtnConsultar_Click(BtnConsultar, EventArgs.Empty) End Sub #Region " IMPRESION " Protected Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click If Tabs.ActiveTabIndex = 0 Then If Not IsNothing(DtDatos) Then TotalActivoActual = 0 TotalActivoAnterior = 0 TotalPasivoActual = 0 TotalPasivoAnterior = 0 TotalPatrimonioActual = 0 TotalPatrimonioAnterior = 0 TotalPasivoPatrimonioActual = 0 TotalPasivoPatrimonioAnterior = 0 CargaDatos() ImprimirReporte("Excel") Else Alert("No se encontró información para el reporte.", TipoMensaje.MsgAdvertencia) End If ElseIf Tabs.ActiveTabIndex = 1 Then If Not IsNothing(DtDatosMensual) Then CargaDatosMensual() ImprimirReporteMensual("Excel") Else Alert("No se encontró información para el reporte.", TipoMensaje.MsgAdvertencia) End If ElseIf Tabs.ActiveTabIndex = 2 Then If Not IsNothing(DtDatosAnual) Then CargaDatosAnual() ImprimirReporteAnual("Excel") Else Alert("No se encontró información para el reporte.", TipoMensaje.MsgAdvertencia) End If End If End Sub Protected Sub Imprimir_click(sender As Object, e As EventArgs) Handles Imprimir.Click If Tabs.ActiveTabIndex = 0 Then If Not IsNothing(DtDatos) Then TotalActivoActual = 0 TotalActivoAnterior = 0 TotalPasivoActual = 0 TotalPasivoAnterior = 0 TotalPatrimonioActual = 0 TotalPatrimonioAnterior = 0 TotalPasivoPatrimonioActual = 0 TotalPasivoPatrimonioAnterior = 0 CargaDatos() ImprimirReporte() Else Alert("No se encontró información para el reporte.", TipoMensaje.MsgAdvertencia) End If ElseIf Tabs.ActiveTabIndex = 1 Then If Not IsNothing(DtDatosMensual) Then CargaDatosMensual() ImprimirReporteMensual() Else Alert("No se encontró información para el reporte.", TipoMensaje.MsgAdvertencia) End If ElseIf Tabs.ActiveTabIndex = 2 Then If Not IsNothing(DtDatosAnual) Then CargaDatosAnual() ImprimirReporteAnual() Else Alert("No se encontró información para el reporte.", TipoMensaje.MsgAdvertencia) End If End If End Sub Private Sub ProcesaImpresion() Dim FechaI = String.Format("01/{0}/{1}", DdlPeriodo.SelectedValue.PadLeft(2, CChar("0")), If(DdlEjercicio.SelectedValue.Length = 0, Now.Year.ToString, DdlEjercicio.SelectedValue)).ToDate Dim FechaF = FechaI.ToDate.LastDayOfMonth TipoReporte = If(TipoReporte = -1, -1, DdlTipoReporte.SelectedValue.ToEntero) Dim IdCuentaAhorroDesahorro = If(UsuarioActual.CveEmpresa = 48, 87, 9999) Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa) If ObjConta.GetBalanceGeneral("01/01/1000".ToDate, FechaF.ToDate, UsuarioActual.CveEmpresa, TipoReporte, UsuarioActual.Empresa.UsaAC, IdCuentaAhorroDesahorro) Then DtDatos = ObjConta.DtResultados Else DtDatos = Nothing Alert("Ocurrio un error al cargar los datos del estado de situación financiera", TipoMensaje.MsgError) End If ObjConta.Dispose() If DtDatos Is Nothing Then Exit Sub End If ProcesaDTImprimir(FiltroActivoCirculante, "AC", DtDatos) ProcesaDTImprimir(FiltroActivoNoCirculante, "ANC", DtDatos) ProcesaDTImprimir(FiltroActivoDiferido, "AD", DtDatos) ProcesaDTImprimir(FiltroPasivoCirculante, "PC", DtDatos) ProcesaDTImprimir(FiltroPasivoNoCirculante, "PNC", DtDatos) ProcesaDTImprimir(FiltroPasivoDiferido, "PD", DtDatos) ProcesaDTImprimir(FiltroCapital, "C", DtDatos) ProcesaDTImprimir(FiltroUtilidad, "C", DtDatos) For Each Row As DataRow In DtDatos.Select("CtaMayor=3") DtDatos.Rows.Remove(Row) Next End Sub Private Sub ProcesaDTImprimir(Filtro As String, Sup As String, ByRef Dt As DataTable) For Each Row As DataRow In Dt.Select(Filtro) Row("Sup") = Sup Next Dt.AcceptChanges() End Sub Private Sub ImprimirReporte(Optional Formato As String = "PDF") ProcesaImpresion() 'nombre del archivo a generar Dim fileName As String = "BalanceGeneral" 'ubicacion del rdlc Dim reportpath As String = "Contabilidad/Reportes/RepBalanceGeneral.rdlc" Dim FechaI = String.Format("01/{0}/{1}", DdlPeriodo.SelectedValue.PadLeft(2, CChar("0")), DdlEjercicio.SelectedValue) Dim FechaF = DateAdd(DateInterval.Day, -1, DateAdd(DateInterval.Month, 1, CDate(FechaI))).ToString("dd/MM/yyyy") 'parametros a enviar al reporte Dim params As New List(Of ReportParameter) params.Add(New ReportParameter("pEmp", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("pImg", New Uri(Server.MapPath(String.Format("~/Empresas/{0}/Logo.png", UsuarioActual.CveEmpresa))).AbsoluteUri)) params.Add(New ReportParameter("pFirma1", "")) params.Add(New ReportParameter("pFirma2", "")) params.Add(New ReportParameter("pFechaFin", FechaF)) params.Add(New ReportParameter("TotalActivoActual", DtDatos.SUM("ImporteActual", "Sup IN ('AC','ANC','AD')").ToString)) params.Add(New ReportParameter("TotalActivoAnterior", DtDatos.SUM("ImporteAnterior", "Sup IN ('AC','ANC','AD')").ToString)) params.Add(New ReportParameter("TotalPasivoActual", DtDatos.SUM("ImporteActual", "Sup IN ('PC','PNC','PD')").ToString)) params.Add(New ReportParameter("TotalPasivoAnterior", DtDatos.SUM("ImporteAnterior", "Sup IN ('PC','PNC','PD')").ToString)) params.Add(New ReportParameter("TotalCapitalActual", DtDatos.SUM("ImporteActual", "Sup = 'C' ").ToString)) params.Add(New ReportParameter("TotalCapitalAnterior", DtDatos.SUM("ImporteActual", "Sup = 'C' ").ToString)) params.Add(New ReportParameter("TotalPasivoCapitalActual", DtDatos.SUM("ImporteActual", "Sup IN ('PC','PNC','PD') OR Sup = 'C' ").ToString)) params.Add(New ReportParameter("TotalPasivoCapitalAnterior", DtDatos.SUM("ImporteAnterior", "Sup IN ('PC','PNC','PD') OR Sup = 'C' ").ToString)) ImprimirPDF(reportpath, DtDatos, params, fileName, Formato) End Sub Private Sub ImprimirReporteMensual(Optional Formato As String = "PDF") ProcesaImpresion() 'nombre del archivo a generar Dim fileName As String = "BalanceGeneralMensual" 'ubicacion del rdlc Dim reportpath As String = Server.MapPath("~/Empresas/Grales/Formatos/RepBalanceGeneralMensual.rdlc") 'Dim FechaI = String.Format("01/{0}/{1}", 12, DdlEjercicio.SelectedValue) Dim FechaF = DateAdd(DateInterval.Day, -1, DateAdd(DateInterval.Month, 1, CDate(String.Format("01/{0}/{1}", 12, DdlEjercicio.SelectedValue)))).ToString("dd/MM/yyyy") 'parametros a enviar al reporte Dim params As New List(Of ReportParameter) params.Add(New ReportParameter("pEmp", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("pImg", New Uri(Server.MapPath(String.Format("~/Empresas/{0}/Logo.png", UsuarioActual.CveEmpresa))).AbsoluteUri)) params.Add(New ReportParameter("pFechaFin", FechaF)) params.Add(New ReportParameter("pSubtotal", DdlSubtotales.SelectedValue.ToString)) params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario)) params.Add(New ReportParameter("FechaImpresion", Now.ToShortDateString)) ImprimirPDF(reportpath, DtDatosMensual, params, fileName, Formato) End Sub Private Sub ImprimirReporteAnual(Optional Formato As String = "PDF") ProcesaImpresion() 'nombre del archivo a generar Dim fileName As String = "BalanceGeneralAnual" 'ubicacion del rdlc Dim reportpath As String = Server.MapPath("~/Empresas/Grales/Formatos/RepBalanceGeneralAnual.rdlc") 'Dim FechaI = String.Format("01/{0}/{1}", DdlPeriodo.SelectedValue.PadLeft(2, CChar("0")), DdlEjercicio.SelectedValue) 'Dim FechaF = DateAdd(DateInterval.Day, -1, DateAdd(DateInterval.Month, 1, CDate(FechaI))).ToString("dd/MM/yyyy") 'parametros a enviar al reporte Dim params As New List(Of ReportParameter) params.Add(New ReportParameter("pEmp", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("pImg", New Uri(Server.MapPath(String.Format("~/Empresas/{0}/Logo.png", UsuarioActual.CveEmpresa))).AbsoluteUri)) params.Add(New ReportParameter("pFechaI", DdlEjercicio.SelectedValue)) params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Usuario)) params.Add(New ReportParameter("FechaImpresion", Now.ToShortDateString)) ImprimirPDF(reportpath, DtDatosAnual, params, fileName, Formato) End Sub #End Region End Class