235 lines
8.2 KiB
VB.net
235 lines
8.2 KiB
VB.net
Option Explicit On
|
|
Option Strict On
|
|
|
|
Imports System.Data
|
|
Imports Extensiones
|
|
Partial Class Contabilidad2_RepAnexoCatalogoAnual
|
|
Inherits ClsPaginas
|
|
|
|
#Region " PROPIEDADES "
|
|
Public Property CveCuenta As Integer
|
|
Get
|
|
Return ViewState("CveCuenta").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCuenta") = value
|
|
End Set
|
|
End Property
|
|
Public Property EsVertical As Integer
|
|
Get
|
|
Return ViewState("EsVertical").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("EsVertical") = value
|
|
End Set
|
|
End Property
|
|
|
|
|
|
Private Property listacolores As List(Of String)
|
|
Get
|
|
Return DirectCast(ViewState("listacolores"), List(Of String))
|
|
End Get
|
|
Set(value As List(Of String))
|
|
ViewState("listacolores") = value
|
|
End Set
|
|
End Property
|
|
Private Property listaCamposanios As List(Of String())
|
|
Get
|
|
Return DirectCast(ViewState("listaCamposanios"), List(Of String()))
|
|
End Get
|
|
Set(value As List(Of String()))
|
|
ViewState("listaCamposanios") = value
|
|
End Set
|
|
End Property
|
|
|
|
#End Region
|
|
|
|
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
|
|
If Not IsPostBack Then
|
|
|
|
listacolores = New List(Of String)
|
|
listaCamposanios = New List(Of String())
|
|
listacolores.Add("#FF0F00")
|
|
listacolores.Add("#FF6600")
|
|
listacolores.Add("#F8FF01")
|
|
listacolores.Add("#04D215")
|
|
listacolores.Add("#2A0CD0")
|
|
listacolores.Add("#8A0CCF")
|
|
listacolores.Add("#CD0D74")
|
|
listacolores.Add("#754DEB")
|
|
listacolores.Add("#DDDDDD")
|
|
listacolores.Add("#999999")
|
|
listacolores.Add("#000000")
|
|
listacolores.Add("#FF0F00")
|
|
Dim EjercicioParametro, EjercicioParametroFinal, SubProyectoParametro, DivisorParametro, Periodo As Integer
|
|
|
|
CveCuenta = IfNull(Request("CveCuenta"), "-1").ToString.ToEntero
|
|
EjercicioParametro = IfNull(Request("Ejercicio"), "-1").ToString.ToEntero
|
|
|
|
EjercicioParametroFinal = IfNull(Request("EjercicioFinal"), "-1").ToString.ToEntero
|
|
SubProyectoParametro = IfNull(Request("CveSubproyecto"), "-1").ToString.ToEntero
|
|
DivisorParametro = IfNull(Request("Divisor"), "-1").ToString.ToEntero
|
|
Periodo = IfNull(Request("Periodo"), "-1").ToString.ToEntero
|
|
EsVertical = IfNull(Request("V"), "-1").ToString.ToEntero
|
|
|
|
InicializaValores()
|
|
|
|
DdlEjercicio.SelectedValueExist(EjercicioParametro.ToString)
|
|
DdlEjercicio2.SelectedValueExist(EjercicioParametroFinal.ToString)
|
|
|
|
DdlSubProyecto.SelectedValueExist(SubProyectoParametro.ToString)
|
|
DdlDivisor.SelectedValueExist(DivisorParametro.ToString)
|
|
|
|
DdlPeriodo.SelectedValueExist(Periodo)
|
|
|
|
CargaDatos()
|
|
|
|
End If
|
|
End Sub
|
|
|
|
|
|
#Region " INICIALIZA VALORES "
|
|
Private Sub InicializaValores()
|
|
CargaCombos()
|
|
End Sub
|
|
Private Sub CargaCombos()
|
|
|
|
Dim Conta As New ClsContabilidad
|
|
If Conta.GetEjercicios(UsuarioActual.CveEmpresa) Then
|
|
DdlEjercicio.DataSource = Conta.DtResultados
|
|
DdlEjercicio2.DataSource = Conta.DtResultados
|
|
Else
|
|
DdlEjercicio.DataSource = Nothing
|
|
DdlEjercicio2.DataSource = Nothing
|
|
End If
|
|
Conta.Dispose()
|
|
|
|
DdlEjercicio.DataBind()
|
|
DdlEjercicio2.DataBind()
|
|
|
|
|
|
DdlSubProyecto.DataSource = GlobalDTSubProyectos(-1, -1, UsuarioActual.CveEmpresa)
|
|
DdlSubProyecto.DataBind()
|
|
DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
DdlSubProyecto.SelectedValue = "-1"
|
|
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
#Region " CARGA DATOS "
|
|
Protected Sub BtnCargaAsignados_Click(sender As Object, e As EventArgs) Handles BtnCargaAsignados.Click
|
|
CargaDatos()
|
|
End Sub
|
|
Private Sub CargaDatos()
|
|
Dim Conta As New ClsContabilidad
|
|
|
|
If Conta.GetAnexoCatalogoAnual(CveCuenta, DdlEjercicio.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlEjercicio2.SelectedValue.ToEntero, DdlDivisor.SelectedValue.ToEntero, UsuarioActual.CveUsuario, DdlPeriodo.SelectedValue.ToEntero) Then
|
|
Dim DtHeaders As DataTable = Conta.DSResultados.Tables(0)
|
|
GvAnual.DataSource = Conta.DSResultados.Tables(1)
|
|
|
|
Dim Index = 2
|
|
For Index = 2 To GvAnual.Columns.Count - 1
|
|
GvAnual.Columns(Index).Visible = False
|
|
Next Index
|
|
listaCamposanios.Clear()
|
|
Index = 2
|
|
For Each Dr As DataRow In DtHeaders.Rows
|
|
GvAnual.Columns(Index).Visible = True
|
|
CType(GvAnual.Columns(Index), BoundField).DataField = String.Format("Ejercicio{0}", Dr("Ejercicio"))
|
|
GvAnual.Columns(Index).HeaderText = Dr("Ejercicio").ToString
|
|
listaCamposanios.Add(New String() {String.Format("Ejercicio{0}", Dr("Ejercicio")), Dr("Ejercicio").ToString()})
|
|
|
|
If Not DdlEjercicio.SelectedValue = Dr("Ejercicio").ToString Then
|
|
If EsVertical <> 1 Then
|
|
GvAnual.Columns(Index + 1).Visible = True
|
|
CType(GvAnual.Columns(Index + 1), BoundField).DataField = String.Format("Ejercicio{0}VariacionImporte", Dr("Ejercicio"))
|
|
GvAnual.Columns(Index + 1).HeaderText = "$"
|
|
End If
|
|
|
|
GvAnual.Columns(Index + 2).Visible = True
|
|
CType(GvAnual.Columns(Index + 2), BoundField).DataField = String.Format("Ejercicio{0}{1}Porcentaje", Dr("Ejercicio"), If(EsVertical = 1, "", "Variacion"))
|
|
GvAnual.Columns(Index + 2).HeaderText = "%"
|
|
End If
|
|
|
|
Index += 3
|
|
Next
|
|
|
|
GvAnual.DataBind()
|
|
UpAnual.Update()
|
|
|
|
Else
|
|
GvAnual.DataSource = Nothing
|
|
End If
|
|
|
|
GvAnual.DataBind()
|
|
UpAnual.Update()
|
|
|
|
'RegistraScript($"LimpiaCeros({DdlDivisor.SelectedValue});")
|
|
RegistraScript($"LimpiaCeros();")
|
|
Conta.Dispose()
|
|
|
|
|
|
|
|
If GvAnual.Rows.Count > 0 Then
|
|
|
|
LnkExportar.Visible = True
|
|
UpAcciones.Update()
|
|
|
|
End If
|
|
|
|
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
|
|
#Region " GV ROW DATABOUND "
|
|
Protected Sub GvAnual_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvAnual.RowDataBound
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
setgraficaCC(e)
|
|
If e.Row.RowIndex = 0 Then
|
|
e.Row.Style.Add("font-weight", "bold")
|
|
End If
|
|
|
|
e.Row.Cells(1).Style.Add("text-indent", $"{e.Row.DBCampo("Level").ToString.ToEntero * 2}em")
|
|
|
|
End If
|
|
End Sub
|
|
|
|
|
|
Public Sub setgraficaCC(e As GridViewRowEventArgs)
|
|
Dim lista As New List(Of Object)
|
|
Dim colorindex As Integer = 0
|
|
For Each campo As String() In listaCamposanios
|
|
lista.Add(New With {.Texto = campo(1), .Valor = e.Row.DBCampo(campo(0)).ToDecimal(), .Color = listacolores(colorindex)})
|
|
colorindex = colorindex + 1
|
|
If colorindex >= listacolores.Count Then
|
|
colorindex = 0
|
|
End If
|
|
Next
|
|
e.Row.FCHyperLink("Hypgrafica").Attributes.Add("data-values", Newtonsoft.Json.JsonConvert.SerializeObject(lista))
|
|
End Sub
|
|
|
|
Private Sub LnkExportar_Click(sender As Object, e As EventArgs) Handles LnkExportar.Click
|
|
|
|
Dim SubProyecto As String = ""
|
|
|
|
If DdlSubProyecto.SelectedValue.ToEntero > 0 Then
|
|
SubProyecto = DdlSubProyecto.SelectedItem.Text
|
|
End If
|
|
|
|
GvAnual.ExportToExcelGembox("AnexoCatálogoAnual", UsuarioActual, $"01/01/{DdlEjercicio.SelectedValue}", $"31/12/{DdlEjercicio2.SelectedValue}", "Anexo del Catálogo - Anual", SubProyecto, DdlDivisor.SelectedValue.ToEntero, DatoTituloExtra:=$"Periodo {DdlPeriodo.SelectedItem.Text}")
|
|
|
|
End Sub
|
|
|
|
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
|
|
|
|
End Class
|