This commit is contained in:
Antonio Gonzalez
2020-06-17 21:18:28 -07:00

View File

@@ -4402,6 +4402,8 @@ Partial Class Compras_Compras
Dim IVA As Decimal = 1.16D
Dim ListaMovimientosAlmacen As New List(Of Integer)
Dim Devolucion As MMensajeDevolucion = Nothing
Dim ErrorCreditoCapitalIntres As Boolean = False
Dim ErrorCredito As Boolean = False
@@ -4572,7 +4574,9 @@ Partial Class Compras_Compras
ViewState("CveCompra") = ObjCompras.CveCompra
If ObjCompras.DtResultados.Rows.Count > 0 Then ViewState("CompraFolio") = ObjCompras.DtResultados.Rows(0)("vFolio").ToString
If DdlTipoComprobante.SelectedValue.Contiene("NC", "DEV") Then
ErrorMovDev = guardardevolucion(ObjInventario, ObjCompras.CveCompra, TxtSubTotal.Text.ToDouble, TxtFecha.Text.Trim.ToDate)
Devolucion = guardardevolucion(ObjInventario, ObjCompras.CveCompra, TxtSubTotal.Text.ToDouble, TxtFecha.Text.Trim.ToDate)
TieneError = Devolucion.TieneError
End If
Dim ErrorDetalles As Boolean = False
' Dim IDPoliza As Integer
@@ -6649,6 +6653,13 @@ Partial Class Compras_Compras
importeMN = importeMovimiento * tipoCambioActual * Multiplicador
Dim ConceptoContabilizacionNC = 225
Dim CveMovimientoDevolucion As Integer = -1
'CUANDO NO SE RECIBE LA MERCANCIA EN COMPRAS, SE REGISTRA EL 225, SI SE ESTA REGISTRANDO LA DEVOLUCION EN ALMACEN, SE REGISTRA EL 68
If Devolucion IsNot Nothing AndAlso Devolucion.DebeRealizarDevolucion AndAlso Devolucion.CveMovimiento > 0 Then
ConceptoContabilizacionNC = 68
CveMovimientoDevolucion = Devolucion.CveMovimiento
End If
If ObjConta.GetRetCuenta(ConceptoContabilizacionNC, UsuarioActual.CveEmpresa) Then
If ObjConta.DtResultados.Rows.Count > 0 Then
@@ -6666,7 +6677,7 @@ Partial Class Compras_Compras
idCuentaContabilizacion = 0
End If
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContabilizacionNC, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, TipoCambio:=tipoCambioActual, Contabilizable:=SeContabiliza) Then
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, TipoMovimiento, importeMovimiento, Referencia, ConceptoContabilizacionNC, Concepto, FechaMovimiento, IdCtaContable, -1, CveCompra:=CveCompra, CveProveedor:=CveProveedorConcepto, ImporteMX:=importeMN, ImporteME:=If(tipoCambioActual = 1, 0, importeMovimiento), CveCuenta:=CveCuenta, TipoCambio:=tipoCambioActual, CveMovimientoAlmacen:=CveMovimientoDevolucion, Contabilizable:=SeContabiliza) Then
ErrorPrepoliza = True
End If
@@ -13925,13 +13936,15 @@ Partial Class Compras_Compras
'*se envia true si hubo un error*'
Private Function guardardevolucion(ObjInventario As ClsInventarios, CveCompra As Integer, subtotal As Double, Fecha As Date) As Boolean
Private Function guardardevolucion(ObjInventario As ClsInventarios, CveCompra As Integer, subtotal As Double, Fecha As Date) As MMensajeDevolucion
Dim ErrorMovInv As Boolean = False
Dim CveAlmacen As Integer = DdlAlmacenDevolucion.SelectedValue.ToEntero()
Dim subtotaldevolucion As Double = 0
Dim realizadevolucion As Boolean = False
Dim CveMovimientoEntrada As Integer = -1
'Calculo los subtotales para comparar con la NC
Dim cantidad As Double = 0.0
For Each Dr As GridViewRow In GVDevolucion.Rows
'CveAlmacen = Dr.DataKey("CveAlmacen").ToString.ToEntero
cantidad = Dr.FCTextBox("TxtCantidad").Text.ToDouble
@@ -13946,7 +13959,7 @@ Partial Class Compras_Compras
'si el subtotal es iwal a la nc lo guardo si no marco error
If subtotal > subtotaldevolucion - 1 AndAlso subtotal < subtotaldevolucion + 1 Then
Dim CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacen, 13, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCompra, -1, -1, -1, Modulo:="Comp/G")
CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacen, 13, 1, Fecha, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveCompra, -1, -1, -1, Modulo:="Comp/G")
If CveMovimientoEntrada <= 0 Then
ErrorMovInv = True
Else
@@ -13964,9 +13977,14 @@ Partial Class Compras_Compras
Alert("El Total de la NC debe ser igual al total de la devolucion", TipoMensaje.MsgAdvertencia)
End If
End If
Return ErrorMovInv
End Function
Return New MMensajeDevolucion() With
{
.CveMovimiento = CveMovimientoEntrada,
.DebeRealizarDevolucion = realizadevolucion,
.TieneError = ErrorMovInv
}
End Function
Private Sub cargaddldevoluciones(CveProveedor As Integer, SubTotal As Double)
Dim objcompras As New ClsCompras()
@@ -19887,4 +19905,10 @@ Partial Class Compras_Compras
End If
End Sub
End Class
Public Class MMensajeDevolucion
Public Property CveMovimiento As Integer
Public Property TieneError As Boolean
Public Property DebeRealizarDevolucion As Boolean
End Class