Files
SIG/Compras/RepComprasDetalle.aspx.vb
MLopez 8141e0a5c1 E141 Rep Compras Agregar columna personalizable Folio Fiscal
SE MODIFICÓ PA_Comp_ComprasGetRepDetalle en SIG_Resp_MLR
2023-01-17 21:10:07 -07:00

619 lines
27 KiB
VB.net

Option Explicit On
Option Strict On
Imports Extensiones
Imports Microsoft.Reporting.WebForms
Imports System.Data
Partial Class Compras_RepComprasDetalle
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 NumeroRemesa As String
Get
NumeroRemesa = ViewState("NumeroRemesa").ToString
End Get
Set(value As String)
ViewState("NumeroRemesa") = value
End Set
End Property
Private Property TCEspecifico As Double
Get
If ViewState("TCEspecifico") Is Nothing Then
Return -1
Else
Return DirectCast(ViewState("TCEspecifico"), Double)
End If
End Get
Set(value As Double)
ViewState("TCEspecifico") = 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 Agrupador As String
Get
Return ViewState("Agrupador").ToString
End Get
Set(value As String)
ViewState("Agrupador") = value
End Set
End Property
Private Property CveMoneda As Integer
Get
CveMoneda = ViewState("CveMoneda").ToString.ToEntero
End Get
Set(value As Integer)
ViewState("CveMoneda") = value
End Set
End Property
#End Region
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
CargaCombos()
CargaParametrosInicio()
CargaDatos()
End If
End Sub
#Region "CARGAS"
Private Sub CargaParametrosInicio()
Dim SubProyecto, Proveedor, Usuario, UsuarioCaptura, UsuarioRemesa, CveProyecto, Grupo As String
Dim Anio, Mes, AnioMes, Fecha, FechaI, FechaF, FechaCaptura, FechaICaptura, FechaFCaptura, TipoDocto, TipoGasto, CveTipoProveedor As String
Grupo = If(Request("GPO") IsNot Nothing AndAlso Request("GPO").ToEntero() > 0, Request("GPO").ToEntero(), -1).ToString
'PARAMETROS DE LISTBOXS
SubProyecto = If(Request("CveSubProyecto") IsNot Nothing AndAlso Request("CveSubProyecto") <> "", Request("CveSubProyecto"), "-1").ToString
TipoGasto = If(Request("CveTipoGasto") IsNot Nothing AndAlso Request("CveTipoGasto") <> "", Request("CveTipoGasto"), "-1").ToString
Proveedor = If(Request("CveProveedor") IsNot Nothing AndAlso Request("CveProveedor").ToEntero() > 0, Request("CveProveedor").ToEntero(), -1).ToString
Usuario = If(Request("CveUsuario") IsNot Nothing AndAlso Request("CveUsuario").ToEntero() > 0, Request("CveUsuario").ToEntero(), -1).ToString
UsuarioCaptura = If(Request("CveUsuarioCaptura") IsNot Nothing AndAlso Request("CveUsuarioCaptura").ToEntero() > 0, Request("CveUsuarioCaptura").ToEntero(), -1).ToString
NumeroRemesa = If(Request("NumeroRemesa") IsNot Nothing AndAlso Request("NumeroRemesa").ToEntero() > 0, Request("NumeroRemesa").ToEntero(), -1).ToString
UsuarioRemesa = If(Request("CveUsuarioRemesa") IsNot Nothing AndAlso Request("CveUsuarioRemesa").ToEntero() > 0, Request("CveUsuarioRemesa").ToEntero(), -1).ToString
CveTipoProveedor = If(Request("CveTipoProveedor") IsNot Nothing AndAlso Request("CveTipoProveedor").ToEntero() > 0, Request("CveTipoProveedor").ToEntero(), -1).ToString
CveProyecto = If(Request("CveProyecto") IsNot Nothing AndAlso Request("CveProyecto").ToEntero() > 0, Request("CveProyecto").ToEntero(), -1).ToString
CveMoneda = If(Request("CveMoneda") IsNot Nothing AndAlso Request("CveMoneda").ToEntero() > 0, Request("CveMoneda").ToEntero(), -1).ToEntero
TipoDocto = If(Request("TipoDocto") IsNot Nothing AndAlso Request("TipoDocto") <> "", Request("TipoDocto").ToString, "-1")
Anio = If(Request("Anio") IsNot Nothing, Request("Anio").ToString, "-1").ToString
Mes = If(Request("Mes") IsNot Nothing, Request("Mes").ToString, "-1").ToString
AnioMes = If(Request("AnioMes") IsNot Nothing, Request("AnioMes").ToString, "-1").ToString
Fecha = If(Request("Fecha") IsNot Nothing, Request("Fecha").ToString, "-1").ToString
FechaI = If(Request("FechaI") IsNot Nothing, Request("FechaI").ToString, "-1").ToString
FechaF = If(Request("FechaF") IsNot Nothing, Request("FechaF").ToString, "-1").ToString
FechaCaptura = If(Request("FechaCaptura") IsNot Nothing, Request("FechaCaptura").ToString, "-1").ToString
FechaICaptura = If(Request("FechaICaptura") IsNot Nothing, Request("FechaICaptura").ToString, "-1").ToString
FechaFCaptura = If(Request("FechaFCaptura") IsNot Nothing, Request("FechaFCaptura").ToString, "-1").ToString
If IfNull(Request("TipoCambio"), "1").ToString <> "1" Then
RblTipoCambio.SelectedValue = IfNull(Request("TipoCambio"), "1").ToString
End If
'txtFechaI.Text = If(Anio <> "-1", String.Format("01/01/{0}", Anio), txtFechaI.Text)
'txtFechaI.Text = If(Mes <> "-1", String.Format("01/{0}/0001", Mes), txtFechaI.Text)
'txtFechaI.Text = If(AnioMes <> "-1", String.Format("01/{0}/{1}", AnioMes.Substring(5, 2).PadLeft(2, "0"c), AnioMes.Substring(0, 4)), txtFechaI.Text)
If Fecha <> "-1" Then
txtFechaI.Text = Fecha
txtFechaF.Text = Fecha
Else
If FechaI <> "-1" Then txtFechaI.Text = FechaI
If FechaF <> "-1" Then txtFechaF.Text = FechaF
End If
If FechaCaptura <> "-1" Then
TxtFechaICaptura.Text = FechaCaptura
TxtFechaFCaptura.Text = FechaCaptura
Else
If FechaICaptura <> "-1" Then
TxtFechaICaptura.Text = FechaICaptura
End If
If FechaFCaptura <> "-1" Then
TxtFechaFCaptura.Text = FechaFCaptura
End If
End If
DdlProyecto.SelectedValueExist(CveProyecto)
If DivProyecto.Visible Then CargaSubProyecto()
'CARGA LISTBOXs
DdlSubProyecto.SelectedValuesIfExistM(SubProyecto)
DdlTipoGasto.SelectedValuesIfExistM(TipoGasto)
DdlUsuario.SelectedValueExist(Usuario)
DDlUsuarioCaptura.SelectedValueExist(UsuarioCaptura)
DdlGrupo.SelectedValueExist(Grupo)
DdlProveedores.SelectedValue = Proveedor
If DdlProveedores.SelectedValue.ToEntero > 0 Then
DdlProveedores.SelectedText = GlobalDTCompProveedores(UsuarioActual.CveEmpresa, CveProveedor:=DdlProveedores.SelectedValue.ToEntero).FiltroPrimeroValor("RazonSocial", "").ToString
Else
DdlProveedores.SelectedText = "Todos"
End If
DdlTipoProveedor.SelectedValueExist(CveTipoProveedor)
DdlTipoDocto.SelectedValueExist(TipoDocto)
ChkIVA.Checked = True
ChkIEPS.Checked = True
ChkDesc.Checked = True
ChkTotal.Checked = True
ChkAbre.Checked = True
ChkRazon.Checked = True
ChkFolio.Checked = True
ChkFecha.Checked = True
ChkObs.Checked = True
End Sub
Private Sub CargaGrupo()
DdlGrupo.Items.Insert(0, New ListItem("Año", "1"))
DdlGrupo.Items.Insert(1, New ListItem("Mes", "2"))
DdlGrupo.Items.Insert(2, New ListItem("Año/Mes", "3"))
DdlGrupo.Items.Insert(3, New ListItem("Fecha", "4"))
DdlGrupo.Items.Insert(4, New ListItem("Fecha Captura", "9"))
DdlGrupo.Items.Insert(5, New ListItem("Proveedor", "5"))
DdlGrupo.Items.Insert(6, New ListItem("Tipo Documento", "6"))
DdlGrupo.Items.Insert(7, New ListItem("Clasificación Prov.", "7"))
DdlGrupo.Items.Insert(8, New ListItem("Responsable", "8"))
DdlGrupo.Items.Insert(9, New ListItem("Remesa", "10"))
DdlGrupo.DataBind()
DdlGrupo.SelectedValueExist("3")
End Sub
Private Sub CargaTipoCentroCosto()
If UsuarioActual.Empresa.Tipo_CentroCosto = 1 Then
DdlSubProyecto.Items.Clear()
DivProyecto.Visible = False
DivLblProyecto.Visible = False
LblSubProyecto.Text = "Sucursal:"
DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1)
DdlSubProyecto.DataBind()
DdlGrupo.Items.Insert(10, New ListItem("Remesa-Sucursal", "11"))
DdlGrupo.Items.Insert(11, New ListItem("Sucursal", "12"))
DdlGrupo.DataBind()
ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 2 Then
DdlSubProyecto.Items.Clear()
DivProyecto.Visible = False
DivLblProyecto.Visible = False
LblSubProyecto.Text = "Proyecto:"
DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1)
DdlSubProyecto.DataBind()
DdlGrupo.Items.Insert(10, New ListItem("Remesa-Proyecto", "11"))
DdlGrupo.Items.Insert(11, New ListItem("Proyecto", "12"))
DdlGrupo.DataBind()
ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 3 Then
DdlGrupo.Items.Insert(10, New ListItem("Remesa-SubProyecto", "11"))
DdlGrupo.Items.Insert(11, New ListItem("SubProyecto", "12"))
DdlGrupo.Items.Insert(12, New ListItem("Proyecto", "13"))
DdlGrupo.DataBind()
ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 4 Then
LblProyecto.Text = "Sucursal:"
LblSubProyecto.Text = "Proyecto:"
DdlGrupo.Items.Insert(10, New ListItem("Remesa-Proyecto", "11"))
DdlGrupo.Items.Insert(11, New ListItem("Proyecto", "12"))
DdlGrupo.Items.Insert(12, New ListItem("Sucursal", "13"))
DdlGrupo.DataBind()
ElseIf UsuarioActual.Empresa.Tipo_CentroCosto = 5 Then
LblProyecto.Text = "Proyecto:"
LblSubProyecto.Text = "Sucursal:"
DdlGrupo.Items.Insert(10, New ListItem("Remesa-Sucursal", "11"))
DdlGrupo.Items.Insert(11, New ListItem("Sucursal", "12"))
DdlGrupo.Items.Insert(12, New ListItem("Proyecto", "13"))
DdlGrupo.DataBind()
End If
DdlGrupo.Items.Add(New ListItem("Tipo Proveedor", "14"))
DdlGrupo.Items.Add(New ListItem("Tipo Gasto", "15"))
End Sub
Private Sub CargaCombos()
'Carga Tipo de Gasto
DdlTipoGasto.DataSource = GlobalDTTiposGastos(UsuarioActual.CveEmpresa)
DdlTipoGasto.DataBind()
DdlTipoGasto.Items.Insert(0, New ListItem("Sin Tipo Gasto", "-2"))
'Carga Proveedores
DdlProveedores.setEsWebService(True)
DdlProveedores.Attributes.Add("data-metodo", "getproveedores")
DdlProveedores.SelectedText = "Todos"
DdlProveedores.SelectedValue = "-1"
'CargaUsuarios
DdlUsuario.DataSource = GlobalDTUsuarioResponsable.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa)
DdlUsuario.DataBind()
'Carga Usuario Capturo
DDlUsuarioCaptura.DataSource = GlobalDTUsuarios(CveEmpresa:=UsuarioActual.CveEmpresa)
DDlUsuarioCaptura.DataBind()
'CargaProyecto
DdlProyecto.DataSource = GlobalDTProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1)
DdlProyecto.DataBind()
'Carga Grupos
CargaGrupo()
'Carga Tipo Centro de Costo
CargaTipoCentroCosto()
CreaDataTableColor()
End Sub
Private Sub CargaSubProyecto()
DdlSubProyecto.Items.Clear()
DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, DdlProyecto.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, -1, 1)
DdlSubProyecto.DataBind()
End Sub
Private Sub CargaDatos()
Dim ObjCompras As New ClsCompras()
Dim FechaI, FechaF As String
FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.Trim(), "-1")
FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.Trim(), "-1")
Dim FechaICaptura, FechaFCaptura As String
FechaICaptura = If(IsDate(TxtFechaICaptura.Text.Trim()), TxtFechaICaptura.Text.Trim(), "-1")
FechaFCaptura = If(IsDate(TxtFechaFCaptura.Text.Trim()), TxtFechaFCaptura.Text.Trim(), "-1")
Dim AnioMes As String = If(FechaF <> "-1", "-1", IfNull(Request("AnioMes"), "-1").ToString())
If RblTipoCambio.SelectedValue.ToEntero = 3 And TxtEspecifico.Text <> "" Then
TCEspecifico = TxtEspecifico.Text.ToDouble
Else
TCEspecifico = -1
End If
Dim SubProyectos As String = IIf(DdlSubProyecto.GetSelectedValuesM = "", "-1", DdlSubProyecto.GetSelectedValuesM).ToString
Dim TipoGasto As String = IIf(DdlTipoGasto.GetSelectedValuesM = "", "-1", DdlTipoGasto.GetSelectedValuesM).ToString
If ObjCompras.GetRepComprasDetalle(DdlGrupo.SelectedValue.ToEntero, IfNull(Request("Anio"), Now.Year).ToString.ToEntero, IfNull(Request("Mes"), "-1").ToString.ToEntero, AnioMes, IfNull(Request("Fecha"), "-1").ToString(),
DdlProveedores.SelectedValue.ToEntero, CveMoneda, DdlUsuario.SelectedValue.ToEntero, FechaI, FechaF, DDlUsuarioCaptura.SelectedValue.ToEntero,
IfNull(Request("NumeroRemesa"), "-1").ToString.ToEntero, IfNull(Request("CveUsuarioRemesa"), "-1").ToString.ToEntero, FechaICaptura, FechaFCaptura, IfNull(Request("FechaCaptura"), "-1").ToString,
SubProyectos, DdlTipoDocto.SelectedValue, UsuarioActual.CveEmpresa,
RblTipoCambio.SelectedValue.ToEntero, TCEspecifico, TipoGasto, CveUsuarioConsulta:=UsuarioActual.CveUsuario, CveProyecto:=DdlProyecto.SelectedValue.ToEntero, CveTipoProveedor:=DdlTipoProveedor.SelectedValue.ToEntero) Then
GvDatos.DataSource = ObjCompras.DtResultados
DtDatos = ObjCompras.DtResultados
Else
GvDatos.DataSource = Nothing
End If
ObjCompras.Dispose()
GvDatos.DataBind()
If Request("NumeroRemesa").ToEntero > 0 AndAlso UsuarioActual.CveEmpresa = 66 Then '66 = GLUYAS
LiImprimir.Visible = True
NumeroRemesa = Request("NumeroRemesa")
End If
Agrupador = DdlGrupo.SelectedItem.Text
End Sub
#End Region
#Region "SELECTED INDEX CHANGE"
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlProyecto.SelectedIndexChanged
CargaSubProyecto()
End Sub
Private Sub RblTipoCambio_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RblTipoCambio.SelectedIndexChanged
If RblTipoCambio.SelectedValue.ToEntero = 3 Then
Dim TipoCambio As Double
LiEspecifico.Visible = True
TipoCambio = GlobalTipoCambio(Now)
TxtEspecifico.Text = TipoCambio.ToString
Else
LiEspecifico.Visible = False
End If
UpBodyTipoCambio.Update()
End Sub
#End Region
#Region "CONSULTAR"
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
CargaDatos()
UPDatos.Update()
End Sub
#End Region
#Region "GRIDVIEW"
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
If e.Row.RowType = DataControlRowType.DataRow Then
If Not e.Row.DBCampo("CveCompra").ToEntero > 0 Then
e.Row.CssClass = "Totales"
e.Row.FCLiteral("LtlFecha").Text = e.Row.DBCampo("GPO")
e.Row.FCHyperLink("HplSerieFolio").Text = ""
End If
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Left
e.Row.Cells(3).HorizontalAlign = HorizontalAlign.Right
e.Row.Cells(4).HorizontalAlign = HorizontalAlign.Right
e.Row.Cells(5).HorizontalAlign = HorizontalAlign.Right
e.Row.Cells(6).HorizontalAlign = HorizontalAlign.Right
e.Row.Cells(9).HorizontalAlign = HorizontalAlign.Right
End If
End Sub
#End Region
#Region " IMPRIMIR "
Protected Sub Lnkimprimir_Click(sender As Object, e As EventArgs) Handles Lnkimprimir.Click
Dim Elaboro As String = ""
If Request("CveUsuarioRemesa").ToString <> "-1" AndAlso NumeroRemesa.ToEntero > 0 Then
Dim dtElaboro = GlobalDTUsuarios(Request("CveUsuarioRemesa").ToString.ToEntero, UsuarioActual.CveEmpresa)
If dtElaboro.Rows.Count > 0 Then Elaboro = dtElaboro(0)("Nombre").ToString
End If
Dim params As New List(Of ReportParameter)
params.Add(New ReportParameter("Numero", NumeroRemesa))
params.Add(New ReportParameter("Anio", DtDatos.FiltraParametros("CveCompra > 0").MAX("Fecha").ToDate.Year.ToString))
params.Add(New ReportParameter("Nombre", DtDatos.MAX("SubProyecto")))
params.Add(New ReportParameter("Fecha", Now.Date.ToString))
params.Add(New ReportParameter("Elaboro", Elaboro))
params.Add(New ReportParameter("Autorizo", ""))
params.Add(New ReportParameter("ElaboroPuesto", ""))
params.Add(New ReportParameter("AutorizoPuesto", ""))
ImprimirPDF(String.Format("{0}Formatos\Remesa.rdlc", UsuarioActual.Empresa.Ruta), DtDatos.FiltraParametros("CveCompra > 0"), params, "Remesa", RDSName:="DsCompras")
End Sub
Protected Sub LnkExportar_Click(sender As Object, e As EventArgs) Handles LnkExportar.Click
'GvDatos.ExportToExcel("ReporteComprasDetalles" & Now.ToShortDateString)
GenerarPDF("EXCEL")
End Sub
Protected Sub LnkPdf_Click(sender As Object, e As EventArgs)
GenerarPDF("PDF")
End Sub
Private Sub GenerarPDF(Opcion As String)
Dim FechaI = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", "-1", txtFechaI.Text)
Dim FechaF = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", "-1", txtFechaF.Text)
Dim Proveedor = If(DdlProveedores.SelectedValue = "-1", "", $"&emsp;<b>Proveedor:</b> {DdlProveedores.SelectedText}")
Dim Capturo = If(DDlUsuarioCaptura.SelectedValue = "-1", "", $"&emsp;<b>Capturó:</b> {DDlUsuarioCaptura.SelectedItem.Text}")
Dim Grupo = 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 Proyecto = If(DdlProyecto.SelectedValue = "-1", "", $"&emsp;<b>Proyecto:</b> {DdlProyecto.SelectedItem.Text}")
Dim SubProyecto = If(DdlSubProyecto.GetSelectedText = "", "", $"&emsp;<b>SubProyecto:</b> {DdlSubProyecto.GetSelectedText}")
Dim TipoGasto = If(DdlTipoGasto.GetSelectedText = "", "", $"&emsp;<b>Tipo Gasto:</b> {DdlTipoGasto.GetSelectedText}")
Dim TipoProveedor = If(DdlTipoProveedor.SelectedValue = "-1", "", $"&emsp;<b>Tipo de Proveedor:</b> {DdlTipoProveedor.SelectedItem.Text}")
Dim TipoDocto = If(DdlTipoDocto.SelectedValue = "-1", "", $"&emsp;<b>Tipo de Documento:</b> {DdlTipoDocto.SelectedItem.Text}")
Dim FechaIF, FechaFF As String
FechaIF = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.Trim(), "-1")
FechaFF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.Trim(), "-1")
Dim FechaICapturaF, FechaFCapturaF As String
FechaICapturaF = If(IsDate(TxtFechaICaptura.Text.Trim()), TxtFechaICaptura.Text.Trim(), "-1")
FechaFCapturaF = If(IsDate(TxtFechaFCaptura.Text.Trim()), TxtFechaFCaptura.Text.Trim(), "-1")
Dim FechaCIn As String = $"&emsp;<b>Fecha Inicio Captura:</b> {TxtFechaICaptura.Text.Trim()}"
Dim FechaCFn As String = $"&emsp;<b>Fecha Fin Captura:</b> {TxtFechaFCaptura.Text.Trim()}"
If Not IsDate(TxtFechaICaptura.Text.Trim()) Then FechaCIn = ""
If Not IsDate(TxtFechaFCaptura.Text.Trim()) Then FechaCFn = ""
If DtDatos IsNot Nothing AndAlso DtDatos.Rows.Count > 0 Then
For Each Dr As DataRow In DtDatos.Rows
Dr("Fecha") = Dr("Fecha").ToString.ToDate.ToShortDateString
Next
Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png")
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("NombreEmpresa", UsuarioActual.Empresa.Empresa))
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
params.Add(New ReportParameter("FechaImpresion", Now.ToString))
params.Add(New ReportParameter("AgrupadoPor", $"<b>Agrupado Por:</b> {Grupo}{Proveedor}{Capturo}{FechaIn}{FechaFn}{FechaCIn}{FechaCFn}{Proyecto}{SubProyecto}{TipoGasto}{TipoProveedor}{TipoDocto}"))
params.Add(New ReportParameter("LogoPath", If(Imagen.Exists, $"file://{Imagen.FullName}", "")))
ImprimirPDF("Empresas/Grales/Formatos/RepComprasDetalle.rdlc", DtDatos, params, "ReporteComprasDetalles", Opcion)
Else
Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia)
End If
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}"
RegistraScript("$('#DivModalGrafica').modal('show')")
CambioGrafica()
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()
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
For Each Dr As DataRow In DtDatos.Rows
If Not Dr("CveCompra").ToString.ToEntero > 0 Then
Dim Row As DataRow = Nothing
Row = Dt.NewRow()
Row("Texto") = $"{Dr("GPO").ToString} {GlobalDTMonedas().FiltraParametros($"CveMoneda = {CveMoneda}").Rows(0)("Abreviatura").ToString}"
Select Case DdlVer.SelectedValue.ToEntero
Case 1
Row("Valor") = Dr("Total").ToString.FormatoNumero
Case 2
Row("Valor") = Dr("SubTotal").ToString.FormatoNumero
Case 3
Row("Valor") = Dr("IVA").ToString.FormatoNumero
End Select
Row("Color") = DtColor.Rows(RowColorIndex)("Color").ToString
Row("Moneda") = GlobalDTMonedas().FiltraParametros($"CveMoneda = {CveMoneda}").Rows(0)("Moneda").ToString
Dt.Rows.Add(Row)
RowColorIndex += 1
If RowColorIndex = 17 Then
RowColorIndex = 0
End If
End If
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
UPModalProd.Update()
End Sub
Protected Sub DdlGrafica_SelectedIndexChanged(sender As Object, e As EventArgs)
CambioGrafica()
End Sub
Protected Sub DdlVer_SelectedIndexChanged(sender As Object, e As EventArgs)
CambioGrafica()
End Sub
#End Region
Protected Sub BtnPersonalizar_Click(sender As Object, e As System.EventArgs) Handles BtnPersonalizar.Click
GvDatos.Columns(2).Visible = ChkFolio.Checked
GvDatos.Columns(5).Visible = ChkIVA.Checked
GvDatos.Columns(6).Visible = ChkIEPS.Checked
GvDatos.Columns(7).Visible = ChkDesc.Checked
GvDatos.Columns(8).Visible = ChkRetIVA.Checked
GvDatos.Columns(9).Visible = ChkRetISR.Checked
GvDatos.Columns(10).Visible = ChkTotal.Checked
GvDatos.Columns(11).Visible = ChkAbre.Checked
GvDatos.Columns(12).Visible = ChkRazon.Checked
GvDatos.Columns(13).Visible = ChkFolioInv.Checked
GvDatos.Columns(14).Visible = ChkFecha.Checked
GvDatos.Columns(15).Visible = ChkObs.Checked
GvDatos.Columns(16).Visible = ChkDescripcion.Checked
UPDatos.Update()
End Sub
End Class