diff --git a/Compras/RepComprasDetalle.aspx.vb b/Compras/RepComprasDetalle.aspx.vb index e7a5e5439..c9bde5d9c 100644 --- a/Compras/RepComprasDetalle.aspx.vb +++ b/Compras/RepComprasDetalle.aspx.vb @@ -1,601 +1,601 @@ -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") - - - 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, IfNull(Request("AnioMes"), "-1").ToString(), 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(7).HorizontalAlign = HorizontalAlign.Left - e.Row.Cells(8).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 - - 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", "", $" Proveedor: {DdlProveedores.SelectedText}") - Dim Capturo = If(DDlUsuarioCaptura.SelectedValue = "-1", "", $" Capturó: {DDlUsuarioCaptura.SelectedItem.Text}") - Dim 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 Proyecto = If(DdlProyecto.SelectedValue = "-1", "", $" Proyecto: {DdlProyecto.SelectedItem.Text}") - Dim SubProyecto = If(DdlSubProyecto.GetSelectedText = "", "", $" SubProyecto: {DdlSubProyecto.GetSelectedText}") - Dim TipoGasto = If(DdlTipoGasto.GetSelectedText = "", "", $" Tipo Gasto: {DdlTipoGasto.GetSelectedText}") - Dim TipoProveedor = If(DdlTipoProveedor.SelectedValue = "-1", "", $" Tipo de Proveedor: {DdlTipoProveedor.SelectedItem.Text}") - Dim TipoDocto = If(DdlTipoDocto.SelectedValue = "-1", "", $" Tipo de Documento: {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 = $" Fecha Inicio Captura: {TxtFechaICaptura.Text.Trim()}" - Dim FechaCFn As String = $" Fecha Fin Captura: {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(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("NombreEmpresa", UsuarioActual.Empresa.Empresa)) - params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) - params.Add(New ReportParameter("FechaImpresion", Now.ToString)) - params.Add(New ReportParameter("AgrupadoPor", $"Agrupado Por: {Grupo}{Proveedor}{Capturo}{FechaIn}{FechaFn}{FechaCIn}{FechaCFn}{Proyecto}{SubProyecto}{TipoGasto}{TipoProveedor}{TipoDocto}")) - If Imagen.Exists Then - params.Add(New ReportParameter("LogoPath", logouri)) - Else - params.Add(New ReportParameter("LogoPath", "")) - End If - 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() +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 -#End Region +#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") + + + 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, IfNull(Request("AnioMes"), "-1").ToString(), 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(7).HorizontalAlign = HorizontalAlign.Left + e.Row.Cells(8).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 + + 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", "", $" Proveedor: {DdlProveedores.SelectedText}") + Dim Capturo = If(DDlUsuarioCaptura.SelectedValue = "-1", "", $" Capturó: {DDlUsuarioCaptura.SelectedItem.Text}") + Dim 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 Proyecto = If(DdlProyecto.SelectedValue = "-1", "", $" Proyecto: {DdlProyecto.SelectedItem.Text}") + Dim SubProyecto = If(DdlSubProyecto.GetSelectedText = "", "", $" SubProyecto: {DdlSubProyecto.GetSelectedText}") + Dim TipoGasto = If(DdlTipoGasto.GetSelectedText = "", "", $" Tipo Gasto: {DdlTipoGasto.GetSelectedText}") + Dim TipoProveedor = If(DdlTipoProveedor.SelectedValue = "-1", "", $" Tipo de Proveedor: {DdlTipoProveedor.SelectedItem.Text}") + Dim TipoDocto = If(DdlTipoDocto.SelectedValue = "-1", "", $" Tipo de Documento: {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 = $" Fecha Inicio Captura: {TxtFechaICaptura.Text.Trim()}" + Dim FechaCFn As String = $" Fecha Fin Captura: {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(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("NombreEmpresa", UsuarioActual.Empresa.Empresa)) + params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) + params.Add(New ReportParameter("FechaImpresion", Now.ToString)) + params.Add(New ReportParameter("AgrupadoPor", $"Agrupado Por: {Grupo}{Proveedor}{Capturo}{FechaIn}{FechaFn}{FechaCIn}{FechaCFn}{Proyecto}{SubProyecto}{TipoGasto}{TipoProveedor}{TipoDocto}")) + If Imagen.Exists Then + params.Add(New ReportParameter("LogoPath", logouri)) + Else + params.Add(New ReportParameter("LogoPath", "")) + End If + 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(4).Visible = ChkIVA.Checked @@ -605,13 +605,13 @@ Partial Class Compras_RepComprasDetalle GvDatos.Columns(8).Visible = ChkAbre.Checked GvDatos.Columns(9).Visible = ChkRazon.Checked GvDatos.Columns(10).Visible = ChkFolio.Checked - GvDatos.Columns(11).Visible = ChkFecha.Checked + GvDatos.Columns(11).Visible = ChkFecha.Checked GvDatos.Columns(12).Visible = ChkObs.Checked - GvDatos.Columns(13).Visible = ChkDescripcion.Checked - UPDatos.Update() + GvDatos.Columns(13).Visible = ChkDescripcion.Checked + UPDatos.Update() End Sub -End Class - +End Class +