Files
SIG/Contabilidad/RepBalanceGeneral.aspx.vb
2019-10-23 10:22:13 -07:00

1161 lines
50 KiB
VB.net
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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") = $"&nbsp;&nbsp;&nbsp;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