Main Content

本页采用了机器翻译。点击此处可查看英文原文。

getPreImportFcn

类: slreq.Reference
命名空间: slreq

获取已注册的PreImportFcn回调脚本

自 R2022a 起

语法

callback = getPreImportFcn(topRef)

说明

callback = getPreImportFcn(topRef) 返回导入节点 topRefPreImportFcn 回调的内容。

输入参数

全部展开

导入节点,指定为 slreq.Reference 对象。

输出参量

全部展开

导入节点的 PreImportFcn 回调的内容,以字符向量形式返回。

示例

全部展开

此示例显示如何将脚本指定为导入节点的 PreImportFcn 回调。您可以获取导入节点的 PreImportFcn 回调的内容,并在导入需求后将不同的脚本注册为 PreImportFcn 回调。

导入需求

使用slreq.import将 ReqIF™ 文件 mySpec.reqif 导入 Requirements Toolbox™。将导入的需求集myReqSet,并将脚本myPreImportScript注册为导入时使用的PreImportFcn回调。返回需求集的句柄。

[~,~,rs] = slreq.import("mySpec.reqif",ReqSet="myReqSet",preImportFcn="myPreImportScript");

脚本myPreImportScript使用slreq.getCurrentImportOptions来获取导入选项,然后指定导入期间要使用的属性映射文件。

type myPreImportScript.m
importOptions = slreq.getCurrentImportOptions;
importOptions.MappingFile = "myMappingFile.xml";

映射文件myMappingFile.xml使用通用映射。

获取将 Index 设置为 1 的需求的自定义 ID。

req1 = find(rs,Index="1");
cID = req1.CustomId
cID =

  0x0 empty char array

通用映射不会将 ReqIF 属性 ID 映射到需求工具箱属性 Custom ID。相反,ID 作为自定义属性导入。获取 Requirement 1ID 自定义属性的值。

cID = getAttribute(req1,"ID")
cID = 
'A1'

获取并设置 PreImportFcn 回调脚本

获取导入节点的句柄,然后将脚本myPreImportScrip2注册为PreImportFcn回调。确认注册的回调已经改变。

topRef = children(rs);
setPreImportFcn(topRef,"myPreImportScript2")
newCallback = getPreImportFcn(topRef)
newCallback = 
'myPreImportScript2'

脚本myPreImportScript2使用slreq.getCurrentImportOptions来获取导入选项,然后指定导入期间要使用的属性映射文件。

type myPreImportScript2.m
importOptions = slreq.getCurrentImportOptions;
importOptions.MappingFile = "myMappingFile2.xml";

映射文件 myMappingFile2.xml 将 ReqIF™ 文件中的这些属性映射到 Requirements Toolbox™ 中的这些属性:

  • ReqSumSummary

  • DescDescription

  • IDCustom ID

更新需求集。当您更新需求集时,PreImportFcn回调脚本也会执行。

updateReferences(rs,topRef);

获取将 Index 设置为 1 的需求的自定义 ID。

req1 = find(rs,Index="1");
cID = req1.CustomId
cID = 
'A1'

版本历史记录

在 R2022a 中推出