diff --git a/Inventarios/InventarioFisico.aspx b/Inventarios/InventarioFisico.aspx
index 9c038e2fb..0c82738ba 100644
--- a/Inventarios/InventarioFisico.aspx
+++ b/Inventarios/InventarioFisico.aspx
@@ -166,7 +166,7 @@
-
+
@@ -211,7 +211,7 @@
-
+
@@ -258,10 +258,10 @@
-
+
-
-
+
+
@@ -302,7 +302,7 @@
-
+
@@ -349,7 +349,7 @@
-
+
@@ -394,7 +394,7 @@
-
+
diff --git a/Inventarios/InventarioFisicoDetalle.aspx b/Inventarios/InventarioFisicoDetalle.aspx
index bd93252e6..dcc4ec481 100644
--- a/Inventarios/InventarioFisicoDetalle.aspx
+++ b/Inventarios/InventarioFisicoDetalle.aspx
@@ -83,6 +83,15 @@
.SinColor th {
background-color: white;
}
+
+ .divmodal{
+ width: 500px;
+ }
+ .center {
+ float: none;
+ margin-left: auto;
+ margin-right: auto;
+ }
@@ -106,6 +115,7 @@
Imprimir EXCEL
+
@@ -113,7 +123,9 @@
-
+
+ Descargar productos
+
Inventario Físico Detalle
@@ -357,7 +369,7 @@
" style="margin-top: -3px;" class="btn btn-circle btn-sm label-info">
-
+
@@ -368,6 +380,11 @@
+
+
+
+
+
@@ -381,6 +398,55 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Inventarios/InventarioFisicoDetalle.aspx.vb b/Inventarios/InventarioFisicoDetalle.aspx.vb
index e7afad4c4..be4dd8eaf 100644
--- a/Inventarios/InventarioFisicoDetalle.aspx.vb
+++ b/Inventarios/InventarioFisicoDetalle.aspx.vb
@@ -3,6 +3,7 @@ Option Explicit On
Imports System.Data
Imports Extensiones
+Imports GemBox.Spreadsheet
Imports Microsoft.Reporting.WebForms
Partial Class Inventarios_InventarioFisicoDetalle
@@ -49,6 +50,7 @@ Partial Class Inventarios_InventarioFisicoDetalle
End Set
End Property
+
#End Region
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
@@ -153,7 +155,14 @@ Partial Class Inventarios_InventarioFisicoDetalle
CveAlmacenesStr.AppendFormat("{0},", dr("CveAlmacen"))
Next
End If
- LblAlmacenes.Text = str.ToString
+ If str.ToString.Length > 500 Then
+ LblAlmacenes.Text = str.ToString.Substring(0, 500)
+ LblAlmacenes.ToolTip = str.ToString
+ Else
+ LblAlmacenes.Text = str.ToString
+ End If
+ str.Clear()
+
CveAlmacenes = CveAlmacenesStr.ToString.Substring(0, CveAlmacenesStr.Length - 1)
End If
@@ -165,12 +174,24 @@ Partial Class Inventarios_InventarioFisicoDetalle
For Each dr As DataRow In dt.FiltraParametros("Incluye = 1").Rows
str.AppendFormat("{0},", dr("Clasificacion"))
Next
- LblClasif.Text = str.ToString
+ If str.ToString.Length > 500 Then
+ LblClasif.Text = str.ToString.Substring(0, 29)
+ LblClasif.ToolTip = str.ToString
+ Else
+ LblClasif.Text = str.ToString
+ End If
str.Clear()
For Each dr As DataRow In dt.FiltraParametros("Incluye = 0").Rows
str.AppendFormat("{0},", dr("Clasificacion"))
- Next
- LblClasificacionesExcluidas.Text = str.ToString
+ Next
+ If str.ToString.Length > 500 Then
+ LblClasificacionesExcluidas.Text = str.ToString.Substring(0, 500)
+ LblClasificacionesExcluidas.ToolTip = str.ToString
+ Else
+ LblClasificacionesExcluidas.Text = str.ToString
+ End If
+ str.Clear()
+
End If
End If
@@ -182,13 +203,26 @@ Partial Class Inventarios_InventarioFisicoDetalle
For Each dr As DataRow In dt.FiltraParametros("Incluye = 1").Rows
str.AppendFormat("{0},", dr("CodigoPS"))
- Next
- LblProductos.Text = str.ToString
+ Next
+ If str.ToString.Length > 500 Then
+ LblProductos.Text = str.ToString.Substring(0, 500)
+ LblProductos.ToolTip = str.ToString
+
+ Else
+ LblProductos.Text = str.ToString
+ End If
str.Clear()
For Each dr As DataRow In dt.FiltraParametros("Incluye = 0").Rows
str.AppendFormat("{0},", dr("CodigoPS"))
- Next
- LblProductosExcluidos.Text = str.ToString
+ Next
+ If str.ToString.Length > 500 Then
+ LblProductosExcluidos.Text = str.ToString.Substring(0, 500)
+ LblProductosExcluidos.ToolTip = str.ToString
+ Else
+ LblProductosExcluidos.Text = str.ToString
+ End If
+ str.Clear()
+
End If
End If
@@ -200,8 +234,13 @@ Partial Class Inventarios_InventarioFisicoDetalle
For Each dr As DataRow In dt.FiltraParametros("Incluye = 1").Rows
str.AppendFormat("{0},", dr("RazonSocial"))
- Next
- LblProveedores.Text = str.ToString
+ Next
+ If str.ToString.Length > 500 Then
+ LblProveedores.Text = str.ToString.Substring(0, 500)
+ LblProveedores.ToolTip = str.ToString
+ Else
+ LblProveedores.Text = str.ToString
+ End If
str.Clear()
End If
@@ -566,7 +605,6 @@ Partial Class Inventarios_InventarioFisicoDetalle
Private Sub LnkExcel_Click(sender As Object, e As EventArgs) Handles LnkExcel.Click
Impimir(Formato:="EXCEL")
End Sub
-
Protected Sub Impimir(Optional Formato As String = "PDF", Optional Agrupar As Boolean = False)
Dim DtDatos As New DataTable
Dim ObjInventario As New ClsInventarios()
@@ -607,6 +645,86 @@ Partial Class Inventarios_InventarioFisicoDetalle
End If
End Sub
+ Private Sub LnkExcelUniverso_Click(sender As Object, e As EventArgs) Handles LnkExcelUniverso.Click
+ Dim IncluyePS, ExcluyePS, IncluyeClasificacion, ExcluyeClasificacion, IncluyeProveedor As New StringBuilder
+ Dim ObjInventario As New ClsInventarios
+
+ If ObjInventario.GetInventarioFisicoDetallesClasificacion(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
+ Dim dt As DataTable = ObjInventario.DtResultados
+ If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
+ For Each dr As DataRow In dt.FiltraParametros("Incluye = 1").Rows
+ IncluyeClasificacion.AppendFormat("{0},", dr("CveClasificacion"))
+ Next
+ For Each dr As DataRow In dt.FiltraParametros("Incluye = 0").Rows
+ ExcluyeClasificacion.AppendFormat("{0},", dr("CveClasificacion"))
+ Next
+ End If
+
+ End If
+
+ If ObjInventario.GetInventarioFisicoDetallesProductosServicios(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
+ Dim dt As DataTable = ObjInventario.DtResultados
+ If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
+ For Each dr As DataRow In dt.FiltraParametros("Incluye = 1").Rows
+ IncluyePS.AppendFormat("{0},", dr("CvePS"))
+ Next
+ For Each dr As DataRow In dt.FiltraParametros("Incluye = 0").Rows
+ ExcluyePS.AppendFormat("{0},", dr("CvePS"))
+ Next
+ End If
+
+ End If
+
+ If ObjInventario.GetInventarioFisicoDetallesProveedores(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
+ Dim dt As DataTable = ObjInventario.DtResultados
+ Dim str As New StringBuilder
+ If dt IsNot Nothing AndAlso dt.Rows.Count > 0 Then
+ For Each dr As DataRow In dt.FiltraParametros("Incluye = 1").Rows
+ IncluyeProveedor.AppendFormat("{0},", dr("CveProveedor"))
+ Next
+ End If
+ End If
+ Dim dtPS As DataTable = GlobalDTPS(UsuarioActual.CveEmpresa)
+ If IncluyePS.ToString <> "" Then
+ dtPS = dtPS.FiltraParametros(String.Format("CvePS IN ({0})", IncluyePS.ToString.TrimEnd(",")))
+ End If
+ If ExcluyePS.ToString <> "" Then
+ dtPS = dtPS.FiltraParametros(String.Format("CvePS NOT IN ({0})", ExcluyePS.ToString.TrimEnd(",")))
+ End If
+ If IncluyeClasificacion.ToString <> "" Then
+ dtPS = dtPS.FiltraParametros(String.Format("CveClasificacion IN ({0})", IncluyeClasificacion.ToString.TrimEnd(",")))
+ End If
+ If ExcluyeClasificacion.ToString <> "" Then
+ dtPS = dtPS.FiltraParametros(String.Format("CveClasificacion NOT IN ({0})", ExcluyeClasificacion.ToString.TrimEnd(",")))
+ End If
+ If IncluyeProveedor.ToString <> "" Then
+ dtPS = dtPS.FiltraParametros(String.Format("CveProveedorCompra IN ({0})", IncluyeProveedor.ToString.TrimEnd(",")))
+ End If
+ dtPS = dtPS.FiltraParametros("", "PS", {"Codigo", "PS"})
+ Dim NombreArchivo As String
+ SpreadsheetInfo.SetLicense(ModExtensiones.SerialGemBoxSpreadsheet)
+ Dim workbook As New ExcelFile()
+ Dim worksheet = workbook.Worksheets.Add("Cxp")
+ worksheet.InsertDataTable(dtPS, New InsertDataTableOptions() With
+ {
+ .ColumnHeaders = True,
+ .StartRow = 0,
+ .StartColumn = 0
+ })
+
+ 'worksheet.Columns("B").Style.FillPattern.SetPattern(FillPatternStyle.Solid, SpreadsheetColor.FromArgb(217, 217, 217), SpreadsheetColor.FromArgb(255, 255, 255))
+ 'worksheet.Columns("C").Style.FillPattern.SetPattern(FillPatternStyle.Solid, SpreadsheetColor.FromArgb(217, 217, 217), SpreadsheetColor.FromArgb(255, 255, 255))
+ 'worksheet.Columns("Q").Style.FillPattern.SetPattern(FillPatternStyle.Solid, SpreadsheetColor.FromArgb(217, 217, 217), SpreadsheetColor.FromArgb(255, 255, 255))
+ worksheet.Rows(0).Style.FillPattern.SetPattern(FillPatternStyle.Solid, SpreadsheetColor.FromArgb(217, 217, 217), SpreadsheetColor.FromArgb(255, 255, 255))
+
+ Dim columnCount = worksheet.CalculateMaxUsedColumns()
+ For i = 0 To columnCount
+ worksheet.Columns(i).AutoFit(1, worksheet.Rows(0), worksheet.Rows(worksheet.Rows.Count - 1))
+ Next
+
+ NombreArchivo = "CxP"
+ workbook.Save(Response, $"{NombreArchivo}.xlsx", SaveOptions.XlsxDefault)
+ End Sub
#End Region
Protected Sub BtnBuscarCodVarras_Click(sender As Object, e As EventArgs)
@@ -647,4 +765,68 @@ Partial Class Inventarios_InventarioFisicoDetalle
' UPAgregarPro.Update()
'End Sub
+
+ Protected Sub LnkEditar_Click(sender As Object, e As EventArgs)
+
+ Dim GvRow As GridViewRow = DirectCast((DirectCast(sender, LinkButton)).NamingContainer, GridViewRow)
+ LimpiarModal()
+ HfCveInventarioFisicoDetalle.Value = GvRow.DataKey("CveInventarioFisicoDetalle").ToString
+
+ HfCvePS.Value = GvRow.DataKey("CvePS").ToString
+ HfCveUM.Value = GvRow.DataKey("CveUnidadMedida").ToString
+
+ TxtSerieLote.Text = GvRow.DataKey("SerieLote").ToString
+ TxtLoteEdit.Text = GvRow.DataKey("Lote").ToString
+ TxtFechaCaducida.Text = GvRow.DataKey("FechaCaducidad").ToString
+ TxtCantidad.Text = GvRow.DataKey("Cantidad").ToString
+ UpEditarPS.Update()
+
+ RegistraScript("$('#ModalEditarPS').modal('show')")
+ End Sub
+
+
+ Private Sub LimpiarModal()
+ HfCveInventarioFisicoDetalle.Value = ""
+ HfCvePS.Value = ""
+ HfCveUM.Value = ""
+ TxtSerieLote.Text = ""
+ TxtLoteEdit.Text = ""
+ TxtFechaCaducida.Text = ""
+ TxtCantidad.Text = ""
+
+ End Sub
+
+ Protected Sub BtnGuadarEditarPS_Click(sender As Object, e As EventArgs)
+ Dim objInventario As New ClsInventarios
+ If Not TxtCantidad.Text.ToEntero > 0 Then
+ Alert("La cantidad debe ser mayor a 0", TipoMensaje.MsgAdvertencia)
+ Exit Sub
+ End If
+ Dim serie As String = IIf(TxtSerieLote.Text.ToString = "", "-1", TxtSerieLote.Text.ToString)
+ Dim Lote As String = IIf(TxtLoteEdit.Text.ToString = "", "-1", TxtLoteEdit.Text.ToString)
+ Dim FechaCaducida As Date = IIf(TxtFechaCaducida.Text.ToString = "", MinFecha, TxtFechaCaducida.Text.ToString.ToDate)
+
+ If objInventario.UpdateInventarioFisicoDetalles(HfCveInventarioFisicoDetalle.Value.ToEntero, HfCvePS.Value.ToEntero, HfCveUM.Value.ToEntero, TxtCantidad.Text.ToEntero, serie, Lote, FechaCaducida) Then
+ If objInventario.GetInventarioFisicoDetalle(CveInventarioFisico, ddlUsuario.SelectedValue.ToString.ToEntero) Then
+ GvIFD.DataSource = objInventario.DtResultados
+ End If
+
+ GvIFD.DataBind()
+
+ If (GvIFD.Rows.Count > 0) Then
+ GvIFD.UseAccessibleHeader = True
+ GvIFD.HeaderRow.TableSection = TableRowSection.TableHeader
+ RegistraScript("OrdenarGV();")
+ End If
+
+ UPPInventario.Update()
+ UPAgregarPro.Update()
+ RegistraScript("$('#ModalEditarPS').modal('hide')")
+ Alert("Se modico el producto correctamente", TipoMensaje.MsgInformacion)
+ Else
+ Alert("Ocurrio un error al actuliazar", TipoMensaje.MsgError)
+ End If
+
+ objInventario.Dispose()
+ End Sub
End Class