From 3136bf5353a91117ba4b1ee1cc35a49c50c197c6 Mon Sep 17 00:00:00 2001 From: Jonathan Alexis Perez Morales Date: Wed, 21 Feb 2024 10:32:51 -0700 Subject: [PATCH] Econo - en traspasoalmacen. solo mostrar los almacenes del centro de costo origen. --- App_Code/ClsInventarios.vb | 3 ++- Ashx/SIGWeb.ashx | 36 +++++++++++++++++------------ Inventarios/TraspasoAlmacen.aspx.vb | 27 ++++++++++++++-------- Ventas/Ventas.aspx.vb | 19 +++++++++++---- 4 files changed, 55 insertions(+), 30 deletions(-) diff --git a/App_Code/ClsInventarios.vb b/App_Code/ClsInventarios.vb index ec489f0a4..fcef9ea54 100644 --- a/App_Code/ClsInventarios.vb +++ b/App_Code/ClsInventarios.vb @@ -2178,7 +2178,7 @@ Public Class ClsInventarios Return Retorno End Function - Public Function GetExistenciasProductosLike(PS As String, CveClasificacion As Integer, CveSubProyecto As Integer, Estatus As Integer, AplicaParaVenta As Integer, CveEmpresa As Integer, Optional CveMarca As Integer = -1) As Boolean + Public Function GetExistenciasProductosLike(PS As String, CveClasificacion As Integer, CveSubProyecto As Integer, Estatus As Integer, AplicaParaVenta As Integer, CveEmpresa As Integer, Optional CveMarca As Integer = -1, Optional MostrarTodosAlmacenes As Boolean = False) As Boolean Dim Retorno As Boolean = False DataAdapter("PA_ProductosServiciosInventario") @@ -2190,6 +2190,7 @@ Public Class ClsInventarios .Add("@AplicaParaVenta", SqlDbType.Int).Value = AplicaParaVenta .Add("@CveEmpresa", SqlDbType.Int).Value = CveEmpresa .Add("@CveMarca", SqlDbType.Int).Value = CveMarca + .Add("@MostrarTodosAlmacenes", SqlDbType.Bit).Value = MostrarTodosAlmacenes End With Try diff --git a/Ashx/SIGWeb.ashx b/Ashx/SIGWeb.ashx index 82169dccc..c0b7273e1 100644 --- a/Ashx/SIGWeb.ashx +++ b/Ashx/SIGWeb.ashx @@ -929,33 +929,39 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState Dim CveMarca = IfNull(context.Request("cvemarca"), "-1").ToString.ToEntero Dim UsaGlobal As Boolean = True + Dim MostrarTodosAlmacenes As Boolean = False 'verifica existencias If Pagina.Contiene("ventas/ventas", "oc/oc", "inv/traspaso") AndAlso usuario.Empresa.Funcionalidad(141) = "1" Then UsaGlobal = False - 'If CveEmpresa.Contiene(140, 141) And Pagina.Contiene("ventas/ventas") Then - ' AplicaParaVenta = 1 - 'End If + If (usuario.Empresa.Funcionalidad(558) = "1" OrElse usuario.Empresa.Funcionalidad(531) = "1") AndAlso Pagina.Contiene("ventas/ventas") Then + MostrarTodosAlmacenes = True + End If Dim objInv As New ClsInventarios - If objInv.GetExistenciasProductosLike(Name, CveClasificacion, CveSubProyecto, Estatus.ToEntero, AplicaParaVenta, CveEmpresa, CveMarca) Then + Try + If objInv.GetExistenciasProductosLike(Name, CveClasificacion, CveSubProyecto, Estatus.ToEntero, AplicaParaVenta, CveEmpresa, CveMarca, MostrarTodosAlmacenes:=MostrarTodosAlmacenes) Then - ' limpio los almacenes donde no tiene ningun producto existencia + ' limpio los almacenes donde no tiene ningun producto existencia - Dim i As Integer = 0 - While i < objInv.DtResultados.Columns.Count + Dim i As Integer = 0 + While i < objInv.DtResultados.Columns.Count - If Not objInv.DtResultados.Columns(i).ColumnName.Contiene("CvePS", "PSCodigo", "PSCodigoClasificacion", "CveClasificacion") AndAlso objInv.DtResultados.SUM(String.Format("[{0}]", objInv.DtResultados.Columns(i).ColumnName)) = 0 Then - objInv.DtResultados.Columns.RemoveAt(i) - Else - i = i + 1 - End If - End While + If Not objInv.DtResultados.Columns(i).ColumnName.Contiene("CvePS", "PSCodigo", "PSCodigoClasificacion", "CveClasificacion") AndAlso objInv.DtResultados.SUM(String.Format("[{0}]", objInv.DtResultados.Columns(i).ColumnName)) = 0 Then + objInv.DtResultados.Columns.RemoveAt(i) + Else + i = i + 1 + End If + End While - DtPSRetorno = objInv.DtResultados + DtPSRetorno = objInv.DtResultados + + End If + Catch ex As Exception + GuardaLog(ex.ToString()) + End Try - End If objInv.Dispose() diff --git a/Inventarios/TraspasoAlmacen.aspx.vb b/Inventarios/TraspasoAlmacen.aspx.vb index e63644c9a..34677b0fe 100644 --- a/Inventarios/TraspasoAlmacen.aspx.vb +++ b/Inventarios/TraspasoAlmacen.aspx.vb @@ -500,7 +500,7 @@ Partial Class Inventarios_TraspasoAlmacen ' DdlProducto.Visible = False 'End If - CargaPS() + FiltraPS() 'Folio SiguienteFolio(If(ChkTransitorio.Checked, 9, 8)) @@ -508,6 +508,17 @@ Partial Class Inventarios_TraspasoAlmacen 'DdlProducto.DataBind() CargarCamiones() End Sub + Private Sub FiltraPS() + If UsuarioActual.Empresa.Funcionalidad(558) = "1" AndAlso DdlAlmacenOrigen.SelectedValue.ToEntero() > 0 Then + Dim DtAlmacen = GlobalDTAlmacen(UsuarioActual.CveEmpresa, CveAlmacen:=DdlAlmacenOrigen.SelectedValue.ToEntero()) + If DtAlmacen IsNot Nothing Then + Dim CveSubProyecto As Integer = DtAlmacen.FiltroPrimeroValor("CveSubProyecto").ToEntero() + CargaPS(CveSubProyecto) + End If + Else + CargaPS(-1) + End If + End Sub Private Sub CargaAlmacenOrigen() DdlAlmacenOrigen.Enabled = True DdlAlmacenOrigen.Items.Clear() @@ -517,7 +528,7 @@ Partial Class Inventarios_TraspasoAlmacen DdlAlmacenOrigen.DataBind() DdlAlmacenOrigen.SelectedValueExist(UsuarioActual.CveAlmacen) End Sub - Private Sub CargaPS() + Private Sub CargaPS(CveSubProyecto As Integer) Dim EsWS As Boolean = If(UsuarioActual.Empresa.Funcionalidad(105) = "1" Or UsuarioActual.Empresa.Funcionalidad(141) = "1", True, False) DdlProducto2.setEsWebService(EsWS) @@ -526,8 +537,8 @@ Partial Class Inventarios_TraspasoAlmacen 'DdlProducto2.ddlWS.Attributes.Add("data-cveclasificacion", DdlClasificacion.SelectedValue) If UsuarioActual.Empresa.Funcionalidad(141) = "1" Then DdlProducto2.ddlWS.Attributes.Add("data-pagina", "inv/traspaso") + DdlProducto2.ddlWS.Attributes.Add("data-cvesubproyecto", CveSubProyecto.ToString()) DdlProducto2.ddlWS.Attributes.Add("Data-onresult", "CargaExistenciaAlmacenes") - CargaExistenciasSucursal() DdlAlmacenOrigen.AutoPostBack = True End If Else @@ -538,8 +549,8 @@ Partial Class Inventarios_TraspasoAlmacen End Sub Private Sub CargaExistenciasSucursal() - DdlProducto2.Attributes.Remove("Data-cvesubproyecto") - DdlProducto2.Attributes.Add("Data-cvesubproyecto", GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen = {DdlAlmacenOrigen.SelectedValue}")) + DdlProducto2.Attributes.Clear() + FiltraPS() End Sub Private Sub SiguienteFolio(CveConcepto As Integer) 'Dim Inv As New ClsInventarios @@ -1005,10 +1016,8 @@ Partial Class Inventarios_TraspasoAlmacen 'AGREGAMOS LA SALIDA DEL ALMACEN ORIGEN CveMovimientoSalida = ObjInventario.AddMovimiento(DdlAlmacenOrigen.SelectedValue.ToEntero, TipoMovimientoSalida, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Recibio:=If(ChkTransitorio.Checked, TxtResponsable.Text.Trim, "-1"), - CveAlmacenDestino:=DdlAlmacenDestino.SelectedValue.ToEntero, GastoIndirecto:=If(ChkTransitorio.Checked And TxtGastoIndirecto.Text.ToDecimal > 0, TxtGastoIndirecto.Text, "-1").ToDecimal, - CveChofer:=If(ChkTransitorio.Checked, DdlChofer.SelectedValue.ToEntero, -1), Placa:="", FechaEntrega:=If(ChkTransitorio.Checked, TxtFechaEntrega.Text.Trim.ToDateTime.ToString("dd/MM/yyyy"), "-1"), EspecifUnidad:="", - ResponsableCarga:="", ResponsableRecibio:="", Identificacion:="", Domicilio:="", - Telefono:="", Ciudad:="", Licencia:="", Modulo:="TA/G2", CveFolioGarantia:=CveFolioGarantia) + CveAlmacenDestino:=DdlAlmacenDestino.SelectedValue.ToEntero, GastoIndirecto:=If(ChkTransitorio.Checked And TxtGastoIndirecto.Text.ToDecimal > 0, TxtGastoIndirecto.Text, "-1").ToDecimal, ResponsableCarga:="", ResponsableRecibio:="", + Modulo:="TA/G2", CveFolioGarantia:=CveFolioGarantia) FolioSalida = ObjInventario.Folio Folio = ObjInventario.Folio If CveMovimientoSalida <= 0 Then diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index fd2f49563..eb2ea2277 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -3463,10 +3463,14 @@ Partial Class Ventas LblRotacion.Text = FechaRotaAlinea.AddMonths(6).ToShortDateString LblAlineacion.Text = FechaRotaAlinea.AddMonths(6).ToShortDateString - If UsuarioActual.Empresa.Funcionalidad(558) = "1" AndAlso Me.CveVenta > 0 AndAlso DdlTipoComprobante.SelectedValue = "Cot" Then + If Me.CveVenta > 0 AndAlso DdlTipoComprobante.SelectedValue = "Cot" Then HplDownPDF.Visible = False End If + DdlPS.Attributes.Remove("data-cvesubproyecto") + DdlPS.Attributes.Add("data-cvesubproyecto", DdlSubProyectoDatos.SelectedValue) + + UpPS.Update() UPObservaciones.Update() End If @@ -7893,10 +7897,10 @@ Partial Class Ventas End If Dim cvesubproyecto As String = DdlSubProyectoDatos.SelectedValue - If UsuarioActual.Empresa.Funcionalidad(558) = "1" OrElse UsuarioActual.Empresa.Funcionalidad(531) = "1" Then - 'cuando es empresa llantera (558) o cuando es empresa acumuladores - cvesubproyecto = "-1" - End If + 'If UsuarioActual.Empresa.Funcionalidad(558) = "1" OrElse UsuarioActual.Empresa.Funcionalidad(531) = "1" Then + ' 'cuando es empresa llantera (558) o cuando es empresa acumuladores + ' cvesubproyecto = "-1" + 'End If Objeto.Attributes.Add("data-cvesubproyecto", cvesubproyecto) Objeto.ddlWS.Attributes.Add("data-cveclasificacion", CveClasificacion.ToString()) @@ -17431,6 +17435,11 @@ Partial Class Ventas CargaVendedores() HabilitarRemisionesPublicoGeneral() + If UsuarioActual.Empresa.Funcionalidad(558) = "1" Then + DdlPS.Attributes.Remove("data-cvesubproyecto") + DdlPS.Attributes.Add("data-cvesubproyecto", DdlSubProyectoDatos.SelectedValue) + End If + UpDetalle.Update() UpEmitirTransitorio.Update() End Sub