public static DocsPaVO.Conservazione.PARER.Report.ReportMonitoraggioPolicyResponse ReportMonitoraggioPolicy(DocsPaVO.Conservazione.PARER.Report.ReportMonitoraggioPolicyRequest request) { ReportMonitoraggioPolicyResponse response = new ReportMonitoraggioPolicyResponse(); logger.Debug("BEGIN"); try { DocsPaVO.documento.FileDocumento doc = new DocsPaVO.documento.FileDocumento(); List <DocsPaVO.filtri.FiltroRicerca> filters = new List <DocsPaVO.filtri.FiltroRicerca>(); filters.Add(new DocsPaVO.filtri.FiltroRicerca() { argomento = "id_amm", valore = request.IdAmm }); filters.Add(new DocsPaVO.filtri.FiltroRicerca() { argomento = "codice_policy", valore = request.Codice }); filters.Add(new DocsPaVO.filtri.FiltroRicerca() { argomento = "descrizione_policy", valore = request.Descrizione }); filters.Add(new DocsPaVO.filtri.FiltroRicerca() { argomento = "data_esecuzione_tipo", valore = request.TipoDataEsecuzione }); filters.Add(new DocsPaVO.filtri.FiltroRicerca() { argomento = "data_esecuzione_da", valore = request.DataEsecuzioneFrom }); filters.Add(new DocsPaVO.filtri.FiltroRicerca() { argomento = "data_esecuzione_a", valore = request.DataEsecuzioneTo }); string rangeEstrazione = string.Empty; if (request.TipoDataEsecuzione == "S" && !string.IsNullOrEmpty(request.DataEsecuzioneFrom)) { rangeEstrazione = "Policy eseguite il giorno " + request.DataEsecuzioneFrom; } else if (request.TipoDataEsecuzione == "R") { if (!string.IsNullOrEmpty(request.DataEsecuzioneFrom)) { rangeEstrazione = "Policy eseguite dal giorno " + request.DataEsecuzioneFrom; if (!string.IsNullOrEmpty(request.DataEsecuzioneTo)) { rangeEstrazione = rangeEstrazione + " al giorno " + request.DataEsecuzioneTo; } } } else if (request.TipoDataEsecuzione == "M") { rangeEstrazione = "Policy eseguite nel mese corrente"; } DocsPaVO.Report.PrintReportRequest printRequest = new DocsPaVO.Report.PrintReportRequest(); printRequest.ContextName = "AmmMonitoraggioPolicy"; printRequest.ReportKey = "AmmMonitoraggioPolicy"; printRequest.Title = "Report monitoraggio policy"; printRequest.SubTitle = rangeEstrazione; printRequest.SearchFilters = filters; printRequest.ReportType = DocsPaVO.Report.ReportTypeEnum.Excel; doc = BusinessLogic.Reporting.ReportGeneratorCommand.GetReport(printRequest).Document; logger.Debug("Generato documento - dimensioni " + doc.content.Length); response.Document = doc; } catch (Exception ex) { logger.Debug(ex); } logger.Debug("END"); return(response); }
/// <summary> /// Esportazione funzioni e microfunzioni /// </summary> /// <param name="tipoReport"></param> /// <param name="idFunzione"></param> /// <param name="idAmm"></param> /// <returns></returns> public static DocsPaVO.documento.FileDocumento ReportFunzioni(string tipoReport, string formato, string idFunzione, string idAmm) { DocsPaVO.documento.FileDocumento report = new DocsPaVO.documento.FileDocumento(); try { // filtri report List <DocsPaVO.filtri.FiltroRicerca> filters = new List <DocsPaVO.filtri.FiltroRicerca>(); filters.Add(new DocsPaVO.filtri.FiltroRicerca() { argomento = "id_amm", valore = idAmm }); filters.Add(new DocsPaVO.filtri.FiltroRicerca() { argomento = "id_funzione", valore = idFunzione }); // request generazione report DocsPaVO.Report.PrintReportRequest request = new DocsPaVO.Report.PrintReportRequest(); request.SearchFilters = filters; // selezione formato report switch (formato) { case "XLS": request.ReportType = DocsPaVO.Report.ReportTypeEnum.Excel; break; case "ODS": request.ReportType = DocsPaVO.Report.ReportTypeEnum.ODS; break; } string descrizione = string.Empty; // selezione tipo report switch (tipoReport) { case "MACRO_FUNZ": descrizione = GetTipoFunzioneByCod(idFunzione, false).Descrizione; request.ContextName = "AmmExportMacroFunzioni"; request.ReportKey = "AmmExportMacroFunzioni"; request.Title = string.Empty; request.SubTitle = string.Format("Codice: {0} - Descrizione: {1}", idFunzione, descrizione); request.AdditionalInformation = string.Empty; break; case "MICRO_FUNZ": descrizione = FunzioniManager.GetAnagraficaPerReport(idFunzione).Descrizione; request.ContextName = "AmmExportMicroFunzioni"; request.ReportKey = "AmmExportMicroFunzioni"; request.Title = "Dettaglio ruoli e tipi funzione associati alla funzione."; request.SubTitle = string.Format("Codice : {0} - Descrizione: {1}", idFunzione, descrizione); request.AdditionalInformation = string.Empty; break; } report = BusinessLogic.Reporting.ReportGeneratorCommand.GetReport(request).Document; } catch (Exception ex) { logger.Debug(ex.Message); } return(report); }