Generating duplicate IDs when creating requirements tracking links

조회 수: 4 (최근 30일)
JinWook Park
JinWook Park 2024년 12월 18일
댓글: Kanishk 2024년 12월 20일
I created a tracking link for the SwRS ID and SwAD ID.
Then I created a tracking link with the same IDs again.
In my opinion, tracking links should not be created with the same ID.
However, the links are created.
Note: “ Warning: Link to DCBC_SWAD_ID_Req.slreqx:36 already exists”
Is there any way to prevent this?

채택된 답변

Kanishk
Kanishk 2024년 12월 18일
The link created by 'slreq.createLink' is for a requirement having a description. Multiple requirements can be satisfied by a single destination file for a given source file, Hence 'slreq.createLink' creates a link but with a new SID.
You want to prevent multiple links between same source and destination files.
To prevent this behaviour you can check for if a link already exists between a source and destination file and create a link if it is not present. Here is a simple MATLAB function for the same.
function linkExist = checkIfLinkExists(src, dest)
inwardLinks = slreq.inLinks(dest);
linkExist = 0;
for i=1:size(inwardLinks,2)
if strcmp(source(inwardLinks(i)).artifact, which(src))
linkExist = 1;
return
end
end
end
Please go through this official MATLAB documentation of 'slreq.inLinks' to learn more.
doc slreq.inLinks
You can also access the workdlow of creating and link requirements from this documention.
web(fullfile(docroot, 'slrequirements/gs/author-requirements-for-a-matlab-function.html'))
  댓글 수: 3
JinWook Park
JinWook Park 2024년 12월 20일
Thanks, I solved it well with your help.
function linkExist = checkIfLinkExists(srcReq, dest, srcid, destid)
inwardLinks = slreq.inLinks(dest);
linkExist = 0;
for i=1:size(inwardLinks,2)
if strcmp(destination(inwardLinks(i)).id,destid)
GetSrcReq = find(srcReq,'Type','Requirement','SID',source(inwardLinks(i)).id)
if strcmp(GetSrcReq.Id,srcid)
linkExist = 1;
return
end
end
end
end

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Startup and Shutdown에 대해 자세히 알아보기

제품


릴리스

R2022b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by