Технические вопросы
7.x

Изменить имя файла отчета Word

Добрый вечер, коллеги. Не подскажите как сделать чтобы при скачивании отчета Word изменить имя файла.
Пробовал на InvoiceSection переопределить метод из PrintReportUtilities

downloadReport: function(caption, key) {
        var report = document.createElement("a");
        report.href = "../rest/ReportService/GetReportFile/" + key;
        report.download = "123.docx";
        document.body.appendChild(report);
        report.click();
      document.body.removeChild(report);
}

Но почему-то имя файла всё равно дефолтное, которое указано в справочнике Печатные формы.

Нравится

1 комментарий

Для получения названия файла необходимо попробовать переопределить метод фабричного класса ReportHelper следующим образом (обратите внимание на report.Caption):

                   public virtual Stream GetReportFile(string key) {
                             var userConnection = (UserConnection)HttpContext.Current.Session["UserConnection"];
                             var reportObj = userConnection.SessionData[key];
                             userConnection.SessionData.Remove(key);
                             ReportData report = reportObj as ReportData;
                             if (report.Format == "pdf") {
                                      WebOperationContext.Current.OutgoingResponse.ContentType = "application/pdf";
                             } else {
                                      WebOperationContext.Current.OutgoingResponse.ContentType = "application/octet-stream";
                             }
                             var reportStream = new MemoryStream(report.Data);
                             WebOperationContext.Current.OutgoingResponse.ContentLength = reportStream.Length;
                             WebOperationContext.Current.OutgoingResponse.Headers.Add("Content-Disposition", "attachment; filename=\"" +
Показать все комментарии