diff --git a/App_Code/ClsInventarios.vb b/App_Code/ClsInventarios.vb
index 926d626e3..8658e18f9 100644
--- a/App_Code/ClsInventarios.vb
+++ b/App_Code/ClsInventarios.vb
@@ -63,6 +63,8 @@ Public Class ClsInventarios
Public Property FolioRelacionado As Integer
Public Property TieneRelacionado As Integer
Public Property ConceptoRelacionado As String
+ Public Property CveMovimientoVirtual As Integer
+ Public Property FolioVirtual As Integer
Public Property Folio As Integer
Public Property IDPoliza As Integer
Public Property CvePrePoliza As Integer
@@ -826,6 +828,9 @@ Public Class ClsInventarios
FolioRelacionado = dr("FolioRelacionado").ToString.ToEntero
TieneRelacionado = If(dr("TieneRelacionado").ToString.ToEntero > 0, 1, -1)
ConceptoRelacionado = dr("ConceptoRelacionado").ToString
+ CveMovimientoVirtual = dr("CveMovimientoVirtual").ToString.ToEntero
+ FolioVirtual = dr("FolioVirtual").ToString.ToEntero
+
TipoCambio = dr("TipoCambio").ToString.ToDouble
FolioVenta = dr("FolioVenta").ToString
CveOrdenCompra = dr("CveOrdenCompra").ToString.ToEntero
diff --git a/Inventarios/EntradasSalidas.aspx b/Inventarios/EntradasSalidas.aspx
index 6a4835610..6f7b77734 100644
--- a/Inventarios/EntradasSalidas.aspx
+++ b/Inventarios/EntradasSalidas.aspx
@@ -455,30 +455,24 @@
-
+
-
+
-
+
Ver Compra
@@ -488,10 +482,9 @@
-
+
@@ -499,24 +492,28 @@
<%----%>
-
+
-
+
- ver
+ ver
+
+
+
+
+
+ Virtual
diff --git a/Inventarios/EntradasSalidas.aspx.vb b/Inventarios/EntradasSalidas.aspx.vb
index 81100bbc3..3a66118f4 100644
--- a/Inventarios/EntradasSalidas.aspx.vb
+++ b/Inventarios/EntradasSalidas.aspx.vb
@@ -724,12 +724,12 @@ Partial Class Inventarios_EntradasSalidas
Dim TMDsTR = DtMov.Rows(0)("CveMtoRel").ToString
If DtMov.Rows(0)("CveMtoRel").ToString.Length > 0 Then
RowMtoRel.Visible = True
+ lnkMtoRelacionado.NavigateUrl = "/Inventarios/EntradasSalidas.aspx?CveMovimiento=" & DtMov.Rows(0)("CveMtoRel").ToString
+ End If
- lnkMtoRelaioando.NavigateUrl = "./EntradasSalidas.aspx?CveMovimiento=" & DtMov.Rows(0)("CveMtoRel").ToString
- 'lnkMtoRelaioando.Attributes.Add("hreh", "./EntradasSalidas.aspx?CveMoviento=" & DtMov.Rows(0)("CveMtoRel").ToString)
- 'lnkMtoRelaioando.Attributes.Add("target", "_blank")
- Else
- RowMtoRel.Visible = False
+ If Mov.CveMovimientoVirtual > 0 Then
+ DivMovtoVirtual.Visible = True
+ HplMtoVirtual.NavigateUrl = "/Inventarios/EntradasSalidas.aspx?CveMovimiento=" & Mov.CveMovimientoVirtual
End If
If (DdlAlmacen.Items.FindByValue(Mov.CveAlmacen.ToString()) Is Nothing) Then
@@ -3781,45 +3781,51 @@ Partial Class Inventarios_EntradasSalidas
ErrorMovInv = True
End If
Else
- If ObjInventario.Modulo = "ASA/G1" Then
+ If ObjInventario.Modulo.Contiene("Consig") Then
+ Contabilizable = False
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total").RoundSQL, Concepto, 95, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoRelacionado, ImporteMX:=DtCostos.SUMD("Total").RoundSQL, Contabilizable:=Contabilizable) Then
+ ErrorMovInv = True
+ End If
+ Else
+ If ObjInventario.Modulo = "ASA/G1" Then
Contabilizable = False
If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total").RoundSQL, Concepto, 68, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveMovimientoAlmacen:=CveMovimientoRelacionado, ImporteMX:=DtCostos.SUMD("Total").RoundSQL, Contabilizable:=Contabilizable) Then
ErrorMovInv = True
End If
Else
- If DdlConcepto.SelectedValue.Contiene("6", "22", "23", "7", "16", "21", "24") Then
- 'genero las prepolizas manuales
- Dim tCveConcepto As Integer = 95
- Dim CveCuenta As Integer
- If UsuarioActual.CveEmpresa = 119 Then CveCuenta = 55519
- IdCtaContable = 1
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total"), Concepto, tCveConcepto, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveClasificacion:=-1, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DtCostos.SUMD("Total"), CveSubProyecto:=-1, CveCuenta:=CveCuenta, Contabilizable:=Contabilizable) Then
- ErrorMovInv = True
-
- End If
-
- Else
-
- Dim tCveSubProyecto = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen={DdlAlmacen.SelectedValue.ToEntero}").ToEntero
- Dim tCveConcepto As Integer = 69
- If DdlConcepto.SelectedValue = "30" Then
- tCveConcepto = 181
- IdCtaContable = UsuarioActual.Empresa.Funcionalidad(342).ToEntero
- End If
-
- For Each RowInv As DataRow In tmpCostos.Rows
- ValorInventario = DtCostos.SUM("Total", $"CveClasificacion = {RowInv("CveClasificacion")}").ToString.ToDecimal.RoundSQL
- If tCveConcepto = 69 Then
- IdCtaContable = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaCostos", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero
- End If
-
- If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ValorInventario, Concepto, tCveConcepto, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario, CveSubProyecto:=tCveSubProyecto) Then
+ If DdlConcepto.SelectedValue.Contiene("6", "22", "23", "7", "16", "21", "24") Then
+ 'genero las prepolizas manuales
+ Dim tCveConcepto As Integer = 95
+ Dim CveCuenta As Integer
+ If UsuarioActual.CveEmpresa = 119 Then CveCuenta = 55519
+ IdCtaContable = 1
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, DtCostos.SUMD("Total"), Concepto, tCveConcepto, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveClasificacion:=-1, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=DtCostos.SUMD("Total"), CveSubProyecto:=-1, CveCuenta:=CveCuenta, Contabilizable:=Contabilizable) Then
ErrorMovInv = True
- Exit For
+
End If
- Next
+ Else
+ Dim tCveSubProyecto = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltroPrimeroValor("CveSubProyecto", $"CveAlmacen={DdlAlmacen.SelectedValue.ToEntero}").ToEntero
+ Dim tCveConcepto As Integer = 69
+ If DdlConcepto.SelectedValue = "30" Then
+ tCveConcepto = 181
+ IdCtaContable = UsuarioActual.Empresa.Funcionalidad(342).ToEntero
+ End If
+
+ For Each RowInv As DataRow In tmpCostos.Rows
+ ValorInventario = DtCostos.SUM("Total", $"CveClasificacion = {RowInv("CveClasificacion")}").ToString.ToDecimal.RoundSQL
+ If tCveConcepto = 69 Then
+ IdCtaContable = GlobalDTClasificaciones(UsuarioActual.CveEmpresa).FiltroPrimeroValor("IdCuentaCostos", $"CveClasificacion = {RowInv("CveClasificacion")}").ToEntero
+ End If
+
+ If Not ObjConta.AddPrePolizasDetalle(CvePrePoliza, Not MovAlmacen, ValorInventario, Concepto, tCveConcepto, Concepto, TxtFecha.Text.ToDate, IdCtaContable, -1, CveVenta:=CveVenta, CveClasificacion:=RowInv("CveClasificacion").ToString.ToEntero, CveMovimientoAlmacen:=CveMovimiento, ImporteMX:=ValorInventario, CveSubProyecto:=tCveSubProyecto) Then
+ ErrorMovInv = True
+ Exit For
+ End If
+
+ Next
+ End If
End If
End If
End If
@@ -4456,8 +4462,6 @@ Partial Class Inventarios_EntradasSalidas
End If
End If
-
-
If Not ErrorMovInv Then
If ObjConta.ValidacionPrePolizaCuadre(CvePrePoliza, -1) Then
ObjConta.GetPrePolizasDetalle(CvePrePoliza, UsuarioActual.CveEmpresa)
@@ -4470,12 +4474,15 @@ Partial Class Inventarios_EntradasSalidas
Dim RetornoVirtual As MMovimientoVirtual = Nothing
If UsuarioActual.Empresa.Funcionalidad(531) = "1" Then
- RetornoVirtual = GenerarMovimientoVirtual(CveMovimiento, ObjInventario)
+ If CveMovimientoSalida > 0 Then RetornoVirtual = GenerarMovimientoVirtual(CveMovimientoSalida, ObjInventario)
+
+ If RetornoVirtual IsNot Nothing Then ErrorMovInv = RetornoVirtual.TieneError
+
+ If CveMovimientoEntrada > 0 AndAlso Not ErrorMovInv Then RetornoVirtual = GenerarMovimientoVirtual(CveMovimientoEntrada, ObjInventario)
+
+ If RetornoVirtual IsNot Nothing Then ErrorMovInv = RetornoVirtual.TieneError
End If
- If RetornoVirtual IsNot Nothing Then
- ErrorMovInv = RetornoVirtual.TieneError
- End If
If Not ErrorMovInv Then
ObjInventario.Commit() ' aplica los movimientos insertados
@@ -5266,7 +5273,7 @@ Partial Class Inventarios_EntradasSalidas
End Sub
- Private Function GenerarMovimientoVirtual(CveMovimiento As Integer, ObjInventario As ClsInventarios) As MMovimientoVirtual
+ Private Function GenerarMovimientoVirtual(CveMovimiento As Integer, ByRef ObjInventario As ClsInventarios) As MMovimientoVirtual
Dim ErrorMovInv As Boolean = False
Dim DtPSVirtual As New DataTable("DtTamanios")