Option Explicit On Option Strict On Imports System.Data Imports System.IO Imports Extensiones Imports Microsoft.Reporting.WebForms Partial Class Ventas_RepRecuperacion Inherits ClsPaginas #Region "P R O P I E D A D E S" 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 TCEspecifico As Double #End Region Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not IsPostBack Then CargaCombos() CargaDatos() End If End Sub Private Sub CargaCombos() 'CARGA PROVEEDORES DdlProveedores.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa) DdlProveedores.DataBind() 'CargaSubProyectos DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1) DdlSubProyecto.DataBind() 'CargaUsuarios DdlUsuario.DataSource = GlobalDTUsuarios.FiltraParametros("CveEmpresa = " & UsuarioActual.CveEmpresa) DdlUsuario.DataBind() 'CargaResponsable DdlResponsable.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa) DdlResponsable.DataBind() 'CargaBancos' DdlBanco.DataSource = GlobalDTBancos().FiltraParametros($"CveEmpresa = {UsuarioActual.CveEmpresa}") DdlBanco.Items.Insert(0, New ListItem("Todos", "-1")) DdlBanco.DataBind() txtFechaI.Text = $"01/{Now.Month}/{Now.Year}" txtFechaF.Text = Now.ToShortDateString End Sub Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click CargaDatos() UPDatos.Update() End Sub Private Sub CargaDatos() Dim ObjMovtos As New ClsMovimientos() If RblTipoCambio.SelectedValue.ToEntero = 3 And TxtEspecifico.Text <> "" Then TCEspecifico = TxtEspecifico.Text.ToDouble Else TCEspecifico = -1 End If If ObjMovtos.GetRepCobrado(txtFechaI.Text.ToDate, txtFechaF.Text.ToDate, DdlProveedores.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, DdlUsuario.SelectedValue.ToEntero, "-1", UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero, DdlResponsable.SelectedValue.ToEntero, EstatusProveedor:=DdlEstatusProveedor.SelectedValue.ToEntero, CveUsuarioConsulta:=UsuarioActual.CveUsuario) Then GvDatos.DataSource = ObjMovtos.DtResultados DtDatos = ObjMovtos.DtResultados Else GvDatos.DataSource = Nothing End If ObjMovtos.Dispose() GvDatos.DataBind() End Sub Private Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvDatos.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then Dim Css As String = "Texto" Dim FechaI, FechaF As String Dim CveProveedorSucursal As Integer = -1 FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.Trim(), "-1") FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.Trim(), "-1") If e.Row.DBCampo("Orden") = "" Then e.Row.CssClass = "Totales" End If If DdlGrupo.SelectedValue = "5" Then CveProveedorSucursal = e.Row.DBCampo("CveProveedorSucursal").ToString.ToEntero If e.Row.DBCampo("CveProveedor").ToString.ToEntero <= 0 Then ' cuando es el total general. CveProveedorSucursal = -1 End If End If Dim Liga4 As String = String.Format("/Bancos/RepCobradoDetalle.aspx?GPO={0}&CveProveedor={1}&CveSubProyecto={2}&CveUsuario={3}&IVA={4}&FechaI={5}&FechaF={6}&CveResponsable={7}&CveProveedorSucursal={8}&CveBanco{9}&CveCuenta{10}&Grupo={11}", DdlGrupo.SelectedValue, e.Row.DBCampo("CveProveedor"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("GPO_IVA"), FechaI, FechaF, DdlResponsable.SelectedValue, CveProveedorSucursal, e.Row.DBCampo("CveBanco"), e.Row.DBCampo("CveCuenta"), e.Row.DBCampo("GPO")) e.Row.FCHyperLink("HplSaldo").NavigateUrl = Liga4 End If End Sub Protected Sub DdlBanco_SelectedIndexChanged(sender As Object, e As EventArgs) DdlCuentaBancaria.Items.Clear() If DdlBanco.SelectedValue.ToEntero > 0 Then DdlCuentaBancaria.DataSource = GlobalDTBancosCuentas(-1, CveEmpresa:=UsuarioActual.CveEmpresa).FiltraParametros($"CveBanco = {DdlBanco.SelectedValue.ToEntero}") End If DdlCuentaBancaria.Items.Insert(0, New ListItem("Todos", "-1")) DdlCuentaBancaria.DataBind() End Sub Protected Sub LnkPdf_Click(sender As Object, e As EventArgs) Imprimir("PDF") End Sub Protected Sub ImgExcel_Click(sender As Object, e As EventArgs) Imprimir("EXCEL") End Sub Public Sub Imprimir(Formato As String) Dim StrFiltro As New StringBuilder If txtFechaI.Text <> "" Then StrFiltro.AppendFormat(" Fecha Inicio : {0}", txtFechaI.Text.ToDate.ToShortDateString) If txtFechaF.Text <> "" Then StrFiltro.AppendFormat(" Fecha Fin : {0}", txtFechaF.Text.ToDate.ToShortDateString) If DdlSubProyecto.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Sucursal: {0}", DdlSubProyecto.SelectedItem.Text) If DdlGrupo.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Grupo: {0}", DdlGrupo.SelectedItem.Text) If DdlProveedores.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Proveedor: {0}", DdlProveedores.SelectedItem.Text) If DdlUsuario.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Registro: {0}", DdlUsuario.SelectedItem.Text) If DdlResponsable.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Responsable: {0}", DdlResponsable.SelectedItem.Text) If DdlEstatusProveedor.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Estatus Proveedor: {0}", DdlEstatusProveedor.SelectedItem.Text) If DdlBanco.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Banco: {0}", DdlBanco.SelectedItem.Text) If DdlCuentaBancaria.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Cuenta Bancaria: {0}", DdlCuentaBancaria.SelectedItem.Text) Dim RutaPDF As String Dim Ruta As String = UsuarioActual.Empresa.Ruta RutaPDF = $"{Ruta}\Formatos\RepRecuperacion.rdlc" If Not File.Exists(RutaPDF) Then RutaPDF = "Empresas/Grales/Formatos/RepRecuperacion.rdlc" End If Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta)) Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa) Dim params As New List(Of ReportParameter) params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString)) params.Add(New ReportParameter("Filtros", StrFiltro.ToString)) If Imagen.Exists Then params.Add(New ReportParameter("LogoPath", logouri)) Else params.Add(New ReportParameter("LogoPath", "")) End If ImprimirPDF(RutaPDF, DtDatos, params, "RepRecuperacion" & Now.ToString("yyyyMMddhhmmss"), Formato) End Sub End Class