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 movimientoCabecera As Integer = ObjMovimientos.AddMovimiento(CveAlmacen, 1, 1, Date.Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1)
Dim CvePS As Integer = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltraParametros("CvePS", $"PSCodigo = {nuevaEntrada("CodigoPS")}").ToEntero If CveAlmacen > 0 Then
If CvePS > 0 Then For Each nuevaEntrada As DataRow In dt.FiltraParametros($"Almacen = '{almacenActual}'").Rows
Dim Cantidad As Double = nuevaEntrada("Existencia").ToString.ToDouble Dim CvePS As Integer = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CvePS", $"Codigo = '{nuevaEntrada("CodigoPS")}'").ToEntero
Dim Valor As Double = nuevaEntrada("Valor").ToString.ToDouble Dim CveUM As Integer = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveUnidadMedida", $"Codigo = '{nuevaEntrada("CodigoPS")}'").ToEntero
Dim movimientoCabecera As Integer = ObjMovimientos.AddMovimiento(CveAlmacen, 1, 1, Date.Now, -1, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1, -1, -1, -1) If CvePS > 0 Then
If ObjMovimientos.AddMovimientoDetalle(movimientoCabecera, Cantidad, -1, CvePS, (Valor / Cantidad), -1, -1) Then Dim Cantidad As Decimal = nuevaEntrada("Existencia").ToString.ToDecimal
Alert("Movimiento terminado con exito") 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
Else
OcurrioError = True
End If 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