/// <summary> /// Metodo di configurazione ed entry-point per la reportistica delle spedizioni /// </summary> private void ExportReportSpedizioni() { try { // Recupero delle informazioni sull'utente / amministratore loggato InfoUtente userInfo = UserManager.GetInfoUser(); // Salvataggio della request nel call context PrintReportRequestDataset request = new PrintReportRequestDataset() { ContextName = "ReportSpedizioni", SearchFilters = GetGenericFilters(getFiltersFromGui()), UserInfo = userInfo, Title = "Report Spedizioni", }; Session["ActiveExportFormatPDF"] = false; Session["requestPrintReport"] = request; Session["readOnlySubtitle"] = false; Session["visibleGrdFields"] = false; ReportingUtils.PrintRequest = request; ScriptManager.RegisterStartupScript(this, this.GetType(), "ReportGenerator", "ajaxModalPopupReportGenerator();", true); } catch (Exception ex) { UIManager.AdministrationManager.DiagnosticError(ex); return; } }
/// <summary> /// </summary> /// <param name="request">Informazioni sull'operazione da compiere</param> /// <returns>DataSet con i dati estratti</returns> public DataSet ExtractData(PrintReportRequest request) { /* * MethodInfo reportMethod = DocsPaDB.Query_DocsPAWS.Reporting.ReportMethodFinder.FindMethod(request.ContextName); * * if (reportMethod == null) * throw new DataExtractorNotFoundException(); * * object instance = Activator.CreateInstance(reportMethod.DeclaringType); * * // Invocazione nome per reflection e recupero del dataset con il risultato * return reportMethod.Invoke(instance, new object[] { request.UserInfo, request.SearchFilters }) as DataSet; */ PrintReportRequestDataset req = (PrintReportRequestDataset)request; return(req.InputDataset); }
protected void CheckMailboxReportExport_Click(object sender, EventArgs e) { try { string language = UIManager.UserManager.GetUserLanguage(); InfoUtente userInfo = UserManager.GetInfoUser(); string userRole = ""; //CH: Modifica per avere evidenza sul report della Connessione al server di posta fallita if (this.txtEsitoCasella.InnerText != "OK") { userRole = Utils.Languages.GetLabelFromCode("CheckMailboxReportLblUser", language) + " " + UserManager.GetUserInSession().descrizione + ", " + Utils.Languages.GetLabelFromCode("CheckMailboxReportLblRole", language) + " " + RoleManager.getRuoloById(userInfo.idCorrGlobali).descrizione + ". \r\n " + Utils.Languages.GetLabelFromCode("CheckMailboxReportLblResultCheckMailbox", language); } else { //Estraggo le informazioni da visualizzare su utente, ruolo userRole = Utils.Languages.GetLabelFromCode("CheckMailboxReportLblUser", language) + " " + UserManager.GetUserInSession().descrizione + ", " + Utils.Languages.GetLabelFromCode("CheckMailboxReportLblRole", language) + " " + RoleManager.getRuoloById(userInfo.idCorrGlobali).descrizione; } // Salvataggio della request nel call context PrintReportRequestDataset request = new PrintReportRequestDataset() { ContextName = "CasellaIstituzionale", SearchFilters = null, UserInfo = userInfo, InputDataset = reportDataSet, AdditionalInformation = userRole, SubTitle = String.Format(Utils.Languages.GetLabelFromCode("ReportGeneratorTbwSubtitle", language), MailCheckResponse.DtaConcluded.ToShortDateString(), MailCheckResponse.DtaConcluded.ToShortTimeString()) }; //ReportingUtils.PrintRequest = request; ReadOnlySubtitle = true; RequestPrintReport = request; Session["visibleGrdFields"] = true; ScriptManager.RegisterStartupScript(this, this.GetType(), "ReportGenerator", "ajaxModalPopupReportGenerator();", true); } catch (System.Exception ex) { UIManager.AdministrationManager.DiagnosticError(ex); return; } }
protected void btn_esporta_Click(object sender, EventArgs e) { InfoUtente userInfo = UserManager.getInfoUtente(); // Inizializzazione del call context if (CallContextStack.CurrentContext == null) { CallContextStack.CurrentContext = new CallContext("ReportingContext"); } string userRole = ""; //CH: Modifica per avere evidenza sul report dei problemi durante lo scarico della posta if (this.panelCheckResponse.InnerText != "OK") { userRole = "Utente: " + UserManager.getUtente().descrizione + ", Ruolo: " + UserManager.getRuoloById(userInfo.idCorrGlobali, this.Page).descrizione + ". \r\n ESITO CONTROLLO CASELLA: " + this.panelCheckResponse.InnerText; } else { //Estraggo le informazioni da visualizzare su utente, ruolo userRole = "Utente: " + UserManager.getUtente().descrizione + ", Ruolo: " + UserManager.getRuoloById(userInfo.idCorrGlobali, this.Page).descrizione; } // Salvataggio della request nel call context PrintReportRequestDataset request = new PrintReportRequestDataset() { ContextName = "CasellaIstituzionale", SearchFilters = null, UserInfo = userInfo, InputDataset = reportDataSet, AdditionalInformation = userRole }; ReportingUtils.PrintRequest = request; Page.ClientScript.RegisterStartupScript(this.GetType(), "openReport", ReportingUtils.GetOpenReportPageScript(true), true); }
protected override PrintReportResponse GenerateReport(PrintReportRequest request, IReportDataExtractionBehavior dataExtractor, IReportGeneratorBehavior reportGeneration) { // Il DataSet da utilizzare nel report è contenuto all'interno della request // per non replicare tutti i metodi necessari alla ricerca in rubrica PrintReportResponse response = null; try { // eseguo il cast della request PrintReportRequestDataset casted = request as PrintReportRequestDataset; if (casted == null) { throw new RequestNotValidException(); } response = new PrintReportResponse(); List <DocsPaVO.Report.Report> report = new List <DocsPaVO.Report.Report>(); if (casted.InputDataset != null) { report.AddRange(this.CreateReport(casted.InputDataset, request)); } response.Document = reportGeneration.GenerateReport(request, report); } catch (Exception ex) { logger.Debug("Errore nella generazione del report - ", ex); throw new ReportGenerationFailedException(ex.Message); } return(response); }
private int creaGrigioDaReport(bool trasmDoc) { InfoUtente userInfo = UserManager.getInfoUtente(); Ruolo ruolo = UserManager.getRuolo(); if (CallContextStack.CurrentContext == null) { CallContextStack.CurrentContext = new CallContext("ReportingContext"); } PrintReportRequestDataset request = new PrintReportRequestDataset() { ContextName = "CasellaIstituzionale", ReportType = ReportTypeEnum.PDF, ReportKey = "RicercaCasellaIstituzionale", Title = "Casella Istituzionale", SubTitle = String.Format("Report generato {0} alle {1}", DateTime.Now.ToString("dddd, dd MMMM yyyy"), (DateTime.Now).ToString("HH:mm:ss")), SearchFilters = null, UserInfo = userInfo, InputDataset = reportDataSetDocGrigio }; ReportingUtils.PrintRequest = request; this.ReportRegistry = ReportingUtils.GetReportRegistry(ReportingUtils.PrintRequest.ContextName); ReportingUtils.PrintRequest.ColumnsToExport = this.ReportRegistry.Where(r => r.ReportKey == request.ReportKey).First().ExportableFields; FileDocumento fd = ReportingUtils.GenerateReport(request); int retValue = 0; try { DocsPaWR.SchedaDocumento scheda = new SchedaDocumento(); DocsPaWR.Oggetto ogg = new Oggetto(); DocsPaWR.FileRequest fr = null; //Report Casella Istituzional del RF: codice/descrizione ogg.descrizione = String.Format("Report Casella Istituzionale {0} del {1} alle {2}", txtCodiceRegistro.Text, DateTime.Now.ToString("dddd, dd MMMM yyyy"), (DateTime.Now).ToString("HH:mm:ss")); scheda.oggetto = ogg; scheda.personale = "0"; scheda.privato = "0"; scheda.userId = UserManager.getInfoUtente().userId; scheda.typeId = "LETTERA"; scheda.tipoProto = "G"; scheda.appId = "ACROBAT"; scheda.idPeople = UserManager.getInfoUtente().idPeople; scheda = docsPaWS.DocumentoAddDocGrigia(scheda, UserManager.getInfoUtente(), UserManager.getRuolo()); fr = (DocsPAWA.DocsPaWR.FileRequest)scheda.documenti[0]; fr.docNumber = scheda.docNumber; fr = docsPaWS.DocumentoPutFile(fr, fd, UserManager.getInfoUtente()); if (fr != null) { retValue = 1; } //disabilito il pulsante di creazione doc grigio btnDocGrigio.Enabled = false; if (trasmDoc) { CreateAndTrasmDoc(scheda, userInfo, ruolo); } } catch (Exception ex) { retValue = 0; } return(retValue); }
private int creaGrigioDaReport(bool trasmDoc) { string language = UIManager.UserManager.GetUserLanguage(); InfoUtente userInfo = UserManager.GetInfoUser(); Ruolo ruolo = RoleManager.GetRoleInSession(); PrintReportRequestDataset request = new PrintReportRequestDataset() { ContextName = "CasellaIstituzionale", ReportType = ReportTypeEnum.PDF, ReportKey = "RicercaCasellaIstituzionale", Title = Utils.Languages.GetLabelFromCode("CheckMailboxReportLblIstitutionalBox", language), SubTitle = String.Format(Utils.Languages.GetLabelFromCode("ReportGeneratorTbwSubtitle", language), MailCheckResponse.DtaConcluded.ToShortDateString(), MailCheckResponse.DtaConcluded.ToShortTimeString()), SearchFilters = null, UserInfo = userInfo, InputDataset = reportDataSetDocGrigio }; RequestPrintReport = request; this.ReportRegistry = CheckMailboxManager.GetReportRegistry(RequestPrintReport.ContextName); RequestPrintReport.ColumnsToExport = this.ReportRegistry.Where(r => r.ReportKey == request.ReportKey).First().ExportableFields; FileDocumento fd = CheckMailboxManager.GenerateReport(request); int retValue = 0; try { DocsPaWR.SchedaDocumento scheda = new SchedaDocumento(); DocsPaWR.Oggetto ogg = new Oggetto(); DocsPaWR.FileRequest fr = null; //Report Casella Istituzional del RF: codice/descrizione ogg.descrizione = String.Format("Report Casella Istituzionale {0} del {1} alle {2}", this.txtRegistro.Text, MailCheckResponse.DtaConcluded.ToShortDateString(), MailCheckResponse.DtaConcluded.ToShortTimeString()); scheda.oggetto = ogg; scheda.personale = "0"; scheda.privato = "0"; scheda.userId = UserManager.GetInfoUser().userId; scheda.typeId = "LETTERA"; scheda.tipoProto = "G"; scheda.appId = "ACROBAT"; scheda.idPeople = UserManager.GetInfoUser().idPeople; scheda = CheckMailboxManager.DocumentoAddDocGrigia(scheda, UserManager.GetInfoUser(), RoleManager.GetRoleInSession()); fr = (FileRequest)scheda.documenti[0]; fr.docNumber = scheda.docNumber; fr = CheckMailboxManager.DocumentoPutFile(fr, fd, UserManager.GetInfoUser()); if (fr != null) { retValue = 1; } //disabilito il pulsante di creazione doc grigio this.CheckMailboxReportCreateDoc.Enabled = false; if (trasmDoc) { CreateAndTrasmDoc(scheda, userInfo, ruolo); } } catch (Exception ex) { retValue = 0; } return(retValue); }