首页 > 解决方案 > 从 Acumatica 获取报告为单页 PDF

问题描述

我正在尝试将 Acumatica 报告作为单页 PDF。(无论是来自报表屏幕还是由自定义代码生成的 PDF,多个页面都可以正常工作)所有报表和组在 Keep Together 设置中都获得了“True”。我尝试将此作为报告屏幕,或尝试使用代码生成 PDF:

    public PXAction<PX.Objects.AR.ARInvoice> CreatePDF;
    [PXButton(CommitChanges = true)]
    [PXUIField(DisplayName = "Create PDF")]
    protected void createPDF()
    {
        //Report Paramenters
        Dictionary<String, String> parameters = new Dictionary<String, String>();
        parameters["ARInvoice.DocType"] = Base.Document.Current.DocType;
        parameters["ARInvoice.RefNbr"] = Base.Document.Current.RefNbr;
        parameters["DocType"] = Base.Document.Current.DocType;
        parameters["RefNbr"] = Base.Document.Current.RefNbr;
        //Report Processing
        PX.Reports.Controls.Report _report = PX.Data.Reports.PXReportTools.LoadReport("EP301009", null);

        PX.Data.Reports.PXReportTools.InitReportParameters(_report, parameters,
                PX.Reports.SettingsProvider.Instance.Default);
        ReportNode reportNode = ReportProcessor.ProcessReport(_report);
        //Generation PDF
        byte[] data = PX.Reports.Mail.Message.GenerateReport(reportNode, ReportProcessor.FilterHtml).First();
        FileInfo file = new FileInfo("report.html", null, data);
        //Saving report
        UploadFileMaintenance graph = new UploadFileMaintenance();
        graph.SaveFile(file);
        PXNoteAttribute.AttachFile(Base.Document.Cache, Base.Document.Current, file);
        throw new PXRedirectToFileException(file, true);
    }

我实现的唯一单页结果 - 单击“PDF”按钮时,Acumatica 仅显示第一页。其他人迷路了。

是否可以覆盖 Acumatica 中的“PDF”按钮行为?

标签: pdfacumatica

解决方案


报表引擎是基于页面的,因此您必须使用页面。只有有限数量的数据可以放在有限大小的单个页面上。

我建议增加页面大小以在单个页面上容纳更多数据。这可以PageSettings在 Acumatica 报表设计器的报表属性中完成。

在此处输入图像描述


推荐阅读