Validacion de devoluciones de almacen al cancelar
This commit is contained in:
@@ -4542,7 +4542,7 @@ Namespace Modelos
|
|||||||
If Not SeCancela Then
|
If Not SeCancela Then
|
||||||
Dim ObjRem As New Modelos.Factura(UsuarioActual, DrMovtos("CveRem").ToString.ToEntero(), UsuarioActual.CveEmpresa)
|
Dim ObjRem As New Modelos.Factura(UsuarioActual, DrMovtos("CveRem").ToString.ToEntero(), UsuarioActual.CveEmpresa)
|
||||||
|
|
||||||
If True Then ' ObjRem.SaldoAlmacen = 0
|
If ObjRem.SaldoAlmacen = 0 Then
|
||||||
CveAlmacenTraspasoDestinoDevRem = DrMovtos("CveAlmacenTraspasoDestino").ToString.ToEntero
|
CveAlmacenTraspasoDestinoDevRem = DrMovtos("CveAlmacenTraspasoDestino").ToString.ToEntero
|
||||||
|
|
||||||
If Not CveAlmacenTraspasoDestinoDevRem > 0 Then
|
If Not CveAlmacenTraspasoDestinoDevRem > 0 Then
|
||||||
@@ -4613,6 +4613,7 @@ Namespace Modelos
|
|||||||
Exit For
|
Exit For
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
ObjRem.Dispose()
|
||||||
|
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
|||||||
@@ -1465,8 +1465,6 @@ Partial Class Inventarios_RecepcionEntrega
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
'VALIDA CANTIDAD DE SALIDA
|
'VALIDA CANTIDAD DE SALIDA
|
||||||
Dim Cantidad As Decimal = 0.0D
|
Dim Cantidad As Decimal = 0.0D
|
||||||
For Each Gvr As GridViewRow In GvDatos.Rows
|
For Each Gvr As GridViewRow In GvDatos.Rows
|
||||||
@@ -2214,122 +2212,123 @@ Partial Class Inventarios_RecepcionEntrega
|
|||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
' SE REALIZARA AL MOMENTO DE CANCELAR LA FACTURA {
|
||||||
'DEVOLUCION REMISION - REGRESA LAS EXISTENCIAS A ENTREGA POR ADELANTADO SI LA FACTURA VIENE DE REMISION
|
'DEVOLUCION REMISION - REGRESA LAS EXISTENCIAS A ENTREGA POR ADELANTADO SI LA FACTURA VIENE DE REMISION
|
||||||
If Not ErrorMovInv And EsDevolucionVenta = 1 And TipoDocto = "Ing" Then
|
|
||||||
Dim DtDevRem As New DataTable
|
|
||||||
Dim DtMovtosDev As New DataTable
|
|
||||||
Dim CveAlmacenTraspasoDestinoDevRem = -1
|
|
||||||
|
|
||||||
Dim CveVentaDetalleRem = -1
|
'If Not ErrorMovInv And EsDevolucionVenta = 1 And TipoDocto = "Ing" Then
|
||||||
Dim CantidadDevolver As Decimal = 0
|
' Dim DtDevRem As New DataTable
|
||||||
Dim CantidadRem As Decimal = 0
|
' Dim DtMovtosDev As New DataTable
|
||||||
|
' Dim CveAlmacenTraspasoDestinoDevRem = -1
|
||||||
|
|
||||||
'CARGA REMISIONES DE LA VENTA DEVUELTA
|
' Dim CveVentaDetalleRem = -1
|
||||||
If ObjInventario.GetDevolucionRemisionesFacturadas(CveVentaSurtir) Then
|
' Dim CantidadDevolver As Decimal = 0
|
||||||
DtDevRem = ObjInventario.DtResultados.FiltraParametros("CantidadAlmacen > 0")
|
' Dim CantidadRem As Decimal = 0
|
||||||
Else
|
|
||||||
ErrorMovInv = True
|
|
||||||
End If
|
|
||||||
|
|
||||||
'CARGA CONCEPTOS DEVUELTOS EN LA VENTA
|
' 'CARGA REMISIONES DE LA VENTA DEVUELTA
|
||||||
If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then
|
' If ObjInventario.GetDevolucionRemisionesFacturadas(CveVentaSurtir) Then
|
||||||
DtMovtosDev = ObjInventario.DtResultados
|
' DtDevRem = ObjInventario.DtResultados.FiltraParametros("CantidadAlmacen > 0")
|
||||||
Else
|
' Else
|
||||||
ErrorMovInv = True
|
' ErrorMovInv = True
|
||||||
End If
|
' End If
|
||||||
|
|
||||||
If Not ErrorMovInv Then
|
' 'CARGA CONCEPTOS DEVUELTOS EN LA VENTA
|
||||||
If DtDevRem.Rows.Count > 0 And DtMovtosDev.Rows.Count > 0 Then
|
' If ObjInventario.GetMovimientosDetalle(CveMovimiento, UsuarioActual.CveEmpresa) Then
|
||||||
|
' DtMovtosDev = ObjInventario.DtResultados
|
||||||
|
' Else
|
||||||
|
' ErrorMovInv = True
|
||||||
|
' End If
|
||||||
|
|
||||||
For Each DrMovtos As DataRow In DtDevRem.FiltraParametros("", "CveRem", {"CveRem", "CveAlmacenTraspasoDestino"}).Rows
|
' If Not ErrorMovInv Then
|
||||||
CveAlmacenTraspasoDestinoDevRem = DrMovtos("CveAlmacenTraspasoDestino").ToString.ToEntero
|
' If DtDevRem.Rows.Count > 0 And DtMovtosDev.Rows.Count > 0 Then
|
||||||
If Not CveAlmacenTraspasoDestinoDevRem > 0 Then
|
|
||||||
ErrorMovInv = True
|
|
||||||
TextoError = "Ocurrió un error al obtener el almacén de devolucion de remisión."
|
|
||||||
Exit For
|
|
||||||
End If
|
|
||||||
|
|
||||||
'SALIDA GENERAL
|
' For Each DrMovtos As DataRow In DtDevRem.FiltraParametros("", "CveRem", {"CveRem", "CveAlmacenTraspasoDestino"}).Rows
|
||||||
CveMovimientoSalidaDevRem = ObjInventario.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, 8, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, CveContrato:=CveContrato, CveMovimientoRelacionado:=CveMovimiento, CveAlmacenDestino:=CveAlmacenTraspasoDestinoDevRem)
|
' CveAlmacenTraspasoDestinoDevRem = DrMovtos("CveAlmacenTraspasoDestino").ToString.ToEntero
|
||||||
FolioMovimientoSalidaDevRem = ObjInventario.Folio
|
' If Not CveAlmacenTraspasoDestinoDevRem > 0 Then
|
||||||
|
' ErrorMovInv = True
|
||||||
|
' TextoError = "Ocurrió un error al obtener el almacén de devolucion de remisión."
|
||||||
|
' Exit For
|
||||||
|
' End If
|
||||||
|
|
||||||
'ENTRADA ADELANTADO
|
' 'SALIDA GENERAL
|
||||||
CveMovimientoEntradaDevRem = ObjInventario.AddMovimiento(CveAlmacenTraspasoDestinoDevRem, 9, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, CveContrato:=CveContrato, CveMovimientoRelacionado:=CveMovimientoSalidaDevRem, CveAlmacenDestino:=DdlAlmacen.SelectedValue.ToEntero)
|
' CveMovimientoSalidaDevRem = ObjInventario.AddMovimiento(DdlAlmacen.SelectedValue.ToEntero, 8, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, CveContrato:=CveContrato, CveMovimientoRelacionado:=CveMovimiento, CveAlmacenDestino:=CveAlmacenTraspasoDestinoDevRem)
|
||||||
FolioMovimientoEntradaDevRem = ObjInventario.Folio
|
' FolioMovimientoSalidaDevRem = ObjInventario.Folio
|
||||||
|
|
||||||
If Not (CveMovimientoSalidaDevRem > 0 And CveMovimientoEntradaDevRem > 0) Then
|
' 'ENTRADA ADELANTADO
|
||||||
ErrorMovInv = True
|
' CveMovimientoEntradaDevRem = ObjInventario.AddMovimiento(CveAlmacenTraspasoDestinoDevRem, 9, 1, TxtFecha.Text.ToDate, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObservaciones.Text.Trim, Guia:=TxtGuia.Text, CveContrato:=CveContrato, CveMovimientoRelacionado:=CveMovimientoSalidaDevRem, CveAlmacenDestino:=DdlAlmacen.SelectedValue.ToEntero)
|
||||||
TextoError = "Ocurrió un error al generar los movimientos de devolución a remisión."
|
' FolioMovimientoEntradaDevRem = ObjInventario.Folio
|
||||||
Exit For
|
|
||||||
End If
|
' If Not (CveMovimientoSalidaDevRem > 0 And CveMovimientoEntradaDevRem > 0) Then
|
||||||
|
' ErrorMovInv = True
|
||||||
|
' TextoError = "Ocurrió un error al generar los movimientos de devolución a remisión."
|
||||||
|
' Exit For
|
||||||
|
' End If
|
||||||
|
|
||||||
|
|
||||||
'SALIDA POR TRAPASO DE GENERAL
|
' 'SALIDA POR TRAPASO DE GENERAL
|
||||||
For Each DrRem As DataRow In DtDevRem.FiltraParametros($"CveRem = {DrMovtos("CveRem")}").Rows
|
' For Each DrRem As DataRow In DtDevRem.FiltraParametros($"CveRem = {DrMovtos("CveRem")}").Rows
|
||||||
CveVentaDetalleRem = DrRem("CveVentaDetalleRem").ToString.ToEntero
|
' CveVentaDetalleRem = DrRem("CveVentaDetalleRem").ToString.ToEntero
|
||||||
CantidadRem = DrRem("CantidadFacturada").ToString.ToDecimal
|
' CantidadRem = DrRem("CantidadFacturada").ToString.ToDecimal
|
||||||
'CantidadDevolver = DtMovtosDev.FiltroPrimeroValor("Cantidad", $"CveVentaDetalle = {DrRem("CveVentaDetalle").ToString.ToEntero}").ToDouble
|
' 'CantidadDevolver = DtMovtosDev.FiltroPrimeroValor("Cantidad", $"CveVentaDetalle = {DrRem("CveVentaDetalle").ToString.ToEntero}").ToDouble
|
||||||
'If (Dr("Cantidad").ToString.ToDouble > CantidadRem, CantidadRem, Dr("Cantidad").ToString.ToDouble) Then
|
' 'If (Dr("Cantidad").ToString.ToDouble > CantidadRem, CantidadRem, Dr("Cantidad").ToString.ToDouble) Then
|
||||||
|
|
||||||
If Not CveVentaDetalleRem > 0 Then
|
' If Not CveVentaDetalleRem > 0 Then
|
||||||
ErrorMovInv = True
|
' ErrorMovInv = True
|
||||||
TextoError = "Ocurrió un error al obtener la relación de la venta con la remisión."
|
' TextoError = "Ocurrió un error al obtener la relación de la venta con la remisión."
|
||||||
Exit For
|
' Exit For
|
||||||
End If
|
' End If
|
||||||
|
|
||||||
For Each Dr As DataRow In DtMovtosDev.FiltraParametros($"CveVentaDetalle = {DrRem("CveVentaDetalle").ToString.ToEntero}").Rows
|
' For Each Dr As DataRow In DtMovtosDev.FiltraParametros($"CveVentaDetalle = {DrRem("CveVentaDetalle").ToString.ToEntero}").Rows
|
||||||
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalidaDevRem, Dr("Cantidad").ToString.ToDecimal, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDouble, Dr("CveAF").ToString.ToEntero, -1, Dr("SerieLote").ToString, CveVentaDetalle:=CveVentaDetalleRem, Lote:=Dr("Lote").ToString, Batch:=Dr("Batch").ToString) Then
|
' If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalidaDevRem, Dr("Cantidad").ToString.ToDecimal, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDouble, Dr("CveAF").ToString.ToEntero, -1, Dr("SerieLote").ToString, CveVentaDetalle:=CveVentaDetalleRem, Lote:=Dr("Lote").ToString, Batch:=Dr("Batch").ToString) Then
|
||||||
ErrorMovInv = True
|
' ErrorMovInv = True
|
||||||
TextoError = "Ocurrió un error al guardar los movimientos de salida de traspaso de devolucion de remisión."
|
' TextoError = "Ocurrió un error al guardar los movimientos de salida de traspaso de devolucion de remisión."
|
||||||
Exit For
|
' Exit For
|
||||||
End If
|
' End If
|
||||||
Next
|
' Next
|
||||||
|
|
||||||
If ErrorMovInv Then
|
' If ErrorMovInv Then
|
||||||
Exit For
|
' Exit For
|
||||||
End If
|
' End If
|
||||||
Next
|
' Next
|
||||||
|
|
||||||
If ErrorMovInv Then
|
' If ErrorMovInv Then
|
||||||
Exit For
|
' Exit For
|
||||||
End If
|
' End If
|
||||||
|
|
||||||
'ENTRADA POR TRAPASO A ENTREGA POR ADELANTADO
|
' 'ENTRADA POR TRAPASO A ENTREGA POR ADELANTADO
|
||||||
If ObjInventario.GetMovimientosDetalle(CveMovimientoSalidaDevRem, UsuarioActual.CveEmpresa) Then
|
' If ObjInventario.GetMovimientosDetalle(CveMovimientoSalidaDevRem, UsuarioActual.CveEmpresa) Then
|
||||||
For Each Dr As DataRow In ObjInventario.DtResultados.Rows
|
' For Each Dr As DataRow In ObjInventario.DtResultados.Rows
|
||||||
If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntradaDevRem, Dr("Cantidad").ToString.ToDecimal, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDecimal, Dr("CveAF").ToString.ToEntero, -1, Dr("SerieLote").ToString, CveVentaDetalle:=Dr("CveVentaDetalle").ToString.ToEntero, Lote:=Dr("Lote").ToString, Batch:=Dr("Batch").ToString) Then
|
' If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntradaDevRem, Dr("Cantidad").ToString.ToDecimal, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero, Dr("PU").ToString.ToDecimal, Dr("CveAF").ToString.ToEntero, -1, Dr("SerieLote").ToString, CveVentaDetalle:=Dr("CveVentaDetalle").ToString.ToEntero, Lote:=Dr("Lote").ToString, Batch:=Dr("Batch").ToString) Then
|
||||||
ErrorMovInv = True
|
' ErrorMovInv = True
|
||||||
TextoError = "Ocurrió un error al guardar los movimientos de entrada de traspaso de devolucion de remisión."
|
' TextoError = "Ocurrió un error al guardar los movimientos de entrada de traspaso de devolucion de remisión."
|
||||||
Exit For
|
' Exit For
|
||||||
End If
|
' End If
|
||||||
Next
|
' Next
|
||||||
|
|
||||||
If ErrorMovInv Then
|
' If ErrorMovInv Then
|
||||||
Exit For
|
' Exit For
|
||||||
End If
|
' End If
|
||||||
|
|
||||||
Else
|
' Else
|
||||||
ErrorMovInv = True
|
' ErrorMovInv = True
|
||||||
TextoError = "Ocurrió un error al obtener los detalles de la devolución de almacén"
|
' TextoError = "Ocurrió un error al obtener los detalles de la devolución de almacén"
|
||||||
Exit For
|
' Exit For
|
||||||
End If
|
' End If
|
||||||
|
|
||||||
|
|
||||||
If Not ObjVentas.UpdateVentasDevolucionAlmacen(0, DrMovtos("CveRem").ToString.ToEntero) Then
|
' If Not ObjVentas.UpdateVentasDevolucionAlmacen(0, DrMovtos("CveRem").ToString.ToEntero) Then
|
||||||
TextoError = "Ocurrió un error al hacer la devolucion hacia la remision. Por favor vuelva a intentar."
|
' TextoError = "Ocurrió un error al hacer la devolucion hacia la remision. Por favor vuelva a intentar."
|
||||||
ErrorMovInv = True
|
' ErrorMovInv = True
|
||||||
Exit For
|
' Exit For
|
||||||
End If
|
' End If
|
||||||
|
|
||||||
Next
|
' Next
|
||||||
End If
|
' End If
|
||||||
Else
|
' Else
|
||||||
TextoError = "Ocurrió un error al hacer la devolucion a remisión. Por favor vuelva a intentar."
|
' TextoError = "Ocurrió un error al hacer la devolucion a remisión. Por favor vuelva a intentar."
|
||||||
ErrorMovInv = True
|
' ErrorMovInv = True
|
||||||
End If
|
' End If
|
||||||
|
'End If
|
||||||
End If
|
'}
|
||||||
|
|
||||||
'QUEMA DEVOLUCION | QUEMA = LA QUITA DE PENDIENTE POR RECIBIR (DEVOLVER)
|
'QUEMA DEVOLUCION | QUEMA = LA QUITA DE PENDIENTE POR RECIBIR (DEVOLVER)
|
||||||
If Not ErrorMovInv And EsDevolucionVenta = 1 Then
|
If Not ErrorMovInv And EsDevolucionVenta = 1 Then
|
||||||
|
|||||||
Reference in New Issue
Block a user