Из-за внушительной функциональности продукта, скрипты имеют достаточно большой размер. При первой загрузке Web приложения, либо при отключенном кэшировании браузера, загрузка может занимать некоторое время, особенно при низкоскоростном интернет-соединении. Мы предлагаем два варианта решения этой проблемы: использовать упакованные скрипты, либо использовать частичный функционал, и загружать только то, что требуется. Допускается одновременное использование указанных вариантов.

 

 

Упакованные скрипты

Упакованные скрипты имеют такую же структуру, что и обычные скрипты, но имеют окончание *.pack.js в имени файла. Такие скрипты содержат блок упакованных данных в виде JavaScript переменной, и компактный распаковщик. При загрузке всех скриптов, распаковщик автоматически распаковывает все загруженные данные, и запускает подготовленный скрипт на выполнение. Распаковка занимает некоторое время, но при определенных обстоятельствах - например, при медленном интернет-соединении - это время намного меньше, чем скорость загрузки обычных скриптов.

 

Для использования упакованных скриптов всё, что вам понадобится сделать - это установить свойство $js->usePacked в значение true, например:

 

index.php

 

<?php

use Stimulsoft\Report\StiReport;

 

$report = new StiReport();

$report->javascript->usePacked = true;

?>

 

 

 

Частичная загрузка скриптов

Скрипт stimulsoft.reports.js содержит в себе весь функционал по построению и экспортированию отчетов. Если для генерации отчетов вам требуются только некоторые из возможностей, предусмотрена загрузка только необходимых частей генератора, содержащих определенный набор возможностей. Например, если в ваших отчетах не используются карты, то их можно не загружать. Это ускорит загрузку Web проекта и уменьшит потребление памяти браузером.

 

Информация

 

Данная возможность реализована только для ядра генератора отчетов, вьювер и дизайнер нельзя разделить на части, их скрипты будут загружаться целиком одним блоком.

 

 

 

Для использования частичной загрузки скриптов, достаточно установить нужные опции для свойства javascript у объекта отчета:

 

index.php

 

<?php

use Stimulsoft\Report\StiReport;

 

$report = new StiReport();

$report->javascript->reportsChart = true;

$report->javascript->reportsExport = true;

$report->javascript->reportsImportXlsx = true;

$report->javascript->reportsMaps = false;

$report->javascript->blocklyEditor = false;

?>

 

 

 

Каждая опция управляет загрузкой скрипта, содержащего определённый функционал. В данной таблице представлен весь набор скриптов, которые можно загрузить раздельно:

 

Наименование

Описание

javascript->reportsExport

Содержит алгоритмы для экспортирования построенного отчета в различные форматы - PDF, HTML, Excel, RichText и другие.

javascript->reportsChart

Содержит компоненты для работы со всеми типами диаграмм в отчете.

javascript->reportsMaps

Содержит компоненты для работы с региональными и онлайн картами.

javascript->blocklyEditor

Содержит визуальный редактор Blockly для создания скриптов событий в отчете. Сам обработчик событий встроен в движок отчетов.

javascript->reportsImportXlsx

Содержит алгоритмы для работы с Excel источниками данных.

 

Информация

 

Компоненты вьювер отчетов и дизайнер отчетов также имеют свойство javascript, при помощи которого можно управлять настройкой скриптов указанным выше способом.