Main Content

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

slreq.getCurrentImportOptions

PreImportFcn 回调中获取导入选项

自 R2022a 起

    说明

    示例

    importOptions = slreq.getCurrentImportOptions 返回当前导入的导入选项。您只能在 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 中推出