diff --git a/Ventas/Ventas.aspx.vb b/Ventas/Ventas.aspx.vb index 31e2c7cab..ae5e7372b 100644 --- a/Ventas/Ventas.aspx.vb +++ b/Ventas/Ventas.aspx.vb @@ -4819,7 +4819,7 @@ Partial Class Ventas End Sub Private Sub CargaCliente(CveCliente As Integer, Optional Estatus As Integer = -1) - + If CveCliente <= 0 Then Exit Sub RBLPago.Items(0).Enabled = True @@ -7481,7 +7481,7 @@ Partial Class Ventas ObjContr.Dispose() ObjDocCliente.Dispose() 'ObjFolios.Dispose() - ErrorList.Clear + ErrorList.Clear() ErrorList = Nothing MensajeAlert = Nothing If ObjContPaq IsNot Nothing Then ObjContPaq.Dispose() @@ -9021,7 +9021,7 @@ Partial Class Ventas i += 1 Next - Dim AplicaComercioExteriorSubProyecto As Boolean = If(GlobalDTSubProyectos(-1, Obj.CveSubProyecto)(0)("AplicaComercioExterior").ToString() = "True", True, False) + Dim AplicaComercioExteriorSubProyecto As Boolean = If(GlobalDTSubProyectos(-1, Obj.CveSubProyecto, CveEmpresa:=UsuarioActual.CveEmpresa)(0)("AplicaComercioExterior").ToString() = "True", True, False) Timbre.Complementos.ComercioExterior11.AplicaComercioExteriorSubProyecto = AplicaComercioExteriorSubProyecto If Obj.Cliente.AplicaComercioExterior And AplicaComercioExteriorSubProyecto Then 'DATOS GENERALES @@ -9037,8 +9037,8 @@ Partial Class Ventas 'EMISOR Dim Dr As DataRow Dr = Nothing - If GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero()).Rows.Count > 0 Then - Dr = GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero())(0) + If GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa).Rows.Count > 0 Then + Dr = GlobalDTSubProyectos(-1, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveEmpresa:=UsuarioActual.CveEmpresa)(0) End If Timbre.Complementos.ComercioExterior11.Emisor.CURP = UsuarioActual.Empresa.CURP Timbre.Complementos.ComercioExterior11.Emisor.Calle = Dr("Calle").ToString() @@ -13818,7 +13818,6 @@ Partial Class Ventas ObjPS.Dispose() End If - If PrecioSugerido = 0 Then Dim ObjInventarios As New ClsInventarios Dim CostoPS = ObjInventarios.GetCostoPS(CvePSParametro, TxtCantidad.Text.Trim.ToDouble, -1, "-1", TxtFecha.Text.ToDate, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveTipoAlmacen:=1) @@ -13829,7 +13828,7 @@ Partial Class Ventas PrecioSugerido = ((PorcentajePrecio / 100) + 1) * CostoPS End If End If - + CvePrecioLista = CvePrecioListaPS End If @@ -16103,6 +16102,8 @@ Partial Class Ventas Dim DtMovimientosDetalles As DataTable DtRemConceptosSurtidos = Nothing + Dim TieneMovimientosSinCosto As Boolean = False + 'Obtenemos los movimientos detalle If ObjInventario.GetInv_Mov(CveRemision, UsuarioActual.CveEmpresa) Then @@ -16133,6 +16134,9 @@ Partial Class Ventas 'VALIDAR SI TIENE PRODUCTOS POR TRASPASAR If DtMovimientos.Rows.Count > 0 Then Dim GeneroMovimientoAlmacen As Boolean = False + + TieneMovimientosSinCosto = DtMovimientosDetalles.COUNT("CveTipoAlmacen", "CveTipoAlmacen=26") > 0 + For Each dr As DataRow In DtMovimientos.Rows 'Obtenemos los Movimientos de salida If ObjInventario.GetMovimientos(dr("CveMovimiento").ToString().ToEntero(), ConceptoMovimiento, -1, UsuarioActual.CveEmpresa) Then @@ -16149,9 +16153,14 @@ Partial Class Ventas Dim MovDetalle As New DataTable Dim AplicaMovimientoDetalleEntrada As Boolean = False + If RemisionesLista.Count > 0 Then AplicaMovimientoDetalleEntrada = True - MovDetalle = CuadrarFacturaMovimientos(DtMovimientosDetalles.FiltraParametros($"CveMovimiento = {dr("CveMovimiento")} AND (TieneSalidaxFactura IS NULL OR SaldoAlmacen > 0)")) + If TieneMovimientosSinCosto Then + MovDetalle = DtMovimientosDetalles.FiltraParametros($"CveMovimiento = {dr("CveMovimiento")}") + Else + MovDetalle = CuadrarFacturaMovimientos(DtMovimientosDetalles.FiltraParametros($"CveMovimiento = {dr("CveMovimiento")} AND (TieneSalidaxFactura IS NULL OR SaldoAlmacen > 0)")) + End If Else MovDetalle = DtMovimientosDetalles.FiltraParametros($"CveMovimiento = {dr("CveMovimiento")}") End If @@ -16226,7 +16235,10 @@ Partial Class Ventas MovDetalle.Dispose() - OcurrioError = Not GeneroMovimientoAlmacen + 'VERIFICA QUE SE HAYA GENERADO MOVIMIENTO DE ALMACEN + If Not OcurrioError Then + OcurrioError = Not GeneroMovimientoAlmacen + End If End If End If