В этом примере показано, как настроить существующий шаблон отчета в соответствии с требованиями пользователя. Шаблон отчета определяет содержимое и форматирование отчетов, созданных на основе результатов анализа. Если существующий шаблон отчета не соответствует вашим требованиям, можно изменить некоторые аспекты шаблона.
Дополнительные сведения о существующих шаблонах см. в разделе Bug Finder and Code Prover report (-report-template).
Перед настройкой шаблона отчета:
Проверьте, соответствует ли существующий шаблон отчета вашим требованиям. Определите шаблон, который создает отчеты в формате, близком к требуемому. Этот шаблон можно адаптировать.
Для тестирования шаблона создайте отчет на основе результатов проверки образцов с использованием шаблона. См. раздел Создание отчетов.
Убедитесь, что в системе установлена программа MATLAB ® Report Generator™.
В этом примере можно изменить шаблон разработчика, доступный в Polyspace ® Code Prover™.
Шаблон отчета может быть разбит на компоненты в генераторе отчетов MATLAB. Каждый компонент представляет некоторую информацию, включенную в отчет, созданный с помощью шаблона. Например, титульная страница компонента представляет информацию на титульной странице отчета.
В этом примере рассматриваются компоненты шаблона разработчика.
Добавьте пути к компонентам отчета Polyspace, указав вложенные папки папки установки Polyspace. В командной строке MATLAB введите:
addpath(fullfile(polyspaceroot, 'toolbox', 'polyspace', 'psrptgen', 'psrptgen')); addpath(fullfile(polyspaceroot, 'toolbox', 'polyspace', 'psrptgen', 'templates'));
Здесь, является папкой установки Polyspace, например, polyspacerootC:\Program Files\Polyspace\R2019a. При интеграции MATLAB и Polyspace можно использовать polyspaceroot в MATLAB для поиска расположения установочной папки. См. раздел Интеграция полиспейса с MATLAB и Simulink.
Откройте интерфейс проводника отчетов. В командной строке MATLAB введите:
report
Откройте шаблон разработчика в интерфейсе проводника отчетов.
Шаблон разработчика находится в где polyspaceroot/toolbox/polyspace/psrptgen/templates является папкой установки Polyspace.polyspaceroot
Шаблон откроется в проводнике отчетов. На левой панели отображаются компоненты шаблона. Можно щелкнуть каждый компонент и просмотреть свойства компонента на правой панели.

Некоторые компоненты шаблона разработчика и их назначение описаны ниже.
| Компонент | Цель |
|---|---|
Title Page(Генератор отчетов MATLAB) | Вставка титульной страницы в начало отчета |
Chapter/Subsection(Генератор отчетов MATLAB) | Группирует части отчета по разделам с заголовками |
Code Verification Summary | Вставка сводной таблицы результатов анализа Polyspace |
Logical If(Генератор отчетов MATLAB) | Выполняет дочерние компоненты, только если условие выполнено |
Run-time Checks Summary Ordered by File | Вставка таблицы с проверками проверки кода Polyspace, сгруппированной по файлу |
Чтобы понять, как работает шаблон, сравните компоненты шаблона с отчетом, созданным с помощью шаблона.
Дополнительные сведения обо всех компонентах см. в разделе Работа с компонентами (генератор отчетов MATLAB). Сведения о компонентах, специфичных для Polyspace, см. в разделе Создание отчетов.
Примечание
Некоторые свойства компонента задаются с помощью внутренних выражений. Хотя выражения можно просматривать, не изменяйте их. Например, условия, указанные в компонентах Logical If в шаблоне разработчика, задаются с помощью внутренних выражений.
В интерфейсе Report Explorer можно выполнять следующие действия:
Изменение свойств существующих компонентов шаблона.
Добавьте новые компоненты в шаблон или удалите существующие компоненты.
В этом примере в шаблон разработчика добавляется компонент, который фильтрует Unreachable code проверки из отчета, созданного с использованием шаблона.
Откройте шаблон разработчика в интерфейсе проводника отчетов и сохраните его в другом месте с другим именем, например, Developer_without_UNR.
Добавьте новый глобальный компонент, фильтрующий проверки недостижимого кода из шаблона Developer_without_UNR. Компонент является глобальным, поскольку применяется к полному отчету, а не к одной главе отчета.
Для выполнения этого действия:
Перетащите компонент Report Customization (Filtering) в средней области и поместите его над компонентом титульной страницы. Расположение компонента обеспечивает применение фильтров к полному отчету, а не к одной главе отчета.

Выберите компонент Настройка отчета (фильтрация). На правой панели можно задать свойства этого компонента. По умолчанию свойства задаются так, чтобы все результаты включались в отчет.
Чтобы исключить проверки недостижимого кода, в группе Дополнительные фильтры введите ^(?!Unreachable code).* в поле Типы проверки для включения.

В это поле можно ввести регулярные выражения MATLAB. Генератор отчетов применяет регулярные выражения к именам результатов Polyspace. Например:
Знак вставки ^ указывает, что последующий шаблон должен находиться в начале строки.
Знаки (?! указывает, что последующий шаблон не должен отображаться в строке.pattern)
Вместе, регулярное выражение ^(?!Unreachable code).* указывает, что имена результатов Polyspace начинаются с Unreachable code должен быть исключен из отчета. См. раздел Регулярные выражения и результаты проверки кода в полиспейсе.
Можно переключаться между активацией и деактивизацией этого компонента. Щелкните правой кнопкой мыши компонент и выберите «Активировать/Деактивировать компонент».
Измените существующий специфичный для главы компонент, чтобы он не переопределял глобальный фильтр, примененный на предыдущем шаге. Если переопределение не выполняется, специфичный для главы компонент следует спецификациям фильтрации в глобальном компоненте.
Для выполнения этого действия:
На левой панели выберите Run-time Checks Details Ordered by Color/File компонент. Этот компонент создает таблицы в отчете с подробными сведениями о проверках во время выполнения, найденными в программе Polyspace Code Prover.
На правой панели отображаются свойства этого компонента.
Снимите флажок «Переопределить фильтр глобального отчета».

В интерфейсе пользователя Polyspace создайте отчет с использованием шаблона Разработчик (Developer) и Developer_without_UNR из результатов, содержащих проверки недостижимого кода. Сравните два отчета.
Например:
Откройте Справка > Примеры > Code_Prover_Example.psprj.
Демонстрационный результат содержит проверки недостижимого кода.
Создание отчета в формате pdf с использованием шаблона разработчика.
В отчете откройте главу 5. Результаты проверки времени выполнения Polyspace. Отображаются серые проверки недостижимого кода. Закройте отчет.
Создание отчета в формате pdf с использованием шаблона Developer_without_UNR. В окне Выполнить отчет (Run Report) нажмите кнопку Обзор (Browse), чтобы добавить шаблон Developer_without_UNR в существующий список шаблонов.
В отчете откройте главу 6. Результаты проверки времени выполнения Polyspace. Серые проверки кода недоступны.
Примечание
После добавления шаблона в существующий список шаблонов перед созданием отчета обязательно выберите только что добавленный шаблон.
Измените шаблон разработчика таким образом, чтобы файл initialisations.c исключается из отчета, созданного с помощью шаблона. Создание отчета по результатам Code_Prover_Example с помощью измененного шаблона и проверка файла initialisations.c исключается из отчета.
Подсказка: Регулярное выражение, которое необходимо использовать: ^(?!.*initialisations.c).*
Дополнительные примеры см. в разделе Примеры настроек шаблонов отчетов.
Bug Finder and Code Prover report (-report-template) | Generate report | Output format (-report-output-format)