Загрузка и сохранение отчета
Информация |
Файл формата Stimulsoft MRT - это описание отчетов с разметкой XML или JSON. Вы можете использовать MRT-файлы, созданные в других дизайнерах Stimulsoft.
|
Для загрузки отчета при помощи PHP кода можно использовать одну из функций объекта StiReport - loadFile() либо load(). Каждая из функций принимает на вход параметр - имя файла отчета:
Наименование |
Описание |
loadFile($filePath, $load = false) |
Загружает отчет из MRT файла на стороне клиента, путь к которому указан в аргументах функции. Если параметр $load установлен в значение true, файл отчета будет загружен на стороне сервера и передан на сторону клиента в виде упакованной Base64 строки. |
load($filePath) |
Загружает отчет из XML или JSON строки и передаёт его на сторону клиента в виде упакованной Base64 строки. |
Например, требуется загрузить отчет из файла на стороне сервера из приватной директории и передать его на сторону клиента:
index.php |
<?php $report = new \Stimulsoft\Report\StiReport(); $report->loadFile('reports/SimpleList.mrt', true); $report->renderHtml(); ?>
|
Для загрузки отчета при помощи JavaScript кода, можно использовать одну из функций объекта StiReport - loadFile() либо load(). Каждая из функций принимает на вход параметр - имя файла отчета, либо сам отчет:
Наименование |
Описание |
loadFile(filePath) |
Загружает отчет из MRT файла, путь к которому указан в аргументах функции. |
load(str) |
Загружает отчет из строки, которая содержит отчет в формате XML или JSON. |
load(data) |
Загружает отчет из массива данных типа number[]. |
load(xml) |
Загружает отчет из XML объекта типа XMLDocument |
load(json) |
Загружает отчет из JS объекта. |
Например, требуется загрузить отчет из файла:
index.php |
var report = new Stimulsoft.Report.StiReport(); report.loadFile("reports/SimpleList.mrt");
|
Дополнительно, шаблон отчета может быть представлен в формате Stimulsoft MRZ (упакованный отчет) и Stimulsoft MRX (зашифрованный паролем отчет). Формат MRZ позволяет сохранять файлы меньшего размера, не используя для этого сторонние утилиты упаковки. Формат MRX шифруется паролем, позволяет скрыть конфиденциальные данные, хранящиеся в отчете.
Для загрузки отчета в указанных форматах предусмотрены соответствующие функции:
Наименование |
Описание |
loadPackedFile(filePath) |
Загружает упакованный отчет из MRZ файла, путь к которому указан в аргументах функции. |
loadPacked(str) |
Загружает упакованный отчет из строки, представленной в Base64 формате. |
loadPacked(data) |
Загружает упакованный отчет из массива данных типа number[]. |
loadEncryptedReportFile(filePath, key) |
Загружает зашифрованный отчет из MRX файла, путь к которому указан в аргументах функции. В качестве второго аргумента необходимо указать строковый ключ шифрования, установленный при сохранении. |
loadEncryptedReport(str, key) |
Загружает зашифрованный отчет из строки, представленной в Base64 формате. В качестве второго аргумента необходимо указать строковый ключ шифрования, установленный при сохранении. |
loadEncryptedReport(data, key) |
Загружает зашифрованный отчет из массива данных типа number[]. В качестве второго аргумента необходимо указать строковый ключ шифрования, установленный при сохранении. |
Для сохранения отчета можно воспользоваться следующими функциями:
Наименование |
Описание |
saveToJsonString() |
Сохраняет отчет в виде строки в формате JSON. |
savePackedToString() |
Сохраняет упакованный отчет в виде строки, представленной в Base64 формате. |
savePackedToByteArray() |
Сохраняет упакованный отчет в виде массива данных типа number[]. |
saveEncryptedReportToString(key) |
Сохраняет зашифрованный отчет в виде строки, представленной в Base64 формате. В качестве аргумента необходимо указать строковый ключ шифрования. |
saveEncryptedReportToByteArray(key) |
Сохраняет зашифрованный отчет в виде массива данных типа number[]. В качестве аргумента необходимо указать строковый ключ шифрования. |
Информация |
Генератор отчетов Stimulsoft Reports.PHP и аналитические панели Stimulsoft Dashboards.PHP основаны на платформе JavaScript, и поддерживают сохранение файлов MRT только в JSON формат. MRT-файлы в формате XML поддерживаются только в режиме загрузки, и при сохранении будут автоматически преобразованы в JSON формат.
|
Загрузка и сохранение документов (построенных отчетов)
Построенный отчет можно сохранить в виде документа в JSON формате для последующего просмотра либо экспортирования. Такой документ содержит построенные страницы отчета, но не содержит исходных данных и не сохраняет подключение к ним.
Для загрузки документа при помощи PHP кода можно использовать одну из функций объекта StiReport - loadDocumentFile() либо loadDocument(). Каждая из функций принимает на вход параметр - имя файла отчета:
Наименование |
Описание |
loadDocumentFile($filePath, $load = false) |
Загружает документ из MDC файла на стороне клиента, путь к которому указан в аргументах функции. Если параметр $load установлен в значение true, файл документа будет загружен на стороне сервера и передан на сторону клиента в виде упакованной Base64 строки. |
loadDocument($filePath) |
Загружает документ из XML или JSON строки и передаёт его на сторону клиента в виде упакованной Base64 строки. |
Например, требуется загрузить документ из файла на стороне сервера из приватной директории и передать его на сторону клиента:
index.php |
<?php $report = new \Stimulsoft\Report\StiReport(); $report->loadDocumentFile('reports/SimpleList.mdc', true); $report->renderHtml(); ?>
|
Информация |
Так как для аналитических панелей всегда нужны данные, они не могут быть сохранены в виде документа. Stimulsoft Dashboards.PHP поддерживает сохранение панелей только в виде шаблона.
|
Для загрузки и сохранения документа при помощи JavaScript кода предназначены соответствующие функции объекта StiRerpot. Полный список функций и параметров указан в таблице ниже.
Пример загрузки документа из файла:
index.php |
var report = new Stimulsoft.Report.StiReport(); report.loadDocumentFile("reports/SimpleList.mdc");
|
Пример загрузки шаблона отчета, его построения и сохранения построенного документа в JSON строку:
index.php |
var report = new Stimulsoft.Report.StiReport(); report.loadFile("reports/SimpleList.mrt"); report.renderAsync(function() { var jsonString = report.saveDocumentToJsonString(); });
|
Также, как и шаблон отчета, документ может быть представлен в трех различных форматах: Stimulsoft MDC (обычный документ), Stimulsoft MDZ (упакованный документ) и Stimulsoft MDX (зашифрованный паролем документ). Полный список функций для работы со всеми форматами документов представлен в данной таблице:
Наименование |
Описание |
loadDocumentFile(filePath) |
Загружает документ из MDC файла, путь к которому указан в аргументах функции. |
loadDocument(str) |
Загружает документ из строки, которая содержит отчет в формате XML или JSON. |
loadDocument(data) |
Загружает документ из массива данных типа number[]. |
loadDocument(xml) |
Загружает документ из XML объекта типа XMLDocument. |
loadDocument(json) |
Загружает документ из JS объекта. |
loadPackedDocumentFile(filePath) |
Загружает упакованный документ из MDZ файла, путь к которому указан в аргументах функции. |
loadPackedDocument(str) |
Загружает упакованный документ из строки, представленной в Base64 формате. |
loadPackedDocument(data) |
Загружает упакованный документ из массива данных типа number[]. |
loadEncryptedDocumentFile(filePath, key) |
Загружает зашифрованный документ из MDX файла, путь к которому указан в аргументах функции. В качестве второго аргумента необходимо указать строковый ключ шифрования, установленный при сохранении. |
loadEncryptedDocument(str, key) |
Загружает зашифрованный документ из строки, представленной в Base64 формате. В качестве второго аргумента необходимо указать строковый ключ шифрования, установленный при сохранении. |
loadEncryptedDocument(data, key) |
Загружает зашифрованный документ из массива данных типа number[]. В качестве второго аргумента необходимо указать строковый ключ шифрования, установленный при сохранении. |
saveDocumentToJsonString() |
Сохраняет документ в виде строки в формате JSON. |
savePackedDocumentToString() |
Сохраняет упакованный документ в виде строки, представленной в Base64 формате. |
savePackedDocumentToByteArray() |
Сохраняет упакованный документ в виде массива данных типа number[]. |
saveEncryptedDocumentToString(key) |
Сохраняет зашифрованный документ в виде строки, представленной в Base64 формате. В качестве аргумента необходимо указать строковый ключ шифрования. |
saveEncryptedDocumentToByteArray(key) |
Сохраняет зашифрованный документ в виде массива данных типа number[]. В качестве аргумента необходимо указать строковый ключ шифрования. |
Информация |
При сохранении документа из меню вьювера, файл также сохраняется в JSON формате, и имеет расширение MDC для стандартного документа, MDZ для упакованного документа, MDX для зашифрованного документа.
|