diff --git a/App_Code/ClsInventarios.vb b/App_Code/ClsInventarios.vb
index f05686a6c..0fe627061 100644
--- a/App_Code/ClsInventarios.vb
+++ b/App_Code/ClsInventarios.vb
@@ -2421,7 +2421,8 @@ Public Class ClsInventarios
Return Retorno
End Function
- Public Function AddInventarioFisicoDetalle(CveInventarioFisico As Integer, CvePS As Integer, CveUM As Integer, Cantidad As Double, Serie As String, CveUsuario As Integer) As Boolean
+ Public Function AddInventarioFisicoDetalle(CveInventarioFisico As Integer, CvePS As Integer, CveUM As Integer, Cantidad As Double, Serie As String, CveUsuario As Integer,
+ Optional CveSeccionAlmacen As Integer = -1, Optional Lote As String = "-1", Optional FechaCaducidad As Date = MinFecha) As Boolean
Dim Retorno As Boolean = False
DataAdapter("PA_Inv_InventarioFisicoDetalleAdd")
@@ -2433,6 +2434,9 @@ Public Class ClsInventarios
.Add("@CvePS", SqlDbType.Int).Value = CvePS
.Add("@Serie", SqlDbType.VarChar).Value = Serie
.Add("@CveUsuario", SqlDbType.Int).Value = CveUsuario
+ .Add("@CveSeccionAlmacen", SqlDbType.Int).Value = CveSeccionAlmacen
+ .Add("@Lote", SqlDbType.NVarChar).Value = Lote
+ .Add("@FechaCaducidad", SqlDbType.Date).Value = FechaCaducidad
.Add("@Estatus", SqlDbType.Int).Direction = ParameterDirection.Output
End With
diff --git a/Inventarios/InventarioFisicoDetalle.aspx b/Inventarios/InventarioFisicoDetalle.aspx
index 5499ab0b4..a1c069487 100644
--- a/Inventarios/InventarioFisicoDetalle.aspx
+++ b/Inventarios/InventarioFisicoDetalle.aspx
@@ -229,7 +229,7 @@
@@ -241,6 +241,24 @@
+
+
+
@@ -304,7 +322,10 @@
+
+
+
@@ -325,7 +346,10 @@
+
+
+
diff --git a/Inventarios/InventarioFisicoDetalle.aspx.vb b/Inventarios/InventarioFisicoDetalle.aspx.vb
index 8e5e23634..f55810f53 100644
--- a/Inventarios/InventarioFisicoDetalle.aspx.vb
+++ b/Inventarios/InventarioFisicoDetalle.aspx.vb
@@ -89,6 +89,9 @@ Partial Class Inventarios_InventarioFisicoDetalle
Private Sub CargaDatos(CveInventarioFisico As Integer, CveEmpresa As Integer, Optional CveUsuario As Integer = -1)
Dim ObjInventario As New ClsInventarios
+ DdlSeccionAlmacen.DataSource = GlobalDTSeccionAlmacen(UsuarioActual.CveEmpresa, -1)
+ DdlSeccionAlmacen.DataBind()
+ DdlSeccionAlmacen.Items.Insert(0, New ListItem("Seleccione", "-1"))
If ObjInventario.GetInventarioFisico(CveInventarioFisico, CveEmpresa, -1, -1) AndAlso ObjInventario.DtResultados.Rows.Count > 0 Then
Dim CveEstatus = ObjInventario.DtResultados.FiltroPrimeroValor("CveEstatus")
Select Case CveEstatus
@@ -181,7 +184,11 @@ Partial Class Inventarios_InventarioFisicoDetalle
If ObjInventario.GetInventarioFisicoDetalle(CveInventarioFisico, CveUsuario) Then
If ObjInventario.DtResultados.Rows.Count > 0 Then
- GvIFDUltimoRegistrado.DataSource = ObjInventario.DtResultados.AsEnumerable.OrderByDescending(Function(k) k!CveInventarioFisicoDetalle).Take(1).CopyToDataTable
+ GvIFDUltimoRegistrado.DataSource = ObjInventario.DtResultados.AsEnumerable.OrderByDescending(Function(k) k!CveInventarioFisicoDetalle).Take(1).CopyToDataTable
+
+ GvIFDUltimoRegistrado.Columns(4).Visible = ObjInventario.DtResultados.Rows(0)("CveSeccionAlmacen").ToString.ToEntero > 0
+ GvIFDUltimoRegistrado.Columns(6).Visible = ObjInventario.DtResultados.Rows(0)("Lote").ToString <> ""
+ GvIFDUltimoRegistrado.Columns(7).Visible = ObjInventario.DtResultados.Rows(0)("FechaCaducidad").ToString.ToDate > MinFecha
Else
GvIFDUltimoRegistrado.DataSource = Nothing
End If
@@ -223,6 +230,9 @@ Partial Class Inventarios_InventarioFisicoDetalle
Dim Inventario As New ClsInventarios
If Inventario.GetInventarioFisicoDetalle(CveInventarioFisico, ddlUsuario.SelectedValue.ToString.ToEntero) Then
If Inventario.DtResultados.Rows.Count > 0 Then
+ GvIFD.Columns(4).Visible = Inventario.DtResultados.MAX("CveSeccionAlmacen") > 0
+ GvIFD.Columns(6).Visible = Inventario.DtResultados.MAX("Lote") <> ""
+ GvIFD.Columns(7).Visible = Inventario.DtResultados.MAX("FechaCaducidad").ToDate > MinFecha
GvIFD.DataSource = Inventario.DtResultados '.AsEnumerable.OrderByDescending(Function(k) k!CveInventarioFisicoDetalle).Take(500).CopyToDataTable
Else
GvIFD.DataSource = Nothing
@@ -248,8 +258,12 @@ Partial Class Inventarios_InventarioFisicoDetalle
Dim CveProducto As Integer = -1
Dim CveUnidadMedida As Integer
Dim Codigo As String = If(TxtCodigo.Text.Trim <> "", TxtCodigo.Text.Trim, "-1").Replace("'", "''") ' scanner cambian los guiones por apostrofes
- Dim CodigoBarras As String = If(TxtCodigoBarras.Text.Trim <> "", TxtCodigoBarras.Text.Trim, "-1").Replace("'", "''") ' scanner cambian los guiones por apostrofes
+ Dim CodigoBarras As String = If(TxtCodigoBarras.Text.Trim <> "", TxtCodigoBarras.Text.Trim, "-1").Replace("'", "''") ' scanner cambian los guiones por apostrofes
+ Dim SeccionAlmacen As String = If(DdlSeccionAlmacen.SelectedValue.ToEntero > -1, DdlSeccionAlmacen.SelectedItem.Text, "")
+ Dim CveSeccionAlmacen As Integer = If(DdlSeccionAlmacen.SelectedValue.ToEntero > 0, DdlSeccionAlmacen.SelectedValue.ToEntero, -1)
Dim SerieLote As String = TxtCodigoSerie.Text.Trim
+ Dim Lote As String = If(TxtLote.Text.Length > 0, TxtLote.Text, "-1")
+ Dim FechaCaducidad As String = If(TxtFechaCaducidad.Text.Length > 0, TxtFechaCaducidad.Text, MinFecha.ToString)
Dim CveMetodoInv As Integer = -1
Dim Cantidad = TxtCantidadProducto.Text.ToDouble
@@ -283,14 +297,22 @@ Partial Class Inventarios_InventarioFisicoDetalle
Dim Consulto As Boolean = False
Using Inventarios As New ClsInventarios
- If Inventarios.AddInventarioFisicoDetalle(CveInventarioFisico, CveProducto, CveUnidadMedida, If(CveMetodoInv = 5, 1, Cantidad), SerieLote, UsuarioActual.CveUsuario) Then
+ If Inventarios.AddInventarioFisicoDetalle(CveInventarioFisico, CveProducto, CveUnidadMedida, If(CveMetodoInv = 5, 1, Cantidad), SerieLote, UsuarioActual.CveUsuario,
+ CveSeccionAlmacen:=CveSeccionAlmacen, Lote:=Lote, FechaCaducidad:=FechaCaducidad.ToDate) Then
If GvIFDUltimoRegistrado.Rows.Count > 0 Then
+ GvIFDUltimoRegistrado.Columns(4).Visible = CveSeccionAlmacen > 0
+ GvIFDUltimoRegistrado.Columns(6).Visible = Lote <> "-1"
+ GvIFDUltimoRegistrado.Columns(7).Visible = FechaCaducidad <> "01/01/1900"
+
GvIFDUltimoRegistrado.Rows(0).Cells(0).Text = Now
GvIFDUltimoRegistrado.Rows(0).Cells(1).Text = dr("CodigoBarras").ToString
GvIFDUltimoRegistrado.Rows(0).Cells(2).Text = dr("Codigo").ToString
GvIFDUltimoRegistrado.Rows(0).Cells(3).Text = dr("PS").ToString
- GvIFDUltimoRegistrado.Rows(0).Cells(4).Text = TxtCodigoSerie.Text.Trim
- GvIFDUltimoRegistrado.Rows(0).Cells(5).Text = TxtCantidadProducto.Text.Trim
+ GvIFDUltimoRegistrado.Rows(0).Cells(4).Text = SeccionAlmacen
+ GvIFDUltimoRegistrado.Rows(0).Cells(5).Text = TxtCodigoSerie.Text.Trim
+ GvIFDUltimoRegistrado.Rows(0).Cells(6).Text = Lote
+ GvIFDUltimoRegistrado.Rows(0).Cells(7).Text = FechaCaducidad
+ GvIFDUltimoRegistrado.Rows(0).Cells(8).Text = TxtCantidadProducto.Text.Trim
Else
Consulto = True
If Inventarios.GetInventarioFisicoDetalle(CveInventarioFisico, UsuarioActual.CveUsuario) Then
@@ -308,6 +330,9 @@ Partial Class Inventarios_InventarioFisicoDetalle
TxtCodigoSerie.Text = ""
TxtCodigo.Text = ""
TxtCantidadProducto.Text = "1"
+ DdlSeccionAlmacen.SelectedValue = "-1"
+ TxtLote.Text = ""
+ TxtFechaCaducidad.Text = ""
RegistraScript("playsonidito('beep-07.wav')")
Else
TxtCodigoSerie.Text = ""
@@ -320,6 +345,9 @@ Partial Class Inventarios_InventarioFisicoDetalle
TxtCodigoBarras.Text = ""
TxtCodigoSerie.Text = ""
TxtCodigo.Text = ""
+ DdlSeccionAlmacen.SelectedValue = "-1"
+ TxtLote.Text = ""
+ TxtFechaCaducidad.Text = ""
Alert("No se encontró el producto, favor de escribirlo correctamente.", TipoMensaje.MsgError)
RegistraScript("playsonidito('142608__autistic-lucario__error.wav')")
End If
@@ -491,4 +519,17 @@ Partial Class Inventarios_InventarioFisicoDetalle
' UsuarioActual.CveUsuario
'
End Sub
+
+ Protected Sub TxtCodigoBarras_Change(sender As Object, e As EventArgs)
+ Dim Producto As DataRow = GlobalDTPSSimplificado(UsuarioActual.CveEmpresa).FiltroPrimero($"CodigoBarras = '{TxtCodigoBarras.Text}'")
+
+ Dim AplicaSeccion As Boolean = Producto("AplicaSeccion") = "1"
+ Dim AplicaCaducidad As Boolean = Producto("AplicaCaducidad") = "1"
+ Dim AplicaLote As Boolean = Producto("AplicaLote") = "1"
+
+ divSeccionAlmacen.Visible = AplicaSeccion
+ divLote.Visible = AplicaLote
+ divFechaCaducidad.Visible = AplicaCaducidad
+ UPAgregarPro.Update()
+ End Sub
End Class