--mejora de logica de cancelacion de remisiones de NC

This commit is contained in:
2024-03-11 17:30:24 -07:00
parent 23f7d10c12
commit 34c8faddf6
2 changed files with 27 additions and 18 deletions

View File

@@ -3248,31 +3248,40 @@ Namespace Modelos
Dim TipoMovto68 As Boolean = TipoMovimiento
'SI ES CANCELACION DEBE GENERAR EL MOVIMIENTO DE SALIDA DE USADOS
If ValorMultiplicador = -1 Then
CveMovimientoReferencia = CancelarInventarioUsado(ObjFactura, CveAlmacen, CveMovimiento, ObjInventario, ObjConta, GenerarPrePoliza:=False)
Dim CveMovCancelacion = CancelarInventarioUsado(ObjFactura, CveAlmacen, CveMovimiento, ObjInventario, ObjConta, GenerarPrePoliza:=False)
If CveMovCancelacion > 0 Then
CveMovimientoReferencia = CveMovCancelacion
Else
ErrorPrepoliza = True
End If
Else
CveMovimientoReferencia = CveMovimiento
End If
' If ObjFactura.EsGarantia Then, el valor viene en cero ya
If ObjInventario.GetMovimientosDetalle(CveMovimientoReferencia, UsuarioActual.CveEmpresa) Then
Dim Importe68 As Decimal = ObjInventario.DtResultados.SUMD("Total").RoundSQL * ValorMultiplicador
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovto68, Importe68, Importe68, 68, Referencia, Concepto, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoReferencia, Contabilizable:=False) Then
If Not ErrorPrepoliza Then
If ObjInventario.GetMovimientosDetalle(CveMovimientoReferencia, UsuarioActual.CveEmpresa) Then
Dim Importe68 As Decimal = ObjInventario.DtResultados.SUMD("Total").RoundSQL * ValorMultiplicador
If Not ErrorPrepoliza AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovto68, Importe68, Importe68, 68, Referencia, Concepto, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoReferencia, Contabilizable:=False) Then
ErrorPrepoliza = True
End If
If Not ErrorPrepoliza AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovto68, importeMovimiento, importeMX, 277, Referencia, Concepto, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
ErrorPrepoliza = True
End If
Dim Importe318 As Decimal = (Math.Abs(importeMovimiento) - Math.Abs(Importe68)) * ValorMultiplicador
If Not ErrorPrepoliza AndAlso Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovto68, Importe318, Importe318, 318, Referencia, Concepto, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
ErrorPrepoliza = True
End If
Else
ErrorPrepoliza = True
End If
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, Not TipoMovto68, importeMovimiento, importeMX, 277, Referencia, Concepto, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
ErrorPrepoliza = True
End If
Dim Importe318 As Decimal = (Math.Abs(importeMovimiento) - Math.Abs(Importe68)) * ValorMultiplicador
If Not ObjConta.AddPrePolizasDetalle(ObjFactura.CvePrePoliza, TipoMovto68, Importe318, Importe318, 318, Referencia, Concepto, CveVenta:=ObjFactura.CveVenta, CveCliente:=ObjFactura.CveCliente, CveIE:=CveIE, ImporteME:=If(tipoCambio = 1, 0, importeMovimiento), Contabilizable:=False, CveSubProyecto:=CveSubProyectoContabilizar) Then
ErrorPrepoliza = True
End If
Else
ErrorPrepoliza = True
End If
'Else
' If ObjInventario.GetMovimientosDetalle(CveMovimientoReferencia, UsuarioActual.CveEmpresa) Then
' Dim Importe68 As Decimal = ObjInventario.DtResultados.SUMD("")

View File

@@ -3466,7 +3466,7 @@ Partial Class PV
Dim SbAlert As New StringBuilder
Try
Retorno = ObjFactura.EmitirFactura(Transac:=ObjAcum.IniciaTransacSQL())
Retorno = ObjFactura.EmitirFactura(Transac:=ObjAcum.IniciaTransacSQL(), Modulo:="PV/GuardarVenta")
If Retorno IsNot Nothing AndAlso Retorno.CveVenta > 0 Then