251 lines
9.9 KiB
VB.net
251 lines
9.9 KiB
VB.net
Option Strict On
|
|
Option Explicit On
|
|
|
|
Imports Extensiones
|
|
Imports System.Data
|
|
Imports Microsoft.Reporting.WebForms
|
|
Imports GemBox.Spreadsheet
|
|
Imports System.IO
|
|
|
|
Partial Class Inventarios_RepAlmacen
|
|
Inherits ClsPaginas
|
|
|
|
|
|
#Region "PROPIEDADES"
|
|
Private Property TmpDT As DataTable
|
|
Get
|
|
Return CType(ViewState("TmpDT"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("TmpDT") = value
|
|
End Set
|
|
End Property
|
|
Private Property DtColor As DataTable
|
|
Get
|
|
Return DirectCast(ViewState("DtColor"), DataTable)
|
|
End Get
|
|
Set(value As DataTable)
|
|
ViewState("DtColor") = value
|
|
End Set
|
|
End Property
|
|
#End Region
|
|
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
|
|
If Not IsPostBack Then
|
|
CargaTipoAlmacen()
|
|
CargaDatos()
|
|
CreaDataTableColor()
|
|
End If
|
|
End Sub
|
|
|
|
Private Sub CargaTipoAlmacen()
|
|
DdlTipoAlmacen.DataSource = GlobalDTTipoAlmacen(1)
|
|
DdlTipoAlmacen.DataBind()
|
|
DdlTipoAlmacen.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
|
|
DdlAlmacen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, CveTipoAlmacen:=-1, CveEstatus:=-1)
|
|
DdlAlmacen.DataBind()
|
|
DdlAlmacen.Items.Insert(0, New ListItem("Todos", "-1"))
|
|
|
|
DdlSucursal.DataSource = GlobalDTSubProyectosUsuarios(UsuarioActual.CveUsuario, -1, UsuarioActual.CveEmpresa, CveEstatus:=1)
|
|
DdlSucursal.DataBind()
|
|
DdlSucursal.Items.Insert(0, New ListItem("Todas", "-1"))
|
|
|
|
End Sub
|
|
|
|
Private Sub CargaDatos()
|
|
Dim objInv As New ClsInventarios
|
|
|
|
Dim FechaI, FechaF As String
|
|
FechaI = If(IsDate(TxtFechaI.Text.Trim()), TxtFechaI.Text.Trim(), "-1")
|
|
FechaF = If(IsDate(TxtFechaF.Text.Trim()), TxtFechaF.Text.Trim(), "-1")
|
|
Dim TipoAlmacen As String = If(DdlTipoAlmacen.GetSelectedValuesM = "", "-1", DdlTipoAlmacen.GetSelectedValuesM)
|
|
Dim Almacenes As String = If(DdlAlmacen.GetSelectedValuesM = "", "-1", DdlAlmacen.GetSelectedValuesM)
|
|
Dim CveSubProyecto As Integer = DdlSucursal.SelectedValue.ToEntero()
|
|
|
|
If objInv.GetRepAlmacenes(FechaI, FechaF, UsuarioActual.CveEmpresa, TipoAlmacen, DdlModalidadFiltro.SelectedValue.ToEntero, DdlAplicaInventario.SelectedValue.ToEntero,
|
|
Almacenes:=Almacenes, CveSubProyecto:=CveSubProyecto, CveUsuarioConsulta:=UsuarioActual.CveUsuario) Then
|
|
GVAlmacen.DataSource = objInv.DtResultados
|
|
TmpDT = objInv.DtResultados
|
|
End If
|
|
objInv.Dispose()
|
|
GVAlmacen.DataBind()
|
|
End Sub
|
|
|
|
Private Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click
|
|
CargaDatos()
|
|
UpDatos.Update()
|
|
UPFiltros.Update()
|
|
End Sub
|
|
|
|
#Region "I M P R I M I R <i class='fa fa-print'></i>"
|
|
Protected Sub LnkExportar_Click(sender As Object, e As EventArgs) Handles LnkExportar.Click
|
|
|
|
GenerarPDF("EXCEL")
|
|
|
|
End Sub
|
|
Private Sub GenerarPDF(Optional Formato As String = "PDF")
|
|
Dim Imagen As New System.IO.FileInfo(String.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta))
|
|
Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa)
|
|
Dim StrFiltro As New StringBuilder
|
|
If TxtFechaI.Text <> "" Then StrFiltro.AppendFormat(" <b>Fecha Inicio </b>: {0}", TxtFechaI.Text.ToDate.ToShortDateString) Else StrFiltro.AppendFormat(" <b>Fecha Inicio </b>: Sin Considerar")
|
|
If TxtFechaF.Text <> "" Then StrFiltro.AppendFormat(" <b>Fecha Fin </b>: {0}", TxtFechaF.Text.ToDate.ToShortDateString) Else StrFiltro.AppendFormat(" <b>Fecha Fin </b>: Sin Considerar")
|
|
If DdlTipoAlmacen.GetSelectedText <> "" Then StrFiltro.AppendFormat(" <b>Tipo Almacen</b>: {0}", DdlTipoAlmacen.GetSelectedText) Else StrFiltro.AppendFormat(" <b>Tipo Almacen</b>: Todos")
|
|
If DdlModalidadFiltro.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" <b>Modalidad</b>: {0}", DdlModalidadFiltro.SelectedItem) Else StrFiltro.AppendFormat(" <b>Modalidad</b>: Todas")
|
|
|
|
Dim params As New List(Of ReportParameter)
|
|
params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa))
|
|
params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre))
|
|
params.Add(New ReportParameter("FechaImpresion", Now.ToDateTime.ToShortDateString))
|
|
params.Add(New ReportParameter("Filtros", StrFiltro.ToString))
|
|
If Imagen.Exists Then
|
|
params.Add(New ReportParameter("LogoPath", logouri))
|
|
Else
|
|
params.Add(New ReportParameter("LogoPath", ""))
|
|
End If
|
|
ImprimirPDF("Empresas/Grales/Formatos/RepAlmacen.rdlc", TmpDT, params, "ReporteAlmacen", Formato)
|
|
End Sub
|
|
Protected Sub LnkPdf_Click(sender As Object, e As EventArgs) Handles LnkPdf.Click
|
|
GenerarPDF()
|
|
End Sub
|
|
Private Sub GVAlmacen_RowDataBound(sender As Object, e As GridViewRowEventArgs) Handles GVAlmacen.RowDataBound
|
|
If e.Row.RowType = DataControlRowType.DataRow Then
|
|
If e.Row.FCLabel("LtlAlmacen").Text = "" Then
|
|
e.Row.CssClass = "Totales"
|
|
End If
|
|
End If
|
|
End Sub
|
|
#End Region
|
|
|
|
#Region "GRAFICA"
|
|
|
|
Protected Sub LnkVerGrafica_Click(sender As Object, e As EventArgs)
|
|
If Not TmpDT IsNot Nothing AndAlso TmpDT.Rows.Count > 0 Then
|
|
Alert("No hay datos disponibles", TipoMensaje.MsgAdvertencia)
|
|
Exit Sub
|
|
End If
|
|
|
|
RegistraScript("$('#DivModalGrafica').modal('show')")
|
|
CambioGrafica()
|
|
End Sub
|
|
Private Sub CreaDataTableColor()
|
|
DtColor = New DataTable
|
|
DtColor.Columns.Add("Color")
|
|
Dim RowColor As DataRow = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#FF0F00"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#FF6600"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#FF9E01"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#FCD202"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#F8FF01"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#B0DE09"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#04D215"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#0D8ECF"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#0D52D1"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#2A0CD0"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#8A0CCF"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#CD0D74"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#754DEB"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#DDDDDD"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#999999"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#333333"
|
|
DtColor.Rows.Add(RowColor)
|
|
RowColor = Nothing
|
|
RowColor = DtColor.NewRow()
|
|
RowColor("Color") = "#000000"
|
|
DtColor.Rows.Add(RowColor)
|
|
End Sub
|
|
|
|
Private Sub CambioGrafica()
|
|
Dim Dt As New DataTable()
|
|
Dt.Columns.Add("Texto")
|
|
Dt.Columns.Add("Valor")
|
|
Dt.Columns.Add("Color")
|
|
Dim RowColorIndex As Integer = 0
|
|
For Each Dr As DataRow In TmpDT.Rows
|
|
If Not Dr("TipoAlmacen").ToString = "" Then
|
|
Dim Row As DataRow = Nothing
|
|
Row = Dt.NewRow()
|
|
Row("Texto") = Dr("Almacen").ToString
|
|
Select Case DdlVer.SelectedValue.ToEntero
|
|
Case 1
|
|
Row("Valor") = Dr("Existencia").ToString.FormatoNumero
|
|
Case 2
|
|
Row("Valor") = Dr("Total").ToString.FormatoNumero
|
|
End Select
|
|
Row("Color") = DtColor.Rows(RowColorIndex)("Color").ToString
|
|
Dt.Rows.Add(Row)
|
|
RowColorIndex += 1
|
|
If RowColorIndex = 17 Then
|
|
RowColorIndex = 0
|
|
End If
|
|
End If
|
|
Next
|
|
|
|
Dim query = From s In Dt.AsEnumerable() Select New With {.Texto = s("Texto").ToString(), .Valor = s("Valor").ToString().ToDouble(), .Color = s("Color").ToString()}
|
|
Dim json As String = Newtonsoft.Json.JsonConvert.SerializeObject(query)
|
|
Select Case DdlGrafica.SelectedValue.ToEntero
|
|
Case 1
|
|
RegistraScript($"CargaGraficaBarras({json})", "22")
|
|
Case 2
|
|
RegistraScript($"CargaGraficaPastel({json})", "22")
|
|
End Select
|
|
UPModalProd.Update()
|
|
End Sub
|
|
Protected Sub DdlGrafica_SelectedIndexChanged(sender As Object, e As EventArgs)
|
|
CambioGrafica()
|
|
End Sub
|
|
|
|
Protected Sub DdlVer_SelectedIndexChanged(sender As Object, e As EventArgs)
|
|
CambioGrafica()
|
|
End Sub
|
|
|
|
#End Region
|
|
Public Overrides Sub VerifyRenderingInServerForm(control As Control)
|
|
End Sub
|
|
End Class
|