Configure and Generate Code Generation Report Programmatically
You can programmatically generate, open, and close an HTML code generation report at the MATLAB® command line using the coder.report.generate
, coder.report.open
, and coder.report.close
functions respectively. When you generate the report, you can configure it rather than tie the report configuration to the model configuration set. If you do not change the model after generating code, you can generate a code generation report without regenerating the code.
Configure Model
Open the model.
model = "SumModel";
open_system(model)
Clear the GenerateReport
configuration parameter programmatically. When you build the code, the report is not generated. Instead, you generate the report manually at the command line.
set_param(model,GenerateReport="off");
Build the model.
slbuild(model);
### Starting build procedure for: SumModel ### Successful completion of build procedure for: SumModel Build Summary Top model targets: Model Build Reason Status Build Duration =========================================================================================================== SumModel Information cache folder or artifacts were missing. Code generated and compiled. 0h 0m 11.957s 1 of 1 models built (0 models already up to date) Build duration: 0h 0m 12.607s
Generate Report
When you generate the report at the command line, you can use name-value arguments to configure the report without changing the model configuration set. Generate the report with GenerateTraceReport
set to 'on'
. Then open the report with the coder.report.open
command.
coder.report.generate(model,GenerateTraceReport='on');
coder.report.open(model);
The code generation report includes a Traceability Report section.
Verify that GenerateTraceReport
is off
in the model configuration set.
get_param(model,"GenerateTraceReport")
ans = 'off'
Close the code generation report.
coder.report.close();
To reopen the report programmatically, use coder.report.open
.
coder.report.open(model);
Share Report
To share the code generation report, package the code generation report files and supporting files into a ZIP file for transfer.
zip("SumModel",["slprj","SumModel_ert_rtw"]);
If your model is part of a project, you can include the code generation report when archiving the project. For more information, see Archive Projects.
Limitation
After building your model or generating the code generation report, if you modify legacy or custom code, you must rebuild your model or regenerate the report for the code generation report to include the updated legacy source files. For example, if you modify your legacy code, and then use coder.report.open
to open an existing report, the software does not check if the legacy source file is out of date compared to the generated code. The code generation report is not regenerated and the report includes the out-of-date legacy code.
To reflect changes to legacy or custom code in the code generation report, before using coder.report.open
, rebuild the model.
See Also
coder.report.generate
| coder.report.open
| coder.report.close