Files
SIG/Compras/RepCxP.aspx.vb
2020-07-16 14:53:07 -07:00

1048 lines
56 KiB
VB.net

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", "", $"&emsp;<b>Sucursal:</b> {DdlSubProyecto.SelectedItem.Text}")
Dim Proveedor = If(DdlProveedor.SelectedValue = "-1", "", $"&emsp;<b>Proveedor:</b> {DdlProveedor.SelectedText}")
Dim Clasificacion = If(DdlProveedoresClasificaciones.SelectedValue = "-1", "", $"&emsp;<b>Clasificación:</b> {DdlProveedoresClasificaciones.SelectedItem.Text}")
Dim Grupo = If(DdlGrupo.SelectedValue = "-1", "", $"&emsp;<b>Grupo:</b> {DdlGrupo.SelectedItem.Text}")
Dim FechaIn As String = $"&emsp;<b>Fecha Inicio:</b> {txtFechaI.Text}"
Dim FechaFn As String = $"&emsp;<b>Fecha Fin:</b> {txtFechaF.Text}"
If txtFechaI.Text = "" Then FechaIn = ""
If txtFechaF.Text = "" Then FechaFn = ""
Dim Registro = If(DdlUsuarioRegistro.SelectedValue = "-1", "", $"&emsp;<b>Registró:</b> {DdlUsuarioRegistro.SelectedItem.Text}")
Dim Responsable = If(DdlUsuarioResponsable.SelectedValue = "-1", "", $"&emsp;<b>Responsable:</b> {DdlUsuarioResponsable.SelectedItem.Text}")
Dim TipoMoneda = If(RblTipoCambio.SelectedValue = "-1", "", $"&emsp;<b>Tipo Moneda:</b> {RblTipoCambio.SelectedItem.Text}")
Dim FVI As String = $"&emsp;<b>Fecha Venc. Inic.:</b>&nbsp;{txtFechaVI.Text}"
Dim FVF As String = $"&emsp;<b>Fecha Venc. Final:</b>&nbsp;{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