Пакет: slreportgen.report
Суперклассы: slreportgen.report.Reporter
Репортер блоков таблицы подстановки
Создайте репортер блоков таблицы подстановки Simulink ®. Список поддерживаемых блоков см. в свойстве Object.
Примечание
Использование LookupTable reporter в отчете, необходимо создать отчет с помощью slreportgen.report.Report класс.
создает пустой rptr = LookupTable()LookupTable block reporter на основе шаблона по умолчанию. Используйте его свойства, чтобы указать блок таблицы подстановки для отчета и задать параметры отчета.
создает rptr = LookupTable(lutobj)LookupTable блок-репортер для блока таблицы подстановки, указанного lutobj. По умолчанию репортер создает таблицу и график выходных значений в зависимости от точек останова, а также таблицу типов данных.
наборы rptr = LookupTable(Name,Value)LookupTable свойства репортера с использованием пар имя-значение. Можно указать несколько аргументов пары имя-значение в любом порядке. Заключите каждое имя свойства в одинарные или двойные кавычки.
| createTemplate | Создание шаблона репортера таблицы поиска Simulink |
| customizeReporter | Создать пользовательский класс репортера LookupTable |
| getClassFolder | Расположение файла определения класса отчетов таблицы подстановки |
Создайте генератор отчетов PDF, который сообщает о блоке таблицы подстановки. В этом примере используется slrgex_sf_car модель и отчеты о ней engine torque
Блок таблицы подстановки (n-D). Этот блок является 2-D таблицей подстановки. engine torque блок находится в Engine подсистема slrgex_sf_car модель. По умолчанию отчет включает таблицу выходных значений по сравнению с точками останова, график поверхности, таблицу типов данных блоков и примечания о возможных различиях между сообщаемыми значениями и значениями, полученными при моделировании.
import slreportgen.report.* import mlreportgen.report.* model_name = 'slrgex_sf_car'; load_system(model_name); lutable = 'slrgex_sf_car/Engine/engine torque'; rpt = slreportgen.report.Report('output','pdf'); chapter = Chapter(lutable); rptr = LookupTable(lutable); add(chapter,rptr); add(rpt,chapter); close(rpt); close_system(model_name); rptview(rpt)


Создание генератора отчетов PDF, задающего высоту и ширину печати, возвращаемые LookupTable репортер. В этом примере используется slrgex_sf_car модель и отчеты о ней Torque ratio
Блок таблицы подстановки (n-D). Этот блок является 1-D таблицей подстановки и находится в transmission/Torque Converter подсистема slrgex_sf_car модель. Чтобы задать высоту и ширину графика, используйте PlotReporter собственность.
import slreportgen.report.* import mlreportgen.report.* model_name = 'slrgex_sf_car'; load_system(model_name); lutable = 'slrgex_sf_car/transmission/Torque Converter/Torque ratio'; rpt = slreportgen.report.Report('output','pdf'); chapter = Chapter(lutable); rptr = LookupTable(lutable); rptr.IncludeTable = false; add(chapter,rptr); rptr_resized = LookupTable(lutable); rptr_resized.IncludeTable = false; rptr_resized.PlotReporter.Snapshot.Width = '3in'; rptr_resized.PlotReporter.Snapshot.Height = '4in'; add(chapter,rptr_resized); add(rpt,chapter); close(rpt) ; close_system(model_name) rptview(rpt);
При печати по умолчанию на первой странице отчета используется предопределенный размер, который соответствует размеру страницы.

Для печати с измененными размерами на второй странице отчета используются значения 3 «width и 4» height.

Создание генератора отчетов PDF, который находит все блоки в Engine подсистема slrgex_sf_car модель. Затем программа генератора отчетов выполняет циклический поиск блоков и проверяет, является ли блок блоком таблицы поиска. Для блоков таблицы подстановки используется LookupTable для сообщения информации о блоке. Для других блоков созданный отчет сообщает о свойствах блока, которые являются результатами BlockFinder класс.
import slreportgen.report.* import slreportgen.finder.* model_name = 'slrgex_sf_car'; load_system(model_name) subsys_name = 'slrgex_sf_car/Engine'; rpt = slreportgen.report.Report; blkfinder = BlockFinder(subsys_name); blks = find(blkfinder); for i=1:length(blks) if slreportgen.utils.isLookupTable(blks(i).Object) rptr = LookupTable(blks(i).Object); ch = Chapter(blks(i).Name); add(ch,rptr); add(rpt,ch); else ch = Chapter(blks(i).Name); add(ch,blks(i)); add(rpt,ch); end end close(rpt); close_system(model_name); rptview(rpt);
В первой главе показаны свойства по умолчанию для блока Inport.

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


В этом примере показано, как добавить фиксированное содержимое в настраиваемый HTML-код LookupTable шаблон репортера. Можно также настроить выходные данные отчета таблицы подстановки путем непосредственного редактирования программы генератора отчетов. Преимущество настройки шаблона состоит в том, что его можно повторно использовать в качестве основы для настройки другой программы генератора отчетов.
Шаблон и таблицы стилей для LookupTable репортеры расположены в matlab\toolbox\shared\slreportgen\rpt\rpt\+slreportgen\+report\@LookupTable\resources\templates папка. При копировании шаблона по умолчанию указывать этот путь не требуется.
Создайте копию шаблона HTML по умолчанию. В этом примере пакет шаблона сохраняется как ZIP-файл с именем CustomTemplate.htmtx в текущей рабочей папке.
import mlreportgen.report.*
import slreportgen.report.*
LookupTable.createTemplate('CustomTemplate','html');
Распакуйте пакет шаблонов.
unzipTemplate('CustomTemplate.htmtx');Распакованный пакет шаблонов представляет собой папку с файлами документов, таблиц стилей и изображений. В этом примере распакованная папка файлов называется «CustomTemplate» и сохраняется в текущей рабочей папке. root.css файл, который находится во вложенной папке таблиц стилей, определяет стили, которые управляют внешним видом и форматированием создаваемого отчета. docpart_templates.html в файле указываются отверстия, содержащие содержимое отчета при его создании.
От CustomTemplate откройте папку docpart_templates.html в текстовом редакторе вне MATLAB.
<html>
<head>
<meta charset="utf-8" />
<title>Document Part Templates</title>
<link rel="StyleSheet" href="./stylesheets/root.css" type="text/css" />
</head> <body>
<dplibrary>
<!-- NOTE: temporary in the template library until the -->
<! DOM supports a source without template name -->
<dptemplate name="LookupTable">
<hole id="Content">LUT_CONTENT</hole>
<hole id="LUTDataTypes">DATA_TYPE</hole>
<hole id="FootNoteContent">LUT_FOOTNOTE_CONTENT</hole>
</dptemplate>
<dptemplate name="LookupTableContent">
<hole id="TableContent">TABLECONTENT</hole>
<hole id="FigureContent">FIGURECONTENT</hole>
</dptemplate>
</dplibrary>
</body>
</html>Чтобы добавить фиксированный текст в шаблон, поместите его в нужное место и используйте стандартные теги HTML. В этом примере добавляется текст, который появляется над таблицей типов данных в созданном отчете. Только <dptemplate name="LookupTable"> показана часть файла.
<dptemplate name="LookupTable">
<hole id="Content">LUT_CONTENT</hole>
<p><scan>This lookup table block contains the following
data types:</scan></p>
<hole id="LUTDataTypes">DATA_TYPE</hole>
<hole id="FootNoteContent">LUT_FOOTNOTE_CONTENT</hole>
</dptemplate>
Сохраните файл.
В командной строке MATLAB скопируйте папку шаблона в пакет шаблонов. В этом примере пакет шаблона заносится в CustomTemplate.htmtx файл.
zipTemplate('CustomTemplate');Чтобы использовать сохраненный шаблон для отчета, укажите источник шаблона в программе генератора отчетов.
lutable = LookupTable(); lutable.TemplateSrc = 'CustomTemplate';
mlreportgen.report.BaseTable | mlreportgen.report.Figure | slreportgen.finder.BlockFinder | slreportgen.finder.BlockResult | slreportgen.finder.DiagramElementFinder | slreportgen.finder.DiagramElementResult | slreportgen.utils.isLookupTable