Imports Microsoft.Reporting.WebForms Imports Extensiones Imports System.Data Partial Class Compras_RepCxP Inherits ClsPaginas #Region "PROPIEDADES" Private Property DtDatos As DataTable Get DtDatos = DirectCast(ViewState("DtDatos"), DataTable) End Get Set(ByVal value As DataTable) ViewState("DtDatos") = value End Set End Property Private Property DtPersonalizarRango As DataTable Get DtPersonalizarRango = DirectCast(ViewState("DtPersonalizarRango"), DataTable) End Get Set(ByVal value As DataTable) ViewState("DtPersonalizarRango") = value End Set End Property Private Property Index As Integer Get Index = DirectCast(ViewState("Index"), Integer) End Get Set(ByVal value As Integer) ViewState("Index") = value End Set End Property Private Property Modalidad As String Get Modalidad = DirectCast(ViewState("Modalidad"), String) End Get Set(ByVal value As String) ViewState("Modalidad") = value End Set End Property Private Property Agrupador As String Get Return ViewState("Agrupador").ToString End Get Set(value As String) ViewState("Agrupador") = value End Set End Property Private Property DtColor As DataTable Get Return DirectCast(ViewState("DtColor"), DataTable) End Get Set(value As DataTable) ViewState("DtColor") = value End Set End Property Private Property DtGrafica As DataTable Get Return DirectCast(ViewState("DtGrafica"), DataTable) End Get Set(value As DataTable) ViewState("DtGrafica") = value End Set End Property Private Property TCEspecifico As Double #End Region Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load If Not Page.IsPostBack Then CargaCombos() CargaGvPersonalizarRaqngoColumnas() CargaDatos() CreaDataTableColor() End If End Sub #Region "CARGAS" Private Sub CargaCombos() If (UsuarioActual.Empresa.Funcionalidad(105) = "1") Then DdlProveedor.setEsWebService(True) DdlProveedor.Attributes.Add("data-metodo", "getproveedores") DdlProveedor.SelectedText = "Todos" DdlProveedor.SelectedValue = "-1" Else DdlProveedor.setEsWebService(False) DdlProveedor.ddl.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa) DdlProveedor.ddl.DataBind() DdlProveedor.ddl.Items.Insert(0, New ListItem("Todos", "-1")) End If DdlUsuarioResponsable.DataSource = GlobalDTUsuarioResponsable.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa).FiltraParametros("ProveedoresResponsables > 0") DdlUsuarioResponsable.DataBind() DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1) DdlSubProyecto.DataBind() DdlProveedoresClasificaciones.DataSource = GlobalDTProveedorClasificacion(UsuarioActual.CveEmpresa) DdlProveedoresClasificaciones.DataBind() DdlProveedoresClasificaciones.Items.Insert(1, New ListItem("Sin Clasificación", "0")) DdlEstatusCompra.DataSource = GlobalDTCompEstatusFactura.FiltraParametros("CveEstatusFactura IN (1, 2)") If UsuarioActual.CveEmpresa = 66 Then DdlEstatusCompra.SelectedIndex = 2 : DdlGrupo.SelectedValue = "8" DdlUsuarioRegistro.DataSource = GlobalDTUsuarios.FiltraParametros(String.Format("CveEmpresa = {0}", UsuarioActual.CveEmpresa), "Nombre") DdlUsuarioRegistro.DataBind() DdlUsuarioRegistro.Items.Insert(0, New ListItem("Todos", "-1")) txtCorteA.Text = $"31/12/{Now.Year}" 'Dim ObjSisUsuarios As New ClsSisUsuarios() 'If ObjSisUsuarios.GetEmpresasUsuario(UsuarioActual.CveUsuario) Then ' DdlEmpresas.DataSource = ObjSisUsuarios.DtResultados ' DdlEmpresas.DataBind() ' DivEmpresasFiltro.Visible = True ' For i As Integer = 0 To DdlEmpresas.Items.Count - 1 ' DdlEmpresas.Items(i).Selected = True ' Next 'End If 'ObjSisUsuarios.Dispose() End Sub Private Sub CargaDatos() If RblTipoCambio.SelectedValue = 3 And TxtEspecifico.Text <> "" Then TCEspecifico = TxtEspecifico.Text Else TCEspecifico = -1 End If GvCxP.Columns(0).HeaderText = DdlGrupo.SelectedItem.Text Dim Mov As New ClsMovimientos Dim FechaI As String = txtFechaI.Text Dim FechaF As String = txtFechaF.Text Dim FechaVI As String = txtFechaVI.Text Dim FechaVF As String = txtFechaVF.Text If txtFechaI.Text = "" Then FechaI = "-1" If txtFechaF.Text = "" Then FechaF = "-1" If txtFechaVI.Text = "" Then FechaVI = "-1" If txtFechaVF.Text = "" Then FechaVF = "-1" Dim TipoDocto As String = If(DdlTipoDocto.GetSelectedValuesM = "", "-1", DdlTipoDocto.GetSelectedValuesM) If Mov.GetCxP(FechaI, FechaF, DdlProveedor.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, DdlProveedoresClasificaciones.SelectedValue.ToEntero, -1, DdlUsuarioResponsable.SelectedValue.ToEntero, DdlUsuarioRegistro.SelectedValue.ToEntero, DdlEstatusCompra.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, RblTipoCambio.SelectedValue.ToEntero, TCEspecifico, FechaVI, FechaVF, FechaCorte:=txtCorteA.Text.ToDate, CveUsuarioConsulta:=UsuarioActual.CveUsuario, CveTipoProveedor:=IIf(DdlTipoProveedor.SelectedValue.ToEntero = 3, -1, DdlTipoProveedor.SelectedValue.ToEntero), Comprobaciones:=DdlComprobacion.SelectedValue.ToEntero, TipoDocto:=TipoDocto) Then GvCxP.DataSource = Mov.DtResultados DtDatos = Mov.DtResultados DtGrafica = Mov.DtResultados End If Mov.Dispose() Dim NumCol As Integer If DtDatos.Rows.Count > 0 Then GvCxP.Columns(2).Visible = False GvCxP.Columns(3).Visible = False GvCxP.Columns(4).Visible = False GvCxP.Columns(5).Visible = False GvCxP.Columns(6).Visible = False GvCxP.Columns(7).Visible = False GvCxP.Columns(8).Visible = False GvCxP.Columns(9).Visible = False GvCxP.Columns(10).Visible = False Dim Contador As Integer = 2 Dim CargaColumnaVencido As Boolean = False Dim Dr As DataRow = DtDatos.Rows(0) If Dr("NomC1").ToString <> "" Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = Dr("NomC1").ToString Contador += 1 End If If Dr("TC2").ToString.ToEntero = 2 And Not CargaColumnaVencido Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = "Total" Contador += 1 CargaColumnaVencido = True NumCol = 2 End If If Dr("NomC2").ToString <> "" Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = Dr("NomC2").ToString Contador += 1 End If If Dr("TC3").ToString.ToEntero = 2 And Not CargaColumnaVencido Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = "Total" Contador += 1 CargaColumnaVencido = True NumCol = 3 End If If Dr("NomC3").ToString <> "" Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = Dr("NomC3").ToString Contador += 1 End If If Dr("TC4").ToString.ToEntero = 2 And Not CargaColumnaVencido Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = "Total" Contador += 1 CargaColumnaVencido = True NumCol = 4 End If If Dr("NomC4").ToString <> "" Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = Dr("NomC4").ToString Contador += 1 End If If Dr("TC5").ToString.ToEntero = 2 And Not CargaColumnaVencido Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = "Total" Contador += 1 CargaColumnaVencido = True NumCol = 5 End If If Dr("NomC5").ToString <> "" Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = Dr("NomC5").ToString Contador += 1 End If If Dr("TC6").ToString.ToEntero = 2 And Not CargaColumnaVencido Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = "Total" Contador += 1 CargaColumnaVencido = True NumCol = 6 End If If Dr("NomC6").ToString <> "" Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = Dr("NomC6").ToString Contador += 1 End If If Dr("TC7").ToString.ToEntero = 2 And Not CargaColumnaVencido Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = "Total" Contador += 1 CargaColumnaVencido = True NumCol = 7 End If If Dr("NomC7").ToString <> "" Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = Dr("NomC7").ToString Contador += 1 End If If Dr("TC8").ToString.ToEntero = 2 And Not CargaColumnaVencido Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = "Total" Contador += 1 CargaColumnaVencido = True NumCol = 8 End If If Dr("NomC8").ToString <> "" Then GvCxP.Columns(Contador).Visible = True GvCxP.Columns(Contador).HeaderText = Dr("NomC8").ToString Contador += 1 End If End If GvCxP.DataBind() UPPDatos.Update() ActualizarDatatable(NumCol) Agrupador = DdlGrupo.SelectedItem.Text End Sub #End Region #Region "GRIDVIEW" Protected Sub GvCxP_RowCreated(sender As Object, e As GridViewRowEventArgs) Handles GvCxP.RowCreated If e.Row.RowType = DataControlRowType.Header Then Dim FC As New SortedList FC.Add(0, " ,2,1,Titulos") FC.Add(2, "Vencido,4,1,Titulos") FC.Add(3, "Por Vencer,5,1,Titulos") GetMultiRowHeader(DirectCast(sender, GridView), e, FC, "Titulos") End If End Sub Protected Sub GvCxP_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvCxP.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then Dim Css As String = "Texto" If DdlGrupo.SelectedValue.ToEntero = 11 Then If e.Row.DBCampo("CveSubProyecto") = "-1" Then e.Row.CssClass = "Totales" ElseIf e.Row.DBCampo("Orden") = "" Then e.Row.CssClass = "SubTotales" End If Else If e.Row.DBCampo("Orden") = "" Then e.Row.CssClass = "Totales" End If End If If e.Row.DBCampo("Orden") <> "" Then e.Row.Cells(1).BackColor = Drawing.Color.LightGray e.Row.Cells(11).BackColor = Drawing.Color.LightGray End If If DdlGrupo.SelectedValue = "10" AndAlso e.Row.RowIndex.Contiene(1, 3) Then e.Row.Visible = False End If Dim TipoMoneda As Integer = RblTipoCambio.SelectedValue.ToEntero ' Dim CveSubProyecto As Integer = DdlSubProyecto.SelectedValue.ToEntero Dim Responsable As Integer = DdlUsuarioResponsable.SelectedValue.ToEntero 'Dim CveClasificacion As Integer = DdlProveedoresClasificaciones.SelectedValue.ToEntero Dim CveTipoProveedor As Integer = DdlTipoProveedor.SelectedValue.ToEntero 'Dim CveProveedorSucursal As Integer = If(e.Row.DBCampo("CveProveedorSucursal").ToEntero > 0, e.Row.DBCampo("CveProveedorSucursal").ToEntero, -1) Dim FechaI, FechaF, FechaVI, FechaVF As String FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.Trim(), "-1") FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.Trim(), "-1") FechaVI = If(IsDate(txtFechaVI.Text.Trim()), txtFechaVI.Text.Trim(), "-1") FechaVF = If(IsDate(txtFechaVF.Text.Trim()), txtFechaVF.Text.Trim(), "-1") '/Bancos/RepProgramarRecursos.aspx --> Compras/RepCxPDetalle.aspx Dim LigaTot As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=S&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga1 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=C1&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga2 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=C2&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga3 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=C3&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga4 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=C4&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga5 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=C5&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga6 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=C6&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga7 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=C7&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga8 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=C8&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga9 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=S&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga10 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=TV&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Liga11 As String = String.Format("/Compras/RepCxPDetalle.aspx?Op=TPV&GPO={0}&Anio={1}&Mes={2}&AnioMes={3}&Fecha={4}&CveProveedor={5}&CveUsuario={6}&CveMoneda={7}&FechaI={8}&FechaF={9}&CveProveedorSucursal={10}&CveProveedorClasificacion={11}&CveSubProyecto={12}&CveEstatusFactura={13}&TipoMoneda={14}&CveUsuarioResponsable={15}&FechaVI={16}&FechaVF={17}&TCEspecifico={18}&FechaCorte={19}&CveTipoProveedor={20}&Comprobaciones={21}", e.Row.DBCampo("CveGpo"), e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveMoneda"), FechaI, FechaF, e.Row.DBCampo("CveProveedorSucursal"), e.Row.DBCampo("CveProveedorClasificacion"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveEstatusFactura"), TipoMoneda, Responsable, FechaVI, FechaVF, TCEspecifico, txtCorteA.Text, CveTipoProveedor, e.Row.DBCampo("Comprobaciones")) Dim Contador As Integer = 1 Dim ContadorColumna As Integer = 2 Dim CargaColumnaVencido As Boolean = False If e.Row.DBCampo("NomC1").ToString <> "" Then e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("Columna1").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga1 Contador += 1 ContadorColumna += 1 End If If e.Row.DBCampo("TC2").ToString.ToEntero = 2 And Not CargaColumnaVencido Then If Not e.Row.DBCampo("Orden") = "" Then e.Row.Cells(ContadorColumna).BackColor = Drawing.Color.LightGray End If e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("vencido").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga10 Contador += 1 CargaColumnaVencido = True ContadorColumna += 1 End If If e.Row.DBCampo("NomC2").ToString <> "" Then e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("Columna2").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga2 Contador += 1 ContadorColumna += 1 End If If e.Row.DBCampo("TC3").ToString.ToEntero = 2 And Not CargaColumnaVencido Then If Not e.Row.DBCampo("Orden") = "" Then e.Row.Cells(ContadorColumna).BackColor = Drawing.Color.LightGray End If e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("vencido").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga10 Contador += 1 CargaColumnaVencido = True ContadorColumna += 1 End If If e.Row.DBCampo("NomC3").ToString <> "" Then e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("Columna3").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga3 Contador += 1 ContadorColumna += 1 End If If e.Row.DBCampo("TC4").ToString.ToEntero = 2 And Not CargaColumnaVencido Then If Not e.Row.DBCampo("Orden") = "" Then e.Row.Cells(ContadorColumna).BackColor = Drawing.Color.LightGray End If e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("vencido").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga10 Contador += 1 CargaColumnaVencido = True ContadorColumna += 1 End If If e.Row.DBCampo("NomC4").ToString <> "" Then e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("Columna4").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga4 Contador += 1 ContadorColumna += 1 End If If e.Row.DBCampo("TC5").ToString.ToEntero = 2 And Not CargaColumnaVencido Then If Not e.Row.DBCampo("Orden") = "" Then e.Row.Cells(ContadorColumna).BackColor = Drawing.Color.LightGray End If e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("vencido").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga10 Contador += 1 CargaColumnaVencido = True ContadorColumna += 1 End If If e.Row.DBCampo("NomC5").ToString <> "" Then e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("Columna5").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga5 Contador += 1 ContadorColumna += 1 End If If e.Row.DBCampo("TC6").ToString.ToEntero = 2 And Not CargaColumnaVencido Then If Not e.Row.DBCampo("Orden") = "" Then e.Row.Cells(ContadorColumna).BackColor = Drawing.Color.LightGray End If e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("vencido").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga10 Contador += 1 CargaColumnaVencido = True ContadorColumna += 1 End If If e.Row.DBCampo("NomC6").ToString <> "" Then e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("Columna6").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga6 Contador += 1 ContadorColumna += 1 End If If e.Row.DBCampo("TC7").ToString.ToEntero = 2 And Not CargaColumnaVencido Then If Not e.Row.DBCampo("Orden") = "" Then e.Row.Cells(ContadorColumna).BackColor = Drawing.Color.LightGray End If e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("vencido").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga10 Contador += 1 CargaColumnaVencido = True ContadorColumna += 1 End If If e.Row.DBCampo("NomC7").ToString <> "" Then e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("Columna7").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga7 Contador += 1 ContadorColumna += 1 End If If e.Row.DBCampo("TC8").ToString.ToEntero = 2 And Not CargaColumnaVencido Then If Not e.Row.DBCampo("Orden") = "" Then e.Row.Cells(ContadorColumna).BackColor = Drawing.Color.LightGray End If e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("vencido").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga10 Contador += 1 CargaColumnaVencido = True ContadorColumna += 1 End If If e.Row.DBCampo("NomC8").ToString <> "" Then e.Row.FCHyperLink($"HplColumna{Contador}").Text = e.Row.DBCampo("Columna8").ToString.FormatoNumero e.Row.FCHyperLink($"HplColumna{Contador}").NavigateUrl = Liga8 Contador += 1 ContadorColumna += 1 End If e.Row.FCHyperLink("LtlPorVencer").NavigateUrl = Liga11 e.Row.FCHyperLink("LtlVentas").NavigateUrl = Liga9 e.Row.FCHyperLink("LtlSaldo1").NavigateUrl = LigaTot e.Row.FCHyperLink("HplSaldo").NavigateUrl = LigaTot If e.Row.FCHyperLink("HplSaldo").Text = "0.00" Then e.Row.FCHyperLink("HplSaldo").Text = "-" If e.Row.FCHyperLink("HplColumna1").Text.ToDouble = 0 Then e.Row.FCHyperLink("HplColumna1").Text = "-" If e.Row.FCHyperLink("HplColumna2").Text.ToDouble = 0 Then e.Row.FCHyperLink("HplColumna2").Text = "-" If e.Row.FCHyperLink("HplColumna3").Text.ToDouble = 0 Then e.Row.FCHyperLink("HplColumna3").Text = "-" If e.Row.FCHyperLink("HplColumna4").Text.ToDouble = 0 Then e.Row.FCHyperLink("HplColumna4").Text = "-" If e.Row.FCHyperLink("HplColumna5").Text.ToDouble = 0 Then e.Row.FCHyperLink("HplColumna5").Text = "-" If e.Row.FCHyperLink("HplColumna6").Text.ToDouble = 0 Then e.Row.FCHyperLink("HplColumna6").Text = "-" If e.Row.FCHyperLink("HplColumna7").Text.ToDouble = 0 Then e.Row.FCHyperLink("HplColumna7").Text = "-" If e.Row.FCHyperLink("HplColumna8").Text.ToDouble = 0 Then e.Row.FCHyperLink("HplColumna8").Text = "-" If e.Row.FCHyperLink("HplColumna9").Text.ToDouble = 0 Then e.Row.FCHyperLink("HplColumna9").Text = "-" If e.Row.FCHyperLink("LtlPorVencer").Text = "0.00" Then e.Row.FCHyperLink("LtlPorVencer").Text = "-" If e.Row.FCHyperLink("LtlVentas").Text = "0.00" Then e.Row.FCHyperLink("LtlVentas").Text = "-" If e.Row.FCHyperLink("LtlSaldo1").Text = "0.00" Then e.Row.FCHyperLink("LtlSaldo1").Text = "-" e.Row.Cells(2).Width = Unit.Pixel(75) e.Row.Cells(3).Width = Unit.Pixel(75) e.Row.Cells(4).Width = Unit.Pixel(75) e.Row.Cells(5).Width = Unit.Pixel(75) e.Row.Cells(6).Width = Unit.Pixel(75) e.Row.Cells(7).Width = Unit.Pixel(75) e.Row.Cells(8).Width = Unit.Pixel(75) e.Row.Cells(9).Width = Unit.Pixel(75) e.Row.Cells(10).Width = Unit.Pixel(75) e.Row.Cells(11).Width = Unit.Pixel(75) End If End Sub #End Region #Region "CONSULTA" Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click CargaDatos() End Sub #End Region #Region "IMPRESIONES" Private Sub ActualizarDatatable(NumCol As Integer) If DtDatos IsNot Nothing AndAlso DtDatos.Rows.Count > 0 Then For Each Dt As DataRow In DtDatos.Rows For Cont = 9 To NumCol + 1 Step -1 Dt($"Columna{Cont}") = Dt($"Columna{Cont - 1}") Dt($"TC{Cont}") = Dt($"TC{Cont - 1}") Dt($"NomC{Cont}") = Dt($"NomC{Cont - 1}") Next Dt($"Columna{NumCol}") = Dt("vencido") Dt($"TC{NumCol}") = "1" Dt($"NomC{NumCol}") = "Total" Next End If End Sub 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 ObjMovtos As New ClsMovimientos() Dim FechaI As String = txtFechaI.Text Dim FechaF As String = txtFechaF.Text Dim FechaVencimientoI As String = txtFechaVI.Text Dim FechaVencimientoF As String = txtFechaVF.Text If txtFechaI.Text = "" Then FechaI = "-1" If txtFechaF.Text = "" Then FechaF = "-1" If txtFechaVI.Text = "" Then FechaVencimientoI = "-1" If txtFechaVF.Text = "" Then FechaVencimientoF = "-1" If RblTipoCambio.SelectedValue = 3 And TxtEspecifico.Text <> "" Then TCEspecifico = TxtEspecifico.Text Else TCEspecifico = -1 End If Dim Sucursal = If(DdlSubProyecto.SelectedValue = "-1", "", $" Sucursal: {DdlSubProyecto.SelectedItem.Text}") Dim Proveedor = If(DdlProveedor.SelectedValue = "-1", "", $" Proveedor: {DdlProveedor.SelectedText}") Dim Clasificacion = If(DdlProveedoresClasificaciones.SelectedValue = "-1", "", $" Clasificación: {DdlProveedoresClasificaciones.SelectedItem.Text}") Dim Grupo = If(DdlGrupo.SelectedValue = "-1", "", $" Grupo: {DdlGrupo.SelectedItem.Text}") Dim FechaIn As String = $" Fecha Inicio: {txtFechaI.Text}" Dim FechaFn As String = $" Fecha Fin: {txtFechaF.Text}" If txtFechaI.Text = "" Then FechaIn = "" If txtFechaF.Text = "" Then FechaFn = "" Dim Registro = If(DdlUsuarioRegistro.SelectedValue = "-1", "", $" Registró: {DdlUsuarioRegistro.SelectedItem.Text}") Dim Responsable = If(DdlUsuarioResponsable.SelectedValue = "-1", "", $" Responsable: {DdlUsuarioResponsable.SelectedItem.Text}") Dim TipoMoneda = If(RblTipoCambio.SelectedValue = "-1", "", $" Tipo Moneda: {RblTipoCambio.SelectedItem.Text}") Dim FVI As String = $" Fecha Venc. Inic.: {txtFechaVI.Text}" Dim FVF As String = $" Fecha Venc. Final: {txtFechaVF.Text}" If txtFechaVI.Text = "" Then FVI = "" If txtFechaVF.Text = "" Then FVF = "" If DtDatos.Rows.Count > 0 Then Dim CantidadColumnas As Integer = 0 If DtDatos.Rows(0)("TC1").ToString.ToEntero = 1 Or DtDatos.Rows(0)("TC1").ToString.ToEntero = 2 Then CantidadColumnas += 1 If DtDatos.Rows(0)("TC2").ToString.ToEntero = 1 Or DtDatos.Rows(0)("TC2").ToString.ToEntero = 2 Then CantidadColumnas += 1 If DtDatos.Rows(0)("TC3").ToString.ToEntero = 1 Or DtDatos.Rows(0)("TC3").ToString.ToEntero = 2 Then CantidadColumnas += 1 If DtDatos.Rows(0)("TC4").ToString.ToEntero = 1 Or DtDatos.Rows(0)("TC4").ToString.ToEntero = 2 Then CantidadColumnas += 1 If DtDatos.Rows(0)("TC5").ToString.ToEntero = 1 Or DtDatos.Rows(0)("TC5").ToString.ToEntero = 2 Then CantidadColumnas += 1 If DtDatos.Rows(0)("TC6").ToString.ToEntero = 1 Or DtDatos.Rows(0)("TC6").ToString.ToEntero = 2 Then CantidadColumnas += 1 If DtDatos.Rows(0)("TC7").ToString.ToEntero = 1 Or DtDatos.Rows(0)("TC7").ToString.ToEntero = 2 Then CantidadColumnas += 1 If DtDatos.Rows(0)("TC8").ToString.ToEntero = 1 Or DtDatos.Rows(0)("TC8").ToString.ToEntero = 2 Then CantidadColumnas += 1 If DtDatos.Rows(0)("TC9").ToString.ToEntero = 1 Or DtDatos.Rows(0)("TC9").ToString.ToEntero = 2 Then CantidadColumnas += 1 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("FechaInicio", FechaI)) params.Add(New ReportParameter("FechaFin", FechaF)) params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString)) params.Add(New ReportParameter("Grupo", DdlGrupo.SelectedItem.Text)) params.Add(New ReportParameter("AgrupadoPor", $"{Grupo}{Proveedor}{Clasificacion}{FechaIn}{FechaFn}{Registro}{Responsable}{Sucursal}{TipoMoneda}{FVI}{FVF}")) params.Add(New ReportParameter("CantColumnas", CantidadColumnas)) If Imagen.Exists Then params.Add(New ReportParameter("LogoPath", logouri)) Else params.Add(New ReportParameter("LogoPath", "")) End If ImprimirPDF("Empresas/Grales/Formatos/RepCxP.rdlc", DtDatos, params, "ReporteCxP", Formato) Else Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia) End If End Sub #End Region #Region "TIPO DE CAMBIO" Private Sub DdlTipoCambio_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RblTipoCambio.SelectedIndexChanged If RblTipoCambio.SelectedValue = 3 Then Dim TipoCambio As Double LiEspecifico.Visible = True TipoCambio = GlobalTipoCambio(Now) TxtEspecifico.Text = TipoCambio Else LiEspecifico.Visible = False End If UPFiltros.Update() End Sub Private Sub BtnTipoCambio_Click(sender As Object, e As EventArgs) Handles BtnTipoCambio.Click CargaDatos() RegistraScript(String.Format("$('#{0}').modal('hide');", "DivTipoCambio")) UPPDatos.Update() End Sub #End Region #Region "PERSONALIZAR RANGO COLUMNAS" Protected Sub GvPersonalizarRango_RowDataBound(sender As Object, e As GridViewRowEventArgs) If e.Row.RowType = DataControlRowType.DataRow Then If Not e.Row.DBCampo("RangoFinal").ToDouble > 0 Then e.Row.Cells(2).Text = "+" End If End If End Sub Private Sub CargaGv() GvPersonalizarRango.DataSource = DtPersonalizarRango GvPersonalizarRango.DataBind() UpBodyPersonalizar.Update() End Sub Private Sub CargaGvPersonalizarRaqngoColumnas() Dim ObjComp As New ClsCompras If ObjComp.GetRepCxPColumnas(UsuarioActual.CveEmpresa) Then GvPersonalizarRango.DataSource = ObjComp.DtResultados DtPersonalizarRango = ObjComp.DtResultados End If ObjComp.Dispose() GvPersonalizarRango.DataBind() UpPersonalizarRango.Update() End Sub Protected Sub LnkEliminar_Click(sender As Object, e As EventArgs) Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow) DtPersonalizarRango.Rows.RemoveAt(gvRow.RowIndex) DtPersonalizarRango.AcceptChanges() CargaGv() End Sub Protected Sub LnkEditar_Click(sender As Object, e As EventArgs) Dim gvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow) Index = gvRow.RowIndex Modalidad = "U" DdlTipo.SelectedValueExist(gvRow.DataKey("Tipo")) TxtRI.Text = gvRow.DataKey("RangoInicial") TxtRF.Text = gvRow.DataKey("RangoFinal") If Not TxtRF.Text.ToDouble > 0 Then ChkMayor.Checked = True TxtRF.Enabled = False Else ChkMayor.Checked = False End If RegistraScript("$('#DivPersonalizarRangoEditar').modal()") UpPersonalizarRangoEditar.Update() End Sub Private Sub LimpiaPersonalizarColumna() DdlTipo.SelectedIndex = 0 TxtRI.Text = "" TxtRF.Text = "" ChkMayor.Checked = False SoloNumeros2.Enabled = True TxtRF.Enabled = True RFVRF.Enabled = True End Sub Protected Sub ChkMayor_CheckedChanged(sender As Object, e As EventArgs) CambioChecked() End Sub Private Sub CambioChecked() If ChkMayor.Checked Then SoloNumeros2.Enabled = False TxtRF.Enabled = False TxtRF.Text = "" RFVRF.Enabled = False Else SoloNumeros2.Enabled = True TxtRF.Enabled = True TxtRF.Text = "" RFVRF.Enabled = True End If UpBodyEdit.Update() End Sub Protected Sub BtnGuardarPersonalizarRangoEditar_Click(sender As Object, e As EventArgs) If Not ChkMayor.Checked And TxtRI.Text.ToDouble > TxtRF.Text.ToDouble Then Alert("El rango final tiene que ser mayor que el inicial.", TipoMensaje.MsgAdvertencia) Exit Sub End If If Modalidad = "A" Then Dim Dt As DataRow = Nothing Dt = DtPersonalizarRango.NewRow Dt("RangoInicial") = TxtRI.Text.ToDouble Dt("RangoFinal") = TxtRF.Text.ToDouble Dt("Tipo") = DdlTipo.SelectedValue Dt("TipoEscrito") = DdlTipo.SelectedItem.Text DtPersonalizarRango.Rows.InsertAt(Dt, DtPersonalizarRango.Rows.Count) ElseIf Modalidad = "U" Then DtPersonalizarRango.Rows(Index)("RangoInicial") = TxtRI.Text.ToDouble DtPersonalizarRango.Rows(Index)("RangoFinal") = TxtRF.Text.ToDouble DtPersonalizarRango.Rows(Index)("Tipo") = DdlTipo.SelectedValue DtPersonalizarRango.Rows(Index)("TipoEscrito") = DdlTipo.SelectedItem.Text DtPersonalizarRango.AcceptChanges() End If DtPersonalizarRango = DtPersonalizarRango.FiltraParametros("", "Tipo,RangoInicial,RangoFinal") CargaGv() RegistraScript("$('#DivPersonalizarRangoEditar').modal('hide')") RegistraScript("$('#DivPersonalizarRango').modal()", "SDSD") End Sub Protected Sub BtnCancelarPersonalizarRangoEditar_Click(sender As Object, e As EventArgs) RegistraScript("$('#DivPersonalizarRangoEditar').modal('hide')") RegistraScript("$('#DivPersonalizarRango').modal()", "SDSD") End Sub Protected Sub BtnAgregarRango_Click(sender As Object, e As EventArgs) Modalidad = "A" LimpiaPersonalizarColumna() RegistraScript("$('#DivPersonalizarRangoEditar').modal()") UpPersonalizarRangoEditar.Update() End Sub Protected Sub BtnPersonalizarRango_Click(sender As Object, e As EventArgs) If Not DtPersonalizarRango.COUNT("Tipo", "Tipo=1") > 0 Then Alert("Tiene que haber por lo menos una columna de tipo vencido.", TipoMensaje.MsgAdvertencia) Exit Sub End If If Not DtPersonalizarRango.COUNT("Tipo", "Tipo=2") > 0 Then Alert("Tiene que haber por lo menos una columna de tipo por vencer.", TipoMensaje.MsgAdvertencia) Exit Sub End If If DtPersonalizarRango.Rows.Count > 8 Then Alert("Tiene que haber un maximo de 8 columnas.", TipoMensaje.MsgAdvertencia) Exit Sub End If Dim ObjComp As New ClsCompras ObjComp.IniciaTransacSQL() Dim ErrorTrans As Boolean = False If Not ObjComp.RemoveRepCxPColumnas(UsuarioActual.CveEmpresa) Then ErrorTrans = True End If For Each Dr As DataRow In DtPersonalizarRango.Rows If Not ObjComp.AddRepCxPColumnas(UsuarioActual.CveEmpresa, Dr("RangoInicial").ToString.ToDouble, Dr("RangoFinal").ToString.ToDouble, Dr("Tipo").ToString.ToEntero) Then ErrorTrans = True End If Next If Not ErrorTrans Then ObjComp.Commit() CargaDatos() RegistraScript("$('#DivPersonalizarRango').modal('hide')") Else ObjComp.RollBack() End If ObjComp.Dispose() UPPDatos.Update() End Sub #End Region #Region "GRAFICA" Protected Sub LnkVerGrafica_Click(sender As Object, e As EventArgs) If Not DtDatos IsNot Nothing AndAlso DtDatos.Rows.Count > 0 Then Alert("No hay datos disponibles", TipoMensaje.MsgAdvertencia) Exit Sub End If LblTituloGrafica.Text = $"Agrupado por: {Agrupador}" UPModalProd.Update() RegistraScript("$('#DivModalGrafica').modal('show')") CargaGraficaVencidoPorVencer(DdlVerGraficaVencidoPorVencer.SelectedValue.ToEntero) CambioGrafica(DdlVer.SelectedValue.ToEntero) End Sub Private Sub CreaDataTableColor() DtColor = New DataTable DtColor.Columns.Add("Color") Dim RowColor As DataRow = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#FF0F00" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#FF6600" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#FF9E01" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#FCD202" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#F8FF01" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#B0DE09" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#04D215" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#0D8ECF" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#0D52D1" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#2A0CD0" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#8A0CCF" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#CD0D74" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#754DEB" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#DDDDDD" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#999999" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#333333" DtColor.Rows.Add(RowColor) RowColor = Nothing RowColor = DtColor.NewRow() RowColor("Color") = "#000000" DtColor.Rows.Add(RowColor) End Sub Private Sub CambioGrafica(Tipo As Integer) Dim Dt As New DataTable() Dt.Columns.Add("Texto") Dt.Columns.Add("Valor") Dt.Columns.Add("Color") Dt.Columns.Add("Moneda") Dim RowColorIndex As Integer = 0 Dim Top As Integer = 1 For Each Dr As DataRow In DtDatos.FiltraParametros("", $"{If(Tipo = 1, "Saldo", If(Tipo = 1, "vencido", "por_vencer"))} DESC").Rows If Not Dr("Orden").ToString = "" Then Dim Row As DataRow = Nothing Row = Dt.NewRow() Row("Texto") = $"{Dr("GPO").ToString} {GlobalDTMonedas().FiltraParametros($"CveMoneda = {Dr("CveMoneda").ToString}").Rows(0)("Abreviatura").ToString}" Select Case Tipo Case 1 Row("Valor") = Dr("Saldo").ToString.FormatoNumero Case 2 Row("Valor") = Dr("vencido").ToString.FormatoNumero Case 3 Row("Valor") = Dr("por_vencer").ToString.FormatoNumero End Select Row("Color") = DtColor.Rows(RowColorIndex)("Color").ToString Row("Moneda") = Dr("Moneda").ToString Dt.Rows.Add(Row) RowColorIndex += 1 If RowColorIndex = 17 Then RowColorIndex = 0 End If Top += 1 End If If DdlMostrarGraficaTotales.SelectedValue.ToEntero <> -1 And Top > DdlMostrarGraficaTotales.SelectedValue.ToEntero Then Exit For Next Dim query = From s In Dt.AsEnumerable() Select New With {.Texto = s("Texto").ToString(), .Valor = s("Valor").ToString().ToDouble(), .Color = s("Color").ToString(), .Moneda = s("Moneda").ToString()} Dim json As String = Newtonsoft.Json.JsonConvert.SerializeObject(query) Select Case DdlGrafica.SelectedValue.ToEntero Case 1 RegistraScript($"CargaGraficaBarras({json})", "22") Case 2 RegistraScript($"CargaGraficaPastel({json})", "22") End Select UpGraficaTotales.Update() End Sub Protected Sub DdlGrafica_SelectedIndexChanged(sender As Object, e As EventArgs) CambioGrafica(DdlVer.SelectedValue.ToEntero) End Sub Protected Sub DdlVer_SelectedIndexChanged(sender As Object, e As EventArgs) CambioGrafica(DdlVer.SelectedValue.ToEntero) End Sub Private Sub CargaGraficaVencidoPorVencer(Tipo As Integer) Dim Dt5 As New DataTable() Dt5.Columns.Add("categoria") Dim Dt6 As New DataTable() Dt6.Columns.Add("balloonText") Dt6.Columns.Add("bullet") Dt6.Columns.Add("title") Dt6.Columns.Add("valueField") Dt6.Columns.Add("fillAlphas") Dim Top As Integer = 1 For Each Dr As DataRow In DtGrafica.FiltraParametros("", $"{If(Tipo = 1, "vencido", "por_vencer")} DESC").Rows If Not Dr("Orden").ToString = "" Then Dim NombreColumna As String = "" If Dt5.Columns.Contains($"{Dr("GPO").ToString} {GlobalDTMonedas().FiltraParametros($"CveMoneda = {Dr("CveMoneda").ToString}").Rows(0)("Abreviatura").ToString}") Then NombreColumna = $"{Dr("GPO").ToString} {GlobalDTMonedas().FiltraParametros($"CveMoneda = {Dr("CveMoneda").ToString}").Rows(0)("Abreviatura").ToString}{"2"}" Else NombreColumna = $"{Dr("GPO").ToString} {GlobalDTMonedas().FiltraParametros($"CveMoneda = {Dr("CveMoneda").ToString}").Rows(0)("Abreviatura").ToString}" End If Dt5.Columns.Add(NombreColumna) Dim Row6 As DataRow = Nothing Row6 = Dt6.NewRow() Row6("balloonText") = "[[title]] [[category]]: [[value]]" Row6("bullet") = "round" Row6("title") = NombreColumna Row6("valueField") = NombreColumna Row6("fillAlphas") = 0 Dt6.Rows.Add(Row6) Top += 1 End If If DdlMostrarGraficaVencidoPorVencer.SelectedValue.ToEntero <> -1 And Top > DdlMostrarGraficaVencidoPorVencer.SelectedValue.ToEntero Then Exit For Next Dim Dr1 As DataRow = DtGrafica.Rows(0) For Cont = 1 To 8 If Dr1($"TC{Cont}").ToString.ToEntero = Tipo And Not Dr1($"NomC{Cont}").ToString = "Total" Then Top = 1 Dim Row As DataRow = Dt5.NewRow() For Each Dr2 As DataRow In DtGrafica.FiltraParametros("", $"{If(Tipo = 1, "vencido", "por_vencer")} DESC").Rows If Not Dr2("Orden").ToString = "" Then Row($"{Dr2("GPO").ToString} {GlobalDTMonedas().FiltraParametros($"CveMoneda = {Dr2("CveMoneda").ToString}").Rows(0)("Abreviatura").ToString}") = Dr2($"Columna{Cont}").ToString Top += 1 End If If DdlMostrarGraficaVencidoPorVencer.SelectedValue.ToEntero <> -1 And Top > DdlMostrarGraficaVencidoPorVencer.SelectedValue.ToEntero Then Exit For Next Row("categoria") = Dr1($"NomC{Cont}").ToString Dt5.Rows.Add(Row) End If Next RegistraScript($"CargaGraficaVencidoPorVencer({Dt5.ToJson},{Dt6.ToJson})", "33") UpGraficaVencidoPorVencer.Update() End Sub Protected Sub DdlVerGraficaVencidoPorVencer_SelectedIndexChanged(sender As Object, e As EventArgs) CargaGraficaVencidoPorVencer(DdlVerGraficaVencidoPorVencer.SelectedValue.ToEntero) End Sub Protected Sub DdlMostrarGraficaVencidoPorVencer_SelectedIndexChanged(sender As Object, e As EventArgs) CargaGraficaVencidoPorVencer(DdlVerGraficaVencidoPorVencer.SelectedValue.ToEntero) End Sub Protected Sub DdlMostrarGraficaTotales_SelectedIndexChanged(sender As Object, e As EventArgs) CambioGrafica(DdlVer.SelectedValue.ToEntero) End Sub #End Region End Class