如何在Capella的M2DOC模板中访问selection变量生成文档?
如何在M2DOC模板中访问
selection变量? selection并非M2DOC模板的默认内置变量,需要通过变量配置步骤手动声明并绑定Capella的选中元素服务,具体操作如下:
- 打开Word模板的M2DOC工具栏,点击「Variables」按钮进入变量配置界面
- 添加新变量,设置以下参数:
- 变量名称:
selection - 变量类型:选择
LogicalComponent(若需兼容更多元素类型,可选择上层的Component或EObject) - 勾选「Is derived」选项,在派生表达式输入框中填写
aql:capellaSelection()
注:
capellaSelection()是M2DOC为Capella定制的内置服务,用于获取当前Capella界面中选中的元素 - 变量名称:
完成配置并保存后,即可在模板中正常使用{ m:selection.name }、{ m:selection.description }等表达式访问选中元素的属性。
额外注意事项
- 若选中多个元素,
capellaSelection()会返回元素集合,可通过循环遍历处理:{ m:for comp in selection } - 组件名称:{ m:comp.name } { m:endfor } - 建议添加非空判断避免无选中元素时的报错:
{ m:if selection->notEmpty() } 选中组件详情:{ m:selection.name } { m:else } 未选中任何Logical Component元素 { m:endif } - 确保模板使用Capella专属的M2DOC配置,而非通用EMF配置,否则
capellaSelection()服务无法被识别
内容的提问来源于stack exchange,提问作者cowen
相关产品推荐
相关产品推荐

