BDH, Liga para cancelacion de remisión
This commit is contained in:
@@ -5080,6 +5080,7 @@ Namespace Modelos
|
||||
|
||||
If Not ErrorCancelar AndAlso RealizarDevolucionAlmacen Then
|
||||
'REALIZA DEVOLUCION A LAS SALIDAS PENDIENTES
|
||||
If ObjFactura.TipoDocto <> "Rem" Then
|
||||
For Each RowMovimiento As DataRow In DtSalidas.Rows
|
||||
Dim CveConceptoMovimiento As Integer = -1
|
||||
Dim CveAlmacenMovimiento As Integer = -1
|
||||
@@ -5272,10 +5273,10 @@ Namespace Modelos
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
'SI EXISTEN HAY EXISTENCIA EN (ENTREGA POR ADELANTADO) SE TIENE QUE REGRESAR AL ALMACEN ORGINAL (GENERAL,SIN COSTO)
|
||||
If Not ErrorCancelar AndAlso ListaRemisionesCancelar IsNot Nothing AndAlso ListaRemisionesCancelar.Count > 0 Then
|
||||
If Not ErrorCancelar AndAlso ObjFactura.TipoDocto <> "Rem" AndAlso ListaRemisionesCancelar IsNot Nothing AndAlso ListaRemisionesCancelar.Count > 0 Then
|
||||
|
||||
'VERIFICA LOS MOVIMIENTOS DE DEVOLUCION YA GENERADOS QUE TENGAN EXISTENCIA EN (ENTREGA POR ADELANTADO)
|
||||
If Not ErrorCancelar Then
|
||||
@@ -5314,6 +5315,40 @@ Namespace Modelos
|
||||
|
||||
End If
|
||||
|
||||
'CANCELACION DE MOVIMIENTOS DE REMISION
|
||||
If Not ErrorCancelar AndAlso ObjFactura.TipoDocto = "Rem" AndAlso RealizarDevolucionAlmacen Then
|
||||
Dim CveAlmacenGeneral As Integer = 0
|
||||
Dim DtMovRemision As DataTable = Nothing
|
||||
'VERIFICA LOS MOVIMIENTOS DE DEVOLUCION YA GENERADOS QUE TENGAN EXISTENCIA EN (ENTREGA POR ADELANTADO)
|
||||
If Not ErrorCancelar Then
|
||||
If ObjInventario.GetInv_Mov(CveVenta, UsuarioActual.CveEmpresa) Then
|
||||
DtMovRemision = ObjInventario.DtResultados.FiltraParametros("CveTipoAlmacen = 10")
|
||||
CveAlmacenGeneral = ObjInventario.DtResultados.FiltroPrimeroValor("CveAlmacen", "CveTipoAlmacen = 1").ToString().ToEntero()
|
||||
Else
|
||||
ErrorCancelar = True
|
||||
MensajeError = "Ocurrió un error al cargar los datos de devolución. Por favor vuelva a intentar."
|
||||
End If
|
||||
End If
|
||||
|
||||
'DEBE REGRESAR LA EXISTENCIA DE (ENTREGA POR ADELANTADO) AL ALMACEN ORGINAL (GENERAL,SIN COSTO)
|
||||
If Not ErrorCancelar AndAlso DtMovRemision IsNot Nothing AndAlso DtMovRemision.Rows.Count > 0 Then
|
||||
|
||||
Dim DtDevMovs = DtMovRemision.FiltraParametros("", DistinctColumns:={"CveMovimiento", "CveAlmacen"})
|
||||
|
||||
For Each RowDevolucion As DataRow In DtDevMovs.Rows
|
||||
CveAlmacen = RowDevolucion("CveAlmacen").ToString().ToEntero()
|
||||
|
||||
If Not CancelarMovimientosRemision(CveVenta, CveAlmacen, CveAlmacenGeneral, DtMovRemision.FiltraParametros($"CveMovimiento={RowDevolucion("CveMovimiento")} AND CvePS > 0"), ObjVentas, ObjInventario) Then
|
||||
ErrorCancelar = True
|
||||
MensajeError = "Ocurrió un error al cancelar los movimientos de la remisión."
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
'VERIFICAR MOVIMIENTOS DE APARTADOS
|
||||
If Not ErrorCancelar Then
|
||||
If Not GeneraMovimientosApartados(ObjInventario) Then
|
||||
|
||||
@@ -116,7 +116,10 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState
|
||||
Case "sendMailLPM"
|
||||
context.Response.Write(sendMailLPM(context))
|
||||
Case "getSATColomias"
|
||||
getSatColonias(context)
|
||||
getSATColonias(context)
|
||||
|
||||
Case "cancelarRemision"
|
||||
cancelarRemision(context)
|
||||
End Select
|
||||
Catch ex As Exception
|
||||
ex.GuardaLog(ex.Message)
|
||||
@@ -1422,4 +1425,47 @@ Public Class SIGWeb : Implements IHttpHandler, IRequiresSessionState
|
||||
Return retorno
|
||||
End Function
|
||||
#End Region
|
||||
|
||||
#Region "Get SAT Colonmias"
|
||||
Private Function cancelarRemision(ByVal context As HttpContext) As String
|
||||
Dim retorno As String = ""
|
||||
|
||||
Dim CveVenta As Integer = IfNull(context.Request("CveVenta"), "-1").ToString().ToEntero()
|
||||
|
||||
If CveVenta > 0 Then
|
||||
Dim usuario As Usuario = UsuarioActual(context)
|
||||
If usuario IsNot Nothing AndAlso usuario.CveEmpresa > 0 Then
|
||||
Dim CveAlmacenDevolucion As Integer = 0
|
||||
|
||||
Using ObjInv As New ClsInventarios
|
||||
If ObjInv.GetInv_Mov(CveVenta, usuario.CveEmpresa) Then
|
||||
If ObjInv.DtResultados.Rows.Count > 0 Then
|
||||
CveAlmacenDevolucion = ObjInv.DtResultados.FiltroPrimeroValor("CveAlmacen", "CveConcepto IN (3,40)").ToEntero()
|
||||
End If
|
||||
End If
|
||||
End Using
|
||||
|
||||
Dim ObjFacturaCancelacion As New Modelos.Factura(usuario, CveVenta, usuario.CveEmpresa, EsCancelacion:=True)
|
||||
ObjFacturaCancelacion.CveAlmacenDevolucion = CveAlmacenDevolucion
|
||||
|
||||
If ObjFacturaCancelacion.TipoDocto = "Rem" Then
|
||||
Dim respuesta = ObjFacturaCancelacion.CancelarFactura(True, New List(Of Integer))
|
||||
If respuesta IsNot Nothing Then
|
||||
retorno = JsonConvert.SerializeObject(respuesta)
|
||||
End If
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
If Not String.IsNullOrEmpty(retorno) Then
|
||||
context.Response.Write(retorno)
|
||||
Else
|
||||
context.Response.Write("[]")
|
||||
End If
|
||||
|
||||
Return retorno
|
||||
End Function
|
||||
#End Region
|
||||
End Class
|
||||
Reference in New Issue
Block a user