1102 lines
47 KiB
VB.net
1102 lines
47 KiB
VB.net
Imports System.Data
|
|
Imports System.IO
|
|
Imports Extensiones
|
|
Imports GemBox.Spreadsheet
|
|
Imports Microsoft.Reporting.WebForms
|
|
|
|
Partial Class Inventarios_RepAnomalias
|
|
Inherits ClsPaginas
|
|
|
|
|
|
#Region "Propiedades"
|
|
Public Property CveInventarioFisico As Integer
|
|
Get
|
|
Return CType(ViewState("CveInventarioFisico"), Integer)
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveInventarioFisico") = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property CveInventarioFisicoPadre As Integer
|
|
Get
|
|
If ViewState("CveInventarioFisicoPadre") Is Nothing Then
|
|
Return -1
|
|
Else
|
|
Return CType(ViewState("CveInventarioFisicoPadre"), Integer)
|
|
End If
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveInventarioFisicoPadre") = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property CveAlmacen As Integer
|
|
Get
|
|
Return CType(ViewState("CveAlmacen"), Integer)
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveAlmacen") = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property CveSubProyecto As Integer
|
|
Get
|
|
Return CType(ViewState("CveSubProyecto"), Integer)
|
|
End Get
|
|
Set(value As Integer)
|
|
ViewState("CveSubProyecto") = value
|
|
End Set
|
|
End Property
|
|
Public Property EsAvance As Boolean
|
|
Get
|
|
Return CType(ViewState("EsAvance"), Boolean)
|
|
End Get
|
|
Set(value As Boolean)
|
|
ViewState("EsAvance") = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property aplicacion As Boolean
|
|
Get
|
|
Return CType(ViewState("aplicacion"), Boolean)
|
|
End Get
|
|
Set(value As Boolean)
|
|
ViewState("aplicacion") = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property CreandoNuevoInventario As Boolean
|
|
Get
|
|
Return CType(ViewState("CreandoNuevoInventario"), Boolean)
|
|
End Get
|
|
Set(value As Boolean)
|
|
ViewState("CreandoNuevoInventario") = value
|
|
End Set
|
|
End Property
|
|
|
|
#End Region
|
|
|
|
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
If Not IsPostBack Then
|
|
|
|
CveInventarioFisico = If(Request("CveInventarioFisico") IsNot Nothing AndAlso Request("CveInventarioFisico").ToEntero() > 0, Request("CveInventarioFisico").ToEntero(), -1).ToString
|
|
EsAvance = If(Request("EsAvance") IsNot Nothing, CBool(Request("EsAvance").ToEntero), False)
|
|
|
|
If CveInventarioFisico > 0 Then
|
|
CargaDatos(CveInventarioFisico)
|
|
CreandoNuevoInventario = False
|
|
End If
|
|
|
|
End If
|
|
End Sub
|
|
|
|
|
|
|
|
#Region " CARGA DATOS "
|
|
|
|
Private Sub CargaDatos(CveInventarioFisico As Integer)
|
|
Dim Inventario As New ClsInventarios
|
|
Dim dt As DataTable = Nothing
|
|
|
|
|
|
If UsuarioActual.CveEmpresa.Contiene(119, 158) Then
|
|
GvF.Columns(2).Visible = True 'clasificación
|
|
GvS.Columns(2).Visible = True 'clasificación
|
|
GvC.Columns(2).Visible = True 'clasificación
|
|
GvF.Columns(3).Visible = True 'proveedor
|
|
GvS.Columns(3).Visible = True 'proveedor
|
|
GvC.Columns(3).Visible = True 'proveedor
|
|
GvF.Columns(17).Visible = UsuarioActual.Procesos(201) 'costo
|
|
GvS.Columns(17).Visible = UsuarioActual.Procesos(201) 'costo
|
|
GvC.Columns(17).Visible = UsuarioActual.Procesos(201) 'costo
|
|
GvGrupos.Columns(1).Visible = True 'clasificación
|
|
GvGrupos.Columns(2).Visible = True 'proveedor
|
|
GvGrupos.Columns(17).Visible = UsuarioActual.Procesos(201) 'costo
|
|
End If
|
|
|
|
If Inventario.GetInventarioFisico(CveInventarioFisico, UsuarioActual.CveEmpresa, -1, -1, UsuarioActual.CveUsuario) Then
|
|
lbTitulo.Text = Inventario.InventarioFisico
|
|
lbObservaciones.Text = Inventario.Observaciones
|
|
lbSubProyecto.Text = Inventario.SubProyectoInventario
|
|
lbEstatus.Text = Inventario.Estatus
|
|
lbFechaI.Text = Inventario.FechaI
|
|
lbFechaF.Text = Inventario.FechaF
|
|
CveSubProyecto = Inventario.CveSubProyectoInventario
|
|
aplicacion = Inventario.ConAplicacion
|
|
CveInventarioFisicoPadre = Inventario.CveInventarioFisicoPadre
|
|
If CveInventarioFisicoPadre > 0 Then
|
|
colprevio.Visible = True
|
|
HplPrevio.NavigateUrl = String.Format("/Inventarios/RepAnomalias.aspx?CveInventarioFisico={0}", CveInventarioFisicoPadre)
|
|
HplPrevio.Text = "Ir"
|
|
End If
|
|
|
|
If Inventario.Estatus = "Finalizado" Then
|
|
btnFin.Visible = False
|
|
End If
|
|
|
|
If EsAvance Then
|
|
If Inventario.GetInventarioFisicoResultadosAvance(CveInventarioFisico, UsuarioActual.CveEmpresa, DdlGPO.SelectedValue.ToString.ToEntero, DdlVista.SelectedValue.ToEntero) Then
|
|
dt = Inventario.DtResultados
|
|
End If
|
|
Else
|
|
If Inventario.GetInventarioFisicoResultados(CveInventarioFisico, UsuarioActual.CveEmpresa, DdlGPO.SelectedValue.ToString.ToEntero, DdlVista.SelectedValue.ToEntero) Then
|
|
dt = Inventario.DtResultados
|
|
End If
|
|
End If
|
|
|
|
If Inventario.GetInventarioFisicoDetallesAlmacen(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
Dim dta As DataTable = Inventario.DtResultados
|
|
Dim str As New StringBuilder
|
|
If dta IsNot Nothing AndAlso dta.Rows.Count > 0 Then
|
|
|
|
For Each dr As DataRow In dta.Rows
|
|
str.AppendFormat("{0},", dr("almacen"))
|
|
Next
|
|
End If
|
|
LblAlmacenes.Text = str.ToString
|
|
End If
|
|
If Inventario.GetInventarioFisicoDetallesClasificacion(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
Dim dta As DataTable = Inventario.DtResultados
|
|
Dim str As New StringBuilder
|
|
If dta IsNot Nothing AndAlso dta.Rows.Count > 0 Then
|
|
|
|
For Each dr As DataRow In dta.FiltraParametros("Incluye = 1").Rows
|
|
str.AppendFormat("{0},", dr("Clasificacion"))
|
|
Next
|
|
If str.ToString.Length > 500 Then
|
|
LblClasif.Text = str.ToString.Substring(0, 500)
|
|
LblClasif.ToolTip = str.ToString
|
|
Else
|
|
LblClasif.Text = If(str.ToString <> "", str.ToString, "Todos")
|
|
End If
|
|
str.Clear()
|
|
For Each dr As DataRow In dta.FiltraParametros("Incluye = 0").Rows
|
|
str.AppendFormat("{0},", dr("Clasificacion"))
|
|
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
|
|
End If
|
|
|
|
End If
|
|
If Inventario.GetInventarioFisicoDetallesProductosServicios(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
Dim dta As DataTable = Inventario.DtResultados
|
|
Dim str As New StringBuilder
|
|
If dta IsNot Nothing AndAlso dta.Rows.Count > 0 Then
|
|
|
|
For Each dr As DataRow In dta.FiltraParametros("Incluye = 1").Rows
|
|
str.AppendFormat("{0},", dr("CodigoPS"))
|
|
Next
|
|
If str.ToString.Length > 500 Then
|
|
LblProductos.Text = str.ToString.Substring(0, 500)
|
|
LblProductos.ToolTip = str.ToString
|
|
Else
|
|
LblProductos.Text = If(str.ToString <> "", str.ToString, "Todos")
|
|
End If
|
|
str.Clear()
|
|
For Each dr As DataRow In dta.FiltraParametros("Incluye = 0").Rows
|
|
str.AppendFormat("{0},", dr("CodigoPS"))
|
|
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
|
|
End If
|
|
|
|
End If
|
|
If Inventario.GetInventarioFisicoDetallesProveedores(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
Dim dta As DataTable = Inventario.DtResultados
|
|
Dim str As New StringBuilder
|
|
If dta IsNot Nothing AndAlso dta.Rows.Count > 0 Then
|
|
|
|
For Each dr As DataRow In dta.FiltraParametros("Incluye = 1").Rows
|
|
str.AppendFormat("{0},", dr("RazonSocial"))
|
|
Next
|
|
If str.ToString.Length > 500 Then
|
|
LblProveedores.Text = str.ToString.Substring(0, 500)
|
|
LblProveedores.ToolTip = str.ToString
|
|
Else
|
|
LblProveedores.Text = If(str.ToString <> "", str.ToString, "Todos")
|
|
End If
|
|
str.Clear()
|
|
End If
|
|
|
|
End If
|
|
|
|
End If
|
|
Inventario.Dispose()
|
|
|
|
|
|
If DdlVista.SelectedValue.ToEntero = 1 Then
|
|
|
|
DVNormal.Visible = True
|
|
DVGrupos.Visible = False
|
|
|
|
LnkPDF.Visible = True
|
|
ImgExcel.Visible = True
|
|
ImgExcel2.Visible = True
|
|
ImgExcelProdcutosCoinciden.Visible = True
|
|
LnkDescarExcelGrupos.Visible = False
|
|
|
|
If Not String.IsNullOrWhiteSpace(UsuarioActual.Empresa.Funcionalidad(147)) Then GvS.Columns(8).HeaderText = UsuarioActual.Empresa.Funcionalidad(147)
|
|
If Not String.IsNullOrWhiteSpace(UsuarioActual.Empresa.Funcionalidad(147)) Then GvF.Columns(8).HeaderText = UsuarioActual.Empresa.Funcionalidad(147)
|
|
If Not String.IsNullOrWhiteSpace(UsuarioActual.Empresa.Funcionalidad(147)) Then GvC.Columns(8).HeaderText = UsuarioActual.Empresa.Funcionalidad(147)
|
|
|
|
GvS.DataSource = dt.FiltraParametros("Diferencia > 0")
|
|
Dim DtS As DataTable = dt.FiltraParametros("Diferencia > 0")
|
|
BanderaSerieLoteCad(GvS, DtS)
|
|
GvS.DataBind()
|
|
|
|
GvF.DataSource = dt.FiltraParametros("Diferencia < 0")
|
|
Dim DtF As DataTable = dt.FiltraParametros("Diferencia < 0")
|
|
BanderaSerieLoteCad(GvF, DtF)
|
|
GvF.DataBind()
|
|
|
|
Dim DtC As DataTable = dt.FiltraParametros("Diferencia = 0")
|
|
GvC.DataSource = DtC
|
|
BanderaSerieLoteCad(GvC, DtC)
|
|
GvC.DataBind()
|
|
|
|
If (GvF.Rows.Count > 0) Then
|
|
GvF.UseAccessibleHeader = True
|
|
GvF.HeaderRow.TableSection = TableRowSection.TableHeader
|
|
|
|
divRegistradosFaltan.Visible = True
|
|
LtlTotalRegistrosFaltan.Text = GvF.Rows.Count.ToString
|
|
End If
|
|
|
|
If (GvS.Rows.Count > 0) Then
|
|
GvS.UseAccessibleHeader = True
|
|
GvS.HeaderRow.TableSection = TableRowSection.TableHeader
|
|
|
|
divRegistradosSobran.Visible = True
|
|
LtlTotalRegistrosSobran.Text = GvS.Rows.Count.ToString
|
|
End If
|
|
|
|
If (GvC.Rows.Count > 0) Then
|
|
GvC.UseAccessibleHeader = True
|
|
GvC.HeaderRow.TableSection = TableRowSection.TableHeader
|
|
|
|
divRegistradosCoinciden.Visible = True
|
|
LtlCoincidentes.Text = GvC.Rows.Count.ToString
|
|
End If
|
|
|
|
PSIguales()
|
|
|
|
|
|
UPAnomalias.Update()
|
|
UpdateGvS.Update()
|
|
UPDatos.Update()
|
|
|
|
Else
|
|
DVNormal.Visible = False
|
|
DVGrupos.Visible = True
|
|
|
|
If DdlGPO.SelectedValue.ToEntero = 2 Then
|
|
GvGrupos.Columns(5).Visible = False
|
|
GvGrupos.Columns(6).Visible = False
|
|
GvGrupos.Columns(7).Visible = False
|
|
GvGrupos.Columns(8).Visible = False
|
|
Else
|
|
GvGrupos.Columns(5).Visible = True
|
|
GvGrupos.Columns(6).Visible = True
|
|
GvGrupos.Columns(7).Visible = True
|
|
GvGrupos.Columns(8).Visible = True
|
|
End If
|
|
|
|
If DdlGPO.SelectedValue.ToEntero = 2 Then
|
|
LtlGrupos1.Visible = False
|
|
LtlGrupos2.Visible = False
|
|
LtlGrupos3.Visible = False
|
|
|
|
LblGrupos1.Visible = False
|
|
LblGrupos2.Visible = False
|
|
LblGrupos3.Visible = False
|
|
|
|
Else
|
|
|
|
LtlGrupos1.Visible = True
|
|
LtlGrupos2.Visible = True
|
|
LtlGrupos3.Visible = True
|
|
|
|
LblGrupos1.Visible = True
|
|
LblGrupos2.Visible = True
|
|
LblGrupos3.Visible = True
|
|
|
|
End If
|
|
|
|
UpGeneral.Update()
|
|
|
|
LnkPDF.Visible = False
|
|
ImgExcel.Visible = False
|
|
ImgExcel2.Visible = False
|
|
ImgExcelProdcutosCoinciden.Visible = False
|
|
LnkDescarExcelGrupos.Visible = True
|
|
|
|
If dt IsNot Nothing Then
|
|
GvGrupos.DataSource = dt.FiltraParametros("CvePS > 0")
|
|
LtlGrupos1.Text = dt.FiltraParametros("Orden = 1 and CvePS > 0").Rows.Count.ToString
|
|
LtlGrupos2.Text = dt.FiltraParametros("Orden = 2 and CvePS > 0").Rows.Count.ToString
|
|
LtlGrupos3.Text = dt.FiltraParametros("Orden = 3 and CvePS > 0").Rows.Count.ToString
|
|
|
|
End If
|
|
GvGrupos.DataBind()
|
|
|
|
If DdlGPO.SelectedValue.ToEntero = 1 Then
|
|
PSIguales()
|
|
End If
|
|
End If
|
|
UpGeneral.Update()
|
|
UPAcciones.Update()
|
|
|
|
|
|
End Sub
|
|
#End Region
|
|
|
|
|
|
#Region " FINALIZAR "
|
|
Protected Sub btnFin_Click(sender As Object, e As EventArgs) Handles btnFin.Click
|
|
Dim Inventarios As New ClsInventarios
|
|
Inventarios.IniciaTransacSQL()
|
|
|
|
|
|
If Inventarios.AddInventarioFisicoResultados(CveInventarioFisico, UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa) Then
|
|
If Inventarios.UpdateInventarioFisicoEstatus(CveInventarioFisico, 3, UsuarioActual.CveEmpresa) Then
|
|
Dim url As String = ("/Inventarios/RepAnomalias.aspx?CveInventarioFisico=" + CveInventarioFisico.ToString)
|
|
Alert("Ha finalizado el Inventario Físico. Sera enviado al reporte de anomalías", TipoMensaje.MsgInformacion, " window.location=""" + url + """")
|
|
Inventarios.Commit()
|
|
Else
|
|
Inventarios.RollBack()
|
|
End If
|
|
Else
|
|
Inventarios.RollBack()
|
|
End If
|
|
Inventarios.Dispose()
|
|
End Sub
|
|
|
|
Protected Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click
|
|
CargaDatos(CveInventarioFisico)
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
|
|
Protected Sub GVF_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvF.RowDataBound
|
|
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
If e.Row.DBCampo("Costo") = "-1" Then
|
|
e.Row.Cells(8).Text = "0"
|
|
End If
|
|
If e.Row.Cells(7).Text = MinFecha.ToString Then
|
|
e.Row.Cells(7).Text = ""
|
|
End If
|
|
e.Row.FCLabel("Lblc").Text = e.Row.RowIndex + 1
|
|
End If
|
|
If e.Row.RowType = DataControlRowType.Header Then
|
|
If CreandoNuevoInventario Then
|
|
e.Row.FCCheckBox("ChkAllFaltante").Attributes.Add("onclick", "SeleccionarTodosFaltante(this);")
|
|
End If
|
|
End If
|
|
|
|
End Sub
|
|
|
|
|
|
Protected Sub GVS_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvS.RowDataBound
|
|
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
If e.Row.DBCampo("Costo") = "-1" Then
|
|
e.Row.Cells(8).Text = "0"
|
|
End If
|
|
If e.Row.Cells(7).Text = MinFecha.ToString Then
|
|
e.Row.Cells(7).Text = ""
|
|
End If
|
|
e.Row.FCLabel("Lblc").Text = e.Row.RowIndex + 1
|
|
End If
|
|
If e.Row.RowType = DataControlRowType.Header Then
|
|
If CreandoNuevoInventario Then
|
|
e.Row.FCCheckBox("ChkAllSobrante").Attributes.Add("onclick", "SeleccionarTodosSobrante(this);")
|
|
End If
|
|
End If
|
|
|
|
End Sub
|
|
|
|
#Region " IMPRIMIR "
|
|
'Protected Sub LnkExportar_Click(sender As Object, e As EventArgs) Handles LnkExportar.Click
|
|
' GvF.ExportToExcel("IF_Faltantes_" & Now.ToShortDateString())
|
|
'End Sub
|
|
'Protected Sub LnkExportaSobrantes_Click(sender As Object, e As EventArgs) Handles LnkExportaSobrantes.Click
|
|
' GvS.ExportToExcel("IF_Sobrantes_" & Now.ToShortDateString())
|
|
'End Sub
|
|
|
|
Private Sub LnkPDF_Click(sender As Object, e As EventArgs) Handles LnkPDF.Click
|
|
ImprimirbytesPDF(Imprimir, Formato:="PDF")
|
|
End Sub
|
|
Protected Function Imprimir() As Byte()
|
|
Dim retorno As Byte() = Nothing
|
|
|
|
Dim Archivo As New System.IO.FileInfo(String.Format("{0}Formatos/RepAnomalias.rdlc", UsuarioActual.Empresa.Ruta))
|
|
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
|
|
Dim params As New List(Of ReportParameter)
|
|
Dim lrds As New List(Of ReportDataSource)
|
|
Dim Inventario As New ClsInventarios
|
|
|
|
|
|
Dim dtS As DataTable = Nothing
|
|
Dim dtF As DataTable = Nothing
|
|
|
|
If Inventario.GetInventarioFisico(CveInventarioFisico, UsuarioActual.CveEmpresa, -1, -1, UsuarioActual.CveUsuario) Then
|
|
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
|
|
params.Add(New ReportParameter("Titulo", Inventario.InventarioFisico))
|
|
params.Add(New ReportParameter("Observaciones", Inventario.Observaciones))
|
|
params.Add(New ReportParameter("Almacen", LblAlmacenes.Text))
|
|
params.Add(New ReportParameter("Estatus", Inventario.Estatus))
|
|
params.Add(New ReportParameter("FechaInicio", Inventario.FechaI))
|
|
params.Add(New ReportParameter("FechaFin", Inventario.FechaF))
|
|
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
|
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToString))
|
|
|
|
If Imagen.Exists Then
|
|
params.Add(New ReportParameter("LogoPath", $"file://{Imagen.FullName}"))
|
|
Else
|
|
params.Add(New ReportParameter("LogoPath", ""))
|
|
End If
|
|
|
|
If EsAvance Then
|
|
If Inventario.GetInventarioFisicoResultadosAvance(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
dtS = Inventario.DtResultados.FiltraParametros("Diferencia <0")
|
|
dtF = Inventario.DtResultados.FiltraParametros(" Diferencia > 0")
|
|
End If
|
|
Else
|
|
If Inventario.GetInventarioFisicoResultados(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
dtS = Inventario.DtResultados.FiltraParametros("Diferencia <0")
|
|
dtF = Inventario.DtResultados.FiltraParametros(" Diferencia > 0")
|
|
End If
|
|
End If
|
|
|
|
Dim rds As New ReportDataSource With {.Name = "DataSet1", .Value = dtS}
|
|
lrds.Add(rds)
|
|
Dim rds2 As New ReportDataSource With {.Name = "DataSet2", .Value = dtF}
|
|
lrds.Add(rds2)
|
|
|
|
End If
|
|
retorno = StreamPDF("Empresas/Grales/Formatos/RepAnomalias.rdlc", lrds, params, "Reporte Anomalías", "PDF", MR:=Nothing)
|
|
|
|
Return retorno
|
|
End Function
|
|
|
|
Private Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click
|
|
|
|
|
|
Dim GvTemp As GridView = GvF
|
|
|
|
For Each GvRow As GridViewRow In GvTemp.Rows
|
|
GvRow.BackColor = Drawing.ColorTranslator.FromHtml("white")
|
|
Next
|
|
|
|
Dim SbFiltros As New StringBuilder()
|
|
SbFiltros.AppendFormat("Almacenes: {0}|", LblAlmacenes.Text)
|
|
SbFiltros.AppendFormat("Fecha Inicio: {0} Fecha Fin: {1}|", lbFechaI.Text, lbFechaF.Text)
|
|
|
|
SbFiltros.AppendFormat("Clasificaciones: {0}|", LblClasif.Text)
|
|
SbFiltros.AppendFormat("Clasificaciones Excluidas: {0}|", LblClasificacionesExcluidas.Text)
|
|
|
|
SbFiltros.AppendFormat("Productos: {0}|", LblProductos.Text)
|
|
SbFiltros.AppendFormat("Productos Excluidos: {0}|", LblProductosExcluidos.Text)
|
|
|
|
SbFiltros.AppendFormat("Proveedores: {0}|", LblProveedores.Text)
|
|
SbFiltros.AppendFormat("SubProyecto: {0}|", lbSubProyecto.Text)
|
|
|
|
SbFiltros.AppendFormat("Estatus: {0}|", lbEstatus.Text)
|
|
|
|
'GvF.ExportToExcel("Reporte de Inventario Fisico - Productos que Faltan " & Now.ToShortDateString)
|
|
|
|
ExportToExcelGembox2(GvTemp, "Reporte de Inventario Fisico - Productos que Faltan " & Now.ToShortDateString, UsuarioActual, "Reporte de Inventario Fisico - Productos que Faltan", DatosFiltros:=SbFiltros.ToString())
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub ImgExcel2_Click(sender As Object, e As EventArgs) Handles ImgExcel2.Click
|
|
Dim GvTemp As GridView = GvS
|
|
|
|
For Each GvRow As GridViewRow In GvTemp.Rows
|
|
GvRow.BackColor = Drawing.ColorTranslator.FromHtml("white")
|
|
Next
|
|
|
|
Dim SbFiltros As New StringBuilder()
|
|
SbFiltros.AppendFormat("Almacenes: {0}|", LblAlmacenes.Text)
|
|
SbFiltros.AppendFormat("Fecha Inicio: {0} Fecha Fin: {1}|", lbFechaI.Text, lbFechaF.Text)
|
|
|
|
SbFiltros.AppendFormat("Clasificaciones: {0}|", LblClasif.Text)
|
|
SbFiltros.AppendFormat("Clasificaciones Excluidas: {0}|", LblClasificacionesExcluidas.Text)
|
|
|
|
SbFiltros.AppendFormat("Productos: {0}|", LblProductos.Text)
|
|
SbFiltros.AppendFormat("Productos Excluidos: {0}|", LblProductosExcluidos.Text)
|
|
|
|
SbFiltros.AppendFormat("Proveedores: {0}|", LblProveedores.Text)
|
|
SbFiltros.AppendFormat("SubProyecto: {0}|", lbSubProyecto.Text)
|
|
|
|
SbFiltros.AppendFormat("Estatus: {0}|", lbEstatus.Text)
|
|
|
|
'GvF.ExportToExcel("Reporte de Inventario Fisico - Productos que Faltan " & Now.ToShortDateString)
|
|
|
|
ExportToExcelGembox2(GvTemp, "Reporte de Inventario Fisico - Productos que Sobran " & Now.ToShortDateString, UsuarioActual, "Reporte de Inventario Fisico - Productos que Sobran", DatosFiltros:=SbFiltros.ToString())
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub ImgExcelProdcutosCoinciden_Click(sender As Object, e As EventArgs) Handles ImgExcelProdcutosCoinciden.Click
|
|
Dim GvTemp As GridView = GvC
|
|
|
|
For Each GvRow As GridViewRow In GvTemp.Rows
|
|
GvRow.BackColor = Drawing.ColorTranslator.FromHtml("white")
|
|
Next
|
|
|
|
Dim SbFiltros As New StringBuilder()
|
|
SbFiltros.AppendFormat("Almacenes: {0}|", LblAlmacenes.Text)
|
|
SbFiltros.AppendFormat("Fecha Inicio: {0} Fecha Fin: {1}|", lbFechaI.Text, lbFechaF.Text)
|
|
|
|
SbFiltros.AppendFormat("Clasificaciones: {0}|", LblClasif.Text)
|
|
SbFiltros.AppendFormat("Clasificaciones Excluidas: {0}|", LblClasificacionesExcluidas.Text)
|
|
|
|
SbFiltros.AppendFormat("Productos: {0}|", LblProductos.Text)
|
|
SbFiltros.AppendFormat("Productos Excluidos: {0}|", LblProductosExcluidos.Text)
|
|
|
|
SbFiltros.AppendFormat("Proveedores: {0}|", LblProveedores.Text)
|
|
SbFiltros.AppendFormat("SubProyecto: {0}|", lbSubProyecto.Text)
|
|
|
|
SbFiltros.AppendFormat("Estatus: {0}|", lbEstatus.Text)
|
|
|
|
ExportToExcelGembox2(GvTemp, "Reporte de Inventario Fisico - Productos Coincidentes " & Now.ToShortDateString, UsuarioActual, "Reporte de Inventario Fisico - Productos Coincidentes", DatosFiltros:=SbFiltros.ToString())
|
|
|
|
End Sub
|
|
|
|
|
|
Private Sub LnkDescarExcelGrupos_Click(sender As Object, e As EventArgs) Handles LnkDescarExcelGrupos.Click
|
|
'Dim Filtros As String = "Almacenes:aASDSAF|Clasificaciones:sdfasf|Fecha:12/12/2323"
|
|
'GvGrupos.ExportToExcelGembox("Reporte de Inventario Fisico" & Now.ToShortDateString, UsuarioActual, "Inventario:" & lbTitulo.Text, "", DatosFiltros:=Filtros)
|
|
|
|
Dim SbFiltros As New StringBuilder()
|
|
SbFiltros.AppendFormat("Almacenes: {0}|", LblAlmacenes.Text)
|
|
SbFiltros.AppendFormat("Fecha Inicio: {0} Fecha Fin: {1}|", lbFechaI.Text, lbFechaF.Text)
|
|
|
|
SbFiltros.AppendFormat("Clasificaciones: {0}|", LblClasif.Text)
|
|
SbFiltros.AppendFormat("Clasificaciones Excluidas: {0}|", LblClasificacionesExcluidas.Text)
|
|
|
|
SbFiltros.AppendFormat("Productos: {0}|", LblProductos.Text)
|
|
SbFiltros.AppendFormat("Productos Excluidos: {0}|", LblProductosExcluidos.Text)
|
|
|
|
SbFiltros.AppendFormat("Proveedores: {0}|", LblProveedores.Text)
|
|
SbFiltros.AppendFormat("SubProyecto: {0}|", lbSubProyecto.Text)
|
|
|
|
SbFiltros.AppendFormat("Estatus: {0}|", lbEstatus.Text)
|
|
|
|
Dim SbFiltrosExtra As New StringBuilder()
|
|
SbFiltrosExtra.AppendFormat("Almacenes: {0}|", LblAlmacenes.Text)
|
|
SbFiltrosExtra.AppendFormat("Fecha Inicio: {0} Fecha Fin: {1}|", lbFechaI.Text, lbFechaF.Text)
|
|
|
|
SbFiltrosExtra.AppendFormat("Clasificaciones Excluidas: {0}|", LblClasificacionesExcluidas.Text)
|
|
|
|
SbFiltrosExtra.AppendFormat("Productos Excluidos: {0}|", LblProductosExcluidos.Text)
|
|
|
|
SbFiltrosExtra.AppendFormat("Proveedores: {0}|", LblProveedores.Text)
|
|
SbFiltrosExtra.AppendFormat("SubProyecto: {0}|", lbSubProyecto.Text)
|
|
|
|
SbFiltrosExtra.AppendFormat("Estatus: {0}|", lbEstatus.Text)
|
|
|
|
|
|
Dim ObjInventarios As New ClsInventarios
|
|
Dim DTExtra As New DataTable
|
|
|
|
If ObjInventarios.GetInventarioFisicoProductosExcluidos(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
DTExtra = ObjInventarios.DtResultados
|
|
DTExtra.TableName = "ProductosExcluidos"
|
|
End If
|
|
ObjInventarios.Dispose()
|
|
|
|
'ExportToExcelGembox
|
|
ExportToExcelGembox2(GvGrupos, "Reporte de Inventario Fisico" & Now.ToShortDateString, UsuarioActual, "Reporte de Inventario Fisico", DatosFiltros:=SbFiltros.ToString(), DTExtra:=DTExtra, DatosFiltrosExtra:=SbFiltrosExtra.ToString)
|
|
'ExportarExcelGembox(GvGrupos, "Reporte de Inventario Fisico" & Now.ToShortDateString, UsuarioActual, "Reporte de Inventario Fisico", DatosFiltros:=SbFiltros.ToString(), DTExtra:=DTExtra)
|
|
|
|
End Sub
|
|
|
|
Public Sub ExportToExcelGembox2(GridView As GridView, NombreArchivoXLSx As String, Usuario As Usuario, Titulo As String, Optional DatoTituloExtra As String = "", Optional DatosFiltros As String = "", Optional AnchoImagen As Integer = 100, Optional AlturaImagen As Integer = 100, Optional DTExtra As DataTable = Nothing, Optional DatosFiltrosExtra As String = "")
|
|
|
|
Dim sw1 As New StringWriter()
|
|
Dim htw1 As New HtmlTextWriter(sw1)
|
|
GridView.RenderControl(htw1)
|
|
|
|
Dim options = GemBox.Spreadsheet.LoadOptions.HtmlDefault
|
|
|
|
Dim htmlStream1 = New MemoryStream(options.Encoding.GetBytes(sw1.ToString()))
|
|
|
|
htmlStream1.Position = 0
|
|
Dim sr1 As New StreamReader(htmlStream1)
|
|
Dim myStr1 = sr1.ReadToEnd()
|
|
sr1.Dispose()
|
|
htmlStream1.Dispose()
|
|
sw1.Dispose()
|
|
|
|
Dim HtmlCompleto As String = myStr1
|
|
|
|
HtmlCompleto = Regex.Replace(HtmlCompleto, "\<[\/]*a[^\>]*\>", "")
|
|
|
|
Dim htmlStream5 = New MemoryStream(options.Encoding.GetBytes(HtmlCompleto))
|
|
|
|
GemBox.Spreadsheet.SpreadsheetInfo.SetLicense(SerialGemBoxSpreadsheet)
|
|
|
|
Dim excel As GemBox.Spreadsheet.ExcelFile
|
|
|
|
excel = GemBox.Spreadsheet.ExcelFile.Load(htmlStream5, options)
|
|
|
|
If Usuario IsNot Nothing Then
|
|
|
|
Dim TotalRowHeader As Integer = 6
|
|
Dim TotalRowFooter As Integer = 2
|
|
|
|
|
|
Dim worksheet = excel.Worksheets(0)
|
|
worksheet.Rows.InsertEmpty(0, TotalRowHeader)
|
|
Dim celdasConTexto = worksheet.GetUsedCellRange(True)
|
|
celdasConTexto.Style.Font.Name = "Calibri Light"
|
|
|
|
Dim RangoNombreEmpresa = worksheet.Cells.GetSubrangeAbsolute(1, celdasConTexto.FirstColumnIndex, 1, celdasConTexto.LastColumnIndex)
|
|
RangoNombreEmpresa.Merged = True
|
|
RangoNombreEmpresa.Value = Usuario.Empresa.Empresa
|
|
RangoNombreEmpresa.Style.Font.Size = 18 * 20
|
|
RangoNombreEmpresa.Style.Font.Name = "Calibri Light"
|
|
RangoNombreEmpresa.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
|
|
RangoNombreEmpresa.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
|
|
Dim RangoTitulo = worksheet.Cells.GetSubrangeAbsolute(3, celdasConTexto.FirstColumnIndex, 3, celdasConTexto.LastColumnIndex)
|
|
RangoTitulo.Merged = True
|
|
RangoTitulo.Value = Titulo
|
|
RangoTitulo.Style.Font.Size = 20 * 20
|
|
RangoTitulo.Style.Font.Name = "Calibri Light"
|
|
RangoTitulo.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
|
|
RangoTitulo.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
If DatoTituloExtra.Length > 0 Then
|
|
Dim RangoDatoTituloExtra = worksheet.Cells.GetSubrangeAbsolute(TotalRowHeader, celdasConTexto.FirstColumnIndex, TotalRowHeader, celdasConTexto.LastColumnIndex)
|
|
RangoDatoTituloExtra.Merged = True
|
|
RangoDatoTituloExtra.Value = DatoTituloExtra
|
|
RangoDatoTituloExtra.Style.Font.Size = 20 * 20
|
|
RangoDatoTituloExtra.Style.Font.Name = "Calibri Light"
|
|
RangoDatoTituloExtra.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
|
|
RangoDatoTituloExtra.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
End If
|
|
|
|
If DatosFiltros.Length > 0 Then
|
|
|
|
Dim Arreglo As String() = DatosFiltros.Split("|"c)
|
|
worksheet.Rows.InsertEmpty(TotalRowHeader, Arreglo.Count)
|
|
For Each TextoFiltro As String In Arreglo
|
|
Dim RangoDatoTituloExtra = worksheet.Cells.GetSubrangeAbsolute(TotalRowHeader, celdasConTexto.FirstColumnIndex, TotalRowHeader, celdasConTexto.LastColumnIndex)
|
|
RangoDatoTituloExtra.Merged = True
|
|
RangoDatoTituloExtra.Value = TextoFiltro
|
|
RangoDatoTituloExtra.Style.Font.Size = 12 * 20
|
|
RangoDatoTituloExtra.Style.Font.Name = "Calibri Light"
|
|
RangoDatoTituloExtra.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
|
|
RangoDatoTituloExtra.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
TotalRowHeader += 1
|
|
|
|
Next
|
|
End If
|
|
|
|
' TotalRowHeader += 2
|
|
|
|
For i = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
|
|
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.Font.Size = 12 * 20
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.FillPattern.SetPattern(GemBox.Spreadsheet.FillPatternStyle.Solid, GemBox.Spreadsheet.SpreadsheetColor.FromArgb(75, 119, 190), GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255))
|
|
worksheet.Rows(TotalRowHeader).Cells(i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)
|
|
|
|
If i > 0 Then
|
|
Try
|
|
worksheet.Columns(i).AutoFit(1)
|
|
Catch ex As Exception
|
|
End Try
|
|
End If
|
|
|
|
Next
|
|
|
|
Dim IndexEndTable As Integer = GridView.Rows.Count + TotalRowHeader + TotalRowFooter
|
|
|
|
worksheet.Rows(IndexEndTable).Cells(0).Value = "Usuario Imprimió"
|
|
worksheet.Rows(IndexEndTable + 1).Cells(0).Value = Usuario.Nombre
|
|
|
|
worksheet.Rows(IndexEndTable).Cells(2).Value = "Fecha Impresión"
|
|
worksheet.Rows(IndexEndTable + 1).Cells(2).Value = DateTime.Now.ToString("dd/MM/yyyy")
|
|
|
|
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
|
|
|
|
If Imagen.Exists Then
|
|
Dim Ruta As String = String.Format("{0}/Logo.png", Usuario.Empresa.Ruta)
|
|
Using sr As New StreamReader(Ruta)
|
|
Dim ms As New MemoryStream()
|
|
sr.BaseStream.CopyTo(ms)
|
|
worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, LengthUnit.Pixel)
|
|
End Using
|
|
End If
|
|
|
|
|
|
For I = celdasConTexto.FirstColumnIndex To celdasConTexto.LastColumnIndex
|
|
|
|
If I > 0 Then
|
|
|
|
If 1 = 1 Then
|
|
worksheet.Columns(I + 1).Style.NumberFormat = "#,##0.00"
|
|
Else
|
|
worksheet.Columns(I + 1).Style.NumberFormat = "#,##"
|
|
End If
|
|
|
|
Try
|
|
worksheet.Columns(I).AutoFit(1)
|
|
Catch ex As Exception
|
|
End Try
|
|
|
|
End If
|
|
Next
|
|
|
|
|
|
|
|
If DTExtra IsNot Nothing Then
|
|
|
|
Dim NombreTabla As String = ""
|
|
|
|
If DTExtra.TableName IsNot Nothing Then
|
|
NombreTabla = DTExtra.TableName
|
|
End If
|
|
If NombreTabla.Trim = "" Then
|
|
NombreTabla = "hoja2"
|
|
End If
|
|
|
|
'excel.Worksheets.Add(NombreTabla)
|
|
|
|
Dim workbookDTExtra = New ExcelFile
|
|
Dim worksheetDTExtra = workbookDTExtra.Worksheets.Add(NombreTabla)
|
|
|
|
worksheetDTExtra.InsertDataTable(DTExtra,
|
|
New InsertDataTableOptions() With
|
|
{
|
|
.ColumnHeaders = True,
|
|
.StartRow = 0
|
|
})
|
|
|
|
|
|
|
|
Dim columnCount = worksheetDTExtra.CalculateMaxUsedColumns()
|
|
For i As Integer = 0 To columnCount - 1
|
|
worksheetDTExtra.Columns(i).AutoFit(1, worksheetDTExtra.Rows(1), worksheetDTExtra.Rows(worksheetDTExtra.Rows.Count - 1))
|
|
worksheetDTExtra.Cells(0, i).Style.FillPattern.SetSolid(Drawing.ColorTranslator.FromHtml("#4b77be"))
|
|
worksheetDTExtra.Cells(0, i).Style.Font.Color = GemBox.Spreadsheet.SpreadsheetColor.FromArgb(255, 255, 255)
|
|
|
|
Next
|
|
|
|
' CLONA EL ENCABEZADO
|
|
TotalRowHeader = 6
|
|
TotalRowFooter = 2
|
|
|
|
worksheet = worksheetDTExtra
|
|
worksheet.Rows.InsertEmpty(0, TotalRowHeader)
|
|
celdasConTexto = worksheet.GetUsedCellRange(True)
|
|
celdasConTexto.Style.Font.Name = "Calibri Light"
|
|
|
|
RangoNombreEmpresa = worksheet.Cells.GetSubrangeAbsolute(1, celdasConTexto.FirstColumnIndex, 1, celdasConTexto.LastColumnIndex)
|
|
RangoNombreEmpresa.Merged = True
|
|
RangoNombreEmpresa.Value = Usuario.Empresa.Empresa
|
|
RangoNombreEmpresa.Style.Font.Size = 18 * 20
|
|
RangoNombreEmpresa.Style.Font.Name = "Calibri Light"
|
|
RangoNombreEmpresa.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
|
|
RangoNombreEmpresa.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
|
|
RangoTitulo = worksheet.Cells.GetSubrangeAbsolute(3, celdasConTexto.FirstColumnIndex, 3, celdasConTexto.LastColumnIndex)
|
|
RangoTitulo.Merged = True
|
|
RangoTitulo.Value = Titulo
|
|
RangoTitulo.Style.Font.Size = 20 * 20
|
|
RangoTitulo.Style.Font.Name = "Calibri Light"
|
|
RangoTitulo.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Center
|
|
RangoTitulo.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
If DatoTituloExtra.Length > 0 Then
|
|
Dim RangoDatoTituloExtra = worksheet.Cells.GetSubrangeAbsolute(TotalRowHeader, celdasConTexto.FirstColumnIndex, TotalRowHeader, celdasConTexto.LastColumnIndex)
|
|
RangoDatoTituloExtra.Merged = True
|
|
RangoDatoTituloExtra.Value = DatoTituloExtra
|
|
RangoDatoTituloExtra.Style.Font.Size = 20 * 20
|
|
RangoDatoTituloExtra.Style.Font.Name = "Calibri Light"
|
|
RangoDatoTituloExtra.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
|
|
RangoDatoTituloExtra.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
|
|
End If
|
|
|
|
If DatosFiltrosExtra.Length > 0 Then
|
|
|
|
Dim Arreglo As String() = DatosFiltrosExtra.Split("|"c)
|
|
worksheet.Rows.InsertEmpty(TotalRowHeader, Arreglo.Count)
|
|
For Each TextoFiltro As String In Arreglo
|
|
Dim RangoDatoTituloExtra = worksheet.Cells.GetSubrangeAbsolute(TotalRowHeader, celdasConTexto.FirstColumnIndex, TotalRowHeader, celdasConTexto.LastColumnIndex)
|
|
RangoDatoTituloExtra.Merged = True
|
|
RangoDatoTituloExtra.Value = TextoFiltro
|
|
RangoDatoTituloExtra.Style.Font.Size = 12 * 20
|
|
RangoDatoTituloExtra.Style.Font.Name = "Calibri Light"
|
|
RangoDatoTituloExtra.Style.HorizontalAlignment = GemBox.Spreadsheet.HorizontalAlignmentStyle.Left
|
|
RangoDatoTituloExtra.Style.VerticalAlignment = GemBox.Spreadsheet.VerticalAlignmentStyle.Center
|
|
TotalRowHeader += 1
|
|
|
|
Next
|
|
End If
|
|
|
|
Imagen = New System.IO.FileInfo(String.Format("{0}/Logo.png", Usuario.Empresa.Ruta))
|
|
|
|
If Imagen.Exists Then
|
|
Dim Ruta As String = String.Format("{0}/Logo.png", Usuario.Empresa.Ruta)
|
|
Using sr As New StreamReader(Ruta)
|
|
Dim ms As New MemoryStream()
|
|
sr.BaseStream.CopyTo(ms)
|
|
worksheet.Pictures.Add(ms, ExcelPictureFormat.Png, "A1", AnchoImagen, AlturaImagen, LengthUnit.Pixel)
|
|
End Using
|
|
End If
|
|
|
|
excel.Worksheets.AddCopy(NombreTabla, worksheetDTExtra)
|
|
excel.Worksheets(0).Name = Titulo
|
|
|
|
|
|
|
|
End If
|
|
|
|
End If
|
|
|
|
excel.Save(HttpContext.Current.Response, $"{NombreArchivoXLSx}.xlsx")
|
|
|
|
|
|
End Sub
|
|
|
|
Public Overrides Sub VerifyRenderingInServerForm(ByVal control As Control)
|
|
End Sub
|
|
|
|
#End Region
|
|
|
|
Private Sub BanderaSerieLoteCad(Gv As GridView, resultado As DataTable)
|
|
If resultado IsNot Nothing Then
|
|
Gv.Columns(6).Visible = resultado.MAX("CveSeccionAlmacen").ToEntero > 0
|
|
Gv.Columns(7).Visible = resultado.MAX("Serie") <> ""
|
|
Gv.Columns(8).Visible = resultado.MAX("Lote") <> ""
|
|
Gv.Columns(9).Visible = resultado.MAX("FechaCaducidad").ToDate > MinFecha
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub LnkCrear_Click(sender As Object, e As EventArgs) Handles LnkCrear.Click
|
|
If GvF.Rows.Count > 0 Then
|
|
GvF.Columns(0).Visible = True
|
|
LnkGuardar.Visible = True
|
|
LnkCrear.Visible = False
|
|
CreandoNuevoInventario = True
|
|
End If
|
|
|
|
If GvS.Rows.Count > 0 Then
|
|
GvS.Columns(0).Visible = True
|
|
LnkGuardar.Visible = True
|
|
LnkCrear.Visible = False
|
|
CreandoNuevoInventario = True
|
|
End If
|
|
CargaDatos(CveInventarioFisico)
|
|
'UPAnomalias.Update()
|
|
'UpdateGvS.Update()
|
|
'UPAcciones.Update()
|
|
End Sub
|
|
Private Sub LnkGuardar_Click(sender As Object, e As EventArgs) Handles LnkGuardar.Click
|
|
RegistraScript("$('#ModalGuardar').modal('show')")
|
|
End Sub
|
|
|
|
Private Sub BtnCrear_Click(sender As Object, e As EventArgs) Handles BtnCrear.Click
|
|
Dim ErrorClasif As Boolean = False
|
|
Dim ObjInventario As New ClsInventarios
|
|
Dim CveInventarioFisicoNew As Integer
|
|
Dim DtAlmacen, DtClasificacion, DtClasificacionExcluida, DtProveedor, DtUsuario As DataTable
|
|
DtAlmacen = Nothing
|
|
DtClasificacion = Nothing
|
|
DtClasificacionExcluida = Nothing
|
|
DtProveedor = Nothing
|
|
DtUsuario = Nothing
|
|
|
|
Dim CveInventarioFisicoPadre As Integer = If(ChkRelacionarInventario.Checked, CveInventarioFisico, -1)
|
|
|
|
|
|
ObjInventario.IniciaTransacSQL()
|
|
If ObjInventario.AddInventarioFisico(UsuarioActual.CveEmpresa, TxtTitulo.Text, lbObservaciones.Text, 0, CveSubProyecto, aplicacion, CveInventarioFisicoPadre:=CveInventarioFisicoPadre) Then
|
|
CveInventarioFisicoNew = ObjInventario.CveInventarioFisico
|
|
|
|
If ObjInventario.GetInventarioFisicoDetallesAlmacen(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
DtAlmacen = ObjInventario.DtResultados
|
|
End If
|
|
|
|
If ObjInventario.GetInventarioFisicoDetallesClasificacion(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
DtClasificacion = ObjInventario.DtResultados.FiltraParametros("Incluye = 1")
|
|
DtClasificacionExcluida = ObjInventario.DtResultados.FiltraParametros("Incluye = 0")
|
|
End If
|
|
|
|
If ObjInventario.GetInventarioFisicoDetallesProveedores(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
DtProveedor = ObjInventario.DtResultados.FiltraParametros("Incluye = 1")
|
|
End If
|
|
|
|
If ObjInventario.GetInventarioFisicoDetallesUsuarios(CveInventarioFisico, UsuarioActual.CveEmpresa) Then
|
|
DtUsuario = ObjInventario.DtResultados.FiltraParametros("Incluye = 1")
|
|
End If
|
|
|
|
|
|
For Each Gvr As DataRow In DtUsuario.Rows
|
|
If Not ObjInventario.AddInventarioFisicoUsuarios(CveInventarioFisicoNew, Gvr("CveUsuario").ToString.ToEntero, Convert.ToBoolean(Gvr("Incluye").ToString), Convert.ToBoolean(Gvr("Cerrado").ToString), Convert.ToBoolean(Gvr("Bloqueado").ToString)) Then
|
|
ErrorClasif = True
|
|
Exit For
|
|
End If
|
|
Next
|
|
|
|
For Each Gvr As DataRow In DtAlmacen.Rows
|
|
If Not ObjInventario.AddInventarioFisicoAlmacenes(CveInventarioFisicoNew, Gvr("CveAlmacen").ToString.ToEntero) Then
|
|
ErrorClasif = True
|
|
Exit For
|
|
End If
|
|
Next
|
|
|
|
If ErrorClasif = False Then
|
|
For Each Gvr As DataRow In DtClasificacion.Rows
|
|
If Not ObjInventario.AddInventarioFisicoClasificaciones(CveInventarioFisicoNew, Gvr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario, True) Then
|
|
ErrorClasif = True
|
|
Exit For
|
|
End If
|
|
Next
|
|
For Each Gvr As DataRow In DtClasificacionExcluida.Rows
|
|
If Not ObjInventario.AddInventarioFisicoClasificaciones(CveInventarioFisicoNew, Gvr("CveClasificacion").ToString.ToEntero, UsuarioActual.CveUsuario, False) Then
|
|
ErrorClasif = True
|
|
Exit For
|
|
End If
|
|
Next
|
|
End If
|
|
|
|
If ErrorClasif = False Then
|
|
For Each Gvr As GridViewRow In GvF.Rows
|
|
If Gvr.FCCheckBox("ChkPSFaltante").Checked Then
|
|
If Not ObjInventario.AddInventarioFisicoProductosServicios(CveInventarioFisicoNew, Gvr.DataKey("CvePS").ToString.ToEntero, True) Then
|
|
ErrorClasif = True
|
|
Exit For
|
|
End If
|
|
End If
|
|
Next
|
|
For Each Gvr As GridViewRow In GvS.Rows
|
|
If Gvr.FCCheckBox("ChkPSSobrante").Checked Then
|
|
If Not ObjInventario.AddInventarioFisicoProductosServicios(CveInventarioFisicoNew, Gvr.DataKey("CvePS").ToString.ToEntero, True) Then
|
|
ErrorClasif = True
|
|
Exit For
|
|
End If
|
|
End If
|
|
Next
|
|
End If
|
|
|
|
If ErrorClasif = False Then
|
|
For Each Gvr As DataRow In DtProveedor.Rows
|
|
If Not ObjInventario.AddInventarioFisicoProveedores(CveInventarioFisicoNew, Gvr("CveProveedor").ToString.ToEntero, True) Then
|
|
ErrorClasif = True
|
|
Exit For
|
|
End If
|
|
Next
|
|
|
|
End If
|
|
End If
|
|
If ErrorClasif = False And CveInventarioFisicoNew > 0 Then
|
|
ObjInventario.Commit()
|
|
Alert("Agregado Correctamente.", TipoMensaje.MsgInformacion)
|
|
RegistraScript(String.Format("$('#{0}').modal('hide');", "ModalGuardar"))
|
|
GvF.Columns(0).Visible = False
|
|
GvS.Columns(0).Visible = False
|
|
LnkGuardar.Visible = False
|
|
LnkCrear.Visible = True
|
|
CreandoNuevoInventario = False
|
|
CargaDatos(CveInventarioFisico)
|
|
Else
|
|
ObjInventario.RollBack()
|
|
End If
|
|
ObjInventario.Dispose()
|
|
|
|
End Sub
|
|
|
|
Private Sub PSIguales()
|
|
Dim contadorF As Integer = 0
|
|
Dim contadorS As Integer = 0
|
|
|
|
If DdlVista.SelectedValue.ToEntero = 1 Then
|
|
For Each dtF As GridViewRow In GvF.Rows
|
|
contadorS = 0
|
|
For Each dtS As GridViewRow In GvS.Rows
|
|
If dtS.DataKey("CvePS") = dtF.DataKey("CvePS") Then
|
|
GvS.Rows(contadorS).BackColor = Drawing.Color.FromArgb(202, 52, 52)
|
|
GvF.Rows(contadorF).BackColor = Drawing.Color.FromArgb(202, 52, 52)
|
|
End If
|
|
contadorS += 1
|
|
Next
|
|
contadorF += 1
|
|
Next
|
|
Else
|
|
|
|
|
|
For Each dtF As GridViewRow In GvGrupos.Rows
|
|
contadorS = 0
|
|
|
|
If dtF.DataKey("Orden").ToEntero = 1 And dtF.DataKey("CvePS").ToEntero > 0 Then
|
|
For Each dtS As GridViewRow In GvGrupos.Rows
|
|
If dtS.DataKey("Orden").ToEntero = 2 Then
|
|
|
|
If dtS.DataKey("CvePS") = dtF.DataKey("CvePS") Then
|
|
GvGrupos.Rows(contadorS).BackColor = Drawing.Color.FromArgb(202, 52, 52)
|
|
GvGrupos.Rows(contadorF).BackColor = Drawing.Color.FromArgb(202, 52, 52)
|
|
End If
|
|
|
|
End If
|
|
contadorS += 1
|
|
Next
|
|
End If
|
|
|
|
|
|
|
|
|
|
contadorF += 1
|
|
|
|
Next
|
|
|
|
|
|
End If
|
|
|
|
|
|
|
|
|
|
End Sub
|
|
|
|
Private Sub GvGrupos_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GvGrupos.RowDataBound
|
|
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
If e.Row.DataKey("CvePS").ToString.ToEntero = 0 Then
|
|
|
|
|
|
e.Row.CssClass = "SubTotales"
|
|
e.Row.Cells(1).Text = e.Row.DataKey("Grupo").ToString
|
|
|
|
End If
|
|
End If
|
|
|
|
|
|
End Sub
|
|
|
|
|
|
|
|
End Class
|