报告DocBlock块
这个例子展示了如何在由report API生成的Microsoft®Word报告中包含Simulink DocBlock块的内容。例子模型,slreportgen_demo_docblock
,只包含DocBlock块,每种DocBlock文档类型对应一个块:
RTF
超文本标记语言
文本
在生成的报告中,DocBlock块的内容如下所示:
导入API包,以便您可以通过API类的非限定名称引用它们,也就是说,不使用它们所在的类包的名称。
进口mlreportgen.report。*进口slreportgen.report。*进口slreportgen.finder。*进口mlreportgen.dom。*
为这个示例加载模型。
模型=“slreportgen_demo_docblock”;load_system(模型);
创建一个容器来保存报表内容。要避免由于模型只包含虚拟块而导致的编译错误,请设置CompileModelBeforeReporting
属性的报表对象假
.
rpt = slreportgen.report.Report(“ModelDoc”,“多克斯”);rpt。compilemodelbeforereports = false;
添加一个标题页和目录。
add (rpt TitlePage (“标题”sprintf ('% 1 ! s模型文档'模型)));add (rpt, TableOfContents);
查找并循环遍历模型中的所有系统。
finder = SystemDiagramFinder(模型);为System = find(finder)
为每个系统创建一个章节。在章节标题中包含系统名称。使用该章节报告系统的DocBlock内容。
ch =章节(“标题”sprintf (“系统% s”system.Name));
查找当前系统中的所有DocBlock块。每个结果返回找到的DocBlock的DocBlock报告器。的添加
方法调用DocBlock报告器。
docBlockFinder = BlockFinder(系统);docBlockFinder。属性= {“MaskType”,“DocBlock”} ';results = find(docBlockFinder);如果添加(ch, results);其他的add (ch,“这个系统没有文档。”);结束add (rpt, ch)结束
关闭并查看报表。
关闭(rpt);close_system(模型);rptview (rpt);
另请参阅
slreportgen.report.DocBlock
|slreportgen.finder.BlockFinder
|slreportgen.finder.BlockResult
|slreportgen.finder.SystemDiagramFinder
|DocBlock