Option Explicit On Option Strict On Imports System.Data Imports Microsoft.Reporting.WebForms Imports Extensiones Partial Class RepTraspasoAlmacen Inherits ClsPaginas Private Shared missing As Object = System.Reflection.Missing.Value #Region "PROPIEDADES" Private Property FechaI As String Get Return ViewState("FechaI").ToString End Get Set(value As String) ViewState("FechaI") = value End Set End Property Private Property FechaF As String Get Return ViewState("FechaF").ToString End Get Set(value As String) ViewState("FechaF") = value End Set End Property 'Private Property CveCliente As Integer ' Get ' Return ViewState("CveCliente").ToString.ToEntero ' End Get ' Set(value As Integer) ' ViewState("CveCliente") = value ' End Set 'End Property 'Private Property Sucursales As String ' Get ' Return ViewState("Sucursales").ToString ' End Get ' Set(value As String) ' ViewState("Sucursales") = value ' End Set 'End Property Private Property DtInventarios As DataTable Get Return DirectCast(ViewState("DtInventarios"), DataTable) End Get Set(value As DataTable) ViewState("DtInventarios") = value End Set End Property #End Region Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load If Not Page.IsPostBack Then txtFechaI.Text = Now.ToShortDateString txtFechaF.Text = Now.ToShortDateString CargaAlmacenOrigen() CargaAlmacenDestino() CargaDatos() OrdenaDatos() End If End Sub #Region " C A R G A - D A T O S " Public Sub CargaDatos() Dim ObjInventarios As New ClsInventarios FechaI = If(IsDate(txtFechaI.Text.Trim()), txtFechaI.Text.Trim(), MinFecha.ToShortDateString) FechaF = If(IsDate(txtFechaF.Text.Trim()), txtFechaF.Text.Trim(), MaxFecha.ToShortDateString) 'CveCliente = If(DdlClientes.SelectedValue.ToEntero > 0, DdlClientes.SelectedValue.ToEntero, -1) 'Sucursales = IIf(DdlSubProyectos.GetSelectedValuesM = "", "-1", DdlSubProyectos.GetSelectedValuesM).ToString If ObjInventarios.RepTraspasoAlmacen(FechaI.ToDate, FechaF.ToDate, DdlAlmacenOrigen.SelectedValue.ToEntero, DdlAlmacenDestino.SelectedValue.ToEntero, ChkRecibido.Checked, DdlTipoAlmacen.SelectedValue.ToEntero, UsuarioActual.CveEmpresa) Then GvDatos.DataSource = ObjInventarios.DtResultados DtInventarios = ObjInventarios.DtResultados GvDatos.Columns(5).Visible = DtInventarios.MAX("Serie") <> "" End If ObjInventarios.Dispose() GvDatos.DataBind() UPDatos.Update() End Sub #End Region #Region "O R D E N A M I E N T O" Private Sub OrdenaDatos() 'If (GvDatos.Rows.Count > 0) Then ' GvDatos.UseAccessibleHeader = True ' GvDatos.HeaderRow.TableSection = TableRowSection.TableHeader ' RegistraScript("OrdenarGV();") 'End If End Sub #End Region #Region "G V - D A T O S " Protected Sub GvDatos_RowDataBound(sender As Object, e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GvDatos.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then If e.Row.DBCampo("Folio") = "" Then e.Row.CssClass = "Totales" Else If e.Row.DBCampo("PS") = "" Then e.Row.CssClass = "SubTotales" End If End If End If End Sub #End Region #Region "CARGA COMBOS FILTRO" Private Sub CargaAlmacenOrigen() DdlAlmacenOrigen.DataSource = GlobalDTAlmacenUsuarios(UsuarioActual.CveUsuario, UsuarioActual.CveEmpresa, -1).FiltraParametros("CveTipoAlmacen NOT IN (3,4,9,10,11,21)") DdlAlmacenOrigen.Items.Insert(0, New ListItem(" Todos ", "-1")) DdlAlmacenOrigen.SelectedValue = "-1" DdlAlmacenOrigen.DataBind() DdlAlmacenOrigen.SelectedValueExist(UsuarioActual.CveAlmacen) DdlTipoAlmacen.DataSource = GlobalDTTipoAlmacen(1).FiltraParametros("CveTipoAlmacen NOT IN (3,4,9,10,11,21)") DdlTipoAlmacen.DataBind() DdlTipoAlmacen.Items.Insert(0, New ListItem("Todos", "-1")) End Sub Private Sub CargaAlmacenDestino() DdlAlmacenDestino.DataSource = GlobalDTAlmacen(UsuarioActual.CveEmpresa).FiltraParametros("CveTipoAlmacen NOT IN (3,4,9,10,11,21)") DdlAlmacenDestino.DataBind() DdlAlmacenDestino.Items.Insert(0, New ListItem("Todos", "-1")) DdlAlmacenDestino.SelectedValue = "-1" End Sub #End Region #Region "IMPRESION" Private Sub LnkPdf_Click(sender As Object, e As EventArgs) Handles LnkPdf.Click Imprime("PDF") End Sub Private Sub Imprime(Formato As String) If DtInventarios IsNot Nothing Then Dim StrFiltro As New StringBuilder If txtFechaI.Text <> "" Then StrFiltro.AppendFormat(" Fecha Inicio: {0}", txtFechaI.Text.ToDate.ToShortDateString) If txtFechaF.Text <> "" Then StrFiltro.AppendFormat(" Fecha Fin: {0}", txtFechaF.Text.ToDate.ToShortDateString) If DdlAlmacenOrigen.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Almacén Origen: {0}", DdlAlmacenOrigen.SelectedItem.Text) If DdlAlmacenDestino.SelectedValue <> "-1" Then StrFiltro.AppendFormat(" Almacén Destino: {0}", DdlAlmacenDestino.SelectedItem.Text) If ChkRecibido.Checked Then StrFiltro.AppendFormat(" Recibidos: Si") Else StrFiltro.AppendFormat(" Recibidos: No") Dim Imagen As New System.IO.FileInfo($"{UsuarioActual.Empresa.Ruta}/Logo.png") Dim logouri = String.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa) Dim FechaI, FechaF As String FechaI = If(txtFechaI.Text = "" Or txtFechaI.Text = "__/__/____", "-1", txtFechaI.Text) FechaF = If(txtFechaF.Text = "" Or txtFechaF.Text = "__/__/____", "-1", txtFechaF.Text) Dim params As New List(Of ReportParameter) params.Add(New ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa)) params.Add(New ReportParameter("FechaInicio", FechaI)) params.Add(New ReportParameter("FechaFin", FechaF)) params.Add(New ReportParameter("UsuarioImprimio", UsuarioActual.Nombre)) params.Add(New ReportParameter("Filtros", StrFiltro.ToString)) params.Add(New ReportParameter("FechaImprimio", DateTime.Now.ToString)) params.Add(New ReportParameter("LogoPath", If(Imagen.Exists, $"file://{Imagen.FullName}", ""))) ImprimirPDF("Empresas/Grales/Formatos/RepTraspasoAlmacen.rdlc", DtInventarios, params, String.Format("RepTraspasoAlmacen-{0}", Now.ToDateTime.ToShortDateString), Formato) Else Alert("No hay datos consultados", TipoMensaje.MsgAdvertencia) End If End Sub #End Region Private Sub BtnConsultar_Click(sender As Object, e As EventArgs) Handles BtnConsultar.Click CargaDatos() End Sub Private Sub ImgExcel_Click(sender As Object, e As EventArgs) Handles ImgExcel.Click Imprime("Excel") End Sub End Class