Пример #1
0
        public void iTextSharpDraw(string file2test,
                                   string cultureName,
                                   string suffixFileName,
                                   Func <Dictionary <string, IEnumerable> > fillDatasets)
        {
            GeneralUtils.ChangeCurrentCultrue(cultureName);
            OneFileStreamGen sg = null;

            Uri    fileRdlUri = new Uri(_reportFolder, file2test);
            Report rap        = RdlUtils.GetReport(fileRdlUri);

            rap.Folder = _reportFolder.LocalPath;
            if (fillDatasets != null)
            {
                Dictionary <string, IEnumerable> dataSets = fillDatasets();

                foreach (var dataset in dataSets)
                {
                    rap.DataSets[dataset.Key].SetData(dataset.Value);
                }
            }
            rap.RunGetData(null);

            string fileNameOut = string.Format("{0}_{1}_{2}{3}",
                                               file2test,
                                               cultureName,
                                               suffixFileName,
                                               _extOuput);

            string fullOutputPath = System.IO.Path.Combine(_outputFolder.LocalPath, fileNameOut);

            sg = new OneFileStreamGen(fullOutputPath, true);
            rap.RunRender(sg, OutputPresentationType.PDF);
        }
Пример #2
0
        private string BuildReport(string templateName, List <Param> paramList, OutputPresentationType output)
        {
            var outputFileName = GetOutputFileName(templateName, output);

            GeneralUtils.ChangeCurrentCultrue("es-ES");
            var report     = GetReport(templateName, paramList);
            var paramsList = GetReportParams(paramList, ref report);

            report.RunGetData(paramsList);
            var pages = report.BuildPages();

            var sg = new OneFileStreamGen(outputFileName, true);


            switch (output)
            {
            case OutputPresentationType.Word:
                report.RunRender(sg, OutputPresentationType.HTML, pages);
                outputFileName = GetWordDocumentFromHtml(outputFileName);
                break;

            case OutputPresentationType.RenderPdf_iTextSharp:
            case OutputPresentationType.PDF:
                report.ItextPDF = true;
                report.RunRenderPdf(sg, pages);
                break;

            case OutputPresentationType.PDFOldStyle:
                report.ItextPDF = false;
                report.RunRenderPdf(sg, pages);
                break;

            default:
                report.RunRender(sg, output, pages);
                break;
            }

            sg.CloseMainStream();
            sg.Dispose();

            return(outputFileName);
        }