exponenta event banner

Включите пользовательскую информацию в отчет инспекции кода

Когда вы генерируете отчет инспекции кода, можно включать пользовательскую информацию в отчет путем определения информации в массиве структур или в файле 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 и включайте в отчет инспекции кода

В этом примере показано, как включать пользовательскую информацию, заданную в файл 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 файл.

Похожие темы