public ActionResult Delete(string id) { if (TempData["errors"] != null) { ModelState.AddModelError("", TempData["errors"].ToString()); } using (var db = MarfilEntities.ConnectToSqlServer(ContextService.BaseDatos)) using (var service = new DocumentosUsuarioService(db)) { TipoDocumentoImpresion tipoDocumento; Guid usuario; string name; DocumentosUsuarioService.GetFromCustomId(id, out tipoDocumento, out usuario, out name); ViewBag.TituloMantenimiento = string.Format(General.ConfiguradorDocumentos, Funciones.GetEnumByStringValueAttribute(tipoDocumento)); var model = new DocumentosDeleteModel() { CustomId = id, Nombre = name, Tipo = tipoDocumento, Titulo = string.Format(General.ConfiguradorDocumentos, Funciones.GetEnumByStringValueAttribute(tipoDocumento)), Toolbar = new ToolbarModel() { Titulo = string.Format(General.ConfiguradorDocumentos, Funciones.GetEnumByStringValueAttribute(tipoDocumento)), Operacion = TipoOperacion.Baja, Acciones = new IToolbaritem[] {} } }; return(View(model)); } }
public override Dictionary <string, string> GetUrls() { _user = GetCustomPrincipal(); _service = new DocumentosUsuarioService(MarfilEntities.ConnectToSqlServer(_user.BaseDatos)); // Get URLs and display names for all reports available in the storage. var result = new Dictionary <string, string>(); try { var reportId = HttpUtility.ParseQueryString(HttpContext.Current.Request.UrlReferrer.PathAndQuery).GetValues("reportId")[0]; TipoDocumentoImpresion TipoDocumentoImpresion; Guid usuario; string name; DocumentosUsuarioService.GetFromCustomId(reportId, out TipoDocumentoImpresion, out usuario, out name); var items = _service.GetDocumentos(TipoDocumentoImpresion, _user.Id); foreach (var item in items) { result.Add(item.CustomId, item.Nombre); } } catch (Exception ex) { string errores = ex.Message; } return(result); }
public ActionResult Index(string reportId, string returnUrl, bool nuevo) { var service = new DocumentosUsuarioService(MarfilEntities.ConnectToSqlServer(ContextService.BaseDatos)); var userService = FService.Instance.GetService(typeof(UsuariosModel), ContextService) as UsuariosService; TipoDocumentoImpresion tipoDocumento; Guid usuario; string name; DocumentosUsuarioService.GetFromCustomId(reportId, out tipoDocumento, out usuario, out name); ViewBag.Tipo = (int)tipoDocumento; ViewBag.Usuario = usuario.ToString(); var usuarioObj = usuario == Guid.Empty ? "Admin" : ((UsuariosModel)userService.get(usuario.ToString())).Usuario; var documentoModel = service.GetDocumento(tipoDocumento, usuario, name); return(View(new DesignModel { Nuevo = nuevo, Tiporeport = documentoModel?.Tiporeport ?? TipoReport.Report, Tipodocumento = tipoDocumento, Tipoprivacidad = documentoModel?.Tipoprivacidad ?? TipoPrivacidadDocumento.Publico, UsuarioId = usuario, Usuarionombre = usuarioObj, ReturnUrl = returnUrl, Url = reportId, Report = documentoModel?.Datos, DataSource = FDocumentosDatasourceReport.CreateReport(tipoDocumento, ContextService).DataSource, Name = name })); }
public override byte[] GetData(string url) { _user = GetCustomPrincipal(); _service = new DocumentosUsuarioService(MarfilEntities.ConnectToSqlServer(_user.BaseDatos)); // Get the report data from the storage. TipoDocumentoImpresion TipoDocumentoImpresion; Guid usuario; string name; DocumentosUsuarioService.GetFromCustomId(url, out TipoDocumentoImpresion, out usuario, out name); var obj = _service.GetDocumento(TipoDocumentoImpresion, usuario, name); return(obj.Datos); }
public override bool CanSetData(string url) { if (!_reportIdRegex.IsMatch(url)) { return(false); } _user = GetCustomPrincipal(); _service = new DocumentosUsuarioService(MarfilEntities.ConnectToSqlServer(_user.BaseDatos)); // Check if the URL is available in the report storage. TipoDocumentoImpresion tipoDocumentoImpresion; Guid usuario; string name; DocumentosUsuarioService.GetFromCustomId(url, out tipoDocumentoImpresion, out usuario, out name); return(_service.ExisteDocumento(tipoDocumentoImpresion, usuario, name)); }
public override void SetData(XtraReport report, string url) { if (!_reportIdRegex.IsMatch(url)) { return; } _user = GetCustomPrincipal(); _service = new DocumentosUsuarioService(MarfilEntities.ConnectToSqlServer(_user.BaseDatos)); // Write a report to the storage under the specified URL. using (var stream = new MemoryStream()) { TipoDocumentoImpresion TipoDocumentoImpresion; Guid usuario; string name; DocumentosUsuarioService.GetFromCustomId(url, out TipoDocumentoImpresion, out usuario, out name); report.Name = url; report.DisplayName = name; report.SaveLayout(stream); //_service.SetPreferencia(TipoDocumentoImpresion, usuario, name, stream.ToArray()); } }
public ActionResult Export(string id) { var service = new DocumentosUsuarioService(MarfilEntities.ConnectToSqlServer(ContextService.BaseDatos)); TipoDocumentoImpresion tipoDocumento; Guid usuario; string name; DocumentosUsuarioService.GetFromCustomId(id, out tipoDocumento, out usuario, out name); var model = service.GetDocumento(tipoDocumento, usuario, name); var document = model.Datos; var cd = new System.Net.Mime.ContentDisposition { // for example foo.bak FileName = string.Format("{0}.repx", model.Nombre), // always prompt the user for downloading, set to true if you want // the browser to try to show the file inline Inline = false, }; Response.AppendHeader("Content-Disposition", cd.ToString()); return(File(document, "rpt")); }
public virtual ActionResult DeleteConfirmed(DocumentosModel model) { try { using (var db = MarfilEntities.ConnectToSqlServer(ContextService.BaseDatos)) using (var service = new DocumentosUsuarioService(db)) { TipoDocumentoImpresion tipoDocumento; Guid usuario; string name; DocumentosUsuarioService.GetFromCustomId(model.CustomId, out tipoDocumento, out usuario, out name); ViewBag.TituloMantenimiento = string.Format(General.ConfiguradorDocumentos, Funciones.GetEnumByStringValueAttribute(tipoDocumento)); service.RemovePreferencia(tipoDocumento, usuario, name); return(RedirectToAction("Index", new { id = (int)tipoDocumento })); } } catch (Exception ex) { TempData["errors"] = ex.Message; } return(RedirectToAction("Delete", new { id = model.CustomId })); }