-- mejora en devoluciones con descuento y registro en almacen al mismo tiempo

This commit is contained in:
2022-05-10 12:48:26 -07:00
parent 9d48712856
commit 97a565a2e9

View File

@@ -4764,7 +4764,7 @@ Partial Class Compras_Compras
ViewState("CveCompra") = ObjCompras.CveCompra ViewState("CveCompra") = ObjCompras.CveCompra
If ObjCompras.DtResultados.Rows.Count > 0 Then ViewState("CompraFolio") = ObjCompras.DtResultados.Rows(0)("vFolio").ToString If ObjCompras.DtResultados.Rows.Count > 0 Then ViewState("CompraFolio") = ObjCompras.DtResultados.Rows(0)("vFolio").ToString
If DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then If DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then
Devolucion = guardardevolucion(ObjInventario, ObjCompras.CveCompra, TxtSubTotal.Text.ToDecimal, TxtFecha.Text.Trim.ToDate) Devolucion = guardardevolucion(ObjInventario, ObjCompras.CveCompra, TxtSubTotal2.Text.ToDecimal, TxtFecha.Text.Trim.ToDate)
TotalRealDevolucion = Devolucion.Total TotalRealDevolucion = Devolucion.Total
@@ -14414,26 +14414,21 @@ Partial Class Compras_Compras
Private Function guardardevolucion(ObjInventario As ClsInventarios, CveCompra As Integer, subtotal As Decimal, Fecha As Date) As MMensajeDevolucion Private Function guardardevolucion(ObjInventario As ClsInventarios, CveCompra As Integer, subtotal As Decimal, Fecha As Date) As MMensajeDevolucion
Dim TotalSumaPU As Decimal = 0
Dim TotalSumaPU As Decimal = 0.0D
Dim ErrorMovInv As Boolean = False Dim ErrorMovInv As Boolean = False
Dim CveAlmacen As Integer = DdlAlmacenDevolucion.SelectedValue.ToEntero() Dim CveAlmacen As Integer = DdlAlmacenDevolucion.SelectedValue.ToEntero()
Dim subtotaldevolucion As Double = 0 Dim subtotaldevolucion As Decimal = 0
Dim realizadevolucion As Boolean = False Dim realizadevolucion As Boolean = False
Dim CveMovimientoEntrada As Integer = -1 Dim CveMovimientoEntrada As Integer = -1
'Calculo los subtotales para comparar con la NC 'Calculo los subtotales para comparar con la NC
Dim cantidad As Double = 0.0 Dim Cantidad As Decimal
Dim TotalAlmacen As Decimal = 0
For Each Dr As GridViewRow In GVDevolucion.Rows For Each Dr As GridViewRow In GVDevolucion.Rows
'CveAlmacen = Dr.DataKey("CveAlmacen").ToString.ToEntero 'CveAlmacen = Dr.DataKey("CveAlmacen").ToString.ToEntero
cantidad = Dr.FCTextBox("TxtCantidad").Text.ToDouble cantidad = Dr.FCTextBox("TxtCantidad").Text.ToDecimal
If cantidad > 0 Then If cantidad > 0 Then
realizadevolucion = True realizadevolucion = True
subtotaldevolucion += Dr.DataKey("PU").ToString.ToDouble * cantidad subtotaldevolucion += Dr.DataKey("PU").ToString.ToDecimal * cantidad
End If End If
Next Next
'si no esta vinculado a nc simplemente me lo brinco 'si no esta vinculado a nc simplemente me lo brinco
@@ -14447,7 +14442,7 @@ Partial Class Compras_Compras
ErrorMovInv = True ErrorMovInv = True
Else Else
Dim Acumulado As Decimal = 0 Dim Acumulado As Decimal = 0
Dim PU As Decimal = 0 Dim PU As Decimal
Dim CantidadRenglones As Integer = 0 Dim CantidadRenglones As Integer = 0
Dim ii As Integer = 0 Dim ii As Integer = 0
For Each Dr As GridViewRow In GVDevolucion.Rows For Each Dr As GridViewRow In GVDevolucion.Rows
@@ -14466,7 +14461,6 @@ Partial Class Compras_Compras
PU = (((Dr.FCTextBox("TxtCantidad").Text.ToDecimal * Dr.DataKey("PU").ToString.ToDecimal)) + dif) / Dr.FCTextBox("TxtCantidad").Text.ToDecimal PU = (((Dr.FCTextBox("TxtCantidad").Text.ToDecimal * Dr.DataKey("PU").ToString.ToDecimal)) + dif) / Dr.FCTextBox("TxtCantidad").Text.ToDecimal
End If End If
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, Dr.FCTextBox("TxtCantidad").Text.ToDouble, Dr.DataKey("CveUM").ToString.ToEntero, Dr.DataKey("CvePS").ToString.ToEntero, PU, -1, CveMovimientoDetalleEntrada:=Dr.DataKey("CveMovimientoDetalle").ToString.ToEntero) Then If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, Dr.FCTextBox("TxtCantidad").Text.ToDouble, Dr.DataKey("CveUM").ToString.ToEntero, Dr.DataKey("CvePS").ToString.ToEntero, PU, -1, CveMovimientoDetalleEntrada:=Dr.DataKey("CveMovimientoDetalle").ToString.ToEntero) Then
ErrorMovInv = True ErrorMovInv = True
Exit For Exit For
@@ -14481,8 +14475,6 @@ Partial Class Compras_Compras
End If End If
End If End If
If ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa, -1, -1) Then If ObjInventario.GetMovimientosDetalle(CveMovimientoEntrada, UsuarioActual.CveEmpresa, -1, -1) Then
For Each drow As DataRow In ObjInventario.DtResultados.Rows For Each drow As DataRow In ObjInventario.DtResultados.Rows
@@ -14491,8 +14483,6 @@ Partial Class Compras_Compras
End If End If
Return New MMensajeDevolucion() With Return New MMensajeDevolucion() With
{ {
.CveMovimiento = CveMovimientoEntrada, .CveMovimiento = CveMovimientoEntrada,
@@ -14567,7 +14557,7 @@ Partial Class Compras_Compras
'si no esta vinculado a nc simplemente me lo brinco 'si no esta vinculado a nc simplemente me lo brinco
If realizadevolucion Then If realizadevolucion Then
'si el subtotal es iwal a la nc lo guardo si no marco error 'si el subtotal es iwal a la nc lo guardo si no marco error
If TxtSubTotal.Text.ToDouble > subtotaldevolucion - 1 AndAlso TxtSubTotal.Text.ToDouble < subtotaldevolucion + 1 Then If TxtSubTotal2.Text.ToDouble > subtotaldevolucion - 1 AndAlso TxtSubTotal2.Text.ToDouble < subtotaldevolucion + 1 Then
VinculaDevolucion() VinculaDevolucion()
@@ -14588,7 +14578,7 @@ Partial Class Compras_Compras
'LIMPIAR PARTIDAS DE LA COMPRA PARA AGREGAR NUEVAS 'LIMPIAR PARTIDAS DE LA COMPRA PARA AGREGAR NUEVAS
TmpDT.Clear() TmpDT.Clear()
Dim SubTotalCompra As Decimal = TxtSubTotal.Text.ToDecimal() Dim SubTotalCompra As Decimal = TxtSubTotal2.Text.ToDecimal()
Dim TotalCompra As Decimal = TxtTotal.Text.ToDecimal() Dim TotalCompra As Decimal = TxtTotal.Text.ToDecimal()
Dim IVACompra As Decimal = TxtIVA.Text.ToDecimal() Dim IVACompra As Decimal = TxtIVA.Text.ToDecimal()
Dim IEPSCompra As Decimal = TxtIEPS.Text.ToDecimal() Dim IEPSCompra As Decimal = TxtIEPS.Text.ToDecimal()