Пример #1
0
        /// <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;
            }
        }
Пример #2
0
        /// <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);
        }
Пример #3
0
        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;
            }
        }
Пример #4
0
        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);
        }
Пример #5
0
        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);
        }
Пример #6
0
        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);
        }
Пример #7
0
        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);
        }