Когда вы генерируете отчет инспекции кода, можно включать пользовательскую информацию в отчет путем определения информации в массиве структур или в файле JSON. Simulink Code Inspector включает заданную информацию в раздел заголовка отчета как строки.
Чтобы задать пользовательскую информацию в массиве структур, используйте этот формат:
Каждая структура в массиве структур должна содержать два поля.
Значение первого поля должно быть строкой.
Значение второго поля должно быть строкой или структурой. Если значение второго поля является структурой, это может иметь несколько полей, которые содержат значения строки или массивы ячеек.
Чтобы задать пользовательскую информацию в файле JSON, используйте этот формат:
Информация должна быть задана в массиве объектов JSON.
Объекты JSON должны быть написаны в Парах ключ/значение.
Значение должно быть строкой или массивом объектов JSON с поддерживаемым форматом.
В этом примере показано, как включать пользовательскую информацию, заданную в массив структур в отчете инспекции кода.
1. Откройте модель slcidemo_dCustomData в качестве примера.
open_system('slcidemo_dCustomData');

2. Создайте объект инспекции кода для модели.
config = slci.Configuration('slcidemo_dCustomData');
3. Сгенерируйте код.
slbuild('slcidemo_dCustomData');
### Starting build procedure for: slcidemo_dCustomData ### Successful completion of build procedure for: slcidemo_dCustomData Build Summary Top model targets built: Model Action Rebuild Reason ===================================================================================================== slcidemo_dCustomData Code generated and compiled Code generation information file does not exist. 1 of 1 models built (0 models already up to date) Build duration: 0h 0m 19.584s
4. Задайте пользовательские данные в массиве структур в поддерживаемом формате.
customDataStruct = struct('FIELDNAME',[],'STATUSMAP',[] ); customDataStruct(1).FIELDNAME = 'Mathworks PSP Version'; customDataStruct(1).STATUSMAP = 'N/A'; customDataStruct(2).FIELDNAME = 'Report Git ID'; customDataStruct(2).STATUSMAP = 'fatal data, please review'; customDataStruct(3).FIELDNAME = 'Model & Library Git ID'; customDataStruct(3).STATUSMAP = struct('MODEL_NAME','slcidemo_dCustomData',... 'GIT_COMMIT_ID','please review','MODEL_STATUS','NOT DIRTY');
5. Включайте заданную информацию в отчет инспекции кода.
setCustomerReportData(config,customDataStruct);
6. Чтобы сгенерировать отчет, запустите инспекцию кода при помощи inspect функция.
inspect(config, 'DisplayResults', 'None');
7. Просмотрите сгенерированный акт осмотра кода HTML.
web(fullfile('slprj','slci','slcidemo_dCustomData_report.html'));

Раздел заголовка отчета содержит пользовательскую информацию, заданную в customDataStruct.
В этом примере показано, как включать пользовательскую информацию, заданную в файл JSON в отчете инспекции кода. В данном примере используйте slcidemo_dCustomData модель.
1. Создайте объект инспекции кода для модели.
config = slci.Configuration('slcidemo_dCustomData');
2. Сгенерируйте код.
slbuild('slcidemo_dCustomData');
### Starting build procedure for: slcidemo_dCustomData ### Generated code for 'slcidemo_dCustomData' is up to date because no structural, parameter or code replacement library changes were found. ### Successful completion of build procedure for: slcidemo_dCustomData Build Summary 0 of 1 models built (1 models already up to date) Build duration: 0h 0m 2.497s
3. Задайте пользовательские данные в файле JSON в поддерживаемом формате. В данном примере используйте dCustomData.json файл, который присутствует в текущей рабочей папке как вспомогательный файл.
type('dCustomData.json')
[
{"FIELDNAME":"Mathworks PSP Version",
"STATUSMAP":"N/A"},
{"FIELDNAME":"Model & Library Git ID",
"STATUSMAP":
[{"MODEL_NAME":"slcidemo_dCustomData",
"GIT_COMMIT_ID":"please review",
"MODEL_STATUS":"NOT DIRTY"}]
}
]
4. Включайте пользовательскую информацию, заданную в dCustomer.json файл в отчете инспекции кода.
setCustomerReportDataJson(config,'dCustomData.json');
5. Чтобы сгенерировать отчет, запустите инспекцию кода при помощи этой команды.
inspect(config,'DisplayResults', 'None');
6. Просмотрите сгенерированный акт осмотра кода HTML.
web(fullfile('slprj','slci','slcidemo_dCustomData_report.html'));

Раздел заголовка отчета содержит пользовательскую информацию, заданную в dCustomData.json файл.