protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { if (!Request.IsAuthenticated) { Response.Redirect(FormsAuthentication.LoginUrl, true); } //Validar su el usuario tiene permiso para esta pagina //Permiso: CLAVE=4 Sesion loSesion = (Sesion)Session["Sesion"]; bool lbPermirtir = false; foreach (Permiso llpemiso in loSesion.Usuario.Permiso) { if (llpemiso.Clave == 4) { lbPermirtir = true; } if (llpemiso.Clave == 7) { btnImprimir.Visible = true; } } if (lbPermirtir) { Catalogos loCatalogos = new Catalogos(); ddlMarcas.DataSource = loCatalogos.ObtenerMarcas((Sesion)Session["Sesion"], 1); ddlMarcas.DataBind(); Master.Titulo = "Análisis::.Dapesa.Comun.Informes.Reporteador.Ventas"; ViewState["dtCuerpo"] = new DataTable(); ViewState["dtEncabezado"] = new DataTable(); ViewState["parametros"] = new ReportParameter(); ViewState["NivelReporte"] = 0; ViewState["Contenido"] = 0; } else { Response.Redirect(FormsAuthentication.LoginUrl, true); } } lblMsg.Text = ""; lblMsg.Visible = false; UpMensajes.Update(); ddlSucursales.Focus(); }
public void Imprimir() { try { if ((int)ViewState["Contenido"] == 1) { Rendizador loRendizador = new Rendizador(); int lnNivelReporte = (int)ViewState["NivelReporte"]; //object[] laparametros = (object[])ViewState["parametros"]; ReportParameter[] laparametros = (ReportParameter[])ViewState["parametros"]; DataSet loFuenteDatos = new DataSet(); //string lsimpresora = GetImpresoraDefecto(); string lsimpresora = ""; lsimpresora = ConfigurationManager.AppSettings[((Sesion)HttpContext.Current.Session["Sesion"]).Usuario.Clave]; //Label1.Text = lsimpresora; //UpdatePanel1.Update(); if (lnNivelReporte == 0) { Informe loInforme = new Informe() { //Ancho = 21.6, //Alto = 27.9, //Ancho = 37, //Alto = 21.59, Ancho = 42, Alto = 28.59, MargenIzquierdo = 1, MargenDerecho = 1, MargenSuperior = 1, MargenInferior = 1, Impresora = lsimpresora, //Copias = 1, Extension = "rdl", Formato = Dapesa.Informes.Comun.Definiciones.TipoFormato.EMF, Nombre = "Analisis", Salida = Dapesa.Informes.Comun.Definiciones.TipoSalida.Impresion, Tipo = Dapesa.Informes.Comun.Definiciones.TipoInforme.Web, Ubicacion = Server.MapPath("~/Informes/Ventas/"), Parametros = laparametros //UnidadMedida = Dapesa.Informes.Comun.Definiciones.TipoUnidaMedida.Centimetros }; loFuenteDatos.Tables.Add((DataTable)ViewState["dtCuerpo"]); loFuenteDatos.Tables[0].TableName = "dsVenta"; loFuenteDatos.Tables.Add((DataTable)ViewState["dtEncabezado"]); loFuenteDatos.Tables[1].TableName = "dsEncabezado"; loRendizador.Presentar(loInforme, loFuenteDatos); } else if (lnNivelReporte == 1) { Informe loInforme = new Informe() { Ancho = 33.96, Alto = 21.59, MargenIzquierdo = 1, MargenDerecho = 1, MargenSuperior = 1, MargenInferior = 1, Impresora = lsimpresora, Extension = "rdl", Formato = Dapesa.Informes.Comun.Definiciones.TipoFormato.EMF, Nombre = "AnalisisDetalle", Salida = Dapesa.Informes.Comun.Definiciones.TipoSalida.Impresion, Tipo = Dapesa.Informes.Comun.Definiciones.TipoInforme.Web, Ubicacion = Server.MapPath("~/Informes/Ventas/"), Parametros = laparametros }; loFuenteDatos.Tables.Add((DataTable)ViewState["dtCuerpo"]); loFuenteDatos.Tables[0].TableName = "dsVentaDetalle"; //loFuenteDatos.Tables.Add((DataTable)ViewState["dtEncabezado"]); //loFuenteDatos.Tables[1].TableName = "dsEncabezado"; loRendizador.Presentar(loInforme, loFuenteDatos); } else if (lnNivelReporte == 2) { Informe loInforme = new Informe() { Ancho = 33.96, Alto = 21.59, MargenIzquierdo = 1, MargenDerecho = 1, MargenSuperior = 1, MargenInferior = 1, Impresora = lsimpresora, Extension = "rdl", Formato = Dapesa.Informes.Comun.Definiciones.TipoFormato.EMF, Nombre = "AnalisisMarca", Salida = Dapesa.Informes.Comun.Definiciones.TipoSalida.Impresion, Tipo = Dapesa.Informes.Comun.Definiciones.TipoInforme.Web, Ubicacion = Server.MapPath("~/Informes/Ventas/"), Parametros = laparametros }; loFuenteDatos.Tables.Add((DataTable)ViewState["dtCuerpo"]); loFuenteDatos.Tables[0].TableName = "dsVentaDetalle"; loRendizador.Presentar(loInforme, loFuenteDatos); } else if (lnNivelReporte == 3) { Informe loInforme = new Informe() { Ancho = 37, Alto = 21.59, MargenIzquierdo = 1, MargenDerecho = 1, MargenSuperior = 1, MargenInferior = 1, Impresora = lsimpresora, Extension = "rdl", Formato = Dapesa.Informes.Comun.Definiciones.TipoFormato.EMF, Nombre = "AnalisisLinea", Salida = Dapesa.Informes.Comun.Definiciones.TipoSalida.Impresion, Tipo = Dapesa.Informes.Comun.Definiciones.TipoInforme.Web, Ubicacion = Server.MapPath("~/Informes/Ventas/"), Parametros = laparametros }; loFuenteDatos.Tables.Add((DataTable)ViewState["dtCuerpo"]); loFuenteDatos.Tables[0].TableName = "dsVentaDetalle"; loRendizador.Presentar(loInforme, loFuenteDatos); } //#region add rows, if necessary //((DataTable)ViewState["Consignatario"]).Rows[0]["NUMERO_CAJA"] = loNumCaja; //((DataTable)ViewState["Consignatario"]).Rows[0]["TOTAL_CAJAS"] = loTotalCajas; //DataTable loTablaAuxiliar = ((DataTable)ViewState["Consignatario"]).Copy(); //for (int i = 1; i < int.Parse(txtCopias.Text); i++) //{ // DataRow loRegistro = loTablaAuxiliar.Rows[0]; // loTablaAuxiliar.ImportRow(loRegistro); // loTablaAuxiliar.Rows[loTablaAuxiliar.Rows.Count - 1]["NUMERO_CAJA"] = loNumCaja + i; //} //#endregion } else { //Mostrar mensaje de no hay datos filtrados en el reporte lblMsg.Visible = true; lblMsg.Text = "No hay datos Filtrados para Imprimir"; UpMensajes.Update(); } } catch (Exception ex) { Session["Excepcion"] = ex; Response.Redirect("~/Error.aspx", false); } finally { } }