diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb
index 93fb38a06..46f49aa46 100644
--- a/App_Code/ClsVentas.vb
+++ b/App_Code/ClsVentas.vb
@@ -4433,13 +4433,14 @@ Public Class ClsVentas
Return retorno
End Function
- Public Function GetRepTopClientesVentas(CveEmpresa As Integer, Mes As Integer, Año As Integer, Optional CveSubProyecto As Integer = -1) As Boolean
+ Public Function GetRepTopClientesVentas(CveEmpresa As Integer, Mes As Integer, Año As Integer, Optional Top As Integer = 20, Optional CveSubProyecto As Integer = -1) As Boolean
Dim retorno As Boolean = False
DataAdapter("PA_Vta_Top20ClientesMasVendidos", CommandType.StoredProcedure)
With SqlAdapter.SelectCommand.Parameters
.Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
.Add("@Mes", SqlDbType.Int).Value = Mes
.Add("@Año", SqlDbType.Int).Value = Año
+ .Add("@Top", SqlDbType.Int).Value = Top
.Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
End With
Try
diff --git a/Bancos/PagoElectronicoGrupos.aspx b/Bancos/PagoElectronicoGrupos.aspx
index e8c9384e9..567686b7d 100644
--- a/Bancos/PagoElectronicoGrupos.aspx
+++ b/Bancos/PagoElectronicoGrupos.aspx
@@ -250,6 +250,9 @@
+
+
+
<%----%>
@@ -621,6 +624,64 @@
+
+
+
+
diff --git a/Bancos/PagoElectronicoGrupos.aspx.vb b/Bancos/PagoElectronicoGrupos.aspx.vb
index 40f10f8f6..09047cabb 100644
--- a/Bancos/PagoElectronicoGrupos.aspx.vb
+++ b/Bancos/PagoElectronicoGrupos.aspx.vb
@@ -230,7 +230,19 @@ Partial Class Bancos_PagoElectronicoGrupos
Else
DTEnviadas = Nothing
End If
- ObjBancos.Dispose()
+ ObjBancos.Dispose()
+
+
+
+ If DTPendientes IsNot Nothing AndAlso DTPendientes.Rows.Count > 0 Then
+ CargaDatosInformativos()
+ Else
+
+ LbNumeroMovimientos.Text = "0"
+ LbImporteMovimientos.Text = "0"
+
+ UpComandosGeneracion.Update()
+ End If
'Carga GvPendientes
@@ -245,18 +257,10 @@ Partial Class Bancos_PagoElectronicoGrupos
End If
GvEnviadas.DataBind()
- UpGVDatos.Update()
-
- If DTPendientes IsNot Nothing AndAlso DTPendientes.Rows.Count > 0 Then
- CargaDatosInformativos()
- Else
+ UpGVDatos.Update()
+
- LbNumeroMovimientos.Text = "0"
- LbImporteMovimientos.Text = "0"
- UpComandosGeneracion.Update()
- End If
-
End Sub
Private Sub CargaDatosInformativos()
Dim Altas = 0
@@ -393,11 +397,21 @@ Partial Class Bancos_PagoElectronicoGrupos
' Return Retorno
'End Function
+
#End Region
#Region " TAB PRINCIPAL "
- Protected Sub GvPendientes_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+ Protected Sub GvPendientes_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+
+ If e.Row.RowType = DataControlRowType.Header Then
+
+ e.Row.FCLinkButton("LnkCabeceraPendientes").Text = LbNumeroAltas.Text
+
+ End If
+
+
+
If e.Row.RowType = DataControlRowType.DataRow Then
'Colorea GV
@@ -430,6 +444,8 @@ Partial Class Bancos_PagoElectronicoGrupos
e.Row.FCHyperLink("HLImporte").NavigateUrl = String.Format("IE.aspx?CveIE={0}", e.Row.DBCampo("CveIE"))
End If
+
+
End Sub
Protected Sub GvEnviadas_RowDataBound(sender As Object, e As GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
@@ -549,7 +565,7 @@ Partial Class Bancos_PagoElectronicoGrupos
Dim DtCuentasPendientesInterbancarias As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre not like '%BBVA%' AND BancoNombre not like '%BANCOMER%' ) ", "", {"CveCuentaDeposito", "BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CveProveedor", "CveBanco", "Cuenta", "BBVAAlias"})
- Dim ObjGrales As New ClsGenerales
+ 'Dim ObjGrales As New ClsGenerales
If DtCuentasPendientesBancomer.Rows.Count > 0 Then
For Each dRow As DataRow In DtCuentasPendientesBancomer.Rows
@@ -594,7 +610,7 @@ Partial Class Bancos_PagoElectronicoGrupos
If Not ErrorLineaBancomer Then
RegistrosAltaBancomer.Append(SBTmpBancomer.ToString)
- ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
+ ' ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
Else
SBErroresBancomer.Append(" ")
SBErrores.AppendLine(SBErroresBancomer.ToString)
@@ -671,7 +687,7 @@ Partial Class Bancos_PagoElectronicoGrupos
If Not ErrorLineaInterbancaria Then
RegistrosAltaInterbancario.Append(SBTmpInterbancarias.ToString)
- ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
+ ' ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
Else
SBErroresInterBancario.Append(" ")
SBErrores.AppendLine(SBErroresInterBancario.ToString)
@@ -688,7 +704,7 @@ Partial Class Bancos_PagoElectronicoGrupos
End If
- ObjGrales.Dispose()
+ ' ObjGrales.Dispose()
Dim Mensaje As New StringBuilder
@@ -1935,7 +1951,7 @@ Partial Class Bancos_PagoElectronicoGrupos
Dim DtCuentasPendientesInterbancarias As DataTable = DtCuentasPendientesTemp.FiltraParametros($" (EstatusPagoElectronicoGrupos IS NULL OR EstatusPagoElectronicoGrupos = False) AND (BancoNombre not like '%BBVA%' AND BancoNombre not like '%BANCOMER%' ) ", "", {"CveCuentaDeposito", "BancoNombre", "CLABEDestino", "Abreviatura", "RazonSocial", "CvePersonal", "CveBanco", "Cuenta", "BBVAAlias"})
'CLABEDestino
- Dim ObjGrales As New ClsGenerales
+ ' Dim ObjGrales As New ClsGenerales
If DtCuentasPendientesBancomer.Rows.Count > 0 Then
For Each dRow As DataRow In DtCuentasPendientesBancomer.Rows
@@ -1986,7 +2002,7 @@ Partial Class Bancos_PagoElectronicoGrupos
If Not ErrorLineaBancomer Then
RegistrosAltaBancomer.Append(SBTmpBancomer.ToString)
- ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
+ ' ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
Else
SBErroresBancomer.Append(" ")
SBErrores.AppendLine(SBErroresBancomer.ToString)
@@ -2070,7 +2086,7 @@ Partial Class Bancos_PagoElectronicoGrupos
If Not ErrorLineaInterbancaria Then
RegistrosAltaInterbancario.Append(SBTmpInterbancarias.ToString)
- ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
+ ' ObjGrales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(dRow("CveCuentaDeposito").ToString.ToEntero, True)
Else
SBErroresInterBancario.Append(" ")
SBErrores.AppendLine(SBErroresInterBancario.ToString)
@@ -2087,7 +2103,7 @@ Partial Class Bancos_PagoElectronicoGrupos
End If
- ObjGrales.Dispose()
+ ' ObjGrales.Dispose()
Dim Mensaje As New StringBuilder
@@ -3046,8 +3062,74 @@ Partial Class Bancos_PagoElectronicoGrupos
'NO QUITAR, SE OCUPA PARA EXPORTAR PDF
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
Return
- End Sub
-
-
-
+ End Sub
+
+ Protected Sub LnkCabecera_Click(sender As Object, e As EventArgs)
+
+ CargaGVPendintesModal()
+ RegistraScript("$('#UpModalCuentas').modal();")
+
+ End Sub
+
+
+ Private Sub CargaGVPendintesModal()
+
+ Dim DTGvCuentasPendientes As DataTable = DTPendientes.Copy.FiltraParametros("CveCuentaDeposito > 0", "", {"CveCuentaDeposito", "BancoNombre", "RazonSocial", "Cuenta", "CLABEDestino", "BBVAAlias", "EstatusPagoElectronicoGrupos"})
+
+ GvCuentasModal.DataSource = DTGvCuentasPendientes
+ GvCuentasModal.DataBind()
+ UpModalCuentasCuerpo.Update()
+
+ End Sub
+
+
+
+ Protected Sub GvCuentasModal_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ e.Row.FCCheckBox("ChkCuentasEstatus").Checked = True
+ End If
+
+ End Sub
+
+ Protected Sub BtnModalCuentasGuardar_Click(sender As Object, e As EventArgs)
+
+ Dim ErrorProceso As Boolean = False
+ Dim CountAltas As Integer = 0
+
+ Dim ObjGenerales As New ClsGenerales
+
+
+ ObjGenerales.IniciaTransacSQL()
+
+ For Each GvRow As GridViewRow In GvCuentasModal.Rows
+ Dim CveCuentaDeposito As Integer = GvRow.DataKey("CveCuentaDeposito").ToEntero
+ Dim ChkCuentasEstatus As CheckBox = GvRow.FCCheckBox("ChkCuentasEstatus")
+
+ If Not ObjGenerales.UpdateCuentasDepositosEstatusPagoElectronicoGrupos(CveCuentaDeposito, ChkCuentasEstatus.Checked) Then
+ ErrorProceso = True
+ Exit For
+ End If
+
+ Next
+
+
+ If ErrorProceso Then
+ ObjGenerales.RollBack()
+ Alert("Se presentoun error al actualziar las cuentas", TipoMensaje.MsgError)
+ Else
+ ObjGenerales.Commit()
+ Alert("Estado de cuentas actualizado correctamente.")
+ RegistraScript("$('#UpModalCuentas').modal('hide');")
+ End If
+ ObjGenerales.Dispose()
+
+
+
+ CargaDatos()
+
+ End Sub
+
+
+
End Class
diff --git a/Bancos/ProveedoresAbonar.aspx.vb b/Bancos/ProveedoresAbonar.aspx.vb
index a9c65afe9..30fb51bf0 100644
--- a/Bancos/ProveedoresAbonar.aspx.vb
+++ b/Bancos/ProveedoresAbonar.aspx.vb
@@ -2517,8 +2517,6 @@ Partial Class Bancos_ProveedoresAbonar
ElseIf DdlTipoTransaccion.SelectedValue = "17" Then
- '''Permitir pago sin cuneta deposito
-
If Dep.DtResultados.Rows.Count > 0 Then
DdlCuentaDeposito.DataSource = Dep.DtResultados '.FiltraParametros("EstatusPagoElectronicoGrupos = 'True' AND Estatus ='True'")
trCuentaDeposito.Visible = True
@@ -2556,6 +2554,17 @@ Partial Class Bancos_ProveedoresAbonar
DdlCuentaDeposito.SelectedIndex = 1
End If
+
+ Else
+
+
+ If DdlTipoTransaccion.SelectedValue = "17" Then
+
+ BtnIEGuardar.Enabled = False
+ BtnIEGuardar.ToolTip = "El proveedor no tiene cuentas deposito"
+ UpGuardar.Update()
+ End If
+
End If
End If
diff --git a/CRM/CatEmpresasCRM.aspx b/CRM/CatEmpresasCRM.aspx
index ea133cd46..7095cee60 100644
--- a/CRM/CatEmpresasCRM.aspx
+++ b/CRM/CatEmpresasCRM.aspx
@@ -5,13 +5,13 @@
- Catálogo de Empresas CRM
+ Catálogo de Prospectos
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Contabilidad2/RepBalanceGeneralHorizontal.aspx.vb b/Contabilidad2/RepBalanceGeneralHorizontal.aspx.vb
new file mode 100644
index 000000000..468e527ce
--- /dev/null
+++ b/Contabilidad2/RepBalanceGeneralHorizontal.aspx.vb
@@ -0,0 +1,1456 @@
+Option Explicit On
+Option Strict On
+
+Imports System.Data
+Imports System.Drawing
+Imports Extensiones
+Imports Microsoft.Reporting.WebForms
+
+Partial Class Contabilidad_RepBalanceGeneralHorizontal
+ Inherits ClsPaginas
+
+#Region "PROPIEDADES"
+
+
+ Private Property DtDatosMes As DataTable
+ Get
+ DtDatosMes = DirectCast(ViewState("DtDatosMes"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtDatosMes") = value
+ End Set
+ End Property
+ Private Property DtIngresosMes As DataTable
+ Get
+ DtIngresosMes = DirectCast(ViewState("DtIngresosMes"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtIngresosMes") = value
+ End Set
+ End Property
+ Private Property DtGastosMes As DataTable
+ Get
+ DtGastosMes = DirectCast(ViewState("DtGastosMes"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtGastosMes") = value
+ End Set
+ End Property
+ Private Property TotalActualMes As Double
+ Get
+ TotalActualMes = ViewState("TotalActualMes").ToString.ToDouble
+ End Get
+ Set(value As Double)
+ ViewState("TotalActualMes") = value
+ End Set
+ End Property
+ Private Property TotalAnteriorMes As Double
+ Get
+ TotalAnteriorMes = ViewState("TotalAnteriorMes").ToString.ToDouble
+ End Get
+ Set(value As Double)
+ ViewState("TotalAnteriorMes") = value
+ End Set
+ End Property
+ Private Property FechaIMes As String
+ Get
+ Return ViewState("FechaIMes").ToString
+ End Get
+ Set(value As String)
+ ViewState("FechaIMes") = value
+ End Set
+ End Property
+ Private Property FechaFMes As String
+ Get
+ Return ViewState("FechaFMes").ToString
+ End Get
+ Set(value As String)
+ ViewState("FechaFMes") = value
+ End Set
+ End Property
+
+ 'Private Property ReporteComplementario As Boolean
+ ' Get
+ ' ReporteComplementario = CBool(ViewState("ReporteComplementario").ToString)
+ ' End Get
+ ' Set(value As Boolean)
+ ' ViewState("ReporteComplementario") = value
+ ' End Set
+ 'End Property
+
+#End Region
+
+
+#Region " M E S H O R I Z O N T A L "
+
+ Private Property DtDatosMesH As DataTable
+ Get
+ DtDatosMesH = DirectCast(ViewState("DtDatosMesH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtDatosMesH") = value
+ End Set
+ End Property
+
+ Private Property DtIngresosMesH As DataTable
+ Get
+ DtIngresosMesH = DirectCast(ViewState("DtIngresosMesH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtIngresosMesH") = value
+ End Set
+ End Property
+
+ Private Property DtGastosMesH As DataTable
+ Get
+ DtGastosMesH = DirectCast(ViewState("DtGastosMesH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtGastosMesH") = value
+ End Set
+ End Property
+
+ Private Property DTTotalesMesH As DataTable
+ Get
+ DTTotalesMesH = DirectCast(ViewState("DTTotalesMesH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DTTotalesMesH") = value
+ End Set
+ End Property
+
+#End Region
+
+
+#Region " A N U A L H O R I Z O N T A L "
+
+ Private Property DtDatosAnualH As DataTable
+ Get
+ DtDatosAnualH = DirectCast(ViewState("DtDatosAnualH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtDatosAnualH") = value
+ End Set
+ End Property
+
+ Private Property DtIngresosAnualH As DataTable
+ Get
+ DtIngresosAnualH = DirectCast(ViewState("DtIngresosAnualH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtIngresosAnualH") = value
+ End Set
+ End Property
+
+ Private Property DtGastosAnualH As DataTable
+ Get
+ DtGastosAnualH = DirectCast(ViewState("DtGastosAnualH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtGastosAnualH") = value
+ End Set
+ End Property
+
+ Private Property DTTotalesAnualH As DataTable
+ Get
+ DTTotalesAnualH = DirectCast(ViewState("DTTotalesAnualH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DTTotalesAnualH") = value
+ End Set
+ End Property
+
+#End Region
+
+#Region " S U B P R O Y E C T O H O R I Z O N T A L "
+
+ Private Property DtDatosSubProyectoH As DataTable
+ Get
+ DtDatosSubProyectoH = DirectCast(ViewState("DtDatosSubProyectoH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtDatosSubProyectoH") = value
+ End Set
+ End Property
+
+ Private Property DtIngresosSubProyectoH As DataTable
+ Get
+ DtIngresosSubProyectoH = DirectCast(ViewState("DtIngresosSubProyectoH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtIngresosSubProyectoH") = value
+ End Set
+ End Property
+
+ Private Property DtGastosSubProyectoH As DataTable
+ Get
+ DtGastosSubProyectoH = DirectCast(ViewState("DtGastosSubProyectoH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DtGastosSubProyectoH") = value
+ End Set
+ End Property
+
+ Private Property DTTotalesSubProyectoH As DataTable
+ Get
+ DTTotalesSubProyectoH = DirectCast(ViewState("DTTotalesSubProyectoH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DTTotalesSubProyectoH") = value
+ End Set
+ End Property
+
+ Private Property DTSubProyectosCabecerasH As DataTable
+
+ Get
+ DTSubProyectosCabecerasH = DirectCast(ViewState("DTSubProyectosCabecerasH"), DataTable)
+ End Get
+
+ Set(ByVal value As DataTable)
+ ViewState("DTSubProyectosCabecerasH") = 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
+
+
+ TotalActualMes = 0
+ TotalAnteriorMes = 0
+
+ 'TotalActualMes = 0
+ 'TotalAnteriorMes = 0
+
+ 'TxtFechaInicio.Text = DateSerial(Year(Date.Now), 1, 1).ToShortDateString
+ 'TxtFechaFin.Text = Date.Now.ToShortDateString
+ CargaEjercicios()
+
+ DdlSubproyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa)
+ DdlSubproyecto.DataBind()
+
+ ' CargaDatos()
+ End If
+ End Sub
+
+ Protected Sub Tab_ActiveTabChanged(sender As Object, e As EventArgs)
+
+ If Tab.ActiveTabIndex = 0 Then
+ LiSubProyectoDdl.Visible = True
+ LiSubProyectoLbl.Visible = True
+
+ LiEjercicioDdl.Visible = True
+ LiEjercicioLbl.Visible = True
+
+ LiEjercicioDdl2.Visible = False
+ LiEjercicioLbl2.Visible = False
+
+ LiPeriodoDdl.Visible = True
+ LiPeriodoLbl.Visible = True
+
+ LiDivisorDdl.Visible = True
+ LiDivisorLbl.Visible = True
+ End If
+
+ If Tab.ActiveTabIndex = 1 Then
+
+ LiSubProyectoDdl.Visible = True
+ LiSubProyectoLbl.Visible = True
+
+ LiEjercicioDdl.Visible = True
+ LiEjercicioLbl.Visible = True
+
+ LiEjercicioDdl2.Visible = False
+ LiEjercicioLbl2.Visible = False
+
+ LiPeriodoDdl.Visible = False
+ LiPeriodoLbl.Visible = False
+
+ LiDivisorDdl.Visible = True
+ LiDivisorLbl.Visible = True
+
+
+ End If
+
+ If Tab.ActiveTabIndex = 2 Then
+
+ LiSubProyectoDdl.Visible = True
+ LiSubProyectoLbl.Visible = True
+
+ LiEjercicioDdl.Visible = True
+ LiEjercicioLbl.Visible = True
+
+ LiEjercicioDdl2.Visible = True
+ LiEjercicioLbl2.Visible = True
+
+ LiPeriodoDdl.Visible = False
+ LiPeriodoLbl.Visible = False
+
+ LiDivisorDdl.Visible = True
+ LiDivisorLbl.Visible = True
+
+ End If
+
+ If Tab.ActiveTabIndex = 3 Then
+ LiSubProyectoDdl.Visible = True
+ LiSubProyectoLbl.Visible = True
+
+ LiEjercicioDdl.Visible = True
+ LiEjercicioLbl.Visible = True
+
+ LiEjercicioDdl2.Visible = False
+ LiEjercicioLbl2.Visible = False
+
+ LiPeriodoDdl.Visible = True
+ LiPeriodoLbl.Visible = True
+
+ LiDivisorDdl.Visible = True
+ LiDivisorLbl.Visible = True
+ End If
+
+ UpFiltros.Update()
+ End Sub
+
+ Private Sub CargaEjercicios()
+ 'Dim ClsConta As New ClsContPAQi(UsuarioActual.Empresa)
+ Dim ClsConta As New ClsContabilidad
+ If ClsConta.GetEjercicios(UsuarioActual.CveEmpresa) Then
+ DdlEjercicio.DataSource = ClsConta.DtResultados
+ DdlEjercicio2.DataSource = ClsConta.DtResultados
+ Else
+ DdlEjercicio.DataSource = Nothing
+ DdlEjercicio2.DataSource = Nothing
+ End If
+ ClsConta.Dispose()
+ DdlEjercicio.DataBind()
+ DdlEjercicio2.DataBind()
+
+ DdlEjercicio.SelectedValueExist(UsuarioActual.Empresa.EjercicioActual.ToString)
+ If DdlEjercicio.Items.Count = 0 Then
+ DdlEjercicio.Items.Add(New ListItem(Now.Year.ToString, Now.Year.ToString))
+ End If
+ DdlPeriodo.SelectedValue = Now.Month.ToString
+ End Sub
+
+ Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
+ TotalActualMes = 0
+ TotalAnteriorMes = 0
+
+ 'Mes
+ If Tab.ActiveTabIndex = 0 Then
+ CargaDatosMes()
+ End If
+
+ 'MES HORIZONTAL
+ If Tab.ActiveTabIndex = 1 Then
+ CargaDatosMesH()
+ End If
+
+ 'AÑO HORIZONTAL
+ If Tab.ActiveTabIndex = 2 Then
+ CargaDatosAnualH()
+ End If
+
+ 'SUBPROYECTO
+ If Tab.ActiveTabIndex = 3 Then
+ CargaDatosSubProyectoH()
+ End If
+
+
+ End Sub
+
+
+#Region "MES"
+
+
+
+
+
+ Private Sub CargaDatosMes()
+
+
+ FechaIMes = String.Format("01/{0}/{1}", DdlPeriodo.SelectedValue.PadLeft(2, CChar("0")), DdlEjercicio.SelectedValue)
+ FechaFMes = DateAdd(DateInterval.Day, -1, DateAdd(DateInterval.Month, 1, CDate(FechaIMes))).ToString("dd/MM/yyyy")
+ 'Dim TipoReporte = DdlTipoReporte.SelectedValue.ToEntero 'If(ReporteComplementario, DdlTipoReporte.SelectedValue.ToEntero, 1)
+ Dim CveSubProyecto As Integer = DdlSubproyecto.SelectedValue.ToEntero
+
+ 'Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa)
+ Dim ObjConta As New ClsContabilidad
+ If ObjConta.GetEstadosMensual(FechaIMes.ToDate, FechaFMes.ToDate, CveSubProyecto, DdlDivisor.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario) Then
+ DtDatosMes = ObjConta.DtResultados.FiltraParametros("(ImporteActual <> 0 OR ImporteAcumulado <> 0)")
+ Else
+ DtDatosMes = Nothing
+ Alert("Ocurrio un error al cargar los datos del Estado de Actividades", TipoMensaje.MsgError)
+ End If
+ ObjConta.Dispose()
+
+ If DtDatosMes IsNot Nothing Then
+ CargaGridsMes()
+ SumaTotales()
+ End If
+
+ End Sub
+ Private Sub CargaGridsMes()
+ DtIngresosMes = DtDatosMes.FiltraParametros("Tipo ='H' ")
+ DtGastosMes = DtDatosMes.FiltraParametros("Tipo ='G' ")
+ Dim Row As DataRow = DtIngresosMes.NewRow
+
+
+ Dim TotalActual = 0.0, TotalAnterior = 0.0
+ If DtIngresosMes.Rows.Count > 0 Then
+
+ For Each dr As DataRow In DtIngresosMes.FiltraParametros("NOT CtaMayor in (3,4)").Rows
+ TotalActual += dr("ImporteActual").ToString.ToDouble
+ TotalAnterior += dr("ImporteAcumulado").ToString.ToDouble
+ Next
+
+ Row.Item("Nombre") = "TOTAL INGRESOS "
+ Row.Item("ImporteActual") = TotalActual.ToString
+ Row.Item("PorcentajeActual") = "100.00"
+ Row.Item("ImporteAcumulado") = TotalAnterior.ToString
+ Row.Item("PorcentajeAcumulado") = "100.00"
+ Row.Item("CtaMayor") = -1
+ DtIngresosMes.Rows.Add(Row)
+ Else
+ Row.Item("Nombre") = "TOTAL INGRESOS "
+ Row.Item("ImporteActual") = "0.00"
+ Row.Item("ImporteAcumulado") = "0.00"
+ Row.Item("CtaMayor") = -1
+ DtIngresosMes.Rows.Add(Row)
+ End If
+
+ Dim T1 = TotalActual, T2 = TotalAnterior
+
+ TotalActual = 0
+ TotalAnterior = 0
+
+ Row = DtGastosMes.NewRow
+ If DtGastosMes.Rows.Count > 0 Then
+
+ For Each dr As DataRow In DtGastosMes.FiltraParametros("NOT CtaMayor in (3,4)").Rows
+ TotalActual += dr("ImporteActual").ToString.ToDouble
+ TotalAnterior += dr("ImporteAcumulado").ToString.ToDouble
+ Next
+
+ Row.Item("Nombre") = "TOTAL GASTOS"
+ Row.Item("ImporteActual") = TotalActual
+ Row.Item("PorcentajeActual") = If(T1 > 0, (TotalActual * 100 / T1).ToString, "0").FormatoNumero
+ Row.Item("ImporteAcumulado") = TotalAnterior.ToString
+ Row.Item("PorcentajeAcumulado") = If(T2 > 0, (TotalAnterior * 100 / T2).ToString, "0").FormatoNumero
+ Row.Item("CtaMayor") = -1
+ DtGastosMes.Rows.Add(Row)
+ Else
+ Row.Item("Nombre") = "TOTAL GASTOS"
+ Row.Item("ImporteActual") = "0.00"
+ Row.Item("ImporteAcumulado") = "0.00"
+ Row.Item("CtaMayor") = -1
+ DtGastosMes.Rows.Add(Row)
+ End If
+
+
+ GvIngresosMes.DataSource = DtIngresosMes
+ GvIngresosMes.DataBind()
+
+ GvGastosMes.DataSource = DtGastosMes
+ GvGastosMes.DataBind()
+
+ UpDatos.Update()
+
+ End Sub
+
+
+
+ Private Sub SumaTotales()
+ 'Llena Lb´s Totales
+ LbTotalActual.Text = TotalActualMes.ToString.FormatoNumero
+
+ LbTotalAnterior.Text = TotalAnteriorMes.ToString.FormatoNumero
+
+ LbTotalActual.ForeColor = If(TotalActualMes < 0, Drawing.Color.Red, Color.Black)
+
+ LbTotalAnterior.ForeColor = If(TotalAnteriorMes < 0, Drawing.Color.Red, Color.Black)
+
+
+ End Sub
+
+#Region "GV´S ROW DATA BOUND"
+
+ Protected Sub GvIngresos_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Then
+ TotalActualMes += e.Row.DBCampo("ImporteActual").ToString.ToDouble
+ TotalAnteriorMes += e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble
+ 'e.Row.ControlStyle.BackColor = Drawing.Color.LightGray
+ 'e.Row.ControlStyle.ForeColor = Drawing.Color.White
+ e.Row.ControlStyle.Font.Bold = True
+ ElseIf e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then
+ 'e.Row.CssClass = "SubTotales3"
+ e.Row.ControlStyle.Font.Bold = True
+ End If
+
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero > 0 Then
+ e.Row.FCHyperLink("HLActual").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, e.Row.DBCampo("FechaInicial").ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLAnterior").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, e.Row.DBCampo("FechaInicial").ToDate.ToShortDateString)
+ 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("ImporteAcumulado").ToString.ToDouble < 0 Then
+ e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red
+ End If
+ End If
+ End Sub
+
+ Protected Sub GvGastos_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Then
+ TotalActualMes -= e.Row.DBCampo("ImporteActual").ToString.ToDouble
+ TotalAnteriorMes -= e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble
+ 'e.Row.ControlStyle.BackColor = Drawing.Color.LightGray
+ 'e.Row.ControlStyle.ForeColor = Drawing.Color.White
+ e.Row.ControlStyle.Font.Bold = True
+ ElseIf e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then
+ 'e.Row.CssClass = "SubTotales"
+ e.Row.ControlStyle.Font.Bold = True
+ End If
+
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero > 0 Then
+ e.Row.FCHyperLink("HLActual").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, e.Row.DBCampo("FechaInicial").ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLAnterior").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, e.Row.DBCampo("FechaInicial").ToDate.ToShortDateString)
+ 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("ImporteAcumulado").ToString.ToDouble < 0 Then
+ e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red
+ End If
+ End If
+ End Sub
+
+#End Region
+
+
+
+
+#End Region
+
+
+
+#Region "M E S H O R I Z O N T A L"
+
+ Private Sub CargaDatosMesH()
+
+
+ FechaIMes = $"01/01/{DdlEjercicio.SelectedValue}"
+ FechaFMes = $"31/12/{DdlEjercicio.SelectedValue}"
+
+ Dim CveSubProyecto As Integer = DdlSubproyecto.SelectedValue.ToEntero
+
+ 'Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa)
+ Dim ObjConta As New ClsContabilidad
+ If ObjConta.GetEstadosMensualHorizontal(FechaIMes.ToDate, FechaFMes.ToDate, CveSubProyecto, DdlDivisor.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario) Then
+ DtDatosMesH = ObjConta.DtResultados.FiltraParametros("(ImporteActual <> 0 OR ImporteAcumulado <> 0)")
+ Else
+ DtDatosMesH = Nothing
+ Alert("Ocurrio un error al cargar los datos del Estado de Actividades", TipoMensaje.MsgError)
+ End If
+ ObjConta.Dispose()
+
+ If DtDatosMesH IsNot Nothing Then
+ CargaGridsMesH()
+ SumaTotalesMesH()
+ Else
+
+ End If
+
+ End Sub
+
+ Private Sub CargaGridsMesH()
+ DtIngresosMesH = DtDatosMesH.FiltraParametros("Tipo ='H' ")
+ DtGastosMesH = DtDatosMesH.FiltraParametros("Tipo ='G' ")
+ DTTotalesMesH = DtDatosMesH.Clone()
+
+ Dim Row As DataRow = DtIngresosMesH.NewRow
+
+ Dim TotalActual = 0.0, TotalAnterior = 0.0
+
+ If DtIngresosMesH.Rows.Count > 0 Then
+
+ For Each dr As DataRow In DtIngresosMesH.FiltraParametros("NOT CtaMayor in (3,4)").Rows
+ TotalActual += dr("ImporteActual").ToString.ToDouble
+ TotalAnterior += dr("ImporteAcumulado").ToString.ToDouble
+ Next
+
+ Row.Item("Enero") = DtIngresosMesH.SUM("Enero", "NOT CtaMayor in (3,4)")
+ Row.Item("Febrero") = DtIngresosMesH.SUM("Febrero", "NOT CtaMayor in (3,4)")
+ Row.Item("Marzo") = DtIngresosMesH.SUM("Marzo", "NOT CtaMayor in (3,4)")
+ Row.Item("Abril") = DtIngresosMesH.SUM("Abril", "NOT CtaMayor in (3,4)")
+ Row.Item("Mayo") = DtIngresosMesH.SUM("Mayo", "NOT CtaMayor in (3,4)")
+ Row.Item("Junio") = DtIngresosMesH.SUM("Junio", "NOT CtaMayor in (3,4)")
+ Row.Item("Julio") = DtIngresosMesH.SUM("Julio", "NOT CtaMayor in (3,4)")
+ Row.Item("Agosto") = DtIngresosMesH.SUM("Agosto", "NOT CtaMayor in (3,4)")
+ Row.Item("Septiembre") = DtIngresosMesH.SUM("Septiembre", "NOT CtaMayor in (3,4)")
+ Row.Item("Octubre") = DtIngresosMesH.SUM("Octubre", "NOT CtaMayor in (3,4)")
+ Row.Item("Noviembre") = DtIngresosMesH.SUM("Noviembre", "NOT CtaMayor in (3,4)")
+ Row.Item("Diciembre") = DtIngresosMesH.SUM("Diciembre", "NOT CtaMayor in (3,4)")
+
+ Row.Item("Nombre") = "TOTAL INGRESOS "
+ Row.Item("ImporteActual") = TotalActual.ToString
+ Row.Item("PorcentajeActual") = "100.00"
+ Row.Item("ImporteAcumulado") = TotalAnterior.ToString
+ Row.Item("PorcentajeAcumulado") = "100.00"
+ Row.Item("CtaMayor") = -1
+ DtIngresosMesH.Rows.Add(Row)
+ Else
+ Row.Item("Nombre") = "TOTAL INGRESOS "
+ Row.Item("ImporteActual") = "0.00"
+ Row.Item("ImporteAcumulado") = "0.00"
+ Row.Item("CtaMayor") = -1
+ DtIngresosMesH.Rows.Add(Row)
+ End If
+
+ Dim T1 = TotalActual, T2 = TotalAnterior
+
+ TotalActual = 0
+ TotalAnterior = 0
+
+ Row = DtGastosMesH.NewRow
+ If DtGastosMesH.Rows.Count > 0 Then
+
+ For Each dr As DataRow In DtGastosMesH.FiltraParametros("NOT CtaMayor in (3,4)").Rows
+ TotalActual += dr("ImporteActual").ToString.ToDouble
+ TotalAnterior += dr("ImporteAcumulado").ToString.ToDouble
+ Next
+
+
+ Row.Item("Enero") = DtGastosMesH.SUM("Enero", "NOT CtaMayor in (3,4)")
+ Row.Item("Febrero") = DtGastosMesH.SUM("Febrero", "NOT CtaMayor in (3,4)")
+ Row.Item("Marzo") = DtGastosMesH.SUM("Marzo", "NOT CtaMayor in (3,4)")
+ Row.Item("Abril") = DtGastosMesH.SUM("Abril", "NOT CtaMayor in (3,4)")
+ Row.Item("Mayo") = DtGastosMesH.SUM("Mayo", "NOT CtaMayor in (3,4)")
+ Row.Item("Junio") = DtGastosMesH.SUM("Junio", "NOT CtaMayor in (3,4)")
+ Row.Item("Julio") = DtGastosMesH.SUM("Julio", "NOT CtaMayor in (3,4)")
+ Row.Item("Agosto") = DtGastosMesH.SUM("Agosto", "NOT CtaMayor in (3,4)")
+ Row.Item("Septiembre") = DtGastosMesH.SUM("Septiembre", "NOT CtaMayor in (3,4)")
+ Row.Item("Octubre") = DtGastosMesH.SUM("Octubre", "NOT CtaMayor in (3,4)")
+ Row.Item("Noviembre") = DtGastosMesH.SUM("Noviembre", "NOT CtaMayor in (3,4)")
+ Row.Item("Diciembre") = DtGastosMesH.SUM("Diciembre", "NOT CtaMayor in (3,4)")
+
+ Row.Item("Nombre") = "TOTAL GASTOS"
+ Row.Item("ImporteActual") = TotalActual
+ Row.Item("PorcentajeActual") = If(T1 > 0, (TotalActual * 100 / T1).ToString, "0").FormatoNumero
+ Row.Item("ImporteAcumulado") = TotalAnterior.ToString
+ Row.Item("PorcentajeAcumulado") = If(T2 > 0, (TotalAnterior * 100 / T2).ToString, "0").FormatoNumero
+ Row.Item("CtaMayor") = -1
+ DtGastosMesH.Rows.Add(Row)
+ Else
+ Row.Item("Nombre") = "TOTAL GASTOS"
+ Row.Item("ImporteActual") = "0.00"
+ Row.Item("ImporteAcumulado") = "0.00"
+ Row.Item("CtaMayor") = -1
+ DtGastosMesH.Rows.Add(Row)
+ End If
+
+ If DtIngresosMesH.Rows.Count > 0 Then
+
+ Row = DTTotalesMesH.NewRow
+
+ Row.Item("Enero") = DtIngresosMesH.SUM("Enero", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Enero", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Febrero") = DtIngresosMesH.SUM("Febrero", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Febrero", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Marzo") = DtIngresosMesH.SUM("Marzo", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Marzo", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Abril") = DtIngresosMesH.SUM("Abril", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Abril", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Mayo") = DtIngresosMesH.SUM("Mayo", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Mayo", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Junio") = DtIngresosMesH.SUM("Junio", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Junio", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Julio") = DtIngresosMesH.SUM("Julio", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Julio", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Agosto") = DtIngresosMesH.SUM("Agosto", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Agosto", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Septiembre") = DtIngresosMesH.SUM("Septiembre", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Septiembre", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Octubre") = DtIngresosMesH.SUM("Octubre", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Octubre", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Noviembre") = DtIngresosMesH.SUM("Noviembre", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Noviembre", "NOT CtaMayor in (-1,3,4)")
+ Row.Item("Diciembre") = DtIngresosMesH.SUM("Diciembre", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("Diciembre", "NOT CtaMayor in (-1,3,4)")
+
+ Row.Item("Nombre") = "Resultados del Ejercicio:"
+ 'Row.Item("ImporteActual") = TotalActual.ToString
+ 'Row.Item("PorcentajeActual") = "100.00"
+ Row.Item("ImporteAcumulado") = DtIngresosMesH.SUM("ImporteAcumulado", "NOT CtaMayor in (-1,3,4)") - DtGastosMesH.SUM("ImporteAcumulado", "NOT CtaMayor in (-1,3,4)") ' TotalAnterior.ToString
+ 'Row.Item("PorcentajeAcumulado") = "100.00"
+ 'Row.Item("CtaMayor") = -1
+
+ DTTotalesMesH.Rows.Add(Row)
+
+ End If
+
+ GvIngresosMesH.DataSource = DtIngresosMesH
+ GvIngresosMesH.DataBind()
+
+ GvGastosMesH.DataSource = DtGastosMesH
+ GvGastosMesH.DataBind()
+
+ GvTotalesMesH.DataSource = DTTotalesMesH
+ GvTotalesMesH.DataBind()
+
+ UpDatosMesH.Update()
+
+ End Sub
+
+ Private Sub SumaTotalesMesH()
+ ''Llena Lb´s Totales
+ ''*********************************************************************************
+ 'LbTotalActual.Text = TotalActualMes.ToString.FormatoNumero
+ 'LbTotalAnterior.Text = TotalAnteriorMes.ToString.FormatoNumero
+
+ 'LbTotalActual.ForeColor = If(TotalActualMes < 0, Drawing.Color.Red, Color.Black)
+ 'LbTotalAnterior.ForeColor = If(TotalAnteriorMes < 0, Drawing.Color.Red, Color.Black)
+
+
+ End Sub
+
+ Protected Sub GvIngresosMesH_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Then
+ TotalActualMes += e.Row.DBCampo("ImporteActual").ToString.ToDouble
+ TotalAnteriorMes += e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble
+ 'e.Row.ControlStyle.BackColor = Drawing.Color.LightGray
+ 'e.Row.ControlStyle.ForeColor = Drawing.Color.White
+ e.Row.ControlStyle.Font.Bold = True
+ ElseIf e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then
+ 'e.Row.CssClass = "SubTotales3"
+ e.Row.ControlStyle.Font.Bold = True
+ End If
+
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero > 0 Then
+
+ e.Row.FCHyperLink("HLEnero").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/01/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/01/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLFebrero").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/02/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/02/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLMarzo").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/03/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/03/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLAbril").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/04/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/04/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLMayo").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/05/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/05/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLJunio").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/06/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/06/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLJulio").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/07/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/07/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLAgosto").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/08/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/08/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLSeptiembre").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/09/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/09/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLOctubre").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/10/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/10/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLNoviembre").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/11/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/11/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLDiciembre").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/12/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/12/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+
+
+ e.Row.FCHyperLink("HLAnterior").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, e.Row.DBCampo("FechaInicial").ToDate.ToShortDateString)
+ 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("ImporteAcumulado").ToString.ToDouble < 0 Then
+ e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red
+ End If
+ End If
+ End Sub
+
+ Protected Sub GvGastosMesH_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Then
+ TotalActualMes -= e.Row.DBCampo("ImporteActual").ToString.ToDouble
+ TotalAnteriorMes -= e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble
+ 'e.Row.ControlStyle.BackColor = Drawing.Color.LightGray
+ 'e.Row.ControlStyle.ForeColor = Drawing.Color.White
+ e.Row.ControlStyle.Font.Bold = True
+ ElseIf e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then
+ 'e.Row.CssClass = "SubTotales"
+ e.Row.ControlStyle.Font.Bold = True
+ End If
+
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero > 0 Then
+
+ Dim CveCuenta As Integer = e.Row.DataKey("CveCuenta").ToEntero
+
+ e.Row.FCHyperLink("HLEnero").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/01/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/01/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLFebrero").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/02/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/02/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLMarzo").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/03/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/03/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLAbril").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/04/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/04/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLMayo").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/05/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/05/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLJunio").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/06/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/06/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLJulio").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/07/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/07/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLAgosto").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/08/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/08/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLSeptiembre").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/09/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/09/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLOctubre").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/10/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/10/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLNoviembre").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/11/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/11/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+ e.Row.FCHyperLink("HLDiciembre").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), $"01/12/{DdlEjercicio.SelectedValue}".ToDate.LastDayOfMonth.ToShortDateString, $"01/12/{DdlEjercicio.SelectedValue}".ToDate.ToShortDateString)
+
+ e.Row.FCHyperLink("HLAnterior").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, e.Row.DBCampo("FechaInicial").ToDate.ToShortDateString)
+
+ End If
+
+ If e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble < 0 Then
+ e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red
+ End If
+ End If
+ End Sub
+
+ Protected Sub GvTotalesMesH_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+
+ If e.Row.RowType = DataControlRowType.Header Then
+ e.Row.Attributes.Add("style", "display:none")
+ End If
+
+ If e.Row.RowType = DataControlRowType.DataRow Then
+
+ e.Row.Attributes.Add("style", "Font-weight: bold")
+ End If
+
+ End Sub
+
+#End Region
+
+
+
+#Region "Anual H O R I Z O N T A L"
+
+ Private Sub CargaDatosAnualH()
+
+
+ FechaIMes = $"01/01/{DdlEjercicio.SelectedValue}"
+ FechaFMes = $"31/12/{DdlEjercicio2.SelectedValue}"
+
+ Dim CveSubProyecto As Integer = DdlSubproyecto.SelectedValue.ToEntero
+
+ 'Dim ObjConta As New ClsContPAQi(UsuarioActual.Empresa)
+ Dim ObjConta As New ClsContabilidad
+ If ObjConta.GetEstadosAnualHorizontal(FechaIMes.ToDate, FechaFMes.ToDate, CveSubProyecto, DdlDivisor.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario) Then
+ DtDatosAnualH = ObjConta.DtResultados.FiltraParametros("(ImporteActual <> 0 OR ImporteAcumulado <> 0)")
+ Else
+ DtDatosAnualH = Nothing
+ Alert("Ocurrio un error al cargar los datos del Estado de Actividades", TipoMensaje.MsgError)
+ End If
+ ObjConta.Dispose()
+
+ If DtDatosAnualH IsNot Nothing Then
+ CargaGridsAnualH()
+
+ End If
+
+ End Sub
+
+ Private Sub CargaGridsAnualH()
+
+ DtIngresosAnualH = DtDatosAnualH.FiltraParametros("Tipo ='H' ")
+ DtGastosAnualH = DtDatosAnualH.FiltraParametros("Tipo ='G' ")
+ DTTotalesAnualH = DtDatosAnualH.Clone()
+
+ Dim Row As DataRow = DtIngresosAnualH.NewRow
+
+ Dim TotalActual = 0.0, TotalAnterior = 0.0
+
+
+ Dim IndexData As Integer = 0
+ Dim IndexGv As Integer = 1
+ Dim IndexMax As Integer = 1
+
+ If DtIngresosAnualH.Rows.Count > 0 Then
+
+
+
+
+ For Each dCoumn As DataColumn In DtIngresosAnualH.Columns
+
+ If IndexData >= 13 Then
+
+ If dCoumn.ColumnName.ToEntero > 0 And dCoumn.ColumnName.ToEntero <= DdlEjercicio2.SelectedValue.ToEntero Then
+
+ CType(GvIngresosAnualH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ CType(GvIngresosAnualH.Columns(IndexGv), BoundField).HeaderText = dCoumn.ColumnName
+
+
+ 'CType(GvIngresosAnualH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ 'CType(GvIngresosAnualH.Columns(IndexGv), BoundField).HeaderText = dCoumn.ColumnName
+ GvIngresosAnualH.Columns(IndexGv).Visible = True
+
+
+ CType(GvTotalesAnualH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ CType(GvTotalesAnualH.Columns(IndexGv), BoundField).HeaderText = dCoumn.ColumnName
+ 'CType(GvTotalesAnualH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ 'CType(GvTotalesAnualH.Columns(IndexGv), BoundField).HeaderText = dCoumn.ColumnName
+ GvTotalesAnualH.Columns(IndexGv).Visible = True
+
+ IndexMax = IndexData
+ Else
+ GvIngresosAnualH.Columns(IndexGv).Visible = False
+ GvTotalesAnualH.Columns(IndexGv).Visible = False
+ End If
+
+
+
+ IndexGv = IndexGv + 1
+ End If
+
+ IndexData = IndexData + 1
+
+ Next
+
+
+ For Each dr As DataRow In DtIngresosAnualH.FiltraParametros("NOT CtaMayor in (3,4)").Rows
+
+ TotalActual += dr("ImporteActual").ToString.ToDouble
+ TotalAnterior += dr("ImporteAcumulado").ToString.ToDouble
+
+ Next
+
+ IndexData = 13
+ For IndexData = 13 To IndexMax
+ Row.Item(IndexData) = DtIngresosAnualH.SUM($"[{DtIngresosAnualH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (3,4)")
+ Next
+
+ Row.Item("Nombre") = "TOTAL INGRESOS "
+ Row.Item("ImporteActual") = DtIngresosAnualH.SUM("ImporteActual", "NOT CtaMayor in (3,4)") 'TotalActual.ToString
+ Row.Item("PorcentajeActual") = "100.00"
+ Row.Item("ImporteAcumulado") = DtIngresosAnualH.SUM("ImporteAcumulado", "NOT CtaMayor in (3,4)") 'TotalAnterior.ToString
+ Row.Item("PorcentajeAcumulado") = "100.00"
+ Row.Item("CtaMayor") = -1
+ DtIngresosAnualH.Rows.Add(Row)
+ Else
+ Row.Item("Nombre") = "TOTAL INGRESOS "
+ Row.Item("ImporteActual") = "0.00"
+ Row.Item("ImporteAcumulado") = "0.00"
+ Row.Item("CtaMayor") = -1
+ DtIngresosAnualH.Rows.Add(Row)
+ End If
+
+ Dim T1 = TotalActual, T2 = TotalAnterior
+
+ TotalActual = 0
+ TotalAnterior = 0
+
+ Row = DtGastosAnualH.NewRow
+
+ If DtGastosAnualH.Rows.Count > 0 Then
+
+
+ IndexData = 0
+ IndexGv = 1
+ IndexMax = 0
+
+ For Each dCoumn As DataColumn In DtGastosAnualH.Columns
+
+ If IndexData >= 13 Then
+
+ If dCoumn.ColumnName.ToEntero > 0 And dCoumn.ColumnName.ToEntero <= DdlEjercicio2.SelectedValue.ToEntero Then
+ 'HyperLinkField
+
+ CType(GvGastosAnualH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ CType(GvGastosAnualH.Columns(IndexGv), BoundField).HeaderText = dCoumn.ColumnName
+ 'CType(GvGastosAnualH.Columns(IndexGv), HyperLinkField).DataNavigateUrlFields = {"CveCuenta", "FechaInicial", "FechaFActual", "CveSubProyecto"}
+ 'CType(GvGastosAnualH.Columns(IndexGv), HyperLinkField).DataNavigateUrlFormatString = "/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1&CveSubProyecto{3}"
+
+ 'CType(GvGastosAnualH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ 'CType(GvGastosAnualH.Columns(IndexGv), BoundField).HeaderText = dCoumn.ColumnName
+
+ GvGastosAnualH.Columns(IndexGv).Visible = True
+ IndexMax = IndexData
+ Else
+ GvGastosAnualH.Columns(IndexGv).Visible = False
+ End If
+
+
+
+ IndexGv = IndexGv + 1
+ End If
+
+ IndexData = IndexData + 1
+
+ Next
+
+
+ For Each dr As DataRow In DtGastosAnualH.FiltraParametros("Not CtaMayor In (3,4)").Rows
+ TotalActual += dr("ImporteActual").ToString.ToDouble
+ TotalAnterior += dr("ImporteAcumulado").ToString.ToDouble
+ Next
+
+ IndexData = 13
+ For IndexData = 13 To IndexMax
+ Row.Item(IndexData) = DtGastosAnualH.SUM($"[{DtIngresosAnualH.Columns(IndexData).ColumnName}]", "Not CtaMayor In (3,4)")
+ Next
+
+ Row.Item("Nombre") = "TOTAL GASTOS"
+ Row.Item("ImporteActual") = TotalActual
+ Row.Item("PorcentajeActual") = If(T1 > 0, (TotalActual * 100 / T1).ToString, "0").FormatoNumero
+ Row.Item("ImporteAcumulado") = TotalAnterior.ToString
+ Row.Item("PorcentajeAcumulado") = If(T2 > 0, (TotalAnterior * 100 / T2).ToString, "0").FormatoNumero
+ Row.Item("CtaMayor") = -1
+ DtGastosAnualH.Rows.Add(Row)
+ Else
+ Row.Item("Nombre") = "TOTAL GASTOS"
+ Row.Item("ImporteActual") = "0.00"
+ Row.Item("ImporteAcumulado") = "0.00"
+ Row.Item("CtaMayor") = -1
+ DtGastosAnualH.Rows.Add(Row)
+ End If
+
+ If DtIngresosAnualH.Rows.Count > 0 Then
+
+ Row = DTTotalesAnualH.NewRow
+
+
+ IndexData = 13
+ For IndexData = 13 To IndexMax
+ Row.Item(IndexData) = DtIngresosAnualH.SUM($"[{DtIngresosAnualH.Columns(IndexData).ColumnName}]", "Not CtaMayor In (-1,3,4)") - DtGastosAnualH.SUM($"[{DtGastosAnualH.Columns(IndexData).ColumnName}]", "Not CtaMayor In (-1,3,4)")
+ Next
+
+ Row.Item("Nombre") = "Resultados del Ejercicio"
+ 'Row.Item("ImporteActual") = TotalActual.ToString
+ 'Row.Item("PorcentajeActual") = "100.00"
+ Row.Item("ImporteAcumulado") = DtIngresosAnualH.SUM($"ImporteAcumulado", "Not CtaMayor in (-1,3,4)") - DtGastosAnualH.SUM($"ImporteAcumulado", "Not CtaMayor in (-1,3,4)")
+ 'Row.Item("PorcentajeAcumulado") = "100.00"
+ 'Row.Item("CtaMayor") = -1
+
+ DTTotalesAnualH.Rows.Add(Row)
+
+ End If
+
+ GvIngresosAnualH.DataSource = DtIngresosAnualH
+ GvIngresosAnualH.DataBind()
+
+ GvGastosAnualH.DataSource = DtGastosAnualH
+ GvGastosAnualH.DataBind()
+
+ GvTotalesAnualH.DataSource = DTTotalesAnualH
+ GvTotalesAnualH.DataBind()
+
+ UpDatosAnualH.Update()
+
+ End Sub
+
+
+
+ Protected Sub GvIngresosAnualH_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+
+ If e.Row.RowType = DataControlRowType.DataRow Then
+
+
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Then
+ TotalActualMes += e.Row.DBCampo("ImporteActual").ToString.ToDouble
+ TotalAnteriorMes += e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble
+ 'e.Row.ControlStyle.BackColor = Drawing.Color.LightGray
+ 'e.Row.ControlStyle.ForeColor = Drawing.Color.White
+ e.Row.ControlStyle.Font.Bold = True
+ ElseIf e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then
+ 'e.Row.CssClass = "SubTotales3"
+ e.Row.ControlStyle.Font.Bold = True
+ End If
+
+
+ Dim CveCuenta As Integer = e.Row.DataKey("CveCuenta").ToEntero
+ Dim CveSubProyecto As Integer = e.Row.DataKey("CveSubProyecto").ToEntero
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero > 0 Then
+
+
+ Dim CountDinamico As Integer = e.Row.DataKey("CountDinamico").ToEntero
+ Dim IndiceInicio As Integer = 1
+ Dim IndiceMax As Integer = 1 + CountDinamico
+ For IndiceInicio = 1 To IndiceMax
+ Dim Anio As String = CType(GvGastosAnualH.Columns(IndiceInicio), BoundField).DataField
+ Dim Importe As String = e.Row.Cells(IndiceInicio).Text
+ e.Row.Cells(IndiceInicio).Text = $"{Importe}"
+ Next IndiceInicio
+
+ e.Row.FCHyperLink("HLAnterior").NavigateUrl = $"./RepAnexoCatalogo.aspx?CveCuenta={CveCuenta}&FF=31/12/{DdlEjercicio2.SelectedValue}&FI=01/01/{DdlEjercicio.SelectedValue}&ER=1&CveSubProyecto={CveSubProyecto}"
+ End If
+
+
+
+ If e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble < 0 Then
+ e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red
+ End If
+ End If
+ End Sub
+
+ Protected Sub GvGastosAnualH_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Then
+ TotalActualMes -= e.Row.DBCampo("ImporteActual").ToString.ToDouble
+ TotalAnteriorMes -= e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble
+ 'e.Row.ControlStyle.BackColor = Drawing.Color.LightGray
+ 'e.Row.ControlStyle.ForeColor = Drawing.Color.White
+ e.Row.ControlStyle.Font.Bold = True
+ ElseIf e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then
+ 'e.Row.CssClass = "SubTotales"
+ e.Row.ControlStyle.Font.Bold = True
+ End If
+
+ Dim CveCuenta As Integer = e.Row.DataKey("CveCuenta").ToEntero
+ Dim CveSubProyecto As Integer = e.Row.DataKey("CveSubProyecto").ToEntero
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero > 0 Then
+
+
+ Dim CountDinamico As Integer = e.Row.DataKey("CountDinamico").ToEntero
+ Dim IndiceInicio As Integer = 1
+ Dim IndiceMax As Integer = 1 + CountDinamico
+ For IndiceInicio = 1 To IndiceMax
+ Dim Anio As String = CType(GvGastosAnualH.Columns(IndiceInicio), BoundField).DataField
+ Dim Importe As String = e.Row.Cells(IndiceInicio).Text
+ e.Row.Cells(IndiceInicio).Text = $"{Importe}"
+ Next IndiceInicio
+
+ e.Row.FCHyperLink("HLAnterior").NavigateUrl = $"./RepAnexoCatalogo.aspx?CveCuenta={CveCuenta}&FF=31/12/{DdlEjercicio2.SelectedValue}&FI=01/01/{DdlEjercicio.SelectedValue}&ER=1&CveSubProyecto={CveSubProyecto}"
+ End If
+
+ If e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble < 0 Then
+ e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red
+ End If
+ End If
+ End Sub
+
+ Protected Sub GvTotalesAnualH_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+
+ If e.Row.RowType = DataControlRowType.Header Then
+ e.Row.Attributes.Add("style", "display:none")
+ End If
+
+ If e.Row.RowType = DataControlRowType.DataRow Then
+
+ e.Row.Attributes.Add("style", "Font-weight: bold")
+ End If
+
+ End Sub
+
+#End Region
+
+
+#Region "S U B P R O Y E C T O H O R I Z O N T A L"
+
+ Private Sub CargaDatosSubProyectoH()
+
+
+ FechaIMes = $"01/01/{DdlEjercicio.SelectedValue}"
+ FechaFMes = $"01/{DdlPeriodo.SelectedValue.ToEntero.ToString("00")}/{DdlEjercicio.SelectedValue}"
+ FechaFMes = DateAdd(DateInterval.Day, -1, DateAdd(DateInterval.Month, 1, CDate(FechaFMes))).ToString("dd/MM/yyyy")
+
+ Dim CveSubProyecto As Integer = DdlSubproyecto.SelectedValue.ToEntero
+
+
+ Dim ObjConta As New ClsContabilidad
+ If ObjConta.GetEstadosSubProyectoHorizontal(FechaIMes.ToDate, FechaFMes.ToDate, CveSubProyecto, DdlDivisor.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, UsuarioActual.CveUsuario) Then
+ DTSubProyectosCabecerasH = ObjConta.DSResultados.Tables(0)
+ DtDatosSubProyectoH = ObjConta.DSResultados.Tables(1).FiltraParametros("(ImporteActual <> 0 OR ImporteAcumulado <> 0)")
+ Else
+ DtDatosSubProyectoH = Nothing
+ Alert("Ocurrio un error al cargar los datos del Estado de Actividades", TipoMensaje.MsgError)
+ End If
+ ObjConta.Dispose()
+
+ If DtDatosSubProyectoH IsNot Nothing And DTSubProyectosCabecerasH IsNot Nothing Then
+ CargaGridsSubProyectoH()
+ SumaTotalesSubProyectoH()
+ End If
+
+ End Sub
+
+ Private Sub CargaGridsSubProyectoH()
+
+ DtIngresosSubProyectoH = DtDatosSubProyectoH.FiltraParametros("Tipo ='H' ")
+ DtGastosSubProyectoH = DtDatosSubProyectoH.FiltraParametros("Tipo ='G' ")
+ DTTotalesSubProyectoH = DtDatosSubProyectoH.Clone()
+
+ Dim Row As DataRow = DtIngresosSubProyectoH.NewRow
+
+ Dim TotalActual = 0.0, TotalAnterior = 0.0
+
+
+ Dim IndexData As Integer = 0
+ Dim IndexGv As Integer = 1
+ Dim IndexMax As Integer = 1
+ Dim IndexSubProyecto = 0
+ Dim IndexSubProyectoMAx As Integer = DTSubProyectosCabecerasH.Rows.Count - 1
+ Dim IndexTotatles As Integer = 13 + IndexSubProyectoMAx
+
+ If DtIngresosSubProyectoH.Rows.Count > 0 Then
+
+
+
+
+ For Each dCoumn As DataColumn In DtIngresosSubProyectoH.Columns
+
+ If IndexData >= 13 Then
+
+ If IndexSubProyecto <= IndexSubProyectoMAx Then
+
+ CType(GvIngresosSubProyectoH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ GvIngresosSubProyectoH.Columns(IndexGv).Visible = True
+
+ CType(GvTotalesSubProyectoH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ GvTotalesSubProyectoH.Columns(IndexGv).Visible = True
+
+ If IndexSubProyecto <= IndexSubProyectoMAx Then
+ CType(GvIngresosSubProyectoH.Columns(IndexGv), BoundField).HeaderText = DTSubProyectosCabecerasH.Rows(IndexSubProyecto)(0).ToString
+ CType(GvTotalesSubProyectoH.Columns(IndexGv), BoundField).HeaderText = DTSubProyectosCabecerasH.Rows(IndexSubProyecto)(0).ToString
+ CType(GvGastosSubProyectoH.Columns(IndexGv), BoundField).HeaderText = DTSubProyectosCabecerasH.Rows(IndexSubProyecto)(0).ToString
+ End If
+
+ Else
+ GvIngresosSubProyectoH.Columns(IndexGv).Visible = False
+ GvTotalesSubProyectoH.Columns(IndexGv).Visible = False
+ End If
+
+ IndexGv = IndexGv + 1
+ IndexSubProyecto = IndexSubProyecto + 1
+ IndexMax = IndexMax + 1
+
+ End If
+ IndexData = IndexData + 1
+ Next
+
+
+ For Each dr As DataRow In DtIngresosSubProyectoH.FiltraParametros("NOT CtaMayor in (3,4)").Rows
+ TotalActual += dr("ImporteActual").ToString.ToDouble
+ TotalAnterior += dr("ImporteAcumulado").ToString.ToDouble
+ Next
+
+ IndexData = 13
+ For IndexData = 13 To IndexTotatles
+ Row.Item(IndexData) = DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (3,4)")
+ Next
+
+ Row.Item("Nombre") = "TOTAL INGRESOS "
+ Row.Item("ImporteActual") = DtIngresosSubProyectoH.SUM("ImporteActual", "NOT CtaMayor in (3,4)") 'TotalActual.ToString
+ Row.Item("PorcentajeActual") = "100.00"
+ Row.Item("ImporteAcumulado") = DtIngresosSubProyectoH.SUM("ImporteAcumulado", "NOT CtaMayor in (3,4)") 'TotalAnterior.ToString
+ Row.Item("PorcentajeAcumulado") = "100.00"
+ Row.Item("CtaMayor") = -1
+ DtIngresosSubProyectoH.Rows.Add(Row)
+ Else
+ Row.Item("Nombre") = "TOTAL INGRESOS "
+ Row.Item("ImporteActual") = "0.00"
+ Row.Item("ImporteAcumulado") = "0.00"
+ Row.Item("CtaMayor") = -1
+ DtIngresosSubProyectoH.Rows.Add(Row)
+ End If
+
+ Dim T1 = TotalActual, T2 = TotalAnterior
+
+ TotalActual = 0
+ TotalAnterior = 0
+
+ Row = DtGastosSubProyectoH.NewRow
+
+ If DtGastosSubProyectoH.Rows.Count > 0 Then
+
+
+ IndexData = 0
+ IndexGv = 1
+ IndexMax = 0
+ IndexSubProyecto = 0
+
+ For Each dCoumn As DataColumn In DtIngresosSubProyectoH.Columns
+ If IndexData >= 13 Then
+ If IndexSubProyecto <= IndexSubProyectoMAx Then
+ CType(GvGastosSubProyectoH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ GvGastosSubProyectoH.Columns(IndexGv).Visible = True
+ CType(GvTotalesSubProyectoH.Columns(IndexGv), BoundField).DataField = dCoumn.ColumnName
+ GvTotalesSubProyectoH.Columns(IndexGv).Visible = True
+ Else
+ GvIngresosSubProyectoH.Columns(IndexGv).Visible = False
+ GvTotalesSubProyectoH.Columns(IndexGv).Visible = False
+ End If
+
+ IndexGv = IndexGv + 1
+ IndexSubProyecto = IndexSubProyecto + 1
+ End If
+ IndexData = IndexData + 1
+ Next
+
+
+
+ For Each dr As DataRow In DtGastosSubProyectoH.FiltraParametros("NOT CtaMayor in (3,4)").Rows
+ TotalActual += dr("ImporteActual").ToString.ToDouble
+ TotalAnterior += dr("ImporteAcumulado").ToString.ToDouble
+ Next
+
+ IndexData = 13
+ For IndexData = 13 To IndexTotatles
+ Row.Item(IndexData) = DtGastosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (3,4)")
+ Next
+
+ Row.Item("Nombre") = "TOTAL GASTOS"
+ Row.Item("ImporteActual") = TotalActual
+ Row.Item("PorcentajeActual") = If(T1 > 0, (TotalActual * 100 / T1).ToString, "0").FormatoNumero
+ Row.Item("ImporteAcumulado") = TotalAnterior.ToString
+ Row.Item("PorcentajeAcumulado") = If(T2 > 0, (TotalAnterior * 100 / T2).ToString, "0").FormatoNumero
+ Row.Item("CtaMayor") = -1
+ DtGastosSubProyectoH.Rows.Add(Row)
+ Else
+ Row.Item("Nombre") = "TOTAL GASTOS"
+ Row.Item("ImporteActual") = "0.00"
+ Row.Item("ImporteAcumulado") = "0.00"
+ Row.Item("CtaMayor") = -1
+ DtGastosSubProyectoH.Rows.Add(Row)
+ End If
+
+ If DtIngresosSubProyectoH.Rows.Count > 0 Then
+
+ Row = DTTotalesSubProyectoH.NewRow
+
+
+
+ IndexData = 13
+ For IndexData = 13 To IndexTotatles
+ Row.Item(IndexData) = DtIngresosSubProyectoH.SUM($"[{DtIngresosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (-1,3,4)") - DtGastosSubProyectoH.SUM($"[{DtGastosSubProyectoH.Columns(IndexData).ColumnName}]", "NOT CtaMayor in (-1,3,4)")
+ Next
+
+ Row.Item("Nombre") = "Totales:"
+ 'Row.Item("ImporteActual") = TotalActual.ToString
+ 'Row.Item("PorcentajeActual") = "100.00"
+ Row.Item("ImporteAcumulado") = DtIngresosSubProyectoH.SUM($"ImporteAcumulado", "NOT CtaMayor in (-1,3,4)") - DtGastosSubProyectoH.SUM($"ImporteAcumulado", "NOT CtaMayor in (-1,3,4)")
+ 'Row.Item("PorcentajeAcumulado") = "100.00"
+ Row.Item("CtaMayor") = -2
+
+ DTTotalesSubProyectoH.Rows.Add(Row)
+
+ End If
+
+ DtIngresosSubProyectoH.Merge(DtGastosSubProyectoH)
+ DtIngresosSubProyectoH.Merge(DTTotalesSubProyectoH)
+
+
+ GvIngresosSubProyectoH.DataSource = DtIngresosSubProyectoH
+ GvIngresosSubProyectoH.DataBind()
+
+ 'GvGastosSubProyectoH.DataSource = DtGastosSubProyectoH
+ 'GvGastosSubProyectoH.DataBind()
+
+ 'GvTotalesSubProyectoH.DataSource = DTTotalesSubProyectoH
+ 'GvTotalesSubProyectoH.DataBind()
+
+ UpDatosSubProyectoH.Update()
+
+ End Sub
+
+ Private Sub SumaTotalesSubProyectoH()
+ ''Llena Lb´s Totales
+ ''*********************************************************************************
+ 'LbTotalActual.Text = TotalActualMes.ToString.FormatoNumero
+ 'LbTotalAnterior.Text = TotalAnteriorMes.ToString.FormatoNumero
+
+ 'LbTotalActual.ForeColor = If(TotalActualMes < 0, Drawing.Color.Red, Color.Black)
+ 'LbTotalAnterior.ForeColor = If(TotalAnteriorMes < 0, Drawing.Color.Red, Color.Black)
+
+
+ End Sub
+
+ Protected Sub GvIngresosSubProyectoH_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero = -1 Then
+ TotalActualMes += e.Row.DBCampo("ImporteActual").ToString.ToDouble
+ TotalAnteriorMes += e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble
+ 'e.Row.ControlStyle.BackColor = Drawing.Color.LightGray
+ 'e.Row.ControlStyle.ForeColor = Drawing.Color.White
+ e.Row.ControlStyle.Font.Bold = True
+ ElseIf e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then
+ 'e.Row.CssClass = "SubTotales3"
+ e.Row.ControlStyle.Font.Bold = True
+
+ ElseIf e.Row.DBCampo("CtaMayor").ToString.ToEntero = -2 Then
+
+ e.Row.ControlStyle.Font.Bold = True
+ e.Row.ControlStyle.Font.Size = 13
+ End If
+
+
+ Dim CveCuenta As Integer = e.Row.DataKey("CveCuenta").ToEntero
+ 'Dim CveSubProyecto As Integer = e.Row.DataKey("CveSubProyecto").ToEntero
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero > 0 Then
+
+
+ Dim CountDinamico As Integer = e.Row.DataKey("CountDinamico").ToEntero
+ Dim IndiceInicio As Integer = 1
+ Dim IndiceMax As Integer = 1 + CountDinamico
+
+ Dim FEchaMesFinal As Date = New Date(DdlEjercicio.SelectedValue.ToEntero, DdlPeriodo.SelectedValue.ToEntero, 1).LastDayOfMonth
+
+ For IndiceInicio = 1 To IndiceMax
+
+ Dim CveSubProyectoIntermo As String = CType(GvGastosSubProyectoH.Columns(IndiceInicio), BoundField).DataField
+ Dim Importe As String = e.Row.Cells(IndiceInicio).Text
+
+
+
+ e.Row.Cells(IndiceInicio).Text = $"{Importe}"
+ Next IndiceInicio
+
+ e.Row.FCHyperLink("HLAnterior").NavigateUrl = $"./RepAnexoCatalogo.aspx?CveCuenta={CveCuenta}&FF={FEchaMesFinal.ToString("dd/MM/yyyy")}&FI=01/01/{DdlEjercicio.SelectedValue}&ER=1&CveSubProyecto={-1}"
+
+ End If
+
+ If e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble < 0 Then
+ e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red
+ End If
+ End If
+
+ End Sub
+
+ Protected Sub GvGastosSubProyectoH_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ If e.Row.DBCampo("CtaMayor").ToString.ToEntero < 0 Then
+ TotalActualMes -= e.Row.DBCampo("ImporteActual").ToString.ToDouble
+ TotalAnteriorMes -= e.Row.DBCampo("ImporteAcumulado").ToString.ToDouble
+ 'e.Row.ControlStyle.BackColor = Drawing.Color.LightGray
+ 'e.Row.ControlStyle.ForeColor = Drawing.Color.White
+ e.Row.ControlStyle.Font.Bold = True
+ ElseIf e.Row.DBCampo("CtaMayor").ToString.ToEntero = 3 Then
+ 'e.Row.CssClass = "SubTotales"
+ e.Row.ControlStyle.Font.Bold = True
+ End If
+
+ 'If e.Row.DBCampo("CtaMayor").ToString.ToEntero > 0 Then
+ ' e.Row.FCHyperLink("HLActual").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, e.Row.DBCampo("FechaInicial").ToDate.ToShortDateString)
+ ' e.Row.FCHyperLink("HLAnterior").NavigateUrl = String.Format("/Contabilidad2/RepAnexoCatalogo.aspx?CveCuenta={0}&FF={1}&FI={2}&ER=1", e.Row.DBCampo("CveCuenta"), e.Row.DBCampo("FechaFActual").ToDate.ToShortDateString, e.Row.DBCampo("FechaInicial").ToDate.ToShortDateString)
+ '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("ImporteAcumulado").ToString.ToDouble < 0 Then
+ e.Row.FCHyperLink("HLAnterior").ForeColor = Drawing.Color.Red
+ End If
+ End If
+ End Sub
+
+ Protected Sub GvTotalesSubProyectoH_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+
+ If e.Row.RowType = DataControlRowType.Header Then
+ ' e.Row.Attributes.Add("style", "display:none")
+ End If
+
+ If e.Row.RowType = DataControlRowType.DataRow Then
+
+ e.Row.Attributes.Add("style", "Font-weight: bold")
+ End If
+
+ End Sub
+
+#End Region
+
+
+End Class
diff --git a/Ventas/RepTopClientesVentas.aspx b/Ventas/RepTopClientesVentas.aspx
index f80a488b7..d6e97de4b 100644
--- a/Ventas/RepTopClientesVentas.aspx
+++ b/Ventas/RepTopClientesVentas.aspx
@@ -5,6 +5,54 @@
@@ -13,6 +61,13 @@
PDF
+
+
+
+ Ver Grafica
+
+
+
Reporte de Top de Ventas por Cliente
@@ -53,11 +108,16 @@
-
-
+
+
+
+
+
+
+
@@ -67,17 +127,81 @@
-
+
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Ventas/RepTopClientesVentas.aspx.vb b/Ventas/RepTopClientesVentas.aspx.vb
index aafccc8f1..69bfc29ed 100644
--- a/Ventas/RepTopClientesVentas.aspx.vb
+++ b/Ventas/RepTopClientesVentas.aspx.vb
@@ -9,6 +9,15 @@ Imports Microsoft.Reporting.WebForms
Partial Class Ventas_RepTopClientesVentas
Inherits ClsPaginas
+ Private Property DtClientes As DataTable
+ Get
+ Return DirectCast(ViewState("DtClientes"), DataTable)
+ End Get
+ Set(value As DataTable)
+ ViewState("DtClientes") = value
+ End Set
+ End Property
+
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
CargarFiltros()
@@ -47,12 +56,16 @@ Partial Class Ventas_RepTopClientesVentas
DdlSubProyecto.DataSource = GlobalDTSubProyectos(-1, CveEmpresa:=UsuarioActual.CveEmpresa)
DdlSubProyecto.DataBind()
DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
+
+ TxtTop.Text = "20"
End Sub
Private Sub CargaDatos()
Dim ObjVentas As New ClsVentas
- If ObjVentas.GetRepTopClientesVentas(UsuarioActual.CveEmpresa, DdlMes.SelectedValue.ToEntero, DdlAño.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero) Then
+ If ObjVentas.GetRepTopClientesVentas(UsuarioActual.CveEmpresa, DdlMes.SelectedValue.ToEntero, DdlAño.SelectedValue.ToEntero, TxtTop.Text.ToEntero,
+ DdlSubProyecto.SelectedValue.ToEntero) Then
GvM.DataSource = ObjVentas.DtResultados
+ DtClientes = ObjVentas.DtResultados
End If
ObjVentas.Dispose()
GvM.DataBind()
@@ -62,4 +75,50 @@ Partial Class Ventas_RepTopClientesVentas
CargaDatos()
UppGrid.Update()
End Sub
+
+ Protected Sub ImgImprimir_Click(sender As Object, e As EventArgs) Handles ImgImprimir.Click
+ Dim params As New List(Of ReportParameter)
+ params.Add(New ReportParameter("pEmp", UsuarioActual.Empresa.Empresa))
+ params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
+ params.Add(New ReportParameter("FechaImpresion", DateTime.Now.ToString))
+
+ Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
+ Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
+
+ If Imagen.Exists Then
+ params.Add(New ReportParameter("pImg", logouri))
+ Else
+ params.Add(New ReportParameter("pImg", ""))
+ End If
+ ImprimirPDF("Empresas/Grales/Formatos/TopClientes.rdlc", DtClientes, params, String.Format("ReporteVentas-{0}", Now.ToDateTime.ToShortDateString), Formato:="PDF")
+ End Sub
+
+ Protected Sub LnkVerGrafica_Click(sender As Object, e As EventArgs)
+ If Not DtClientes IsNot Nothing AndAlso DtClientes.Rows.Count > 0 Then
+ Alert("No hay datos disponibles", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+
+ LblTituloGrafica.Text = $"Agrupado por: Clientes"
+ RegistraScript("$('#DivModalGrafica').modal('show')")
+ CambioGrafica()
+ End Sub
+
+ Private Sub CambioGrafica()
+ Dim Dt As New DataTable()
+ Dt.Columns.Add("Cliente")
+ Dt.Columns.Add("Importe")
+ For Each Dr As DataRow In DtClientes.Rows
+ Dim Row As DataRow = Nothing
+ Row = Dt.NewRow()
+ Row("Cliente") = Dr("NombreComercial").ToString
+ Row("Importe") = Dr("ImporteAcumulado").ToString.FormatoNumero
+ Dt.Rows.Add(Row)
+ Next
+
+ Dim query = From s In Dt.AsEnumerable() Select New With {.Cliente = s("Cliente").ToString(), .Importe = s("Importe").ToString().ToDouble()}
+ Dim json As String = Newtonsoft.Json.JsonConvert.SerializeObject(query)
+ RegistraScript($"CargaGraficaBarras({json})", "22")
+ UPModalProd.Update()
+ End Sub
End Class