carga de movimientos de almacen

This commit is contained in:
Rene Molina
2019-08-22 16:15:42 -07:00
parent 6d7440b3cd
commit 38bcda5c1d
2 changed files with 37 additions and 14 deletions

View File

@@ -25,11 +25,11 @@ Public Class ClsInventarios
End Function End Function
Public Sub RollBack() Public Sub RollBack()
SqlTransacc.Rollback() If SqlTransacc.Connection IsNot Nothing Then SqlTransacc.Rollback()
End Sub End Sub
Public Sub Commit() Public Sub Commit()
SqlTransacc.Commit() If SqlTransacc.Connection IsNot Nothing Then SqlTransacc.Commit()
End Sub End Sub
#Region " PROPIEDADES " #Region " PROPIEDADES "

View File

@@ -1523,25 +1523,48 @@ Partial Class General_SaldosIniciales
ElseIf RblFormato.SelectedValue = "12" Then ElseIf RblFormato.SelectedValue = "12" Then
Dim ObjMovimientos As New ClsInventarios Dim ObjMovimientos As New ClsInventarios
ObjMovimientos.IniciaTransacSQL() ObjMovimientos.IniciaTransacSQL()
Dim OcurrioError As Boolean = False
Try Try
For Each almacenSinRepetir As DataRow In dt.FiltraParametros("", DistinctColumns:={"Almacen"}).Rows For Each almacenSinRepetir As DataRow In dt.FiltraParametros("", DistinctColumns:={"Almacen"}).Rows
Dim almacenActual As String = almacenSinRepetir("Almacen").ToString Dim almacenActual As String = almacenSinRepetir("Almacen").ToString
Dim CveAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltraParametros("CveAlmacen", $"Almacen = {almacenActual}").ToEntero Dim CveAlmacen As Integer = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveAlmacen", $"Almacen = '{almacenActual}'").ToEntero
For Each nuevaEntrada As DataRow In dt.FiltraParametros($"Almacen = {almacenActual}").Rows
Dim CvePS As Integer = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltraParametros("CvePS", $"PSCodigo = {nuevaEntrada("CodigoPS")}").ToEntero
If CvePS > 0 Then
Dim Cantidad As Double = nuevaEntrada("Existencia").ToString.ToDouble
Dim Valor As Double = nuevaEntrada("Valor").ToString.ToDouble
Dim movimientoCabecera As Integer = ObjMovimientos.AddMovimiento(CveAlmacen, 1, 1, Date.Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1) Dim movimientoCabecera As Integer = ObjMovimientos.AddMovimiento(CveAlmacen, 1, 1, Date.Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1)
If ObjMovimientos.AddMovimientoDetalle(movimientoCabecera, Cantidad, -1, CvePS, (Valor / Cantidad), -1, -1) Then If CveAlmacen > 0 Then
Alert("Movimiento terminado con exito") For Each nuevaEntrada As DataRow In dt.FiltraParametros($"Almacen = '{almacenActual}'").Rows
Dim CvePS As Integer = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CvePS", $"Codigo = '{nuevaEntrada("CodigoPS")}'").ToEntero
Dim CveUM As Integer = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveUnidadMedida", $"Codigo = '{nuevaEntrada("CodigoPS")}'").ToEntero
If CvePS > 0 Then
Dim Cantidad As Decimal = nuevaEntrada("Existencia").ToString.ToDecimal
Dim Valor As Decimal = nuevaEntrada("Valor").ToString.ToDecimal
If Not ObjMovimientos.AddMovimientoDetalle(movimientoCabecera, Cantidad, CveUM, CvePS, (Valor / Cantidad), -1, -1) Then
OcurrioError = True
End If End If
Else
OcurrioError = True
End If End If
Next Next
Else
OcurrioError = True
'alert amacén no existe
Exit For
End If
Next Next
Catch ex As Exception Catch ex As Exception
OcurrioError = True
ObjMovimientos.RollBack()
End Try End Try
If Not OcurrioError Then
ObjMovimientos.Commit()
Alert("Se cargó correctamente #movimientos")
Else
Alert("Ocurrió un error al cargar las existencias", TipoMensaje.MsgError)
ObjMovimientos.RollBack()
End If
ObjMovimientos.Dispose() ObjMovimientos.Dispose()
End If End If
End If End If