584 lines
28 KiB
VB.net
584 lines
28 KiB
VB.net
Option Explicit On
|
|
Option Strict On
|
|
|
|
Imports System.Data
|
|
Imports Extensiones
|
|
Imports Microsoft.Reporting.WebForms
|
|
|
|
Partial Class Ventas_RepProductosServicios
|
|
Inherits ClsPaginas
|
|
|
|
#Region "PROPIEDADES"
|
|
|
|
Private Property DtVentas As DataTable
|
|
Get
|
|
Return DirectCast(ViewState("DtVentas"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("DtVentas") = 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 TCEspecifico As Double
|
|
Get
|
|
Return ViewState("TCEspecifico").ToString.ToDouble
|
|
End Get
|
|
|
|
Set(value As Double)
|
|
ViewState("TCEspecifico") = value
|
|
End Set
|
|
End Property
|
|
Private Property TipoCambio As Integer
|
|
Get
|
|
Return ViewState("TipoCambio").ToString.ToEntero
|
|
End Get
|
|
|
|
Set(value As Integer)
|
|
ViewState("TipoCambio") = 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
|
|
If UsuarioActual.CveEmpresa = 2 AndAlso UsuarioActual.CveUsuario.Contiene(77, 21) Then Response.Redirect("/Inicio.aspx")
|
|
CargarMarcas()
|
|
SetValues()
|
|
End If
|
|
End Sub
|
|
|
|
|
|
#Region " CARGA DATOS INICIALES "
|
|
|
|
Private Sub CargaGrupo()
|
|
Dim TextoProyecto = "Proyecto"
|
|
If UsuarioActual.Empresa.Funcionalidad(307) <> "" Then TextoProyecto = UsuarioActual.Empresa.Funcionalidad(307)
|
|
If DdlProyecto.Visible Then DdlGrupo.Items.Insert(0, New ListItem(TextoProyecto, "1"))
|
|
DdlGrupo.Items.Add(New ListItem(LblSubProyecto.Text, "2"))
|
|
DdlGrupo.Items.Add(New ListItem("Categoria", "3"))
|
|
DdlGrupo.Items.Add(New ListItem("Clasificación", "4"))
|
|
DdlGrupo.Items.Add(New ListItem("Productos-Servicios", "5"))
|
|
DdlGrupo.Items.Add(New ListItem("Año", "6"))
|
|
DdlGrupo.Items.Add(New ListItem("Mes", "7"))
|
|
DdlGrupo.Items.Add(New ListItem("Año/Mes", "8"))
|
|
DdlGrupo.Items.Add(New ListItem("Fecha", "9"))
|
|
DdlGrupo.Items.Add(New ListItem("Cliente", "10"))
|
|
DdlGrupo.Items.Add(New ListItem("Vendedor", "12"))
|
|
DdlGrupo.Items.Add(New ListItem("Usuario", "13"))
|
|
DdlGrupo.Items.Add(New ListItem("Estatus Fact.", "14"))
|
|
DdlGrupo.Items.Add(New ListItem("Año Ejec.", "15"))
|
|
DdlGrupo.Items.Add(New ListItem("Mes Ejec.", "16"))
|
|
DdlGrupo.Items.Add(New ListItem("Año/Mes Ejec.", "17"))
|
|
DdlGrupo.Items.Add(New ListItem("Fecha Ejec.", "18"))
|
|
DdlGrupo.Items.Add(New ListItem("Cliente - PS", "20"))
|
|
DdlGrupo.Items.Add(New ListItem("Sucursal - PS", "21"))
|
|
DdlGrupo.Items.Add(New ListItem("Familia - Marca - Tipo", "22"))
|
|
DdlGrupo.Items.Add(New ListItem("Tipo Cliente", "23"))
|
|
DdlGrupo.Items.Add(New ListItem("Marca", "24"))
|
|
DdlGrupo.Items.Add(New ListItem("Cliente Sucursal", "26"))
|
|
DdlGrupo.Items.Add(New ListItem("Giro", "27"))
|
|
If UsuarioActual.CveEmpresa = 119 Then DdlGrupo.Items.Add(New ListItem("Proveedor", "29"))
|
|
|
|
DdlGrupo.DataBind()
|
|
DdlGrupo.SelectedValueExist("8")
|
|
|
|
|
|
End Sub
|
|
Private Sub SetValues()
|
|
'Cargo Categorias
|
|
DdlCategoria.DataSource = GlobalDTGralCategorias(UsuarioActual.CveEmpresa)
|
|
DdlCategoria.DataBind()
|
|
|
|
'Cargo Clasificaciones
|
|
DdlClasificacion.DataSource = GlobalDTClasificaciones(UsuarioActual.CveEmpresa)
|
|
DdlClasificacion.DataBind()
|
|
|
|
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
|
|
DvLitraje.Visible = True
|
|
'garantia
|
|
divgarantia1.Visible = True
|
|
divgarantia2.Visible = True
|
|
divdistribuidor1.Visible = True
|
|
divdistribuidor2.Visible = True
|
|
|
|
DdlClasificacion2.DataSource = GlobalDTClasificaciones2(UsuarioActual.CveEmpresa)
|
|
DdlClasificacion2.DataBind()
|
|
divClasif2texto.Visible = True
|
|
divClasif2.Visible = True
|
|
|
|
DdlGrupo.Items.Add(New ListItem("Clasificacion2", "25"))
|
|
LblServicioDomicilioFiltro.Visible = True
|
|
DVServicioDomicilio.Visible = True
|
|
|
|
End If
|
|
|
|
'Vendedor
|
|
DdlVendedor.DataSource = GlobalDTVendedores(UsuarioActual.CveEmpresa, VendedorTipo:=-1).FiltraParametros("VendedorTipo in (1,4)") 'vendedores y vendedores de piso
|
|
DdlVendedor.DataBind()
|
|
|
|
'CargaUsuarios
|
|
DdlUsuario.DataSource = GlobalDTUsuarios(-1, UsuarioActual.CveEmpresa)
|
|
DdlUsuario.DataBind()
|
|
|
|
'Carga Productos
|
|
DdlPS.setEsWebService(UsuarioActual.Empresa.Funcionalidad(105) = "1")
|
|
|
|
If UsuarioActual.Empresa.Funcionalidad(105) = "1" Then
|
|
DdlPS.ddlWS.Attributes.Add("data-cveclasificacion", DdlClasificacion.SelectedValue)
|
|
DdlPS.SelectedText = ""
|
|
DdlPS.SelectedValue = "-1"
|
|
Else
|
|
DdlPS.ddl.Items.Clear()
|
|
DdlPS.ddl.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=DdlClasificacion.SelectedValue.ToEntero)
|
|
DdlPS.ddl.DataBind()
|
|
DdlPS.ddl.Items.Insert(0, New ListItem("Seleccione el Producto", "-1"))
|
|
End If
|
|
|
|
If UsuarioActual.Empresa.Funcionalidad(713) = "1" Then
|
|
ChkIEPS.Visible = True
|
|
ChkIEPS.Checked = True
|
|
GvDatos.Columns(6).Visible = True
|
|
End If
|
|
|
|
'CargaEstatus
|
|
DdlEstatus.DataSource = GlobalDTEstatusFactura.FiltraParametros(" CveEstatusFactura NOT IN (1, 4, 5) ")
|
|
DdlEstatus.DataBind()
|
|
DdlEstatus.Items.Add(New ListItem("Canceladas", "4"))
|
|
If UsuarioActual.Empresa.TipoFacturacion = "CFDi" Then
|
|
DdlEstatus.SelectedIndex = 2
|
|
Else
|
|
DdlEstatus.SelectedIndex = 1
|
|
End If
|
|
|
|
'Carga Clasificacion Cliente
|
|
DdlClienteClasificacion.DataSource = GlobalDTClienteClasificaciones(UsuarioActual.CveEmpresa)
|
|
DdlClienteClasificacion.DataBind()
|
|
DdlClienteClasificacion.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
|
|
CargarCentrosDeCosto(DdlProyecto, DdlSubProyecto, LblProyecto, LblSubProyecto, divProyecto:=DivProyecto, VisualizacionReporte:=1)
|
|
CargarCentrosDeCosto(Nothing, DdlSubProyectoEjecucion, Nothing, Nothing)
|
|
CargaGrupo()
|
|
|
|
TipoCambio = 1
|
|
TCEspecifico = 0
|
|
|
|
DdlProveedor.setEsWebService(UsuarioActual.Empresa.Funcionalidad(105) = "1")
|
|
|
|
If DdlProveedor.UsaWebService Then
|
|
DdlClasificacion.AutoPostBack = False
|
|
DdlProveedor.Attributes.Add("data-metodo", "getproveedores")
|
|
Else
|
|
|
|
DdlProveedor.DataSource = GlobalDTCompProveedores(UsuarioActual.CveEmpresa)
|
|
DdlProveedor.DataBind()
|
|
DdlProveedor.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
End If
|
|
|
|
Dim EsWS As Boolean = If(UsuarioActual.Empresa.Funcionalidad(105) = "1" Or UsuarioActual.Empresa.Funcionalidad(141) = "1", True, False)
|
|
If EsWS Then
|
|
DdlClientes.setEsWebService(True)
|
|
Else
|
|
DdlClientes.setEsWebService(False)
|
|
DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa, -1)
|
|
DdlClientes.DataBind()
|
|
DdlClientes.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
End If
|
|
|
|
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
|
|
|
|
txtFechaI.Text = NowADS().FirstDayOfMonth.ToShortDateString
|
|
txtFechaF.Text = NowADS().ToShortDateString
|
|
|
|
If UsuarioActual.TienePermisoProceso(339) Then
|
|
GvDatos.Columns(3).Visible = False
|
|
GvDatos.Columns(4).Visible = False
|
|
GvDatos.Columns(5).Visible = False
|
|
GvDatos.Columns(6).Visible = False
|
|
End If
|
|
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
#Region " CARGA DATOS "
|
|
Protected Sub BtnConsultar_Click(sender As Object, e As System.EventArgs) Handles BtnConsultar.Click
|
|
CargaDatos()
|
|
UPDatos.Update()
|
|
End Sub
|
|
|
|
Private Sub CargaDatos()
|
|
|
|
Dim TipoComprobante As String = If(DdlTipoComprobante.GetSelectedValuesM = "", "-1", DdlTipoComprobante.GetSelectedValuesM)
|
|
Dim FechaI, FechaF, FechaIEjec, FechaFEjec As Date
|
|
FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.ToDate, MinFecha)
|
|
FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.ToDate, MaxFecha)
|
|
FechaIEjec = If(IsDate(TxtFechaIEjec.Text.Trim()), TxtFechaIEjec.Text.ToDate, MinFecha)
|
|
FechaFEjec = If(IsDate(TxtFechaFEjec.Text.Trim()), TxtFechaFEjec.Text.ToDate, MaxFecha)
|
|
|
|
If RblTipoCambio.SelectedValue.ToEntero = 3 And TxtEspecifico.Text <> "" Then TCEspecifico = TxtEspecifico.Text.ToDouble Else TCEspecifico = -1
|
|
Dim CveProveedorCompra As Integer = If(DdlProveedor.SelectedValue.ToEntero > 0, DdlProveedor.SelectedValue.ToEntero, -1)
|
|
Dim CveCliente As Integer = If(DdlClientes.SelectedValue.ToEntero > 0, DdlClientes.SelectedValue.ToEntero, -1)
|
|
|
|
Dim ModalidadContable As Boolean = Not ChkLecturaAdmin.Checked
|
|
|
|
Dim ObjVentas As New ClsVentas()
|
|
If ObjVentas.GetRepProductosServicios(DdlProyecto.SelectedValue.ToEntero, DdlSubProyecto.SelectedValue.ToEntero, DdlCategoria.SelectedValue.ToEntero, DdlClasificacion.SelectedValue.ToEntero,
|
|
DdlPS.SelectedValue.ToEntero, FechaI, FechaF, FechaIEjec, FechaFEjec, CveCliente,
|
|
DdlSubProyectoEjecucion.SelectedValue.ToEntero, DdlVendedor.SelectedValue.ToEntero, DdlUsuario.SelectedValue.ToEntero, DdlEstatus.SelectedValue.ToEntero, "-1",
|
|
UsuarioActual.CveEmpresa, DdlGrupo.SelectedValue.ToEntero, CveUsuarioConsulta:=UsuarioActual.CveUsuario, TipoDocto:=TipoComprobante,
|
|
CveClienteClasificacion:=DdlClienteClasificacion.SelectedValue.ToEntero, TipoCambio:=TipoCambio, TCEspecifico:=TCEspecifico, CveProveedorCompra:=CveProveedorCompra,
|
|
CveMarca:=DdlMarcaPSDes.SelectedValue.ToEntero, MostrarLitraje:=ChkLitraje.Checked, TipoCliente:=DdlTipoCliente.SelectedValue.ToEntero, EsGarantia:=DdlGarantia.SelectedValue.ToEntero, ModalidadContable:=ModalidadContable,
|
|
CveCondicionesPago:=DdlCondicionesPago.SelectedValue.ToEntero, EsDistribuidor:=DdlDistribuidor.SelectedValue.ToEntero, CveClasificacion2:=DdlClasificacion2.SelectedValue.ToEntero,
|
|
ServicioDomicilio:=DdlServicioDomicilio.SelectedValue.ToEntero) Then
|
|
GvDatos.DataSource = ObjVentas.DtResultados
|
|
DtVentas = ObjVentas.DtResultados
|
|
If UsuarioActual.CveEmpresa = 140 Then
|
|
GvDatos.Columns(1).Visible = True
|
|
End If
|
|
Else
|
|
GvDatos.DataSource = Nothing
|
|
End If
|
|
ObjVentas.Dispose()
|
|
GvDatos.DataBind()
|
|
Agrupador = DdlGrupo.SelectedItem.Text
|
|
End Sub
|
|
|
|
Protected Sub BtnTipoCambio_Click1(sender As Object, e As EventArgs)
|
|
CargaDatos()
|
|
RegistraScript(String.Format("$('#{0}').modal('hide');", "DivTipoCambio"))
|
|
UPDatos.Update()
|
|
End Sub
|
|
|
|
Protected Sub CargarMarcas()
|
|
If UsuarioActual.Empresa.Funcionalidad(130) = "1" Then
|
|
DivMarca.Visible = True
|
|
LblMarca.Visible = True
|
|
DdlMarcaPSDes.DataSource = GlobalDTGralMarcas(UsuarioActual.CveEmpresa)
|
|
DdlMarcaPSDes.DataBind()
|
|
End If
|
|
DdlMarcaPSDes.Items.Insert(0, New ListItem(" Todos ", "-1"))
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
#Region " GV DATOS - PERSONALIZAR "
|
|
Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
Dim Css As String = "Texto"
|
|
Dim CveClasificacionDetalle As String = "-1"
|
|
Dim cveMarca As String = DdlMarcaPSDes.SelectedValue
|
|
If DdlGrupo.SelectedValue.ToEntero = 22 Then
|
|
Dim tipo As Integer = If(e.Row.DBCampo("CveClasificacionDetalle").ToEntero() > 0, 4, If(e.Row.DBCampo("CveMarca").ToEntero() > 0, 3, If(e.Row.DBCampo("CveClasificacion").ToEntero() > 0, 2, 1)))
|
|
Select Case tipo
|
|
Case 4
|
|
CveClasificacionDetalle = e.Row.DBCampo("CveClasificacionDetalle").ToString() ' String.Format("{0}&CveClasificacionDetalle={1}&CveMarca={2}", squery, e.Row.DBCampo("CveClasificacionDetalle").ToEntero(), e.Row.DBCampo("CveMarca").ToEntero())
|
|
cveMarca = e.Row.DBCampo("CveMarca").ToString()
|
|
Case 3
|
|
'squery = String.Format("{0}&CveMarca{1}", squery, e.Row.DBCampo("CveMarca").ToEntero())
|
|
cveMarca = e.Row.DBCampo("CveMarca").ToString()
|
|
e.Row.CssClass = "SubTotalesB"
|
|
Case 2
|
|
e.Row.CssClass = "SubTotales"
|
|
Case 1
|
|
e.Row.CssClass = "Totales"
|
|
End Select
|
|
|
|
Else
|
|
If e.Row.DBCampo("Orden") = "" Then
|
|
e.Row.Cells(0).HorizontalAlign = HorizontalAlign.Center
|
|
e.Row.Cells(0).Width = Unit.Pixel(200)
|
|
e.Row.Cells(1).HorizontalAlign = HorizontalAlign.Center
|
|
e.Row.Cells(1).Width = Unit.Pixel(60)
|
|
e.Row.Cells(2).HorizontalAlign = HorizontalAlign.Center
|
|
e.Row.Cells(2).Width = Unit.Pixel(60)
|
|
e.Row.Cells(3).Width = Unit.Pixel(90)
|
|
e.Row.Cells(4).Width = Unit.Pixel(90)
|
|
e.Row.Cells(6).Width = Unit.Pixel(80)
|
|
e.Row.Cells(9).Width = Unit.Pixel(100)
|
|
e.Row.CssClass = "Totales"
|
|
Css = "Totales"
|
|
ElseIf DdlGrupo.SelectedValue.Contiene("20", "21") And Not e.Row.DBCampo("CvePS").ToEntero > 0 Then
|
|
e.Row.CssClass = "SubTotales"
|
|
End If
|
|
End If
|
|
|
|
' PARA LIGA
|
|
Dim FechaI, FechaF, FechaIEjec, FechaFEjec As String
|
|
FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.Trim(), "-1")
|
|
FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.Trim(), "-1")
|
|
FechaIEjec = If(IsDate(TxtFechaIEjec.Text.Trim()), TxtFechaIEjec.Text.Trim(), "-1")
|
|
FechaFEjec = If(IsDate(TxtFechaFEjec.Text.Trim()), TxtFechaFEjec.Text.Trim(), "-1")
|
|
|
|
Dim Liga As String = String.Format("/Ventas/RepProductosServiciosDetalle.aspx?CveProyecto={0}&CveSubProyecto={1}&CveCategoria={2}&CveClasificacion={3}&CvePS={4}&CveCliente={5}&CveSubProyectoEjecucion={6}&CveVendedor={7}&CveUsuario={8}&CveEstatus={9}&Anio={10}&Mes={11}&AnioMes={12}&Fecha={13}&AnioEjec={14}&MesEjec={15}&AnioMesEjec={16}&FechaEjec={17}&FechaI={18}&FechaF={19}&FechaEI={20}&FechaEF={21}&TipoDocto={22}&Grupo={23}&CveMoneda={24}&TipoCambio={25}&TCEspecifico={26}&CveClienteClasificacion={27}&CveProveedorCompra={28}&CveMarca={29}&CveClasificacionDetalle={30}&TipoCliente={31}&ModalidadContable={32}&EsGarantia={33}&CveCondicionesPago={34}&MostrarLitraje={35}&EsDistribuidor={36}&CveClienteSucursal={37}&CveClasificacion2={38}&ServicioDomicilio={39}",
|
|
e.Row.DBCampo("CveProyecto"), e.Row.DBCampo("CveSubProyecto"), e.Row.DBCampo("CveCategoria"), e.Row.DBCampo("CveClasificacion"), e.Row.DBCampo("CvePS"),
|
|
e.Row.DBCampo("CveCliente"), e.Row.DBCampo("CveSubProyectoEjecucion"), e.Row.DBCampo("Vendedor"), e.Row.DBCampo("CveUsuario"), e.Row.DBCampo("CveEstatusFactura"),
|
|
e.Row.DBCampo("Anio"), e.Row.DBCampo("Mes"), e.Row.DBCampo("AnioMes"), e.Row.DBCampo("Fecha"), e.Row.DBCampo("AnioEjec"), e.Row.DBCampo("MesEjec"), e.Row.DBCampo("AnioMesEjec"), e.Row.DBCampo("FechaEjec"),
|
|
FechaI, FechaF, FechaIEjec, FechaFEjec, e.Row.DBCampo("TipoDocto"), e.Row.DBCampo("CveGpo"), e.Row.DBCampo("CveMoneda"), e.Row.DBCampo("TipoCambio"), e.Row.DBCampo("TCEspecifico"), e.Row.DBCampo("CveClienteClasificacion"), e.Row.DBCampo("CveProveedorCompra"), cveMarca,
|
|
CveClasificacionDetalle, If(DdlGrupo.SelectedValue.ToEntero = 23, e.Row.DBCampo("TipoCliente"), DdlTipoCliente.SelectedValue), If(Not ChkLecturaAdmin.Checked, 1, 0),
|
|
e.Row.DBCampo("EsGarantia"), e.Row.DBCampo("CveCondicionesPago"), IIf(e.Row.DBCampo("MostrarLitraje") = "True", 1, 0), e.Row.DBCampo("EsDistribuidor"), e.Row.DBCampo("CveClienteSucursal").ToString.ToEntero, e.Row.DBCampo("CveClasificacion2"), DdlServicioDomicilio.SelectedValue.ToEntero)
|
|
|
|
|
|
e.Row.FCLiteral("LtlGrupo").Text = String.Format("<a target=""_blank"" Class=""{0}"" href=""{1}"">{2}</a>", Css, Liga, e.Row.DBCampo("Gpo"))
|
|
e.Row.FCLiteral("LtlCantidad").Text = String.Format("<a target=""_blank"" Class=""{0}"" href=""{1}"">{2}</a>", Css, Liga, e.Row.DBCampo("Cantidad").ToDecimal.ToString("###,###,###,###.##"))
|
|
|
|
End If
|
|
End Sub
|
|
|
|
Protected Sub BtnPersonalizar_Click(sender As Object, e As System.EventArgs) Handles BtnPersonalizar.Click
|
|
|
|
If ChkIEPS.Checked Then
|
|
GvDatos.Columns(6).Visible = True
|
|
Else
|
|
GvDatos.Columns(6).Visible = False
|
|
End If
|
|
|
|
If ChkMaxSub.Checked Then
|
|
GvDatos.Columns(7).Visible = True
|
|
Else
|
|
GvDatos.Columns(7).Visible = False
|
|
End If
|
|
|
|
If ChkAVGSub.Checked Then
|
|
GvDatos.Columns(8).Visible = True
|
|
Else
|
|
GvDatos.Columns(8).Visible = False
|
|
End If
|
|
|
|
If ChkMinSub.Checked Then
|
|
GvDatos.Columns(9).Visible = True
|
|
Else
|
|
GvDatos.Columns(9).Visible = False
|
|
End If
|
|
|
|
If ChkMaxTot.Checked Then
|
|
GvDatos.Columns(10).Visible = True
|
|
Else
|
|
GvDatos.Columns(10).Visible = False
|
|
End If
|
|
|
|
If ChkAvgTot.Checked Then
|
|
GvDatos.Columns(11).Visible = True
|
|
Else
|
|
GvDatos.Columns(11).Visible = False
|
|
End If
|
|
|
|
If ChkMinTot.Checked Then
|
|
GvDatos.Columns(12).Visible = True
|
|
Else
|
|
GvDatos.Columns(12).Visible = False
|
|
End If
|
|
|
|
UPDatos.Update()
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
#Region " SELECTED INDEX CHANGED"
|
|
Protected Sub DdlClienteClasificacion_SelectedIndexChanged(sender As Object, e As EventArgs)
|
|
CargaClientes()
|
|
End Sub
|
|
|
|
Private Sub CargaClientes()
|
|
DdlClientes.ddl.Items.Clear()
|
|
DdlClientes.DataSource = GlobalDTCliente(UsuarioActual.CveEmpresa, -1).FiltraParametros($"CveClienteClasificacion = {DdlClienteClasificacion.SelectedValue.ToEntero} OR {DdlClienteClasificacion.SelectedValue.ToEntero} = -1")
|
|
DdlClientes.DataBind()
|
|
DdlClientes.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
End Sub
|
|
|
|
Protected Sub DdlProyecto_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlProyecto.SelectedIndexChanged
|
|
CargarSubProyecto(DdlSubProyecto, DdlProyecto.SelectedValue, AplicaTodos:="Todos")
|
|
End Sub
|
|
|
|
'Protected Sub DdlCategoria_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlCategoria.SelectedIndexChanged
|
|
' DdlClasificacion.Items.Clear()
|
|
' If DdlCategoria.SelectedValue <> "-1" Then
|
|
' Dim ObjClasificaciones As New ClsClasificaciones
|
|
' If ObjClasificaciones.GetClasificacionesExistencias(UsuarioActual.CveEmpresa) Then
|
|
' DdlClasificacion.DataSource = ObjClasificaciones.DtResultados
|
|
' DdlClasificacion.DataBind()
|
|
' End If
|
|
' ObjClasificaciones.Dispose()
|
|
' End If
|
|
' DdlClasificacion.Items.Insert(0, New ListItem("Todas", "-1"))
|
|
'End Sub
|
|
|
|
Protected Sub DdlClasificacion_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DdlClasificacion.SelectedIndexChanged
|
|
If UsuarioActual.Empresa.Funcionalidad(105) = "" Then
|
|
DdlPS.DataSource = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa, CveClasificacion:=DdlClasificacion.SelectedValue.ToEntero)
|
|
DdlPS.DataBind()
|
|
DdlPS.ddl.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
Else
|
|
DdlPS.ddlWS.Attributes.Add("data-cveclasificacion", DdlClasificacion.SelectedValue)
|
|
DdlPS.SelectedText = "Todos"
|
|
DdlPS.SelectedValue = "-1"
|
|
End If
|
|
End Sub
|
|
|
|
Protected Sub DdlTipoComprobante_SelectedIndexChanged(sender As Object, e As EventArgs)
|
|
DdlEstatus.Items.Clear()
|
|
If DdlTipoComprobante.SelectedValue <> "-1" Then
|
|
DdlEstatus.DataSource = GlobalDTEstatusFactura.FiltraParametros(String.Format("TipoDocto = '{0}'", DdlTipoComprobante.SelectedValue))
|
|
Else
|
|
DdlEstatus.DataSource = GlobalDTEstatusFactura
|
|
|
|
End If
|
|
DdlEstatus.Items.Add(New ListItem("Todos", "-1"))
|
|
DdlEstatus.DataBind()
|
|
DdlEstatus.SelectedValueExist("3")
|
|
End Sub
|
|
|
|
Private Sub RblTipoCambio_SelectedIndexChanged(sender As Object, e As EventArgs) Handles RblTipoCambio.SelectedIndexChanged
|
|
TipoCambio = RblTipoCambio.SelectedValue.ToEntero
|
|
If RblTipoCambio.SelectedValue.ToEntero = 3 Then
|
|
Dim TipoCambio As Double
|
|
LiEspecifico.Visible = True
|
|
TipoCambio = GlobalTipoCambio(NowADS())
|
|
TxtEspecifico.Text = TipoCambio.ToString
|
|
Else
|
|
LiEspecifico.Visible = False
|
|
End If
|
|
UpBodyTipoCambio.Update()
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
#Region " IMPRIMIR "
|
|
Protected Sub LnkPdf_Click(sender As Object, e As EventArgs) Handles LnkPdf.Click
|
|
If GvDatos.Rows.Count > 0 Then
|
|
GenerarPDF()
|
|
Else
|
|
Alert("No hay datos para imprimir")
|
|
End If
|
|
End Sub
|
|
Protected Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click
|
|
GvDatos.ExportToExcel("ReporteProductosServicios" & NowADS().ToShortDateString)
|
|
End Sub
|
|
Private Sub GenerarPDF()
|
|
Dim FechaI, FechaF, FechaIEjec, FechaFEjec As Date
|
|
FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.ToDate, MinFecha)
|
|
FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.ToDate, MaxFecha)
|
|
FechaIEjec = If(IsDate(TxtFechaIEjec.Text.Trim()), TxtFechaIEjec.Text.ToDate, MinFecha)
|
|
FechaFEjec = If(IsDate(TxtFechaFEjec.Text.Trim()), TxtFechaFEjec.Text.ToDate, MaxFecha)
|
|
|
|
Dim Cliente As String = If(DdlClientes.SelectedText = "", "", $" <b>Cliente:</b> {DdlClientes.SelectedText}")
|
|
Dim Proveedor As String = If(DdlProveedor.SelectedValue = "", "", $" <b>Proveedor:</b> {DdlProveedor.SelectedText}")
|
|
Dim FechaInicio As String = If(txtFechaI.Text = "", "", $" <b>Fecha Inicio:</b> {txtFechaI.Text}")
|
|
Dim FechaFin As String = If(txtFechaF.Text = "", "", $" <b>Fecha Fin:</b> {txtFechaF.Text}")
|
|
Dim Grupo As String = If(DdlGrupo.SelectedValue = "-1", "", $" <b>Agrupado por:</b> {DdlGrupo.SelectedItem.Text}")
|
|
Dim Categoria As String = If(DdlCategoria.SelectedValue = "-1", "", $" <b>Categoria:</b> {DdlCategoria.SelectedItem.Text }")
|
|
Dim Clasificacion As String = If(DdlClasificacion.SelectedValue = "-1", "", $" <b>Clasificación:</b> {DdlClasificacion.SelectedItem.Text}")
|
|
Dim PS As String = If(DdlPS.SelectedValue = "-1", "", $" <b>P.S.:</b> {DdlPS.SelectedText}")
|
|
Dim Proyecto As String = If(DdlSubProyecto.SelectedValue = "-1", "", $" <b>Proyecto:</b> {DdlSubProyecto.SelectedItem.Text}")
|
|
Dim Estatus As String = If(DdlEstatus.SelectedValue = "-1", "", $" <b>Estatus:</b> {DdlEstatus.SelectedItem.Text}")
|
|
Dim Usuario As String = If(DdlUsuario.SelectedValue = "-1", "", $" <b>Usuario:</b> {DdlUsuario.SelectedItem.Text}")
|
|
|
|
|
|
If DtVentas IsNot Nothing AndAlso DtVentas.Rows.Count > 0 Then
|
|
Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png")
|
|
Dim logouri As String = 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", If(txtFechaI.Text <> "", FechaI.ToShortDateString, "")))
|
|
params.Add(New ReportParameter("FechaFin", If(txtFechaF.Text <> "", FechaF.ToShortDateString, "")))
|
|
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
|
|
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
|
params.Add(New ReportParameter("FechaImpresion", NowADS().ToDateTime.ToShortDateString))
|
|
params.Add(New ReportParameter("Filtros", $"{Grupo}{Cliente}{FechaInicio}{FechaFin}{Categoria}{Clasificacion}{PS}{Proyecto}{Estatus}{Usuario}{Proveedor}"))
|
|
params.Add(New ReportParameter("LogoPath", If(Imagen.Exists, $"file://{Imagen.FullName}", "")))
|
|
ImprimirPDF("Empresas/Grales/Formatos/RepProductosServicios.rdlc", DtVentas, params, "ReportePS")
|
|
Else
|
|
Alert("No hay información para mostrar.", TipoMensaje.MsgAdvertencia)
|
|
End If
|
|
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
#Region "GRAFICA"
|
|
|
|
Protected Sub LnkVerGrafica_Click(sender As Object, e As EventArgs)
|
|
If Not DtVentas IsNot Nothing AndAlso DtVentas.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 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 DtVentas.Rows
|
|
If Not Dr("Orden").ToString = "" Then
|
|
Dim Row As DataRow = Nothing
|
|
Row = Dt.NewRow()
|
|
Row("Texto") = $"{Dr("GPO").ToString} {GlobalDTMonedas().FiltraParametros($"CveMoneda = {Dr("CveMoneda").ToString}").Rows(0)("Abreviatura").ToString}"
|
|
|
|
Row("Moneda") = Dr("Moneda").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
|
|
Case 4
|
|
Row("Valor") = Dr("Cantidad").ToString.FormatoNumero
|
|
Row("Texto") = $"{Dr("GPO").ToString}"
|
|
End Select
|
|
|
|
Row("Color") = Colors(RowColorIndex)
|
|
|
|
Dt.Rows.Add(Row)
|
|
RowColorIndex += 1
|
|
If RowColorIndex >= Colors.Length Then RowColorIndex = 0
|
|
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(), .Categoria = s("Texto").ToString()}
|
|
|
|
If DdlVer.SelectedValue.ToEntero = 4 Then
|
|
query = From s In Dt.AsEnumerable() Select New With {.Texto = s("Texto").ToString() & " Cantidad", .Valor = s("Valor").ToString().ToDouble(), .Color = s("Color").ToString(), .Moneda = "", .Categoria = s("Texto").ToString()}
|
|
End If
|
|
|
|
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
|
|
|
|
|
|
End Class
|