--SMS - 2024.01.24
--En la opción de venta directa: no importa el cliente/hospital que se seleccione, la lista de precios predeterminada debe de ser la de venta directa --Al cancelar una cirugía se debe de ver reflejado en almacén y en ordenes de servicio
This commit is contained in:
@@ -3404,13 +3404,14 @@ Public Class ClsInventarios
|
|||||||
|
|
||||||
' Return Retorno
|
' Return Retorno
|
||||||
'End Function
|
'End Function
|
||||||
Public Function ActualizarEsDevolucionVenta(CveVenta As Integer, Valor As Integer) As Boolean
|
Public Function ActualizarEsDevolucionVenta(CveVenta As Integer, Valor As Integer, Optional AplicaDevolucionCompleta As Boolean = False) As Boolean
|
||||||
Dim Retorno As Boolean = False
|
Dim Retorno As Boolean = False
|
||||||
DataAdapter("Vta_UpdateDevolucionVenta")
|
DataAdapter("Vta_UpdateDevolucionVenta")
|
||||||
|
|
||||||
With SqlAdapter.SelectCommand.Parameters
|
With SqlAdapter.SelectCommand.Parameters
|
||||||
.Add("@CveVenta", SqlDbType.Int).Value = CveVenta
|
.Add("@CveVenta", SqlDbType.Int).Value = CveVenta
|
||||||
.Add("@Valor", SqlDbType.Int).Value = Valor
|
.Add("@Valor", SqlDbType.Int).Value = Valor
|
||||||
|
.Add("@AplicaDevolucionCompleta", SqlDbType.Bit).Value = AplicaDevolucionCompleta
|
||||||
End With
|
End With
|
||||||
|
|
||||||
Try
|
Try
|
||||||
|
|||||||
@@ -6117,6 +6117,16 @@ Namespace Modelos
|
|||||||
|
|
||||||
End If
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'EMPRESA HOSPITALARIA - SI ES PEDIDO LA DEVOLUCION SE DEBE HACER DESPUES DE CANCELAR EL PEDIDO
|
||||||
|
If Not ErrorCancelar AndAlso UsuarioActual.Empresa.Funcionalidad(578) = "1" AndAlso ObjFactura.TipoDocto = "Ped" Then
|
||||||
|
If Not RealizarDevolucionAlmacen AndAlso TieneAlmacen Then
|
||||||
|
If Not ObjInventario.ActualizarEsDevolucionVenta(ObjFactura.CveVenta, 1, AplicaDevolucionCompleta:=True) Then
|
||||||
|
ErrorCancelar = True
|
||||||
|
MensajeError = "No se pudo actualizar el estatus de almacen del pedido"
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
End If
|
||||||
End If
|
End If
|
||||||
|
|
||||||
'CANCELA CONTRATOS
|
'CANCELA CONTRATOS
|
||||||
|
|||||||
@@ -1839,8 +1839,21 @@ Partial Class Inventarios_EntregaAlmacen
|
|||||||
End If
|
End If
|
||||||
ObjVentaInv.Dispose()
|
ObjVentaInv.Dispose()
|
||||||
|
|
||||||
If TipoEstatus = 5 Or EsDevolucionVenta.Contiene(2, 3) Then
|
Dim VerificaCancelada As Boolean = True
|
||||||
Alert("No se puede surtir esta venta, verifique que no esté cancelada o ya registrado su movimiento en almacen", TipoMensaje.MsgAdvertencia)
|
|
||||||
|
If UsuarioActual.Empresa.Funcionalidad(578) = "1" AndAlso TipoDocto = "Ped" Then
|
||||||
|
VerificaCancelada = False
|
||||||
|
End If
|
||||||
|
|
||||||
|
If VerificaCancelada Then
|
||||||
|
If TipoEstatus = 5 Then
|
||||||
|
Alert("No se puede surtir esta venta, verifique que no esté cancelada", TipoMensaje.MsgAdvertencia)
|
||||||
|
Exit Sub
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If EsDevolucionVenta.Contiene(2, 3) Then
|
||||||
|
Alert("No se puede surtir esta venta, verifique que no esté registrado su movimiento en almacen", TipoMensaje.MsgAdvertencia)
|
||||||
Exit Sub
|
Exit Sub
|
||||||
End If
|
End If
|
||||||
|
|
||||||
@@ -2739,10 +2752,12 @@ Partial Class Inventarios_EntregaAlmacen
|
|||||||
End If
|
End If
|
||||||
|
|
||||||
'se registra
|
'se registra
|
||||||
If ContabilizaMovimientoAlmacen(ObjConta, TxtFecha.Text.ToDate, HLFolio.Text, "EntregaAlmacen", CveMovimiento, CveMovimientoEntrada, ImporteAlmacen, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False) <= 0 Then
|
If Not ErrorMovInv Then
|
||||||
ErrorMovInv = True
|
If ContabilizaMovimientoAlmacen(ObjConta, TxtFecha.Text.ToDate, HLFolio.Text, "EntregaAlmacen", CveMovimiento, CveMovimientoEntrada, ImporteAlmacen, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, False) <= 0 Then
|
||||||
End If
|
ErrorMovInv = True
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
Else 'REGISTRO LA PREPOLIZA DE COSTO VS ALMACEN - SALIDA ALMACEN
|
Else 'REGISTRO LA PREPOLIZA DE COSTO VS ALMACEN - SALIDA ALMACEN
|
||||||
ErrorMovInv = Not GenerarPrePoliza(ObjInventario, ObjVentas, ObjConta, CveMovimiento, TextoError)
|
ErrorMovInv = Not GenerarPrePoliza(ObjInventario, ObjVentas, ObjConta, CveMovimiento, TextoError)
|
||||||
End If
|
End If
|
||||||
|
|||||||
@@ -8637,16 +8637,20 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
//FUNCIONES PARA COMERCIO EXTERIOR
|
//FUNCIONES PARA COMERCIO EXTERIOR
|
||||||
function CalculaTotalUSD(TotalUSD, ValorUnitario, TxtCantidad) {
|
|
||||||
TotalUSD.innerText = FormatoNumero(ToDouble(ValorUnitario.value) * ToDouble(TxtCantidad.value), 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
function CalculaPU_USD(TxtValorUnitario, TotalUSD, TxtCantidad) {
|
function CalculaPU_USD(TxtValorUnitario, TotalUSD, TxtCantidad) {
|
||||||
TxtValorUnitario.value = FormatoNumero(ToDouble(TotalUSD) / ToDouble(TxtCantidad.value), 6);
|
if(ToDouble(TxtCantidad.value) > 0){
|
||||||
|
TxtValorUnitario.value = ((ToDouble(TotalUSD) / ToDouble(TxtCantidad.value)).toFixed(6)).toString();
|
||||||
|
}else{
|
||||||
|
TxtValorUnitario.value = "0";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function CalculaCantidad_USD(TxtValorUnitario, TotalUSD, TxtCantidad) {
|
function CalculaCantidad_USD(TxtValorUnitario, TotalUSD, TxtCantidad) {
|
||||||
TxtCantidad.value = FormatoNumero(ToDouble(TotalUSD) / ToDouble(TxtValorUnitario.value), 6);
|
if (ToDouble(TxtValorUnitario.value) > 0) {
|
||||||
|
TxtCantidad.value = ((ToDouble(TotalUSD) / ToDouble(TxtValorUnitario.value)).toFixed(6)).toString();
|
||||||
|
}else{
|
||||||
|
TxtCantidad.value = "0";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function LimitaCantidadAplicaDev(Cantidad, TxtCantidadAplicaDevolucion) {
|
function LimitaCantidadAplicaDev(Cantidad, TxtCantidadAplicaDevolucion) {
|
||||||
|
|||||||
@@ -16931,6 +16931,21 @@ Partial Class Ventas
|
|||||||
CvePrecioListaPS = CvePrecioListaSugerido
|
CvePrecioListaPS = CvePrecioListaSugerido
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
Dim CvePrecioListaPredeterminada = -1
|
||||||
|
Dim AplicaPredeterminado As Boolean = False
|
||||||
|
|
||||||
|
If UsuarioActual.Empresa.Funcionalidad(578) = "1" AndAlso RBLTipoVenta.SelectedValue = "2" Then
|
||||||
|
AplicaPredeterminado = True
|
||||||
|
CvePrecioListaPredeterminada = GlobalDTPrecioListas(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CvePrecioLista", "Predeterminada = True").ToEntero()
|
||||||
|
If CvePrecioListaPredeterminada > 0 Then
|
||||||
|
CvePrecioListaPS = CvePrecioListaPredeterminada
|
||||||
|
End If
|
||||||
|
End If
|
||||||
|
|
||||||
|
If AplicaPredeterminado AndAlso CvePrecioListaPredeterminada <= 0 Then
|
||||||
|
Alert("No hay una lista de precios predeterminada", TipoMensaje.MsgAdvertencia)
|
||||||
|
End If
|
||||||
|
|
||||||
If CvePrecioListaPS > 0 Then
|
If CvePrecioListaPS > 0 Then
|
||||||
Dim ObjPS As New ClsProductosServicios
|
Dim ObjPS As New ClsProductosServicios
|
||||||
If ObjPS.GetPSPreciosLista(UsuarioActual.CveEmpresa, CvePrecioListaPS, CvePS:=CvePSParametro) Then
|
If ObjPS.GetPSPreciosLista(UsuarioActual.CveEmpresa, CvePrecioListaPS, CvePS:=CvePSParametro) Then
|
||||||
@@ -16940,6 +16955,10 @@ Partial Class Ventas
|
|||||||
ObjPS.Dispose()
|
ObjPS.Dispose()
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
If AplicaPredeterminado AndAlso PrecioSugerido <= 0 Then
|
||||||
|
Alert("El producto y/o servicio no tiene asignado un valor en la lista de precios predeterminada", TipoMensaje.MsgAdvertencia)
|
||||||
|
End If
|
||||||
|
|
||||||
If PrecioSugerido = 0 Then
|
If PrecioSugerido = 0 Then
|
||||||
Dim ObjInventarios As New ClsInventarios
|
Dim ObjInventarios As New ClsInventarios
|
||||||
Dim CostoPS As Decimal = ObjInventarios.GetCostoPS(CvePSParametro, TxtCantidad.Text.Trim.ToDecimal, -1, "-1", TxtFecha.Text.ToDate, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveTipoAlmacen:=1)
|
Dim CostoPS As Decimal = ObjInventarios.GetCostoPS(CvePSParametro, TxtCantidad.Text.Trim.ToDecimal, -1, "-1", TxtFecha.Text.ToDate, DdlSubProyectoDatos.SelectedValue.ToEntero(), CveTipoAlmacen:=1)
|
||||||
@@ -24453,8 +24472,9 @@ Partial Class Ventas
|
|||||||
ChkDevAlm.Checked = True
|
ChkDevAlm.Checked = True
|
||||||
End If
|
End If
|
||||||
|
|
||||||
|
'LOS PEDIDOS SE DEBE CANCELAR EN UN PROCESO DISTINTO
|
||||||
If UsuarioActual.Empresa.Funcionalidad(578) = "1" AndAlso ObjFacturaCancelacion.TipoDocto = "Ped" Then
|
If UsuarioActual.Empresa.Funcionalidad(578) = "1" AndAlso ObjFacturaCancelacion.TipoDocto = "Ped" Then
|
||||||
ChkDevAlm.Checked = True
|
ChkDevAlm.Checked = False
|
||||||
End If
|
End If
|
||||||
|
|
||||||
resp = ObjFacturaCancelacion.CancelarFactura(ChkDevAlm.Checked, ListaRemisionesCancelar, CveMotivoCancelacion:=DdlMotivoCancelacion.SelectedValue.ToEntero(), Motivo:=TxtMotivoCancelacion.Text.Trim(), CveEstadoCancelacion:=Me.CveEstadoCancelacion)
|
resp = ObjFacturaCancelacion.CancelarFactura(ChkDevAlm.Checked, ListaRemisionesCancelar, CveMotivoCancelacion:=DdlMotivoCancelacion.SelectedValue.ToEntero(), Motivo:=TxtMotivoCancelacion.Text.Trim(), CveEstadoCancelacion:=Me.CveEstadoCancelacion)
|
||||||
|
|||||||
Reference in New Issue
Block a user