diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb
index 52ee88524..26a9a7903 100644
--- a/Inventarios/EntradasSalidas.aspx.vb
+++ b/Inventarios/EntradasSalidas.aspx.vb
@@ -4260,8 +4260,13 @@ Partial Class Inventarios_EntradasSalidas
Dim ObjInventario As New ClsInventarios
Dim ObjConta As New ClsContabilidad(ObjInventario.IniciaTransacSQL())
- Dim CveMovimientoEntrada As Integer
- Dim CveMovimientoSalida As Integer
+
+ Dim CveMovimientoEntrada As Integer = -1
+ Dim FolioEntrada As Integer = -1
+
+ Dim CveMovimientoSalida As Integer = -1
+ Dim FolioSalida As Integer = -1
+
Dim ErrorMovInv As Boolean = False
Dim Mensaje As String = ""
Dim ValorEntrada As Decimal = 0
@@ -4289,17 +4294,18 @@ Partial Class Inventarios_EntradasSalidas
'MOVIMIENTO DE ENTRADA
If DtMovimientosEntradaInvFisico.Rows.Count > 0 Then
- Dim FolioEntrada As Integer = ObjInventario.GetFolioSiguiente(32, UsuarioActual.CveEmpresa)
+ 'FolioEntrada = ObjInventario.GetFolioSiguiente(32, UsuarioActual.CveEmpresa)
CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacen, 32, 1, Fecha, FolioEntrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtIFDescripcion.Text.Trim, Modulo:="ES/AJ1")
+ FolioEntrada = ObjInventario.Folio
Else
CveMovimientoEntrada = -1
End If
'MOVIMIENTO DE SALIDA
If DtMovimientosSalidaInvFisico.Rows.Count > 0 Then
- Dim FolioSalida As Integer = ObjInventario.GetFolioSiguiente(34, UsuarioActual.CveEmpresa)
+ 'FolioSalida = ObjInventario.GetFolioSiguiente(34, UsuarioActual.CveEmpresa)
CveMovimientoSalida = ObjInventario.AddMovimiento(CveAlmacen, 34, 1, Fecha, FolioSalida, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, CveMovimientoRelacionado:=CveMovimientoEntrada, Observaciones:=TxtIFDescripcion.Text.Trim, Modulo:="ES/AJ2")
-
+ FolioSalida = ObjInventario.Folio
End If
'Registro PrePoliza
@@ -4446,7 +4452,7 @@ Partial Class Inventarios_EntradasSalidas
End If
Dim RetornoVirtual As MMovimientoVirtual = Nothing
- If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
+ If Not ErrorMovInv AndAlso UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
If CveMovimientoSalida > 0 Then RetornoVirtual = GenerarMovimientoVirtual(CveMovimientoSalida, ObjInventario)
If RetornoVirtual IsNot Nothing Then ErrorMovInv = RetornoVirtual.TieneError
@@ -4461,9 +4467,17 @@ Partial Class Inventarios_EntradasSalidas
ObjInventario.Commit() ' aplica los movimientos insertados
Dim Msg As New StringBuilder
- Msg.AppendFormat("
El Movimiento se registro con el Folio: {0}", ObjInventario.Folio)
- If CveMovimientoEntrada > 0 Then Msg.AppendFormat("
Imprimir Movimiento Entrada ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoEntrada)))
- If CveMovimientoSalida > 0 Then Msg.AppendFormat("
Imprimir Movimiento Salida ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoSalida)))
+ Msg.AppendFormat("
El Movimiento se registro correctamente.")
+
+ If CveMovimientoEntrada > 0 Then
+ Msg.AppendFormat("
Movimiento de entrada: {0}", FolioEntrada, CveMovimientoEntrada)
+ Msg.AppendFormat("
Imprimir Movimiento Entrada ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoEntrada)))
+ End If
+
+ If CveMovimientoSalida > 0 Then
+ Msg.AppendFormat("
Movimiento de salida: {0}", FolioSalida, CveMovimientoSalida)
+ Msg.AppendFormat("
Imprimir Movimiento Salida ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoSalida)))
+ End If
Alert(Msg.ToString, TipoMensaje.MsgInformacion)
RegistraScript("playsonidito('beep-07.wav')")
@@ -4524,9 +4538,11 @@ Partial Class Inventarios_EntradasSalidas
If DtMovimientosCambioVigencias.Rows.Count > 0 Then
FolioSalida = ObjInventario.GetFolioSiguiente(47, UsuarioActual.CveEmpresa)
CveMovimientoSalida = ObjInventario.AddMovimiento(CveAlmacen, 47, 1, Fecha, FolioSalida, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObsCambioVigencia.Text.Trim, Modulo:="ES/CV1")
+ FolioSalida = ObjInventario.Folio
FolioEntrada = ObjInventario.GetFolioSiguiente(48, UsuarioActual.CveEmpresa)
CveMovimientoEntrada = ObjInventario.AddMovimiento(CveAlmacen, 48, 1, Fecha, FolioEntrada, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1, Observaciones:=TxtObsCambioVigencia.Text.Trim, CveMovimientoRelacionado:=CveMovimientoSalida, Modulo:="ES/CV2")
+ FolioEntrada = ObjInventario.Folio
End If
@@ -4540,40 +4556,42 @@ Partial Class Inventarios_EntradasSalidas
End If
'VALIDA EXISTENCIAS SALIDA E INSERTA DETALLES
- For Each Dr As DataRow In DtMovimientosCambioVigencias.Rows
- If ObjInventario.GetExistenciasPS(Dr("CvePS").ToString.ToEntero, Dr("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenInventarioFisico.SelectedValue.ToEntero, PendientePorSurtir:=1) >= Dr("Cantidad").ToString.ToDouble Then
- If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero,
- Dr("PU").ToString.ToDecimal, -1, CveSeccionAlmacen:=Dr("CveSeccionAlmacen").ToString.ToEntero, Serie:=Dr("Serie").ToString,
- Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate) Then
- Mensaje = "Ocurrió un error al guardar los movimientos de salida"
- ErrorMovInv = True
- Exit For
- Else
- 'OBTIENE EL COSTO DE LA SALIDA
- If Not ObjInventario.GetMovimientosDetalle(CveMovimientoSalida, UsuarioActual.CveEmpresa, CveMovimientoDetalle:=ObjInventario.CveMovimientoDetalle) AndAlso ObjInventario.DtResultados.Rows.Count > 0 Then
+ If Not ErrorMovInv Then
+ For Each Dr As DataRow In DtMovimientosCambioVigencias.Rows
+ If ObjInventario.GetExistenciasPS(Dr("CvePS").ToString.ToEntero, Dr("CveUM").ToString.ToEntero, UsuarioActual.CveEmpresa, DdlAlmacenInventarioFisico.SelectedValue.ToEntero, PendientePorSurtir:=1) >= Dr("Cantidad").ToString.ToDouble Then
+ If Not ObjInventario.AddMovimientoDetalle(CveMovimientoSalida, Dr("Cantidad").ToString.ToDouble, Dr("CveUM").ToString.ToEntero, Dr("CvePS").ToString.ToEntero,
+ Dr("PU").ToString.ToDecimal, -1, CveSeccionAlmacen:=Dr("CveSeccionAlmacen").ToString.ToEntero, Serie:=Dr("Serie").ToString,
+ Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate) Then
Mensaje = "Ocurrió un error al guardar los movimientos de salida"
ErrorMovInv = True
Exit For
Else
- Dim PUEntrada As Decimal = ObjInventario.DtResultados.Rows(0)("PU").ToString().ToDecimal()
- ImporteConcepto += PUEntrada * Dr("Cantidad").ToString.ToDecimal()
-
- 'INSERTA EL MOVIMIENTO DE ENTRADA
- If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, Dr("Cantidad").ToString.ToDouble, Dr("CveUMVigencia").ToString.ToEntero, Dr("CvePSVigencia").ToString.ToEntero, PUEntrada, CveSeccionAlmacen:=Dr("CveSeccionAlmacen").ToString.ToEntero, Serie:=Dr("Serie").ToString,
- Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate) Then
- Mensaje = "Ocurrió un error al guardar los movimientos de entrada"
+ 'OBTIENE EL COSTO DE LA SALIDA
+ If Not ObjInventario.GetMovimientosDetalle(CveMovimientoSalida, UsuarioActual.CveEmpresa, CveMovimientoDetalle:=ObjInventario.CveMovimientoDetalle) AndAlso ObjInventario.DtResultados.Rows.Count > 0 Then
+ Mensaje = "Ocurrió un error al guardar los movimientos de salida"
ErrorMovInv = True
Exit For
+ Else
+ Dim PUEntrada As Decimal = ObjInventario.DtResultados.Rows(0)("PU").ToString().ToDecimal()
+ ImporteConcepto += PUEntrada * Dr("Cantidad").ToString.ToDecimal()
+
+ 'INSERTA EL MOVIMIENTO DE ENTRADA
+ If Not ObjInventario.AddMovimientoDetalle(CveMovimientoEntrada, Dr("Cantidad").ToString.ToDouble, Dr("CveUMVigencia").ToString.ToEntero, Dr("CvePSVigencia").ToString.ToEntero, PUEntrada, CveSeccionAlmacen:=Dr("CveSeccionAlmacen").ToString.ToEntero, Serie:=Dr("Serie").ToString,
+ Lote:=Dr("Lote").ToString, FechaCaducidad:=Dr("FechaCaducidad").ToString.ToDate) Then
+ Mensaje = "Ocurrió un error al guardar los movimientos de entrada"
+ ErrorMovInv = True
+ Exit For
+ End If
End If
End If
+ Else
+ Mensaje = String.Format("No hay existencias suficientes del producto: {0}", Dr("PS"))
+ RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
+ ErrorMovInv = True
+ Exit For
End If
- Else
- Mensaje = String.Format("No hay existencias suficientes del producto: {0}", Dr("PS"))
- RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
- ErrorMovInv = True
- Exit For
- End If
- Next
+ Next
+ End If
'CONTABILIZAR MOVIMIENTOS
If Not ErrorMovInv Then
@@ -4587,10 +4605,17 @@ Partial Class Inventarios_EntradasSalidas
ObjInventario.Commit() ' aplica los movimientos insertados
Dim Msg As New StringBuilder
- Msg.AppendFormat("
El Movimiento de entrada se registró con el Folio: {1}", CveMovimientoEntrada, FolioEntrada)
- If CveMovimientoEntrada > 0 Then Msg.AppendFormat("
Imprimir Movimiento Entrada ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoEntrada)))
- Msg.AppendFormat("
El Movimiento de salida se registró con el Folio: {1}", CveMovimientoSalida, FolioSalida)
- If CveMovimientoSalida > 0 Then Msg.AppendFormat("
Imprimir Movimiento Salida ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoSalida)))
+
+ If CveMovimientoEntrada > 0 Then
+ Msg.AppendFormat("
El Movimiento de entrada se registró con el Folio: {1}", CveMovimientoEntrada, FolioEntrada)
+ Msg.AppendFormat("
Imprimir Movimiento Entrada ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoEntrada)))
+ End If
+
+ If CveMovimientoSalida > 0 Then
+ Msg.AppendFormat("
El Movimiento de salida se registró con el Folio: {1}", CveMovimientoSalida, FolioSalida)
+ Msg.AppendFormat("
Imprimir Movimiento Salida ", Encripta(String.Format("OP=Alm&CveMovimiento={0}", CveMovimientoSalida)))
+ End If
+
Alert(Msg.ToString, TipoMensaje.MsgInformacion)
RegistraScript("playsonidito('beep-07.wav');$('#DivModalCambiarVigencias').modal('hide');")