Files
SIG/Inventarios/RepProductosPorCaducar.aspx.cs
2020-10-26 21:56:23 -07:00

141 lines
4.8 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Extensiones;
using System.Data;
using Microsoft.Reporting.WebForms;
using System.Text;
public partial class Inventarios_RepProductosPorCaducar : ClsPaginas
{
private DataTable DTDatos
{
get
{
return (DataTable)ViewState["DTDatos"];
}
set
{
ViewState["DTDatos"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
CargaFiltros();
CargarDatos();
}
}
private void CargarDatos()
{
ClsInventarios ObjInventarios = new ClsInventarios();
if (ObjInventarios.GetProductosCaducidad(DdlProveedor.SelectedValue.ToEntero(),TxtFechaInicio.Text.ToDate(),TxtFechaFin.Text.ToDate(), DdlSucursal.SelectedValue.ToEntero(),
DdlClasificacion.SelectedValue.ToEntero()))
{
GvDatos.DataSource = ObjInventarios.DtResultados;
DTDatos = ObjInventarios.DtResultados;
}
ObjInventarios.Dispose();
GvDatos.DataBind();
}
private void CargaFiltros()
{
CargarFechaText();
CargarProveedores();
CargarSucursales();
CargarClasificaciones();
}
private void CargarFechaText()
{
DateTime date = new DateTime(DateTime.Today.Year, DateTime.Today.Month,1);
TxtFechaInicio.Text = date.ToString("dd/MM/yyyy");
TxtFechaFin.Text = date.AddMonths(1).AddDays(-1).ToString("dd/MM/yyyy");
}
private void CargarProveedores()
{
DdlProveedor.setEsWebService(true);
DdlProveedor.Attributes.Add("data-metodo", "getproveedores");
DdlProveedor.SelectedValue = "-1";
DdlProveedor.SelectedText = "Todos";
}
private void CargarSucursales()
{
ClsSubProyectos ObjSubProyectos = new ClsSubProyectos();
if (ObjSubProyectos.GetSubProyectos(UsuarioActual.CveEmpresa))
{
DdlSucursal.DataSource = ObjSubProyectos.DtResultados;
}
ObjSubProyectos.Dispose();
DdlSucursal.DataBind();
DdlSucursal.Items.Insert(0, new ListItem("Todas", "-1"));
}
private void CargarClasificaciones()
{
ClsClasificaciones ObjClasificacion = new ClsClasificaciones();
if (ObjClasificacion.GetClasificaciones(UsuarioActual.CveEmpresa))
{
DdlClasificacion.DataSource = ObjClasificacion.DtResultados;
}
ObjClasificacion.Dispose();
DdlClasificacion.DataBind();
DdlClasificacion.Items.Insert(0,new ListItem("Todas","-1"));
}
protected void BtnConsultar_Click(object sender, EventArgs e)
{
CargarDatos();
UpDatos.Update();
}
protected void LnkImprimirPDF_Click(object sender, EventArgs e)
{
ImprimirReporte("PDF");
}
protected void LnkImprimirExcel_Click(object sender, EventArgs e)
{
ImprimirReporte("Excel");
}
private void ImprimirReporte(string formato)
{
StringBuilder Filtros = new StringBuilder();
Filtros.AppendFormat("<strong>Proveedor: </strong>{0}&nbsp;&nbsp;&nbsp;&nbsp;", DdlProveedor.SelectedText);
Filtros.AppendFormat("<strong>Fecha Inicio: </strong>{0}&nbsp;&nbsp;&nbsp;&nbsp;", TxtFechaInicio.Text);
Filtros.AppendFormat("<strong>Fecha Fin: </strong>{0}&nbsp;&nbsp;&nbsp;&nbsp;", TxtFechaFin.Text);
Filtros.AppendFormat("<strong>Sucursal: </strong>{0}&nbsp;&nbsp;&nbsp;&nbsp;", DdlSucursal.SelectedItem.Text);
Filtros.AppendFormat("<strong>Clasificación: </strong>{0}&nbsp;&nbsp;&nbsp;&nbsp;", DdlClasificacion.SelectedItem.Text);
List<ReportParameter> @params = new List<ReportParameter>();
@params.Add(new ReportParameter("Filtros", Filtros.ToString()));
@params.Add(new ReportParameter("UsuarioImprimio", UsuarioActual.Nombre));
@params.Add(new ReportParameter("NombreEmpresa", UsuarioActual.Empresa.Empresa));
var logouri = string.Format("{0}://{1}:{2}/Empresas/{3}/Logo.png", Request.Url.Scheme, Request.Url.Host, Request.Url.Port, UsuarioActual.CveEmpresa);
System.IO.FileInfo Imagen = new System.IO.FileInfo(string.Format("{0}/Logo.png", UsuarioActual.Empresa.Ruta));
if (Imagen.Exists)
{
@params.Add(new ReportParameter("LogoPath", logouri));
}
else
{
@params.Add(new ReportParameter("LogoPath", ""));
}
@params.Add(new ReportParameter("FechaCaducidadHeader", (UsuarioActual.Empresa.Funcionalidad(147) == "Fecha Elaboración" ? "Fecha Elaboración" : "Fecha Caducidad")));
ImprimirPDF("Empresas/Grales/Formatos/RepProductosCaducidad.rdlc", DTDatos, @params, "Reporte de Productos por Caducar", formato);
}
}