1399 lines
54 KiB
VB.net
1399 lines
54 KiB
VB.net
|
|
Option Explicit On
|
|
Option Strict On
|
|
|
|
|
|
Imports System.Data
|
|
Imports Extensiones
|
|
Imports Microsoft.Reporting.WebForms
|
|
Imports GemBox.Spreadsheet
|
|
Imports System.IO
|
|
|
|
Partial Class RepCxCDetalle
|
|
Inherits ClsPaginas
|
|
|
|
'pRivate ReadOnly Property ColumnasVisibles As
|
|
|
|
#Region "PROPIEDADES"
|
|
Public Property Anio() As Integer
|
|
Get
|
|
Return ViewState("Anio").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("Anio") = value
|
|
End Set
|
|
End Property
|
|
Public Property Mes() As Integer
|
|
Get
|
|
Return ViewState("Mes").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("Mes") = value
|
|
End Set
|
|
End Property
|
|
Public Property AnioMes() As String
|
|
Get
|
|
Return ViewState("AnioMes").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("AnioMes") = value
|
|
End Set
|
|
End Property
|
|
Public Property Fecha() As String
|
|
Get
|
|
Return ViewState("Fecha").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("Fecha") = value
|
|
End Set
|
|
End Property
|
|
Public Property FechaVI() As String
|
|
Get
|
|
Return ViewState("FechaVInicio").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("FechaVInicio") = value
|
|
End Set
|
|
End Property
|
|
Public Property FechaVF() As String
|
|
Get
|
|
Return ViewState("FechaVFin").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("FechaVFin") = value
|
|
End Set
|
|
End Property
|
|
Public Property FechaI() As String
|
|
Get
|
|
Return ViewState("FechaInicio").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("FechaInicio") = value
|
|
End Set
|
|
End Property
|
|
Public Property FechaF() As String
|
|
Get
|
|
Return ViewState("FechaFin").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("FechaFin") = value
|
|
End Set
|
|
End Property
|
|
Public Property FechaCorte() As String
|
|
Get
|
|
Return ViewState("FechaCorte").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("FechaCorte") = value
|
|
End Set
|
|
End Property
|
|
Public Property Iva() As String
|
|
Get
|
|
Return ViewState("IVA").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("IVA") = value
|
|
End Set
|
|
End Property
|
|
Public Property Agrupador() As Integer
|
|
Get
|
|
Return ViewState("Agrupador").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("Agrupador") = value
|
|
End Set
|
|
End Property
|
|
Public Property Opcion() As String
|
|
Get
|
|
Return ViewState("Opcion").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("Opcion") = value
|
|
End Set
|
|
End Property
|
|
Public Property TipoDocto() As String
|
|
Get
|
|
Return ViewState("TipoDocto").ToString
|
|
End Get
|
|
Set(value As String)
|
|
ViewState("TipoDocto") = value
|
|
End Set
|
|
End Property
|
|
Public Property TipoCambio() As Integer
|
|
Get
|
|
Return ViewState("TipoCambio").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("TipoCambio") = value
|
|
End Set
|
|
End Property
|
|
Public Property TCEspecifico() As Double
|
|
Get
|
|
Return ViewState("TCEspecifico").ToString.ToDouble
|
|
End Get
|
|
Set(value As Double)
|
|
ViewState("TCEspecifico") = value
|
|
End Set
|
|
End Property
|
|
Public Property SePersonalizo() As Integer
|
|
Get
|
|
Return ViewState("SePersonalizo").ToString.ToEntero
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("SePersonalizo") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveClienteSucursal As Integer
|
|
Get
|
|
If ViewState("CveClienteSucursal") Is Nothing Then
|
|
Return -1
|
|
Else
|
|
Return DirectCast(ViewState("CveClienteSucursal"), Integer)
|
|
End If
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveClienteSucursal") = value
|
|
End Set
|
|
End Property
|
|
Private Property CveCobranzaEstatus As Integer
|
|
Get
|
|
If ViewState("CveCobranzaEstatus") Is Nothing Then
|
|
Return -1
|
|
Else
|
|
Return DirectCast(ViewState("CveCobranzaEstatus"), Integer)
|
|
End If
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveCobranzaEstatus") = value
|
|
End Set
|
|
End Property
|
|
Private Property LimiteCredito As Decimal
|
|
Get
|
|
If ViewState("LimiteCredito") Is Nothing Then
|
|
Return -1
|
|
Else
|
|
Return DirectCast(ViewState("LimiteCredito"), Decimal)
|
|
End If
|
|
End Get
|
|
Set(value As Decimal)
|
|
ViewState("LimiteCredito") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property TipoCliente As Integer
|
|
Get
|
|
If ViewState("TipoCliente") Is Nothing Then
|
|
Return -1
|
|
Else
|
|
Return DirectCast(ViewState("TipoCliente"), Integer)
|
|
End If
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("TipoCliente") = value
|
|
End Set
|
|
End Property
|
|
|
|
|
|
Private Property CveMoneda As Integer
|
|
Get
|
|
If ViewState("CveMoneda") Is Nothing Then
|
|
Return -1
|
|
Else
|
|
Return DirectCast(ViewState("CveMoneda"), Integer)
|
|
End If
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveMoneda") = value
|
|
End Set
|
|
End Property
|
|
|
|
Private Property EstatusCliente As Integer
|
|
Get
|
|
If ViewState("EstatusCliente") Is Nothing Then
|
|
Return -1
|
|
Else
|
|
Return DirectCast(ViewState("EstatusCliente"), Integer)
|
|
End If
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("EstatusCliente") = 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
|
|
ViewState("Opcion") = IfNull(Request("Op"), "-1")
|
|
CargaCombos()
|
|
If Request("Op") IsNot Nothing Then
|
|
CargaDatos()
|
|
End If
|
|
|
|
If UsuarioActual.CveEmpresa = 7 Then
|
|
ChkCuentaContableReferencia.Visible = True
|
|
End If
|
|
CargaAsignarCobranza()
|
|
TxtFechaCobranza.Text = Now.ToShortDateString
|
|
|
|
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
|
DVCartera.Visible = True
|
|
End If
|
|
|
|
End If
|
|
|
|
End Sub
|
|
|
|
#Region "CARGAS"
|
|
Private Sub CargaCombos()
|
|
Dim CveCliente, CveVendedor, CveUsuario, CveSubProyecto,
|
|
CveEstatus, CveResponsable, CveAgrupador, CveClienteClasificacion As Integer
|
|
|
|
txtFechaF.Text = Now.LastDayOfMonth.ToShortDateString
|
|
|
|
If UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
|
|
DdlClientesWS.setEsWebService(True)
|
|
Else
|
|
DdlClientesWS.setEsWebService(False)
|
|
CargaClientes()
|
|
End If
|
|
'DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa, -1)
|
|
'DdlClientes.DataBind()
|
|
|
|
'CargaSubProyectos
|
|
DdlSubProyecto.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, -1, 1)
|
|
DdlSubProyecto.DataBind()
|
|
|
|
'CargaUsuarios
|
|
DdlUsuario.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa)
|
|
DdlUsuario.DataBind()
|
|
|
|
'CargaResponsable
|
|
DdlResponsable.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa)
|
|
DdlResponsable.DataBind()
|
|
|
|
'Tipo Docto
|
|
DdlTipoDocto.Items.Add(New ListItem("Ing X Comp", "IxC"))
|
|
|
|
'Carga Cobranza Estatus
|
|
DdlCobranzaEstatusFiltro.DataSource = GlobalDTVtaCobranzaEstatus(UsuarioActual.CveEmpresa)
|
|
DdlCobranzaEstatusFiltro.DataBind()
|
|
DdlCobranzaEstatusFiltro.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
|
|
'Carga Clasificacion Cliente
|
|
DdlClienteClasificacion.DataSource = GlobalDTClienteClasificaciones(UsuarioActual.CveEmpresa)
|
|
DdlClienteClasificacion.DataBind()
|
|
DdlClienteClasificacion.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
|
|
'Cargamos las fechas
|
|
Anio = If(Request("Anio") IsNot Nothing, Request("Anio").ToString, "-1").ToString.ToEntero
|
|
Mes = If(Request("Mes") IsNot Nothing, Request("Mes").ToString, "-1").ToString.ToEntero
|
|
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
|
|
FechaVI = If(Request("FechaVI") IsNot Nothing, Request("FechaVI").ToString, "-1").ToString
|
|
FechaVF = If(Request("FechaVF") IsNot Nothing, Request("FechaVF").ToString, "-1").ToString
|
|
FechaCorte = IfNull(Request("FechaCorte"), Now.ToDate.ToString).ToString
|
|
CveCobranzaEstatus = If(Request("CveCobranzaEstatus") IsNot Nothing, Request("CveCobranzaEstatus").ToString, "-1").ToString.ToEntero
|
|
CveClienteClasificacion = If(Request("CveClienteClasificacion") IsNot Nothing, Request("CveClienteClasificacion").ToString, "-1").ToString.ToEntero
|
|
LimiteCredito = If(Request("LimiteCredito") IsNot Nothing, Request("LimiteCredito").ToString, "-1").ToString.ToDecimal
|
|
TipoCliente = If(Request("TipoCliente") IsNot Nothing, Request("TipoCliente").ToString, "-1").ToString.ToEntero
|
|
CveMoneda = If(Request("CveMoneda") IsNot Nothing, Request("CveMoneda").ToString, "-1").ToString.ToEntero
|
|
EstatusCliente = If(Request("EstatusCliente") IsNot Nothing, Request("EstatusCliente").ToString, "-1").ToString.ToEntero
|
|
|
|
DdlTipoCliente.SelectedValueExist(TipoCliente)
|
|
DdlEstatusCliente.SelectedValueExist(EstatusCliente)
|
|
|
|
If FechaF <> "-1" Then
|
|
txtFechaF.Text = FechaF
|
|
End If
|
|
If FechaI <> "-1" Then
|
|
txtFechaI.Text = FechaI
|
|
End If
|
|
If FechaVF <> "-1" Then
|
|
txtFechaVF.Text = FechaVF
|
|
End If
|
|
If FechaVI <> "-1" Then
|
|
txtFechaVI.Text = FechaVI
|
|
End If
|
|
If Fecha <> "-1" Then
|
|
txtFechaI.Text = Fecha
|
|
txtFechaF.Text = Fecha
|
|
End If
|
|
|
|
txtCorteA.Text = $"31/12/{Now.Year}"
|
|
|
|
txtFechaI.Text = If(Anio <> -1, String.Format("01/01/{0}", Anio), txtFechaI.Text)
|
|
txtFechaI.Text = If(Mes <> -1, txtFechaI.Text, 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 Request("FechaCorte") <> "-1" AndAlso IsDate(Request("FechaCorte")) Then txtCorteA.Text = Request("FechaCorte")
|
|
|
|
If Anio <> -1 Then
|
|
txtFechaF.Text = String.Format("31/12/{0}", Anio)
|
|
ElseIf Mes <> -1 Then
|
|
'txtFechaF.Text = txtFechaI.Text.ToDate.LastDayOfMonth.ToShortDateString
|
|
ElseIf AnioMes <> "-1" Then
|
|
txtFechaF.Text = txtFechaI.Text.ToDate.LastDayOfMonth.ToShortDateString
|
|
End If
|
|
|
|
|
|
TipoCambio = IfNull(Request("TipoCambio"), -1).ToString.ToEntero
|
|
TCEspecifico = IfNull(Request("TCEspecifico"), -1).ToString.ToDouble
|
|
TipoDocto = IfNull(Request("TipoDocto"), "-1").ToString
|
|
CveClienteSucursal = IfNull(Request("CveClienteSucursal"), "-1").ToString.ToEntero
|
|
CveSubProyecto = IfNull(Request("CveSubProyecto"), "-1").ToString.ToEntero
|
|
CveVendedor = IfNull(Request("Vendedor"), "-1").ToString.ToEntero
|
|
CveCliente = IfNull(Request("CveCliente"), "-1").ToString.ToEntero
|
|
CveUsuario = IfNull(Request("CveUsuario"), "-1").ToString.ToEntero
|
|
CveEstatus = IfNull(Request("CveEstatusFactura"), "-1").ToString.ToEntero
|
|
CveResponsable = IfNull(Request("CveUsuarioResponsable"), "-1").ToString.ToEntero
|
|
CveAgrupador = IfNull(Request("GPO"), "-1").ToString.ToEntero
|
|
Iva = IfNull(Request("IVA"), "-1").ToString
|
|
|
|
DdlSubProyecto.SelectedValueExist(CveSubProyecto)
|
|
|
|
|
|
If Request("AplicaAnticiposPagados") IsNot Nothing Then
|
|
ChkAnticipos.Checked = If(Request("AplicaAnticiposPagados").ToEntero = 1, True, False)
|
|
End If
|
|
|
|
DdlClienteClasificacion.SelectedValueExist(CveClienteClasificacion)
|
|
CargaClientes()
|
|
If CveCliente > 0 Then
|
|
DdlClientesWS.SelectedValue = CveCliente.ToString
|
|
'DdlClientesWS.SelectedText = GlobalDTCliente(UsuarioActual.CveEmpresa, -1).FiltroPrimeroValor("NombreComercial", $"CveCliente = {CveCliente}")
|
|
End If
|
|
'DdlClientes.SelectedValueExist(CveCliente)
|
|
DdlUsuario.SelectedValueExist(CveUsuario)
|
|
DdlResponsable.SelectedValueExist(CveResponsable)
|
|
DdlGrupo.SelectedValueExist(CveAgrupador)
|
|
|
|
'Carga Vendedor
|
|
DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=-1).FiltraParametros("VendedorTipo in (1,4)")
|
|
DdlVendedor.DataBind()
|
|
DdlVendedor.SelectedValueExist(CveVendedor)
|
|
If UsuarioActual.CveVendedor > 0 AndAlso Not UsuarioActual.TienePermisoProceso(263) Then
|
|
DdlVendedor.SelectedValueExist(UsuarioActual.CveVendedor.ToString())
|
|
DdlVendedor.Attributes.Add("disabled", "disabled")
|
|
DdlVendedor.Enabled = False
|
|
End If
|
|
|
|
|
|
'Nuevos
|
|
DdlTipoDocto.SelectedValuesIfExistM(TipoDocto)
|
|
RblTipoCambio.SelectedValue = CType(TipoCambio, String)
|
|
|
|
'13/04/2018 - Carga filtro estatus cobranza
|
|
DdlCobranzaEstatusFiltro.SelectedValueExist(CveCobranzaEstatus.ToString)
|
|
|
|
If RblTipoCambio.SelectedValue.ToEntero = 3 Then
|
|
If TCEspecifico <> -1 Then
|
|
LiEspecifico.Visible = True
|
|
TxtEspecifico.Text = TCEspecifico.ToString
|
|
Else
|
|
Dim TipoCambio As Double
|
|
LiEspecifico.Visible = True
|
|
TipoCambio = GlobalTipoCambio(Now)
|
|
TxtEspecifico.Text = TipoCambio.ToString
|
|
End If
|
|
End If
|
|
|
|
|
|
If CveClienteSucursal > 0 Then
|
|
DdlClientesWS.Attributes.Add("style", "!important width: 60%;")
|
|
DdlClienteSucursal.Visible = True
|
|
DivClientes.Attributes.Remove("class")
|
|
DivClientes.Attributes.Add("class", "col-md-4")
|
|
|
|
Dim ObjCliente As New ClsClientes
|
|
If ObjCliente.GetSucursales(CveCliente) Then
|
|
If ObjCliente.DtResultados.Rows.Count > 0 Then
|
|
DdlClienteSucursal.DataSource = ObjCliente.DtResultados
|
|
End If
|
|
End If
|
|
ObjCliente.Dispose()
|
|
DdlClienteSucursal.DataBind()
|
|
DdlClienteSucursal.Items.Insert(0, New ListItem("Todas", "-1"))
|
|
DdlClienteSucursal.SelectedValueExist(CveClienteSucursal)
|
|
Else
|
|
DdlClientesWS.Attributes.Add("style", "!important width: 100%;")
|
|
End If
|
|
|
|
If UsuarioActual.CveEmpresa.Contiene(72, 80, 146, 119) Then ChkAnticipos.Visible = True
|
|
|
|
DdlTieneLineaAdicional.SelectedValueExist(If(Request("TieneLineaAdicional") IsNot Nothing, Request("TieneLineaAdicional").ToString, "-1").ToString)
|
|
If UsuarioActual.CveEmpresa = 119 Then
|
|
divLineaAdicional1.Visible = True
|
|
divLineaAdicional2.Visible = True
|
|
End If
|
|
|
|
If UsuarioActual.CveEmpresa = 13 Then
|
|
CargaContratos()
|
|
End If
|
|
DdlContrato.SelectedValueExist(If(Request("CveContrato") IsNot Nothing, Request("CveContrato").ToString, "-1").ToString)
|
|
|
|
End Sub
|
|
Private Sub CargaContratos()
|
|
Dim ObjContratos As New ClsContratos
|
|
If ObjContratos.GetContratos(-1, UsuarioActual.CveEmpresa, CveCliente:=-1) Then
|
|
DdlContrato.DataSource = ObjContratos.DtResultados
|
|
End If
|
|
divContrato.Visible = True
|
|
divContrato1.Visible = True
|
|
ObjContratos.Dispose()
|
|
DdlContrato.DataBind()
|
|
|
|
End Sub
|
|
Private Function CargaDatos() As DataSet
|
|
|
|
Dim DSRespuesta As New DataSet
|
|
|
|
Dim DTaDAtos As New DataTable
|
|
Dim DTCartera As New DataTable
|
|
|
|
Dim ObjMovtos As New ClsMovimientos()
|
|
Dim FechaI, FechaF, FechaVI, FechaVF As String
|
|
|
|
If RblTipoCambio.SelectedValue.ToEntero = 3 And TxtEspecifico.Text <> "" Then
|
|
TCEspecifico = TxtEspecifico.Text.ToDouble
|
|
Else
|
|
TCEspecifico = -1
|
|
End If
|
|
|
|
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")
|
|
|
|
'FechaI, FechaF, -1, UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero
|
|
Dim CveCliente = If(DdlClientesWS.SelectedValue.ToEntero > 0, DdlClientesWS.SelectedValue.ToEntero, -1)
|
|
If ObjMovtos.GetCxCDetalle(FechaI, FechaF, CveCliente, DdlSubProyecto.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, DdlUsuario.SelectedValue.ToEntero,
|
|
Anio, Mes, AnioMes, Fecha, CveClienteSucursal, Opcion, -1,
|
|
Iva.ToString, DdlGrupo.SelectedValue.ToEntero, UsuarioActual.CveEmpresa, DdlResponsable.SelectedValue.ToEntero,
|
|
RblTipoCambio.SelectedValue.ToEntero, TCEspecifico, If(DdlTipoDocto.GetSelectedValuesM = "", "-1", DdlTipoDocto.GetSelectedValuesM), FechaVI, FechaVF,
|
|
FechaCorte:=txtCorteA.Text.ToDate, CveUsuarioConsulta:=UsuarioActual.CveUsuario, CveCobranzaEstatus:=DdlCobranzaEstatusFiltro.SelectedValue.ToEntero,
|
|
CveClienteClasificacion:=DdlClienteClasificacion.SelectedValue.ToEntero, LimiteCredito:=LimiteCredito, TipoCliente:=DdlTipoCliente.SelectedValue.ToEntero,
|
|
CveMoneda:=CveMoneda, EstatusCliente:=DdlEstatusCliente.SelectedValue.ToEntero, AplicaAnticiposPagados:=If(ChkAnticipos.Checked, 1, 0), TieneLineaAdicional:=DdlTieneLineaAdicional.SelectedValue.ToEntero()) Then
|
|
|
|
GvDatos.DataSource = ObjMovtos.DSResultados.Tables(0)
|
|
|
|
'DTaDAtos = ObjMovtos.DSResultados.Tables(0)
|
|
'DTaDAtos.TableName = "DTaDAtos"
|
|
DSRespuesta.Tables.Add(ObjMovtos.DSResultados.Tables(0).Copy)
|
|
|
|
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
|
|
|
GvCartera.DataSource = ObjMovtos.DSResultados.Tables(1)
|
|
|
|
'DTCartera = ObjMovtos.DSResultados.Tables(1)
|
|
'DTCartera.TableName = "DTCartera"
|
|
DSRespuesta.Tables.Add(ObjMovtos.DSResultados.Tables(1).Copy)
|
|
|
|
End If
|
|
|
|
|
|
Else
|
|
GvDatos.DataSource = Nothing
|
|
End If
|
|
|
|
ObjMovtos.Dispose()
|
|
GvDatos.DataBind()
|
|
|
|
|
|
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
|
GvCartera.DataBind()
|
|
End If
|
|
|
|
|
|
UPDatos.Update()
|
|
UpCartera.Update()
|
|
|
|
Return DSRespuesta
|
|
|
|
End Function
|
|
|
|
Private Sub ConfiguraEmpresa()
|
|
'Dim ObjEmpresa As New ClsEmpresas()
|
|
'If ObjEmpresa.GetEmpresas(UsuarioActual.CveEmpresa, "-1", "-1", "-1", "-1") Then
|
|
If Not UsuarioActual.Empresa.MostrarRetIVA Then GvDatos.Columns(7).Visible = False
|
|
If Not UsuarioActual.Empresa.MostrarRetISR Then GvDatos.Columns(8).Visible = False
|
|
'End If
|
|
'ObjEmpresa.Dispose()
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "CONSULTAR"
|
|
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
|
|
CargaDatos()
|
|
ConfiguraEmpresa()
|
|
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 e.Row.RowIndex = 0 Then
|
|
e.Row.Cells(1).Width = Unit.Pixel(70)
|
|
e.Row.Cells(2).Width = Unit.Pixel(75)
|
|
End If
|
|
e.Row.FCHyperLink("HlFolio").Text = e.Row.DBCampo("SerieFolio")
|
|
|
|
If e.Row.DBCampo("CveVenta").ToEntero() > 0 Then
|
|
If e.Row.DBCampo("TipoDocto") = "IxC" Then
|
|
e.Row.FCHyperLink("HlFolio").NavigateUrl = String.Format("/Bancos/IE.aspx?CveIE={0}", e.Row.DBCampo("CveVenta"))
|
|
Else
|
|
e.Row.FCHyperLink("HlFolio").NavigateUrl = String.Format("/Ventas/Ventas.aspx?CveVenta={0}", e.Row.DBCampo("CveVenta"))
|
|
End If
|
|
End If
|
|
|
|
If e.Row.DBCampo("SubProyecto") = "" And e.Row.DBCampo("CveMoneda") = "1" Then
|
|
e.Row.Cells(11).Text = "Total Pesos"
|
|
e.Row.CssClass = "Totales"
|
|
e.Row.FCCheckBox("ChkCobranza").Visible = False
|
|
e.Row.Cells(39).Text = ""
|
|
e.Row.Cells(21).Text = ""
|
|
e.Row.Cells(28).Text = ""
|
|
ElseIf e.Row.DBCampo("SubProyecto") = "" And e.Row.DBCampo("CveMoneda") = "2" Then
|
|
e.Row.Cells(12).Text = "Total Dólares"
|
|
e.Row.CssClass = "Totales"
|
|
e.Row.FCCheckBox("ChkCobranza").Visible = False
|
|
e.Row.Cells(39).Text = ""
|
|
e.Row.Cells(21).Text = ""
|
|
e.Row.Cells(28).Text = ""
|
|
ElseIf e.Row.DBCampo("CveVenta") = "" Then
|
|
e.Row.CssClass = "SubTotales"
|
|
e.Row.FCCheckBox("ChkCobranza").Visible = False
|
|
e.Row.Cells(39).Text = ""
|
|
e.Row.Cells(21).Text = ""
|
|
e.Row.Cells(28).Text = ""
|
|
End If
|
|
|
|
End If
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "PERSONALIZAR COLUMNAS"
|
|
|
|
Protected Sub BtnPersonalizar_Click(sender As Object, e As EventArgs) Handles BtnPersonalizar.Click
|
|
|
|
If ChkFecha.Checked Then
|
|
GvDatos.Columns(1).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(1).Visible = False
|
|
End If
|
|
|
|
If ChkFolio.Checked Then
|
|
GvDatos.Columns(2).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(2).Visible = False
|
|
End If
|
|
|
|
If ChkTotal.Checked Then
|
|
GvDatos.Columns(9).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(9).Visible = False
|
|
End If
|
|
|
|
If ChkSubTotal.Checked Then
|
|
GvDatos.Columns(3).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(3).Visible = False
|
|
End If
|
|
|
|
If ChkIVA.Checked Then
|
|
GvDatos.Columns(6).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(6).Visible = False
|
|
End If
|
|
|
|
If ChkDescuento.Checked Then
|
|
GvDatos.Columns(4).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(4).Visible = False
|
|
End If
|
|
|
|
If ChkAmortizacion.Checked Then
|
|
GvDatos.Columns(5).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(5).Visible = False
|
|
End If
|
|
|
|
If ChkRetIVA.Checked Then
|
|
GvDatos.Columns(7).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(7).Visible = False
|
|
End If
|
|
|
|
If ChkRetISR.Checked Then
|
|
GvDatos.Columns(9).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(9).Visible = False
|
|
End If
|
|
|
|
If ChkMoneda.Checked Then
|
|
GvDatos.Columns(10).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(10).Visible = False
|
|
End If
|
|
|
|
If ChkSucursal.Checked Then
|
|
GvDatos.Columns(11).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(11).Visible = False
|
|
End If
|
|
|
|
If ChkCodigo.Checked Then
|
|
GvDatos.Columns(15).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(15).Visible = False
|
|
End If
|
|
|
|
If ChkCliente.Checked Then
|
|
GvDatos.Columns(16).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(16).Visible = False
|
|
End If
|
|
|
|
If ChkSucursalCliente.Checked Then
|
|
GvDatos.Columns(17).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(17).Visible = False
|
|
End If
|
|
|
|
If ChkVendedor.Checked Then
|
|
GvDatos.Columns(18).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(18).Visible = False
|
|
End If
|
|
|
|
If ChlMotivoDescuento.Checked Then
|
|
GvDatos.Columns(19).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(19).Visible = False
|
|
End If
|
|
|
|
If ChkEstatusFactura.Checked Then
|
|
GvDatos.Columns(20).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(20).Visible = False
|
|
End If
|
|
|
|
If ChkSeTimbro.Checked Then
|
|
GvDatos.Columns(21).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(21).Visible = False
|
|
End If
|
|
|
|
If ChkCuentaContableReferencia.Checked Then
|
|
GvDatos.Columns(22).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(22).Visible = False
|
|
End If
|
|
|
|
|
|
If ChkCuentaContable.Checked Then
|
|
GvDatos.Columns(23).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(23).Visible = False
|
|
End If
|
|
|
|
If ChkUsuario.Checked Then
|
|
GvDatos.Columns(24).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(24).Visible = False
|
|
End If
|
|
|
|
If ChkMotivoCancelacion.Checked Then
|
|
GvDatos.Columns(25).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(25).Visible = False
|
|
End If
|
|
|
|
If ChkObservaciones.Checked Then
|
|
GvDatos.Columns(26).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(26).Visible = False
|
|
End If
|
|
|
|
If ChkSucursalEjecucion.Checked Then
|
|
GvDatos.Columns(27).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(27).Visible = False
|
|
End If
|
|
|
|
If ChkTelefono.Checked Then
|
|
GvDatos.Columns(28).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(28).Visible = False
|
|
End If
|
|
|
|
If ChkMail.Checked Then
|
|
GvDatos.Columns(29).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(29).Visible = False
|
|
End If
|
|
|
|
If ChkLimiteCredito.Checked Then
|
|
GvDatos.Columns(30).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(30).Visible = False
|
|
End If
|
|
|
|
If ChkSucursalCobranza.Checked Then
|
|
GvDatos.Columns(31).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(31).Visible = False
|
|
End If
|
|
|
|
If ChkEstatusCobranza.Checked Then
|
|
GvDatos.Columns(33).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(33).Visible = False
|
|
End If
|
|
|
|
If ChkTurnoCobranza.Checked Then
|
|
GvDatos.Columns(34).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(34).Visible = False
|
|
End If
|
|
|
|
If ChkObsCobranza.Checked Then
|
|
GvDatos.Columns(35).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(35).Visible = False
|
|
End If
|
|
|
|
|
|
If ChkFechaCobranza.Checked Then
|
|
GvDatos.Columns(36).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(36).Visible = False
|
|
End If
|
|
|
|
If ChkHorario.Checked Then
|
|
GvDatos.Columns(37).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(37).Visible = False
|
|
End If
|
|
|
|
If ChkDiasPago.Checked Then
|
|
GvDatos.Columns(38).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(38).Visible = False
|
|
End If
|
|
|
|
If ChkSeEnvioMail.Checked Then
|
|
GvDatos.Columns(39).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(39).Visible = False
|
|
End If
|
|
|
|
If ChkEstatusCliente.Checked Then
|
|
GvDatos.Columns(40).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(40).Visible = False
|
|
End If
|
|
|
|
If ChkIEPS.Checked Then
|
|
GvDatos.Columns(41).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(41).Visible = False
|
|
End If
|
|
|
|
If ChkDiasTranscurridos.Checked Then
|
|
GvDatos.Columns(42).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(42).Visible = False
|
|
End If
|
|
|
|
If ChkTC.Checked Then
|
|
GvDatos.Columns(43).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(43).Visible = False
|
|
End If
|
|
|
|
If ChkFechaEjecucion.Checked Then
|
|
GvDatos.Columns(44).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(44).Visible = False
|
|
End If
|
|
|
|
If ChkMostrarLineaAdicional.Checked Then
|
|
GvDatos.Columns(45).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(45).Visible = False
|
|
End If
|
|
|
|
If ChkMostrarDescripcionVenta.Checked Then
|
|
GvDatos.Columns(46).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(46).Visible = False
|
|
End If
|
|
|
|
If ChkContrato.Checked Then
|
|
GvDatos.Columns(47).Visible = True
|
|
SePersonalizo = 1
|
|
Else
|
|
GvDatos.Columns(47).Visible = False
|
|
End If
|
|
|
|
|
|
If SePersonalizo = 1 Then
|
|
ImgExcelPersonalizado.Visible = True
|
|
Else
|
|
ImgExcelPersonalizado.Visible = False
|
|
End If
|
|
|
|
|
|
CargaDatos()
|
|
RegistraScript("$('#DivPersonalizar').modal('hide');")
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "IMPRESIONES"
|
|
Protected Sub ImgExcel_Click(sender As Object, e As System.EventArgs) Handles ImgExcel.Click
|
|
GenerarImpresion("EXCEL")
|
|
End Sub
|
|
Private Sub ImgExcelPersonalizado_Click(sender As Object, e As EventArgs) Handles ImgExcelPersonalizado.Click
|
|
|
|
Dim Cliente = If(DdlClientesWS.SelectedValue = "-1", "", $" Cliente: {DdlClientesWS.SelectedText}")
|
|
Dim Sucursal = If(DdlSubProyecto.SelectedValue = "-1", "", $" Sucursal: {DdlSubProyecto.SelectedItem.Text}")
|
|
Dim Grupo = $" Agrupado Por: {DdlGrupo.SelectedItem.Text}" 'If(DdlGrupo.SelectedValue = "3", "", $" <b>Agrupado Por:</b> {DdlGrupo.SelectedItem.Text}")
|
|
Dim TipoDocto = If(DdlTipoDocto.GetSelectedText = "", "", $" Documentos: {DdlTipoDocto.GetSelectedText}")
|
|
Dim Vendedor = If(DdlVendedor.SelectedValue = "-1", "", $" Vendedor: {DdlVendedor.SelectedItem.Text}")
|
|
Dim FechaIn As String = If(txtFechaI.Text = "", "", $" Fecha Inicio Docto: {txtFechaI.Text}")
|
|
Dim FechaFn As String = If(txtFechaF.Text = "", "", $" Fecha Fin Docto: {txtFechaF.Text}")
|
|
Dim FVI As String = If(txtFechaVI.Text = "", "", $" Fecha Venc. Inic.: {txtFechaVI.Text}")
|
|
Dim FVF As String = If(txtFechaVF.Text = "", "", $" Fecha Venc. Final: ;{txtFechaVF.Text}")
|
|
Dim Registro = If(DdlUsuario.SelectedValue = "-1", "", $" Registró: ;{DdlUsuario.SelectedItem.Text}")
|
|
Dim Responsable = If(DdlResponsable.SelectedValue = "-1", "", $" Responsable: ;{DdlResponsable.SelectedItem.Text}")
|
|
Dim EstatusCob = If(DdlCobranzaEstatusFiltro.SelectedValue = "-1", "", $"status Cobranza: ;{DdlCobranzaEstatusFiltro.SelectedItem.Text}")
|
|
Dim CorteA As String = If(txtCorteA.Text = "31/12/2019", "", $"Corte A {txtCorteA.Text}")
|
|
Dim ClasificacionCli = If(DdlClienteClasificacion.SelectedValue = "-1", "", $" Clasificación Cliente: {DdlClienteClasificacion.SelectedItem.Text}")
|
|
|
|
Dim Filtro As String = $"{Cliente}{Sucursal}{Grupo}{Vendedor}{FechaIn}{FechaFn}{Registro}{Responsable}{TipoDocto}{EstatusCob}{FVI}{FVF}{ClasificacionCli}{CorteA}"
|
|
|
|
GvDatos.ExportToExcelGembox("ReporteCxCDetalle", UsuarioActual, "REPORTE DE CUENTAS POR COBRAR DEL CLIENTE CON DETALLE", DatoTituloExtra:=$"", DatosFiltros:=Filtro)
|
|
'GvDatos.ExportToExcelG("ReporteCxCDetalle", "REPORTE DE CUENTAS POR COBRAR DEL CLIENTE CON DETALLE", UsuarioActual, Filtro)
|
|
|
|
'SpreadsheetInfo.SetLicense(SerialGemBoxSpreadsheet())
|
|
|
|
'Dim ef As ExcelFile = New ExcelFile
|
|
'Dim ws As ExcelWorksheet = ef.Worksheets.Add("DataTable to Sheet")
|
|
'Dim dt As DataTable = New DataTable
|
|
'Dim response As HttpResponse = Me.Response
|
|
|
|
''Recorrer columnas
|
|
'For index = 0 To GvDatos.Columns.Count - 1
|
|
' If GvDatos.Columns(index).Visible Then
|
|
' dt.Columns.Add(GvDatos.Columns(index).HeaderText)
|
|
' End If
|
|
'Next
|
|
|
|
''Recorrer filas
|
|
'For Each fila As GridViewRow In GvDatos.Rows
|
|
' Dim dr As DataRow = dt.NewRow()
|
|
|
|
' For index = 0 To GvDatos.Columns.Count - 1
|
|
' If GvDatos.Columns(index).Visible Then
|
|
' If TypeOf GvDatos.Columns(index) Is TemplateField Then
|
|
' If GvDatos.Columns(index).HeaderText = "Folio" Then
|
|
' dr(GvDatos.Columns(index).HeaderText) = fila.FCHyperLink("HlFolio").Text.Replace(" ", "")
|
|
' End If
|
|
' ElseIf TypeOf GvDatos.Columns(index) Is HyperLinkField Then
|
|
' dr(GvDatos.Columns(index).HeaderText) = DirectCast(fila.Cells(index).Controls(0), HyperLink).Text.Replace(" ", "")
|
|
' Else
|
|
' dr(GvDatos.Columns(index).HeaderText) = fila.Cells(index).Text.Replace(" ", "")
|
|
' End If
|
|
' End If
|
|
' Next
|
|
' dt.Rows.Add(dr)
|
|
'Next
|
|
|
|
'' Insert DataTable into an Excel worksheet.
|
|
'ws.InsertDataTable(dt,
|
|
' New InsertDataTableOptions() With
|
|
' {
|
|
' .ColumnHeaders = True,
|
|
' .StartRow = 1
|
|
' })
|
|
|
|
'ef.Save(response, "RepCxC.xlsx")
|
|
|
|
End Sub
|
|
|
|
Private Sub GenerarImpresion(Optional TipoImpresion As String = "PDF")
|
|
'Dim ObjMovtos As New ClsMovimientos()
|
|
Dim FechaI As String = txtFechaI.Text
|
|
Dim FechaF As String = txtFechaF.Text
|
|
If txtFechaI.Text = "" Then FechaI = "-1"
|
|
If txtFechaF.Text = "" Then FechaF = "-1"
|
|
|
|
If RblTipoCambio.SelectedValue.ToEntero = 3 And TxtEspecifico.Text <> "" Then
|
|
TCEspecifico = TxtEspecifico.Text.ToDouble
|
|
Else
|
|
TCEspecifico = -1
|
|
End If
|
|
|
|
Dim Cliente = If(DdlClientesWS.SelectedValue = "-1", "", $" <b>Cliente:</b> {DdlClientesWS.SelectedText}")
|
|
Dim Sucursal = If(DdlSubProyecto.SelectedValue = "-1", "", $" <b>Sucursal:</b> {DdlSubProyecto.SelectedItem.Text}")
|
|
Dim Grupo = $" <b>Agrupado Por:</b> {DdlGrupo.SelectedItem.Text}" 'If(DdlGrupo.SelectedValue = "3", "", $" <b>Agrupado Por:</b> {DdlGrupo.SelectedItem.Text}")
|
|
Dim TipoDocto = If(DdlTipoDocto.GetSelectedText = "", "", $" <b>Documentos:</b> {DdlTipoDocto.GetSelectedText}")
|
|
Dim Vendedor = If(DdlVendedor.SelectedValue = "-1", "", $" <b>Vendedor:</b> {DdlVendedor.SelectedItem.Text}")
|
|
Dim FechaIn As String = If(txtFechaI.Text = "", "", $" <b>Fecha Inicio Docto:</b> {txtFechaI.Text}")
|
|
Dim FechaFn As String = If(txtFechaF.Text = "", "", $" <b>Fecha Fin Docto:</b> {txtFechaF.Text}")
|
|
Dim FVI As String = If(txtFechaVI.Text = "", "", $" <b>Fecha Venc. Inic.:</b> {txtFechaVI.Text}")
|
|
Dim FVF As String = If(txtFechaVF.Text = "", "", $" <b>Fecha Venc. Final:</b> {txtFechaVF.Text}")
|
|
Dim Registro = If(DdlUsuario.SelectedValue = "-1", "", $" <b>Registró:</b> {DdlUsuario.SelectedItem.Text}")
|
|
Dim Responsable = If(DdlResponsable.SelectedValue = "-1", "", $" <b>Responsable:</b> {DdlResponsable.SelectedItem.Text}")
|
|
Dim EstatusCob = If(DdlCobranzaEstatusFiltro.SelectedValue = "-1", "", $" <b>Estatus Cobranza:</b> {DdlCobranzaEstatusFiltro.SelectedItem.Text}")
|
|
Dim CorteA As String = If(txtCorteA.Text = "31/12/2019", "", $" <b>Corte A:</b> {txtCorteA.Text}")
|
|
Dim ClasificacionCli = If(DdlClienteClasificacion.SelectedValue = "-1", "", $" <b>Clasificación Cliente:</b> {DdlClienteClasificacion.SelectedItem.Text}")
|
|
|
|
Dim TituloReporte As String = "REPORTE DE CUENTAS POR COBRAR DEL CLIENTE CON DETALLE"
|
|
'If UsuarioActual.CveEmpresa = 72 Then
|
|
' TituloReporte = "Antigüedad de Saldos de Clientes"
|
|
'End If
|
|
|
|
Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png")
|
|
|
|
Dim logouri As String = ""
|
|
If Imagen.Exists Then
|
|
logouri = String.Format("file://{0}", Imagen.FullName)
|
|
End If
|
|
|
|
|
|
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("AgrupadoPor", $"{Cliente}{Sucursal}{Grupo}{Vendedor}{FechaIn}{FechaFn}{Registro}{Responsable}{TipoDocto}{EstatusCob}{FVI}{FVF}{ClasificacionCli}{CorteA}"))
|
|
params.Add(New ReportParameter("TituloReporte", TituloReporte))
|
|
|
|
params.Add(New ReportParameter("LogoPath", If(Imagen.Exists, $"file://{Imagen.FullName}", "")))
|
|
|
|
|
|
Dim lrds As New List(Of ReportDataSource)
|
|
|
|
Dim DSDatos As DataSet = CargaDatos()
|
|
|
|
Dim rds As New ReportDataSource With {.Name = "DataSet1", .Value = DSDatos.Tables(0)}
|
|
lrds.Add(rds)
|
|
|
|
|
|
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
|
Dim rdsCartera As New ReportDataSource With {.Name = "DSCartera", .Value = DSDatos.Tables(1)}
|
|
lrds.Add(rdsCartera)
|
|
Else
|
|
Dim DTCartera As New DataTable
|
|
DTCartera.Columns.Add("Rango")
|
|
DTCartera.Columns.Add("Saldo", GetType(Decimal))
|
|
DTCartera.Columns.Add("Porcentaje", GetType(Decimal))
|
|
DTCartera.Columns.Add("Objetivo", GetType(Decimal))
|
|
Dim rdsCartera As New ReportDataSource With {.Name = "DSCartera", .Value = DTCartera}
|
|
lrds.Add(rdsCartera)
|
|
End If
|
|
|
|
|
|
|
|
Dim Archivo As New System.IO.FileInfo(String.Format("{0}Formatos/RepCxCDetalle.rdlc", UsuarioActual.Empresa.Ruta))
|
|
If Archivo.Exists Then
|
|
ImprimirPDF(String.Format("{0}Formatos/RepCxCDetalle.rdlc", UsuarioActual.Empresa.Ruta), lrds, params, "ReporteCxCDetalle", TipoImpresion)
|
|
Else
|
|
ImprimirPDF("Empresas/Grales/Formatos/RepCxCDetalle.rdlc", lrds, params, "ReporteCxCDetalle", TipoImpresion)
|
|
End If
|
|
|
|
|
|
|
|
End Sub
|
|
Protected Sub ImgImprimir_Click(sender As Object, e As EventArgs) Handles ImgImprimir.Click
|
|
GenerarImpresion("PDF")
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "TIPO DE CAMBIO"
|
|
|
|
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
|
|
Private Sub BtnTipoCambio_Click(sender As Object, e As EventArgs) Handles BtnTipoCambio.Click
|
|
CargaDatos()
|
|
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivTipoCambio"))
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "C O B R A N Z A "
|
|
Private Sub CargaAsignarCobranza()
|
|
Dim ObjVentas As New ClsVentas
|
|
|
|
DdlUsuarioCobranza.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa)
|
|
DdlUsuarioCobranza.DataBind()
|
|
DdlUsuarioCobranza.Items.Insert(0, New ListItem("Sin Cobrador", "-1"))
|
|
|
|
DdlCobranzaEstatus.DataSource = GlobalDTVtaCobranzaEstatus(UsuarioActual.CveEmpresa)
|
|
DdlCobranzaEstatus.DataBind()
|
|
DdlCobranzaEstatus.Items.Insert(0, New ListItem("Sin Estatus", "-1"))
|
|
|
|
If ObjVentas.GetCobranzaTurnoEstatus(-1, UsuarioActual.CveEmpresa) Then
|
|
DdlTurnoCobranza.DataSource = ObjVentas.DtResultados
|
|
DdlTurnoCobranza.DataBind()
|
|
DdlTurnoCobranza.Items.Insert(0, New ListItem("Sin Turno", "-1"))
|
|
End If
|
|
|
|
ObjVentas.Dispose()
|
|
|
|
End Sub
|
|
Private Sub LkbHabilitarCobranza_Click(sender As Object, e As EventArgs) Handles LkbHabilitarCobranza.Click
|
|
GvDatos.Columns(32).Visible = True ' chk aplica
|
|
GvDatos.Columns(33).Visible = True : ChkEstatusCobranza.Checked = True
|
|
GvDatos.Columns(35).Visible = True : ChkObsCobranza.Checked = True
|
|
GvDatos.Columns(36).Visible = True : ChkFechaCobranza.Checked = True
|
|
GvDatos.Columns(37).Visible = True : ChkHorario.Checked = True
|
|
|
|
DivCobranza.Visible = True
|
|
CargaDatos()
|
|
UPPersonalizar.Update()
|
|
UpCobranza.Update()
|
|
End Sub
|
|
Private Sub BtnAsignaCobranza_Click(sender As Object, e As EventArgs) Handles BtnAsignaCobranza.Click
|
|
Dim time As DateTime
|
|
Dim TieneError = False
|
|
|
|
Dim ObjVentas As New ClsVentas
|
|
ObjVentas.IniciaTransacSQL()
|
|
Try
|
|
For Each row As GridViewRow In GvDatos.Rows
|
|
Dim TipoDocto As String = row.DataKey("TipoDocto")
|
|
If row.FCCheckBox("ChkCobranza").Checked AndAlso TipoDocto <> "IxC" Then
|
|
time = DateTime.Parse(String.Format("{0} {1}:{2} {3}", TxtFechaCobranza.Text, TimeSelector.Hour, TimeSelector.Minute, TimeSelector.AmPm))
|
|
If Not ObjVentas.UpdateAsignaVentaCobranza(row.DataKey("CveVenta").ToEntero, DdlCobranzaEstatus.SelectedValue.ToEntero, DdlUsuarioCobranza.SelectedValue.ToEntero, DdlTurnoCobranza.SelectedValue.ToEntero, TxtObservacionCobranza.Text.Trim, time) Then
|
|
TieneError = True
|
|
End If
|
|
End If
|
|
|
|
Next
|
|
Catch ex As Exception
|
|
OnError("Ocurrió un error al actualizar", ex)
|
|
TieneError = True
|
|
End Try
|
|
|
|
If Not TieneError Then
|
|
ObjVentas.Commit()
|
|
Alert("Se asigno exitosamente datos de cobranza a la venta", TipoMensaje.MsgInformacion)
|
|
|
|
Else
|
|
ObjVentas.RollBack()
|
|
Alert("Hubo un error al asignar datos de cobranza", TipoMensaje.MsgInformacion)
|
|
End If
|
|
|
|
ObjVentas.Dispose()
|
|
CargaDatos()
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region "SELECTED INDEX CHANGE"
|
|
|
|
Protected Sub DdlClienteClasificacion_SelectedIndexChanged(sender As Object, e As EventArgs)
|
|
CargaClientes()
|
|
|
|
End Sub
|
|
|
|
Private Sub CargaClientes()
|
|
If Not UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
|
|
DdlClientesWS.ddl.Items.Clear()
|
|
DdlClientesWS.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa, -1).FiltraParametros($"CveClienteClasificacion = {DdlClienteClasificacion.SelectedValue.ToEntero} OR {DdlClienteClasificacion.SelectedValue.ToEntero} = -1")
|
|
DdlClientesWS.DataBind()
|
|
DdlClientesWS.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub GvCartera_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvCartera.RowDataBound
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
If e.Row.DataKey("Rango") = "Total" Then
|
|
e.Row.Font.Bold = True
|
|
End If
|
|
End If
|
|
End Sub
|
|
|
|
|
|
#End Region
|
|
|
|
|
|
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
|
|
End Sub
|
|
|
|
|
|
Public Sub ExportToExcelGembox(GridView As GridView, NombreArchivoXLSx As String, Usuario As Usuario, Titulo As String, Optional DatoTituloExtra As String = "", Optional DatosFiltros As String = "", Optional AnchoImagen As Integer = 100, Optional AlturaImagen As Integer = 100, Optional DTExtra As DataTable = Nothing)
|
|
|
|
Dim sw1 As New StringWriter()
|
|
Dim htw1 As New HtmlTextWriter(sw1)
|
|
GridView.RenderControl(htw1)
|
|
|
|
Dim options = GemBox.Spreadsheet.LoadOptions.HtmlDefault
|
|
|
|
Dim htmlStream1 = New MemoryStream(options.Encoding.GetBytes(sw1.ToString()))
|
|
|
|
htmlStream1.Position = 0
|
|
Dim sr1 As New StreamReader(htmlStream1)
|
|
Dim myStr1 = sr1.ReadToEnd()
|
|
sr1.Dispose()
|
|
htmlStream1.Dispose()
|
|
sw1.Dispose()
|
|
|
|
Dim HtmlCompleto As String = myStr1
|
|
|
|
HtmlCompleto = Regex.Replace(HtmlCompleto, "\<[\/]*a[^\>]*\>", "")
|
|
|
|
Dim htmlStream5 = New MemoryStream(options.Encoding.GetBytes(HtmlCompleto))
|
|
|
|
GemBox.Spreadsheet.SpreadsheetInfo.SetLicense(SerialGemBoxSpreadsheet)
|
|
|
|
Dim excel As GemBox.Spreadsheet.ExcelFile
|
|
|
|
excel = GemBox.Spreadsheet.ExcelFile.Load(htmlStream5, options)
|
|
|
|
If Usuario IsNot Nothing Then
|
|
|
|
Dim TotalRowHeader As Integer = 6
|
|
Dim TotalRowFooter As Integer = 2
|
|
|
|
|
|
Dim worksheet = excel.Worksheets(0)
|
|
worksheet.Rows.InsertEmpty(0, TotalRowHeader)
|
|
Dim celdasConTexto = worksheet.GetUsedCellRange(True)
|
|
If celdasConTexto Is Nothing Then Exit Sub 'No se recuperaron datos, salir de sin guardar porque soltará error
|
|
celdasConTexto.Style.Font.Name = "Calibri Light"
|
|
|
|
Dim RangoNombreEmpresa = worksheet.Cells.GetSubrangeAbsolute(1, celdasConTexto.FirstColumnIndex, 1, celdasConTexto.LastColumnIndex)
|
|
RangoNombreEmpresa.Merged = True
|
|
RangoNombreEmpresa.Value = Usuario.Empresa.Empresa
|
|
RangoNombreEmpresa.Style.Font.Size = 18 * 20
|
|
RangoNombreEmpresa.Style.Font.Name = "Calibri Light"
|
|
RangoNombreEmpresa.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
|
|
RangoNombreEmpresa.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
|
|
Dim RangoTitulo = worksheet.Cells.GetSubrangeAbsolute(3, celdasConTexto.FirstColumnIndex, 3, celdasConTexto.LastColumnIndex)
|
|
RangoTitulo.Merged = True
|
|
RangoTitulo.Value = Titulo
|
|
RangoTitulo.Style.Font.Size = 20 * 20
|
|
RangoTitulo.Style.Font.Name = "Calibri Light"
|
|
RangoTitulo.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
|
|
RangoTitulo.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
If DatoTituloExtra.Length > 0 Then
|
|
Dim RangoDatoTituloExtra = worksheet.Cells.GetSubrangeAbsolute(TotalRowHeader, celdasConTexto.FirstColumnIndex, TotalRowHeader, celdasConTexto.LastColumnIndex)
|
|
RangoDatoTituloExtra.Merged = True
|
|
RangoDatoTituloExtra.Value = DatoTituloExtra
|
|
RangoDatoTituloExtra.Style.Font.Size = 20 * 20
|
|
RangoDatoTituloExtra.Style.Font.Name = "Calibri Light"
|
|
RangoDatoTituloExtra.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
|
|
RangoDatoTituloExtra.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
End If
|
|
|
|
If DatosFiltros.Length > 0 Then
|
|
|
|
Dim Arreglo As String() = DatosFiltros.Split("|"c)
|
|
worksheet.Rows.InsertEmpty(TotalRowHeader, Arreglo.Count)
|
|
For Each TextoFiltro As String In Arreglo
|
|
Dim RangoDatoTituloExtra = worksheet.Cells.GetSubrangeAbsolute(TotalRowHeader, celdasConTexto.FirstColumnIndex, TotalRowHeader, celdasConTexto.LastColumnIndex)
|
|
RangoDatoTituloExtra.Merged = True
|
|
RangoDatoTituloExtra.Value = TextoFiltro
|
|
RangoDatoTituloExtra.Style.Font.Size = 12 * 20
|
|
RangoDatoTituloExtra.Style.Font.Name = "Calibri Light"
|
|
RangoDatoTituloExtra.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
|
|
RangoDatoTituloExtra.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
TotalRowHeader += 1
|
|
|
|
Next
|
|
End If
|
|
|
|
' TotalRowHeader += 2
|
|
|
|
For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
|
|
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.Font.Size = 12 * 20
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.FillPattern.SetPattern(GemBox.Spreadsheet.FillPatternStyle.Solid, GemBox.Spreadsheet.SpreadsheetColor.FromArgb(75, 119, 190), GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255))
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)
|
|
|
|
If i > 0 Then
|
|
Try
|
|
worksheet.Columns(i).AutoFit(1)
|
|
Catch ex As Exception
|
|
End Try
|
|
End If
|
|
|
|
Next
|
|
|
|
Dim IndexEndTable As Integer = GridView.Rows.Count + TotalRowHeader + TotalRowFooter
|
|
|
|
worksheet.Rows(IndexEndTable).Cells(1).Value = "Usuario Imprimió"
|
|
worksheet.Rows(IndexEndTable + 1).Cells(1).Value = Usuario.Nombre
|
|
|
|
worksheet.Rows(IndexEndTable).Cells(3).Value = "Fecha Impresión"
|
|
worksheet.Rows(IndexEndTable + 1).Cells(3).Value = DateTime.Now.ToString("dd/MM/yyyy")
|
|
|
|
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
|
|
|
|
If Imagen.Exists Then
|
|
Dim Ruta As String = String.Format("{0}/Logo.png", Usuario.Empresa.Ruta)
|
|
Using sr As New StreamReader(Ruta)
|
|
Dim ms As New MemoryStream()
|
|
sr.BaseStream.CopyTo(ms)
|
|
worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, LengthUnit.Pixel)
|
|
End Using
|
|
End If
|
|
|
|
|
|
For I = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex - 2
|
|
|
|
If I > 0 Then
|
|
|
|
If 1 = 1 Then
|
|
worksheet.Columns(I + 1).Style.NumberFormat = "#,##0.00"
|
|
Else
|
|
worksheet.Columns(I + 1).Style.NumberFormat = "#,##"
|
|
End If
|
|
|
|
Try
|
|
worksheet.Columns(I).AutoFit(1)
|
|
Catch ex As Exception
|
|
End Try
|
|
|
|
End If
|
|
Next
|
|
|
|
|
|
|
|
If DTExtra IsNot Nothing Then
|
|
|
|
Dim NombreTabla As String = ""
|
|
|
|
If DTExtra.TableName IsNot Nothing Then
|
|
NombreTabla = DTExtra.TableName
|
|
End If
|
|
|
|
If NombreTabla.Trim = "" Then
|
|
NombreTabla = "hoja2"
|
|
End If
|
|
|
|
'excel.Worksheets.Add(NombreTabla)
|
|
|
|
Dim workbookDTExtra = New ExcelFile
|
|
Dim worksheetDTExtra = workbookDTExtra.Worksheets.Add(NombreTabla)
|
|
|
|
|
|
worksheetDTExtra.InsertDataTable(DTExtra,
|
|
New InsertDataTableOptions() With
|
|
{
|
|
.ColumnHeaders = True,
|
|
.StartRow = 0
|
|
})
|
|
|
|
|
|
|
|
Dim columnCount = worksheetDTExtra.CalculateMaxUsedColumns()
|
|
For i As Integer = 0 To columnCount - 1
|
|
worksheetDTExtra.Columns(i).AutoFit(1, worksheetDTExtra.Rows(1), worksheetDTExtra.Rows(worksheetDTExtra.Rows.Count - 1))
|
|
worksheetDTExtra.Cells(0, i).Style.FillPattern.SetSolid(Drawing.ColorTranslator.FromHtml("#4b77be"))
|
|
worksheetDTExtra.Cells(0, i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)
|
|
|
|
Next
|
|
|
|
|
|
excel.Worksheets.AddCopy(NombreTabla, worksheetDTExtra)
|
|
excel.Worksheets(0).Name = Titulo
|
|
|
|
|
|
|
|
End If
|
|
|
|
|
|
|
|
Dim indexRow As Integer = 8
|
|
|
|
|
|
For indexRow = 8 To worksheet.Rows.Count - 4
|
|
|
|
If worksheet.Cells(indexRow, 0).Value.ToString.Trim = "" Then
|
|
worksheet.Cells.GetSubrangeRelative(indexRow, 0, celdasConTexto.LastColumnIndex + 1, 1).Style.FillPattern.SetSolid(Drawing.ColorTranslator.FromHtml("#c0c0c0"))
|
|
End If
|
|
|
|
Next
|
|
|
|
|
|
End If
|
|
|
|
excel.Save(HttpContext.Current.Response, $"{NombreArchivoXLSx}.xlsx")
|
|
|
|
|
|
End Sub
|
|
|
|
|
|
End Class
|