Correciones en cancelación.

-saldo correcto de remisiones
-totales  de cancelacion coinciden con la factura
This commit is contained in:
2020-04-25 15:26:06 -07:00
parent 373cf06dc3
commit 4f6330e4c4
2 changed files with 43 additions and 35 deletions

View File

@@ -3186,8 +3186,9 @@ Namespace Modelos
Next Next
End If End If
'Si es Facturacion de una remision cancelamos, traspasamos saldos y agregamos evento a la bitacora 'SI ES FACTURACION DE UNA REMISION CANCELAMOS, TRASPASAMOS SALDOS Y AGREGAMOS EVENTO A LA BITACORA
If (DtRemisionesRelacionadas IsNot Nothing AndAlso DtRemisionesRelacionadas.Rows.Count > 0) OrElse ObjFactura.RemisionesLista.Count > 0 Then 'NO DEBE ENTRAR SI SE ESTA CANCELANDO UNA FACTURA
If ValorMultiplicador <> -1 AndAlso (DtRemisionesRelacionadas IsNot Nothing AndAlso DtRemisionesRelacionadas.Rows.Count > 0) OrElse ObjFactura.RemisionesLista.Count > 0 Then
If Not ObjFactura.TipoDocto.Contiene("Ing", "Ant") Then If Not ObjFactura.TipoDocto.Contiene("Ing", "Ant") Then
ErrorPrepoliza = True ErrorPrepoliza = True

View File

@@ -19197,49 +19197,56 @@ Partial Class Ventas
CancelarRefacturada() CancelarRefacturada()
End If End If
CreaObjetosVenta(EsCancelacion:=True) Dim ObjFacturaCancelacion As New Modelos.Factura(UsuarioActual, CveVenta, UsuarioActual.CveEmpresa, EsCancelacion:=True)
Try
Dim resp As Modelos.Factura.MCancelacionVentaMensaje = Nothing
Dim resp As Modelos.Factura.MCancelacionVentaMensaje = Nothing If ObjFacturaCancelacion IsNot Nothing AndAlso ObjFacturaCancelacion.CveVenta > 0 Then
If ObjFactura IsNot Nothing AndAlso ObjFactura.CveVenta > 0 Then If EsRefacturacion Then
resp = ObjFacturaCancelacion.CancelarPorRefacturacion()
Else
Dim ListaRemisionesCancelar As New List(Of Integer)
If ChkCanRem.Checked Then
For Each Gvr As GridViewRow In GvCancelarRemisiones.Rows
If Gvr.FCCheckBox("ChkCancelarRemision").Checked Then
ListaRemisionesCancelar.Add(Gvr.DataKey("CveVenta").ToEntero)
End If
Next
End If
If EsRefacturacion Then ObjFacturaCancelacion.CveAlmacenDevolucion = CveAlmacenDevolucion
resp = ObjFactura.CancelarPorRefacturacion()
Else resp = ObjFacturaCancelacion.CancelarFactura(ChkDevAlm.Checked, ListaRemisionesCancelar)
Dim ListaRemisionesCancelar As New List(Of Integer)
If ChkCanRem.Checked Then
For Each Gvr As GridViewRow In GvCancelarRemisiones.Rows
If Gvr.FCCheckBox("ChkCancelarRemision").Checked Then
ListaRemisionesCancelar.Add(Gvr.DataKey("CveVenta").ToEntero)
End If
Next
End If End If
ObjFactura.CveAlmacenDevolucion = CveAlmacenDevolucion If resp.CveEstatus = 5 AndAlso Not EsRefacturacion Then
Alert(resp.Mensaje, resp.TipoMensaje, JSBtnAceptar:="BtnEnviarMailCancelacion();", TextoConfirmacion:="&nbsp;&nbsp;&nbsp;&nbsp;Si&nbsp;&nbsp;&nbsp;&nbsp;", TextoCancelacion:="&nbsp;&nbsp;&nbsp;&nbsp;<a onclick='Recargar()'>No</>&nbsp;&nbsp;&nbsp;&nbsp;")
resp = ObjFactura.CancelarFactura(ChkDevAlm.Checked, ListaRemisionesCancelar) Else
End If If EsRefacturacion Then
If resp.CveEstatus = 20 Then
If resp.CveEstatus = 5 AndAlso Not EsRefacturacion Then ObjFacturaCancelacion.Dispose()
Alert(resp.Mensaje, resp.TipoMensaje, JSBtnAceptar:="BtnEnviarMailCancelacion();", TextoConfirmacion:="&nbsp;&nbsp;&nbsp;&nbsp;Si&nbsp;&nbsp;&nbsp;&nbsp;", TextoCancelacion:="&nbsp;&nbsp;&nbsp;&nbsp;<a onclick='Recargar()'>No</>&nbsp;&nbsp;&nbsp;&nbsp;") Response.Redirect($"/Ventas/RepCancelacionesPorRespuesta.aspx?CveVenta={CveVenta}")
Else ElseIf resp.CveEstatus.Contiene(4, 5) Then
If EsRefacturacion Then ObjFacturaCancelacion.Dispose()
If resp.CveEstatus = 20 Then Response.Redirect($"Ventas.aspx?CveDevolucion={CveVenta}&NuevaFactura=1")
Response.Redirect($"/Ventas/RepCancelacionesPorRespuesta.aspx?CveVenta={CveVenta}") Else
ElseIf resp.CveEstatus.Contiene(4, 5) Then Alert(resp.Mensaje, resp.TipoMensaje, JSBtnAceptar:="BtnRefrescarPagina();")
Response.Redirect($"Ventas.aspx?CveDevolucion={CveVenta}&NuevaFactura=1") End If
Else Else
Alert(resp.Mensaje, resp.TipoMensaje, JSBtnAceptar:="BtnRefrescarPagina();") Alert(resp.Mensaje, resp.TipoMensaje, JSBtnAceptar:="BtnRefrescarPagina();")
End If End If
Else
Alert(resp.Mensaje, resp.TipoMensaje, JSBtnAceptar:="BtnRefrescarPagina();")
End If End If
End If
ObjFactura.CveAlmacen = -1 ObjFacturaCancelacion.CveAlmacen = -1
Else Else
Alert("Ocurrió un error al generar la cancelación", TipoMensaje.MsgError) Alert("Ocurrió un error al generar la cancelación", TipoMensaje.MsgError)
End If End If
Catch ex As Exception
OnError("Ocurrío un error al cancelar", ex)
End Try
ObjFacturaCancelacion.Dispose()
UpEstatus.Update() UpEstatus.Update()