566 lines
26 KiB
VB.net
566 lines
26 KiB
VB.net
Option Explicit On
|
|
Option Strict On
|
|
|
|
Imports System.Data
|
|
Imports Newtonsoft.Json
|
|
Imports Newtonsoft.Json.Linq
|
|
Imports Extensiones
|
|
Imports Microsoft.Reporting.WebForms
|
|
|
|
Partial Class Contratos_RepPresupuestos
|
|
Inherits ClsPaginas
|
|
#Region "P R O P I E D A D E S"
|
|
|
|
Public Property DtPresupuestos() As DataTable
|
|
Get
|
|
Return DirectCast(ViewState("DtPresupuestos"), DataTable)
|
|
End Get
|
|
Set(ByVal value As DataTable)
|
|
ViewState("DtPresupuestos") = 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
|
|
InicializaValores()
|
|
End If
|
|
End Sub
|
|
|
|
#Region " INICIALIZA VALORES "
|
|
Private Sub InicializaValores()
|
|
|
|
TxtFiltrosFechaInicio.Text = $"01/09/{Now.Year - 1}"
|
|
TxtFiltrosFechaFin.Text = $"31/08/{Now.Year}"
|
|
|
|
DdlTipoGasto.DataSource = GlobalDTTiposGastos(UsuarioActual.CveEmpresa)
|
|
DdlTipoGasto.DataBind()
|
|
|
|
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa)
|
|
DdlClasificacion.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
DdlClasificacion.DataBind()
|
|
|
|
DdlProyecto.DataSource = If(UsuarioActual.Empresa.Funcionalidad(102) = "1" AndAlso Not UsuarioActual.TienePermisoProceso(110), GlobalDTProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1).FiltraParametros("", "", {"CveProyecto", "Proyecto"}), GlobalDTProyectos(UsuarioActual.CveEmpresa, -1).FiltraParametros("", "", {"CveProyecto", "Proyecto"}))
|
|
DdlProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
DdlProyecto.DataBind()
|
|
|
|
CargaSubProyecto()
|
|
UpFiltros.Update()
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
#Region " CARGA DATOS "
|
|
|
|
Private Sub CargaSubProyecto()
|
|
DdlSubProyecto.Items.Clear()
|
|
If DdlProyecto.SelectedValue.ToEntero > 0 Or UsuarioActual.Empresa.Tipo_CentroCosto = 1 Then
|
|
DdlSubProyecto.DataSource = If(UsuarioActual.Empresa.Funcionalidad(102) = "1" AndAlso Not UsuarioActual.TienePermisoProceso(110), GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, DdlProyecto.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, -1, 1), GlobalDTSubProyectos(DdlProyecto.SelectedValue.ToEntero, -1, UsuarioActual.CveEmpresa, 1))
|
|
End If
|
|
DdlSubProyecto.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
DdlSubProyecto.DataBind()
|
|
End Sub
|
|
Protected Sub BtnConsultarFiltros_Click(sender As Object, e As EventArgs)
|
|
CargaDatos()
|
|
End Sub
|
|
Private Sub CargaDatos()
|
|
Dim CveTipoGasto = DdlTipoGasto.SelectedValue.ToEntero
|
|
Dim Agrupador = DdlAgrupador.SelectedValue.ToEntero
|
|
Dim FechaInicio = If(IsDate(TxtFiltrosFechaInicio.Text), TxtFiltrosFechaInicio.Text.ToDate, MinFecha)
|
|
Dim FechaFin = If(IsDate(TxtFiltrosFechaFin.Text), TxtFiltrosFechaFin.Text.ToDate, MaxFecha)
|
|
Dim EsMensual = ChkMensual.Checked
|
|
|
|
If Not EsMensual Then
|
|
Dim ObjPresupuestos As New ClsContratos
|
|
If ObjPresupuestos.GetPresupuestosRep(-1, CveTipoGasto, Agrupador, FechaInicio, FechaFin, UsuarioActual.CveEmpresa, DdlProyecto.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, UsuarioActual.CveUsuario, DdlClasificacion.SelectedValue.ToEntero) Then
|
|
|
|
DtPresupuestos = ObjPresupuestos.DtResultados
|
|
GvDatos.DataSource = DtPresupuestos
|
|
End If
|
|
ObjPresupuestos.Dispose()
|
|
DivDatosMensual.Visible = False
|
|
DivRepDatos.Visible = True
|
|
DivIndicadores.Visible = True
|
|
GvDatos.DataBind()
|
|
GvDatos.HeaderRow.Cells(0).Text = If(Agrupador = 1, "Clasificación", "Centro de Costo")
|
|
UpDatos.Update()
|
|
|
|
Else
|
|
Dim ObjPresupuestos As New ClsContratos
|
|
If ObjPresupuestos.GetPresupuestosMensualRep(-1, CveTipoGasto, Agrupador, FechaInicio, FechaFin, UsuarioActual.CveEmpresa, DdlProyecto.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, UsuarioActual.CveUsuario, DdlClasificacion.SelectedValue.ToEntero) Then
|
|
DtPresupuestos = ObjPresupuestos.DtResultados
|
|
GvDatosMensual.DataSource = DtPresupuestos
|
|
End If
|
|
ObjPresupuestos.Dispose()
|
|
DivDatosMensual.Visible = True
|
|
DivRepDatos.Visible = False
|
|
DivIndicadores.Visible = False
|
|
GvDatosMensual.DataBind()
|
|
GvDatosMensual.HeaderRow.Cells(0).Text = If(Agrupador = 1, "Clasificación", "Centro de Costo")
|
|
UpDatosMensual.Update()
|
|
|
|
End If
|
|
|
|
Select Case Agrupador
|
|
Case 1 'CLASIFICACON
|
|
HpGrafica.Visible = False
|
|
CargaIndicadores(EsMensual)
|
|
Case 2 'CENTRO DE COSTO
|
|
HpGrafica.Visible = True
|
|
CargaIndicadores(EsMensual)
|
|
End Select
|
|
|
|
UpAcciones.Update()
|
|
UpModalGrafica.Update()
|
|
UpIndicadores.Update()
|
|
|
|
If EsMensual Then
|
|
RegistraScript($"CargaChartMensual({HdnJsonProyecto.Value},{HdnJsonGraficos.Value});", "2")
|
|
Else
|
|
|
|
RegistraScript($"CargaChartProyecto({HdnJsonProyecto.Value});", "2")
|
|
End If
|
|
|
|
End Sub
|
|
Private Sub CargaIndicadores(EsMensual As Boolean, Optional Tipo As String = "1")
|
|
If DtPresupuestos IsNot Nothing And GvDatos.Rows.Count > 0 Then
|
|
|
|
Dim DtDatos = DtPresupuestos.FiltraParametros($"Tipo = {Tipo}")
|
|
|
|
If EsMensual Then
|
|
Dim jsonGraphs = New JArray()
|
|
Dim jsonData = New JArray()
|
|
Dim Random = New Random()
|
|
|
|
Dim JEnero As New JObject
|
|
Dim JNombreEnero = New JProperty("Mes", "Enero")
|
|
JEnero.Add(JNombreEnero)
|
|
|
|
Dim JFebrero As New JObject
|
|
Dim JNombreFebrero = New JProperty("Mes", "Febrero")
|
|
JFebrero.Add(JNombreFebrero)
|
|
|
|
Dim JMarzo As New JObject
|
|
Dim JNombreMarzo = New JProperty("Mes", "Marzo")
|
|
JMarzo.Add(JNombreMarzo)
|
|
|
|
Dim JAbril As New JObject
|
|
Dim JNombreAbril = New JProperty("Mes", "Abril")
|
|
JAbril.Add(JNombreAbril)
|
|
|
|
Dim JMayo As New JObject
|
|
Dim JNombreMayo = New JProperty("Mes", "Mayo")
|
|
JMayo.Add(JNombreMayo)
|
|
|
|
Dim JJunio As New JObject
|
|
Dim JNombreJunio = New JProperty("Mes", "Junio")
|
|
JJunio.Add(JNombreJunio)
|
|
|
|
Dim JJulio As New JObject
|
|
Dim JNombreJulio = New JProperty("Mes", "Julio")
|
|
JJulio.Add(JNombreJulio)
|
|
|
|
Dim JAgosto As New JObject
|
|
Dim JNombreAgosto = New JProperty("Mes", "Agosto")
|
|
JAgosto.Add(JNombreAgosto)
|
|
|
|
Dim JSeptiembre As New JObject
|
|
Dim JNombreSeptiembre = New JProperty("Mes", "Septiembre")
|
|
JSeptiembre.Add(JNombreSeptiembre)
|
|
|
|
Dim JOctubre As New JObject
|
|
Dim JNombreOctubre = New JProperty("Mes", "Octubre")
|
|
JOctubre.Add(JNombreOctubre)
|
|
|
|
Dim JNoviembre As New JObject
|
|
Dim JNombreNoviembre = New JProperty("Mes", "Noviembre")
|
|
JNoviembre.Add(JNombreNoviembre)
|
|
|
|
Dim JDiciembre As New JObject
|
|
Dim JNombreDiciembre = New JProperty("Mes", "Diciembre")
|
|
JDiciembre.Add(JNombreDiciembre)
|
|
|
|
For Each Dr As DataRow In DtDatos.Rows
|
|
|
|
Dim NombreValorAgrupador As String = $"Valor{ Dr("Agrupador").ToString()}"
|
|
Dim HtmlColor = String.Format("#{0:X6}", Random.Next(&H1000000))
|
|
|
|
Dim jGraph = New JObject(New JProperty("valueAxis", "v1"),
|
|
New JProperty("lineColor", HtmlColor),
|
|
New JProperty("bullet", "round"),
|
|
New JProperty("bulletBorderThickness", 1),
|
|
New JProperty("hideBulletsCount", 30),
|
|
New JProperty("fillAlphas", 0),
|
|
New JProperty("title", Dr("Agrupador").ToString()),
|
|
New JProperty("valueField", NombreValorAgrupador)
|
|
)
|
|
jsonGraphs.Add(jGraph)
|
|
|
|
Dim ValorEnero = Dr("EneroEjercido").ToString.ToDecimal()
|
|
Dim JValorEnero = New JProperty(NombreValorAgrupador, ValorEnero)
|
|
|
|
JEnero.Add(JValorEnero)
|
|
|
|
Dim ValorFebrero = Dr("FebreroEjercido").ToString.ToDecimal()
|
|
Dim JValorFebrero = New JProperty(NombreValorAgrupador, ValorFebrero)
|
|
|
|
JFebrero.Add(JValorFebrero)
|
|
|
|
Dim ValorMarzo = Dr("MarzoEjercido").ToString.ToDecimal()
|
|
Dim JValorMarzo = New JProperty(NombreValorAgrupador, ValorMarzo)
|
|
|
|
JMarzo.Add(JValorMarzo)
|
|
|
|
Dim ValorAbril = Dr("AbrilEjercido").ToString.ToDecimal()
|
|
Dim JValorAbril = New JProperty(NombreValorAgrupador, ValorAbril)
|
|
|
|
JAbril.Add(JValorAbril)
|
|
|
|
Dim ValorMayo = Dr("MayoEjercido").ToString.ToDecimal()
|
|
Dim JValorMayo = New JProperty(NombreValorAgrupador, ValorMayo)
|
|
|
|
JMayo.Add(JValorMayo)
|
|
|
|
Dim ValorJunio = Dr("JunioEjercido").ToString.ToDecimal()
|
|
Dim JValorJunio = New JProperty(NombreValorAgrupador, ValorJunio)
|
|
|
|
JJunio.Add(JValorJunio)
|
|
|
|
Dim ValorJulio = Dr("JulioEjercido").ToString.ToDecimal()
|
|
Dim JValorJulio = New JProperty(NombreValorAgrupador, ValorJulio)
|
|
|
|
JJulio.Add(JValorJulio)
|
|
|
|
Dim ValorAgosto = Dr("AgostoEjercido").ToString.ToDecimal()
|
|
Dim JValorAgosto = New JProperty(NombreValorAgrupador, ValorAgosto)
|
|
|
|
JAgosto.Add(JValorAgosto)
|
|
|
|
Dim ValorSeptiembre = Dr("SeptiembreEjercido").ToString.ToDecimal()
|
|
Dim JValorSeptiembre = New JProperty(NombreValorAgrupador, ValorSeptiembre)
|
|
|
|
JSeptiembre.Add(JValorSeptiembre)
|
|
|
|
Dim ValorOctubre = Dr("OctubreEjercido").ToString.ToDecimal()
|
|
Dim JValorOctubre = New JProperty(NombreValorAgrupador, ValorOctubre)
|
|
|
|
JOctubre.Add(JValorOctubre)
|
|
|
|
Dim ValorNoviembre = Dr("NoviembreEjercido").ToString.ToDecimal()
|
|
Dim JValorNoviembre = New JProperty(NombreValorAgrupador, ValorNoviembre)
|
|
|
|
JNoviembre.Add(JValorNoviembre)
|
|
|
|
Dim ValorDiciembre = Dr("DiciembreEjercido").ToString.ToDecimal()
|
|
Dim JValorDiciembre = New JProperty(NombreValorAgrupador, ValorDiciembre)
|
|
|
|
JDiciembre.Add(JValorDiciembre)
|
|
Next
|
|
|
|
jsonData.Add(JEnero)
|
|
jsonData.Add(JFebrero)
|
|
jsonData.Add(JMarzo)
|
|
jsonData.Add(JAbril)
|
|
jsonData.Add(JMayo)
|
|
jsonData.Add(JJunio)
|
|
jsonData.Add(JJulio)
|
|
jsonData.Add(JAgosto)
|
|
jsonData.Add(JSeptiembre)
|
|
jsonData.Add(JOctubre)
|
|
jsonData.Add(JNoviembre)
|
|
jsonData.Add(JDiciembre)
|
|
|
|
HdnJsonProyecto.Value = jsonData.ToString
|
|
HdnJsonGraficos.Value = jsonGraphs.ToString
|
|
|
|
Else
|
|
Dim DrPresupuesto = DtPresupuestos.FiltroPrimero("Tipo = 0 AND CveAgrupador IS NULL")
|
|
|
|
Dim Autorizado = DrPresupuesto("Autorizado").ToString.ToDecimal
|
|
Dim Ejercido = DrPresupuesto("Ejercido").ToString.ToDecimal
|
|
Dim PorEjercer = DrPresupuesto("PorEjercer").ToString.ToDecimal
|
|
|
|
Dim EjercidoPorcentaje = DrPresupuesto("EjercidoPorcentaje").ToString.ToDecimal
|
|
Dim PorEjercerPorcentaje = DrPresupuesto("PorEjercerPorcentaje").ToString.ToDecimal
|
|
|
|
LtlAutorizado.Text = Autorizado.FormatoNumero
|
|
LtlEjercido.Text = Ejercido.FormatoNumero
|
|
LtlPorEjercer.Text = PorEjercer.FormatoNumero
|
|
|
|
PBEjercido.Style.Remove("width")
|
|
PBEjercido.Style.Add("width", $"{EjercidoPorcentaje.ToString}%")
|
|
|
|
PBPorEjercer.Style.Remove("width")
|
|
PBPorEjercer.Style.Add("width", $"{PorEjercerPorcentaje.ToString}%")
|
|
|
|
LtlPorcentajeEjercido.Text = EjercidoPorcentaje.FormatoNumero + " %"
|
|
LtlPorcentajePorEjercer.Text = PorEjercerPorcentaje.FormatoNumero + " %"
|
|
|
|
Dim json = New JArray(
|
|
From dr In DtDatos
|
|
Select New JObject(
|
|
New JProperty("Agrupador", dr("Agrupador").ToString()),
|
|
New JProperty("Autorizado", dr("Autorizado").ToString().ToDecimal().FormatoNumero),
|
|
New JProperty("Ejercido", dr("Ejercido").ToString().ToDecimal().FormatoNumero),
|
|
New JProperty("PorEjercer", dr("PorEjercer").ToString().ToDecimal().FormatoNumero),
|
|
New JProperty("AutorizadoProporcion", 100),
|
|
New JProperty("EjercidoProporcion", dr("EjercidoPorcentaje").ToString().ToDecimal()),
|
|
New JProperty("PorEjercerProporcion", dr("PorEjercerPorcentaje").ToString().ToDecimal()))
|
|
)
|
|
|
|
HdnJsonProyecto.Value = json.ToString
|
|
End If
|
|
|
|
|
|
Else
|
|
LtlAutorizado.Text = ""
|
|
LtlEjercido.Text = ""
|
|
LtlPorEjercer.Text = ""
|
|
PBEjercido.Style.Remove("width")
|
|
PBPorEjercer.Style.Remove("width")
|
|
End If
|
|
End Sub
|
|
Protected Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatos.RowDataBound
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
|
|
Select Case e.Row.DBCampo("Tipo").ToEntero
|
|
Case 0
|
|
e.Row.CssClass = "Totales"
|
|
Case 1
|
|
e.Row.CssClass = "SubTotales"
|
|
End Select
|
|
If e.Row.DBCampo("Autorizado").ToDecimal = 0 Then
|
|
e.Row.Cells(1).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("Ejercido").ToDecimal = 0 Then
|
|
e.Row.Cells(2).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("EjercidoPorcentaje").ToDecimal = 0 Then
|
|
e.Row.Cells(3).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("PorEjercer").ToDecimal = 0 Then
|
|
e.Row.Cells(4).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("PorEjercerPorcentaje").ToDecimal = 0 Then
|
|
e.Row.Cells(5).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("Pagado").ToDecimal = 0 Then
|
|
e.Row.Cells(6).Text = "-"
|
|
End If
|
|
|
|
If e.Row.RowIndex > 0 Then
|
|
Dim CveAgrupador = e.Row.DBCampo("CveAgrupador").ToEntero
|
|
Dim EsProyecto = False
|
|
Dim FechaFin = e.Row.DBCampo("FechaFFiltro").ToDate.ToShortDateString
|
|
Dim FechaInicio = e.Row.DBCampo("FechaIFiltro").ToDate.ToShortDateString
|
|
If Not CveAgrupador > 0 Then
|
|
If DdlAgrupador.SelectedValue.ToEntero = 2 Then
|
|
CveAgrupador = e.Row.DBCampo("CveProyecto").ToEntero
|
|
Else
|
|
CveAgrupador = e.Row.DBCampo("CveClasificacion").ToEntero
|
|
End If
|
|
EsProyecto = True
|
|
End If
|
|
Dim Css = "Texto"
|
|
Dim Liga = $"/Contratos/RepPresupuestosDetalle.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={False}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}"
|
|
e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>"
|
|
End If
|
|
End If
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
|
|
Protected Sub ChkMensual_CheckedChanged(sender As Object, e As EventArgs) Handles ChkMensual.CheckedChanged
|
|
|
|
DivRepDatos.Visible = Not ChkMensual.Checked
|
|
DivDatosMensual.Visible = ChkMensual.Checked
|
|
|
|
UpDatos.Update()
|
|
UpDatosMensual.Update()
|
|
End Sub
|
|
Protected Sub GvDatosMensual_RowDataBound(sender As Object, e As GridViewRowEventArgs)
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
|
|
Select Case e.Row.DBCampo("Tipo").ToEntero
|
|
Case 0
|
|
e.Row.CssClass = "Totales"
|
|
Case 1
|
|
e.Row.CssClass = "SubTotales"
|
|
End Select
|
|
|
|
If e.Row.DBCampo("EneroEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(3).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("EneroPagado").ToDecimal = 0 Then
|
|
e.Row.Cells(5).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("FebreroEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(7).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("FebreroPagado").ToDecimal = 0 Then
|
|
e.Row.Cells(9).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("MarzoEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(11).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("MarzoPagado").ToDecimal = 0 Then
|
|
e.Row.Cells(13).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("AbrilEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(15).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("AbrilPagado").ToDecimal = 0 Then
|
|
e.Row.Cells(17).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("MayoEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(19).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("MayoPagado").ToDecimal = 0 Then
|
|
e.Row.Cells(21).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("JunioEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(23).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("JunioPagado").ToDecimal = 0 Then
|
|
e.Row.Cells(25).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("JulioEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(27).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("JulioPagado").ToDecimal = 0 Then
|
|
e.Row.Cells(29).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("AgostoEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(31).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("AgostoPagado").ToDecimal = 0 Then
|
|
e.Row.Cells(33).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("SeptiembreEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(35).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("SeptiembrePagado").ToDecimal = 0 Then
|
|
e.Row.Cells(37).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("OctubreEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(39).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("OctubrePagado").ToDecimal = 0 Then
|
|
e.Row.Cells(41).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("NoviembreEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(43).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("NoviembrePagado").ToDecimal = 0 Then
|
|
e.Row.Cells(45).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("DiciembreEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(47).Text = "-"
|
|
End If
|
|
If e.Row.DBCampo("DiciembrePagado").ToDecimal = 0 Then
|
|
e.Row.Cells(49).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("TotalEjercido").ToDecimal = 0 Then
|
|
e.Row.Cells(50).Text = "-"
|
|
End If
|
|
|
|
If e.Row.DBCampo("TotalPagado").ToDecimal = 0 Then
|
|
e.Row.Cells(52).Text = "-"
|
|
End If
|
|
|
|
If e.Row.RowIndex > 0 Then
|
|
If DdlAgrupador.SelectedValue.ToEntero = 2 Then
|
|
If e.Row.DBCampo("CveAgrupador").ToEntero > 0 Or e.Row.DBCampo("CveProyecto").ToEntero > 0 Then
|
|
Dim CveAgrupador = e.Row.DBCampo("CveAgrupador").ToEntero
|
|
Dim EsProyecto = False
|
|
If Not e.Row.DBCampo("CveAgrupador").ToEntero > 0 Then
|
|
CveAgrupador = e.Row.DBCampo("CveProyecto").ToEntero
|
|
EsProyecto = True
|
|
End If
|
|
Dim FechaFin = e.Row.DBCampo("FechaFFiltro").ToDate.ToShortDateString
|
|
Dim FechaInicio = e.Row.DBCampo("FechaIFiltro").ToDate.ToShortDateString
|
|
Dim Css = "Texto"
|
|
Dim Liga = $"/Contratos/RepPresupuestosDetalle.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={True}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}"
|
|
e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>"
|
|
End If
|
|
Else
|
|
If e.Row.DBCampo("CveAgrupador").ToEntero > 0 Then
|
|
Dim CveAgrupador = e.Row.DBCampo("CveAgrupador").ToEntero
|
|
Dim EsProyecto = False
|
|
If Not e.Row.DBCampo("CveAgrupador").ToEntero > 0 Then
|
|
CveAgrupador = e.Row.DBCampo("CveProyecto").ToEntero
|
|
EsProyecto = True
|
|
End If
|
|
Dim FechaFin = e.Row.DBCampo("FechaFFiltro").ToDate.ToShortDateString
|
|
Dim FechaInicio = e.Row.DBCampo("FechaIFiltro").ToDate.ToShortDateString
|
|
Dim Css = "Texto"
|
|
Dim Liga = $"/Contratos/RepPresupuestosDetalle.aspx?&CveAgrupador={CveAgrupador}&CveClasificacion={e.Row.DBCampo("CveClasificacionFiltro")}&CveProyecto={e.Row.DBCampo("CveProyectoFiltro")}&CveSubProyecto={e.Row.DBCampo("CveSubProyectoFiltro")}&CveTipoGasto={e.Row.DBCampo("CveTipoGastoFiltro")}&Agrupador={e.Row.DBCampo("AgrupadorFiltro")}&Mensual={True}&EsProyecto={EsProyecto}&FechaFin={FechaFin}&FechaInicio={FechaInicio}"
|
|
e.Row.Cells(0).Text = "<a class=" + "" + Css + "" + " href=" + "" + Liga + "" + ">" + e.Row.Cells(0).Text + "</a>"
|
|
End If
|
|
End If
|
|
End If
|
|
End If
|
|
End Sub
|
|
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As EventArgs)
|
|
CargaSubProyecto()
|
|
End Sub
|
|
|
|
#Region " IMPRESION - NUEVO "
|
|
Protected Sub ImgExcel_Click(sender As Object, e As System.EventArgs) Handles ImgExcel.Click
|
|
GenerarPDF("EXCEL")
|
|
End Sub
|
|
|
|
Private Sub ImgImprimir_Click(sender As Object, e As EventArgs) Handles ImgImprimir.Click
|
|
GenerarPDF()
|
|
End Sub
|
|
|
|
Private Sub GenerarPDF(Optional Formato As String = "PDF")
|
|
Dim Agrupador = If(DdlAgrupador.SelectedValue = "-1", "", $" <b>Agrupador:</b> {DdlAgrupador.SelectedItem.Text}")
|
|
Dim Proyecto = If(DdlProyecto.SelectedValue = "-1", "", $" <b>Proyecto:</b> {DdlProyecto.SelectedItem.Text}")
|
|
Dim SubProyecto = If(DdlSubProyecto.SelectedValue = "-1", "", $" <b>SubProyecto:</b> {DdlSubProyecto.SelectedItem.Text}")
|
|
Dim Clasificacion = If(DdlClasificacion.SelectedValue = "-1", "", $" <b>Clasificación:</b> {DdlClasificacion.SelectedItem.Text}")
|
|
Dim TipoGasto = If(DdlTipoGasto.SelectedValue = "-1", "", $" <b>Tipo Gasto:</b> {DdlTipoGasto.SelectedItem.Text}")
|
|
Dim FechaIn As String = $" <b>Fecha Inicio:</b> {TxtFiltrosFechaInicio.Text}"
|
|
Dim FechaFn As String = $" <b>Fecha Fin:</b> {TxtFiltrosFechaFin.Text}"
|
|
If TxtFiltrosFechaInicio.Text = "" Then FechaIn = ""
|
|
If TxtFiltrosFechaFin.Text = "" Then FechaFn = ""
|
|
|
|
If DtPresupuestos.Rows.Count > 0 Then
|
|
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)
|
|
Dim params As New List(Of ReportParameter)
|
|
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
|
|
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
|
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString))
|
|
params.Add(New ReportParameter("AgrupadoPor", $"{FechaIn}{FechaFn}{Agrupador}{Proyecto}{SubProyecto}{Clasificacion}{TipoGasto}"))
|
|
params.Add(New ReportParameter("Autorizado", LtlAutorizado.Text.FormatoNumero()))
|
|
params.Add(New ReportParameter("Ejercido", LtlEjercido.Text.FormatoNumero()))
|
|
params.Add(New ReportParameter("PorEjercer", LtlPorEjercer.Text.FormatoNumero()))
|
|
|
|
If Imagen.Exists Then
|
|
params.Add(New ReportParameter("LogoPath", $"file://{Imagen.FullName}"))
|
|
Else
|
|
params.Add(New ReportParameter("LogoPath", ""))
|
|
End If
|
|
ImprimirPDF("Empresas/Grales/Formatos/RepPresupuestoAnual.rdlc", DtPresupuestos, params, "Reporte de Presupuestos Anual", Formato)
|
|
Else
|
|
Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia)
|
|
End If
|
|
|
|
End Sub
|
|
#End Region
|
|
|
|
End Class
|