diff --git a/App_Code/ClsGPS.vb b/App_Code/ClsGPS.vb
index 6ef6a9114..568713257 100644
--- a/App_Code/ClsGPS.vb
+++ b/App_Code/ClsGPS.vb
@@ -1996,6 +1996,25 @@ Public Class ClsGPS
#End Region
#Region "V E H I C U L O S"
+ Public Function GetRepUnidades(CveEmpresa As Integer, CveCliente As Integer, Optional FechaI As DateTime = MinFecha, Optional FechaF As DateTime = MaxFecha, Optional CveEstatus As Integer = -1) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_GPS_RepUnidades")
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ .Add("@CveCliente", SqlDbType.Int).Value = CveCliente
+ .Add("@FechaI", SqlDbType.DateTime).Value = FechaI
+ .Add("@FechaF", SqlDbType.DateTime).Value = FechaF
+ .Add("@CveEstatus", SqlDbType.Int).Value = CveEstatus
+ End With
+ Try
+ SqlAdapter.Fill(Data)
+ Retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al obtener el reporte de los vehículos.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo())
+ End Try
+
+ Return Retorno
+ End Function
Public Function VehiculoAdd(Modelo As String, Color As String, Serie As String, Nombre As String, NoEconomico As String, CveUsuario As Integer, CveCliente As Integer) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_GPS_VehiculoAdd")
diff --git a/App_Code/ClsPaginas.vb b/App_Code/ClsPaginas.vb
index 15411ebe9..deb3d0fa4 100644
--- a/App_Code/ClsPaginas.vb
+++ b/App_Code/ClsPaginas.vb
@@ -4609,6 +4609,7 @@ Public Class ClsPaginas
PaginaDict.Add("/GPS/RepGastos.aspx".ToUpper(), 685)
PaginaDict.Add("/GPS/RecursoConfiableTracking.aspx".ToUpper(), 692)
PaginaDict.Add("/GPS/KimberlyClarkTracking.aspx".ToUpper(), -1)
+ PaginaDict.Add("/GPS/RepUnidades.aspx".ToUpper(), 780)
#End Region
'INVENTARIOS
#Region "Inventarios"
@@ -5942,6 +5943,19 @@ Public Class ClsPaginas
Dim TipoDocumentoRef As String = ""
Dim AplicaPagare As String = "1"
+ Dim RFCReceptor As String = ""
+
+ If String.IsNullOrEmpty(Vta.RFCReceptor) Then
+ RFCReceptor = Vta.Cliente.RFC
+ If Vta.FacturarSucursal Then
+ If Vta.ClienteSucursal IsNot Nothing Then
+ RFCReceptor = Vta.ClienteSucursal.RFC
+ End If
+ End If
+ Else
+ RFCReceptor = Vta.RFCReceptor
+ End If
+
Dim RutaCBB As String = String.Format("{0}CBB\{1}.jpg", Ruta, Vta.SerieFolio)
Dim ImagenCBB As New System.IO.FileInfo(RutaCBB)
Dim ImgCBB As String '= String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, Vta.SerieFolio)
@@ -6071,7 +6085,7 @@ Public Class ClsPaginas
'Si no tiene CBB, SE GENERA
If Not ImagenCBB.Exists Then
Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar()
- CBB.GenerarCBB(UsuarioActual.Empresa.RFC, Vta.Cliente.RFC, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB)
+ CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCReceptor, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB)
End If
ImgCBB = String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, Vta.SerieFolio)
@@ -6086,7 +6100,7 @@ Public Class ClsPaginas
'CLIENTE
params.Add(New CrystalParametro("ClienteCodigo", Vta.Cliente.Codigo))
- params.Add(New CrystalParametro("ClienteNombre", If(Vta.ClienteSucursal.ImprimeNombreSucursal = "True", If(Vta.CveClienteSucursal > 0, Vta.ClienteSucursal.Sucursal, Vta.Cliente.Nombre), If(Vta.AtencionA <> "" AndAlso Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso Vta.Cliente.RFC = "XAXX010101000", $"{Vta.Cliente.Nombre}({Vta.AtencionA})", Vta.Cliente.Nombre))))
+ params.Add(New CrystalParametro("ClienteNombre", If(Vta.ClienteSucursal.ImprimeNombreSucursal = "True", If(Vta.CveClienteSucursal > 0, Vta.ClienteSucursal.Sucursal, Vta.Cliente.Nombre), If(Vta.AtencionA <> "" AndAlso Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso RFCReceptor = "XAXX010101000", $"{Vta.Cliente.Nombre}({Vta.AtencionA})", Vta.Cliente.Nombre))))
params.Add(New CrystalParametro("ClienteDireccion", ClienteDireccion))
params.Add(New CrystalParametro("ClienteLugar", ClienteLugar))
@@ -6118,7 +6132,7 @@ Public Class ClsPaginas
params.Add(New CrystalParametro("SelloSAT", Vta.SelloSAT))
params.Add(New CrystalParametro("QR", ImgCBB))
- params.Add(New CrystalParametro("ClienteRFC", Vta.Cliente.RFC))
+ params.Add(New CrystalParametro("ClienteRFC", RFCReceptor))
params.Add(New CrystalParametro("FormaPago", Vta.FormaPagoText))
params.Add(New CrystalParametro("Moneda", Vta.Moneda))
params.Add(New CrystalParametro("TipoCambio", Vta.TipoCambio.ToString))
@@ -6453,7 +6467,18 @@ Public Class ClsPaginas
Dim NombreArchivoDescarga As String = ""
Dim TipoDocumento As String = ""
Dim TipoDocumentoRef As String = ""
+ Dim RFCReceptor As String = ""
+ If String.IsNullOrEmpty(Vta.RFCReceptor) Then
+ RFCReceptor = Vta.Cliente.RFC
+ If Vta.FacturarSucursal Then
+ If Vta.ClienteSucursal IsNot Nothing Then
+ RFCReceptor = Vta.ClienteSucursal.RFC
+ End If
+ End If
+ Else
+ RFCReceptor = Vta.RFCReceptor
+ End If
Dim RutaCBB As String = String.Format("{0}CBB\{1}.jpg", Ruta, Vta.SerieFolio)
Dim ImagenCBB As New System.IO.FileInfo(RutaCBB)
@@ -6608,7 +6633,7 @@ Public Class ClsPaginas
'Si no tiene CBB, SE GENERA
If Not ImagenCBB.Exists AndAlso Vta.CveCliente.ToEntero > 0 Then
Dim CBB As New ClbNegBICFDv3_2.ClsNegCBBGenerar()
- CBB.GenerarCBB(UsuarioActual.Empresa.RFC, Vta.Cliente.RFC, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB)
+ CBB.GenerarCBB(UsuarioActual.Empresa.RFC, RFCReceptor, Vta.Total.ToString.ToDecimal, Vta.FolioFiscal, RutaCBB)
End If
ImgCBB = String.Format("{0}://{1}:{2}/Empresas/{3}/CBB/{4}.jpg", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa, Vta.SerieFolio)
@@ -6629,14 +6654,14 @@ Public Class ClsPaginas
params.Add(New ReportParameter("ClienteNombre", If(Vta.ClienteSucursal.ImprimeNombreSucursal = "True", If(Vta.CveClienteSucursal > 0, Vta.ClienteSucursal.Sucursal, Vta.Cliente.Nombre), If(Vta.AtencionA <> "" AndAlso Vta.TipoDocto.Contiene("Ing", "Rem") AndAlso Vta.Cliente.RFC = "XAXX010101000", $"{Vta.Cliente.Nombre}({Vta.AtencionA})", Vta.Cliente.Nombre))))
params.Add(New ReportParameter("ClienteDireccion", ClienteDireccion))
params.Add(New ReportParameter("ClienteLugar", ClienteLugar))
- params.Add(New ReportParameter("ClienteRFC", Vta.Cliente.RFC))
+ params.Add(New ReportParameter("ClienteRFC", RFCReceptor))
End If
If Vta.CveEmpresaCRM.ToEntero > 0 Then
params.Add(New ReportParameter("ClienteCodigo", Vta.Cliente.Codigo))
params.Add(New ReportParameter("ClienteNombre", Vta.Cliente.Nombre))
params.Add(New ReportParameter("ClienteDireccion", ClienteDireccion))
params.Add(New ReportParameter("ClienteLugar", ClienteLugar))
- params.Add(New ReportParameter("ClienteRFC", Vta.Cliente.RFC))
+ params.Add(New ReportParameter("ClienteRFC", RFCReceptor))
End If
'TOTALES
diff --git a/App_Code/ClsVentas.vb b/App_Code/ClsVentas.vb
index 996adb595..c34d80562 100644
--- a/App_Code/ClsVentas.vb
+++ b/App_Code/ClsVentas.vb
@@ -1686,6 +1686,34 @@ Public Class ClsVentas
Return Retorno
End Function
+ Public Function GetRepPSDiario(CveSubProyecto As Integer, CvePS As Integer, FechaConsulta As Date, CveEmpresa As Integer, Optional CveUsuarioConsulta As Integer = -1, Optional GPO As Integer = -1,
+ Optional CveMoneda As Integer = -1, Optional TipoCambio As Integer = -1, Optional TCEspecifico As Double = 0) As Boolean
+ Dim Retorno As Boolean = False
+ DataAdapter("PA_Vta_RepPSDiarioGet")
+
+ With SqlAdapter.SelectCommand.Parameters
+ .Add("@CveSubProyecto", SqlDbType.Int).Value = CveSubProyecto
+ .Add("@CvePS", SqlDbType.Int).Value = CvePS
+ .Add("@FechaConsulta", SqlDbType.Date).Value = FechaConsulta
+ .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa
+ .Add("@CveUsuarioConsulta", SqlDbType.Int).Value = CveUsuarioConsulta
+ .Add("@GPO", SqlDbType.Int).Value = GPO
+ .Add("@CveMoneda", SqlDbType.Int).Value = CveMoneda
+ .Add("@TipoCambio", SqlDbType.Int).Value = TipoCambio
+ .Add("@TCEspecifico", SqlDbType.Float).Value = TCEspecifico
+ End With
+
+ Try
+ Dataset = New DataSet()
+ SqlAdapter.Fill(Dataset)
+ Retorno = True
+ Catch ex As Exception
+ OnError("Ocurrió un error al obtener el Reporte diario.", ex, SqlAdapter.SelectCommand.Parameters.ParametrosInfo)
+ End Try
+
+ Return Retorno
+ End Function
+
Public Function GetRepNCxAplicar(CveClienteSucursal As Integer, CveSubProyecto As Integer, CveCliente As Integer, FechaInicio As DateTime, FechaFin As DateTime, ConSaldo As Integer, CveEmpresa As Integer) As Boolean
Dim Retorno As Boolean = False
diff --git a/GPS/RepUnidades.aspx b/GPS/RepUnidades.aspx
new file mode 100644
index 000000000..cc8e5f70a
--- /dev/null
+++ b/GPS/RepUnidades.aspx
@@ -0,0 +1,264 @@
+<%@ Page Title="" Language="VB" MasterPageFile="~/Site.master" AutoEventWireup="false" CodeFile="RepUnidades.aspx.vb" Inherits="GPS_RepUnidades" %>
+
+
+
+
+
+
+
+ Reporte de Unidades
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ - Empresa:
+
+
+
+ - Cliente:
+
+
+
+ - Fecha Inicio:
+
+
+
+ - Fecha Fin:
+
+
+
+ - Estatus:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/GPS/RepUnidades.aspx.vb b/GPS/RepUnidades.aspx.vb
new file mode 100644
index 000000000..afcad6b0f
--- /dev/null
+++ b/GPS/RepUnidades.aspx.vb
@@ -0,0 +1,97 @@
+Option Strict On
+Option Explicit On
+Imports System.Data
+Imports Extensiones
+
+Partial Class GPS_RepUnidades
+ Inherits ClsPaginas
+
+ Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
+ If Not IsPostBack Then
+ CargaCombos()
+ End If
+ End Sub
+
+ Private Sub CargaCombos()
+ If UsuarioActual.CveRol = 1 Then
+ DdlEmpresa.DataSource = GlobalDTEmpresas().FiltraParametros("CvePlataforma = 3")
+ DdlEmpresa.DataBind()
+ DdlEmpresa.Items.Insert(0, New ListItem("Todas", "-1"))
+
+ DdlCliente.Items.Insert(0, New ListItem("Seleccione", "-1"))
+ Else
+ DdlEmpresa.DataSource = GlobalDTEmpresas().FiltraParametros($"CvePlataforma = 3 AND CveEmpresa = {UsuarioActual.CveEmpresa}")
+ DdlEmpresa.DataBind()
+
+ CargaClientes()
+ End If
+
+ UPFiltros.Update()
+ End Sub
+
+
+
+ Protected Sub GvDatos_RowDataBound(sender As Object, e As GridViewRowEventArgs)
+ If e.Row.RowType = DataControlRowType.DataRow Then
+ Select Case e.Row.DBCampo("TipoFila")
+ Case "1"
+ e.Row.CssClass = "Totales"
+ Case "2"
+ e.Row.CssClass = "SubTotales"
+ Case "3"
+ If e.Row.DBCampo("CveEstatus") = "0" Then
+ e.Row.FCLabel("LblEstatus").CssClass = "badge badge-danger"
+ Else
+ e.Row.FCLabel("LblEstatus").CssClass = "badge badge-success"
+ End If
+ End Select
+ End If
+ End Sub
+ Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs)
+ CargaDatos()
+ End Sub
+
+ Private Sub CargaDatos()
+ Dim FechaI As DateTime = MinFecha, FechaF As DateTime = MaxFecha
+
+ If Not String.IsNullOrEmpty(txtFechaI.Text) Then
+ FechaI = txtFechaI.Text.ToDateTime()
+ End If
+
+ If Not String.IsNullOrEmpty(txtFechaF.Text) Then
+ FechaF = txtFechaF.Text.ToDateTime()
+ End If
+
+ Using ObjGPS As New ClsGPS
+ If ObjGPS.GetRepUnidades(DdlEmpresa.SelectedValue.ToEntero(), DdlCliente.SelectedValue.ToEntero(), FechaI:=FechaI, FechaF:=FechaF, CveEstatus:=DdlEstatus.SelectedValue.ToEntero()) Then
+ GvDatos.DataSource = ObjGPS.DtResultados
+
+ Dim DtUnidades As DataTable = ObjGPS.DtResultados.FiltraParametros("CveDispositivo > 0", DistinctColumns:={"CveDispositivo", "CveEstatus"})
+
+ LtlTotalUnidades.Text = DtUnidades.Rows.Count.ToString()
+ LtlActivas.Text = DtUnidades.COUNT("CveDispositivo", "CveEstatus = 1").ToString()
+ LtlInactivas.Text = DtUnidades.COUNT("CveDispositivo", "CveEstatus = 0").ToString()
+
+ End If
+ End Using
+
+ GvDatos.DataBind()
+
+ UpDatos.Update()
+ End Sub
+
+ Protected Sub DdlEmpresa_SelectedIndexChanged(sender As Object, e As EventArgs)
+ CargaClientes()
+ UpDatos.Update()
+ End Sub
+
+ Private Sub CargaClientes()
+ If DdlEmpresa.SelectedValue.ToEntero() > 0 Then
+ DdlCliente.DataSource = GlobalDTCliente(DdlEmpresa.SelectedValue.ToEntero())
+ Else
+ DdlCliente.DataSource = Nothing
+ End If
+ DdlCliente.DataBind()
+ DdlCliente.Items.Insert(0, New ListItem("Todos", "-1"))
+ End Sub
+End Class