如何用DXL获取DOORS中当前选中模块的完整路径?
解决方案
错误原因分析
- 字符串拼接语法错误:DXL中字符串与变量/函数返回值拼接必须使用
+运算符,直接将函数调用嵌入字符串的写法不符合语法规范,导致incorrectly concatenated tokens错误。 - 函数名错误:DOORS DXL中不存在
fullPath函数,获取模块完整路径的正确函数是fullName(Module)。
正确代码实现
以下代码可直接获取并打印当前选中模块的完整路径,同时增加了空值判断避免异常:
// 获取当前激活的模块(即用户选中的模块) Module selectedMod = current() // 检查是否选中了有效模块 if (selectedMod != null) { // 正确拼接字符串并打印完整路径 print "当前模块完整路径:" + fullName(selectedMod) + "\n" } else { print "未选中任何模块,请先选中一个模块再执行脚本!\n" }
代码说明
current():返回当前处于激活状态的模块,也就是用户选中的目标模块。fullName(selectedMod):返回模块的完整层级路径,包含所属项目、文件夹及模块名称。- 空值判断:避免用户未选中任何模块时触发空指针异常,提升脚本健壮性。
内容的提问来源于stack exchange,提问作者NickHalden
相关产品推荐
相关产品推荐

