public ActionResult GetReportsGrid(string idStream, string desStream) { ViewBag.idStream = idStream; ViewBag.desStream = desStream; string path = Server.MapPath("~/cert/client.pfx"); ReportViewModel model = new ReportViewModel(); List <SenseApplication> publishedApps; List <SenseStream> streams = new List <SenseStream>(); string errorMessage = ""; // Prendo gli stream di self-service e creo una lista QRSQlikAPI QRSqlikAPIMaster = new QRSQlikAPI(AmbitiUtility.GetAmbitoNode(GetCookie("AmbitoId"), GetCookie("NodeId")).Server, path); var ambito = AmbitiUtility.GetAmbitoById(GetCookie("AmbitoId")); QRSqlikAPIMaster.GetStreamsByCustomProperty(GetCookie("UserID"), GetCookie("UserDirectory"), "StreamType", "Self-Service", ambito.customproperty, out streams, out errorMessage); List <string> streamIdList = new List <string>(); if (streams != null) { streamIdList = (from s in streams select s.Id).ToList(); } // // Prendo le app pubblicate in self-service controllando che siano nella lista creata prima QlikAPI qlikAPIMaster = new QlikAPI(AmbitiUtility.GetAmbitoNode(GetCookie("AmbitoId"), GetCookie("NodeId")).Link, GetCookie("UserID"), GetCookie("UserDirectory"), path); if (qlikAPIMaster.GetPublishedAppsInSelectedStreams(streamIdList, out publishedApps)) { foreach (var app in publishedApps) { errorMessage = ""; QRSSenseAppDetail appDetail = new QRSSenseAppDetail(); //if (QRSqlikAPIMaster.GetAppDetail(ConfigurationManager.AppSettings["QlikUser"], ConfigurationManager.AppSettings["QlikUserDirectory"], app.AppId, out appDetail, out errorMessage)) if (QRSqlikAPIMaster.GetAppDetail(GetCookie("UserID"), GetCookie("UserDirectory"), app.AppId, out appDetail, out errorMessage)) { app.OwnerUserName = appDetail.owner.name; } } model = ReportViewModel.CreateReportViewModel(publishedApps, streams); } return(PartialView("ReportsGrid", model)); }
// GET: CreateReport public ActionResult CreateReport() { ViewBag.PageType = "InternalAction"; ViewBag.AmbitoName = GetCookie("AmbitoName"); ViewBag.UserIdentity = GetCookie("UserIdentity"); ViewBag.AmbitoList = GetCookie("AmbitoId") + "|" + GetCookie("NodeId"); CreateReport model = new CreateReport() { Name = "", Description = "" }; model.TemplateItems = new List <ReportTemplate>(); string path = Server.MapPath("~/cert/client.pfx"); var ambito = AmbitiUtility.GetAmbitoById(GetCookie("AmbitoId")); QRSQlikAPI qrsQlikApi = new QRSQlikAPI(AmbitiUtility.GetAmbitoNode(GetCookie("AmbitoId"), GetCookie("NodeId")).Server, path); List <SenseStream> myStreams; string errorMessage = ""; qrsQlikApi.GetStreamsByCustomProperty(GetCookie("UserID"), GetCookie("UserDirectory"), "StreamType", "Template", ambito.customproperty, out myStreams, out errorMessage); if (myStreams != null && myStreams.Count > 0) { QlikAPI qlikApi = new QlikAPI(AmbitiUtility.GetAmbitoNode(GetCookie("AmbitoId"), GetCookie("NodeId")).Link, ambito.superuserid, ambito.superuserdom, path); List <SenseApplication> apps = new List <SenseApplication>(); if (qlikApi.GetPublishedAppsInSelectedStreams(myStreams.Select(s => s.Id).ToList(), out apps)) { if (apps != null && apps.Count > 0) { foreach (var app in apps) { model.TemplateItems.Add(new ReportTemplate() { TemplateStreamID = app.StreamID, TemplateID = app.AppId, TemplateDescription = app.Name }); } } } } return(View(model)); }