I need to develop a dxl script that will clear suspect links. I am unfamiliar with the inner workings of suspect links. I can run several suspect link scripts from a module in DOORS found on the tool bar "Analysis->Suspect Link->", but I do not know how the script works. When I look at the source code, found in "$DOORSHOME\lib\dxl\standard\suspect\...)", it is either encrypted or compiled. How do these scripts identify whether a link is suspect? I am assuming that it checks the date the link was created and compare that with the "Last Modified" attribute, but am unsure. I would appreciate all the details that you could give me concerning how the suspect link scripts work. |
Re: Suspect Links
I figured this out exactly once (but don't recall exactly the details); there is no magic and there are no basic 'DXL' command dealing with Suspect Links.
void ClearOutgoingSuspicions(Object obj)
{
Link lnk
for lnk in obj ->"*" do
{ string Previous = lnk."Suspicion Cleared Forwards" ""
print "Previous Suspicion date = " Previous "\n"
lnk."Suspicion Cleared Forwards" = today()
}
}
|
Re: Suspect Links llandale - Wed Aug 12 13:46:38 EDT 2009
I figured this out exactly once (but don't recall exactly the details); there is no magic and there are no basic 'DXL' command dealing with Suspect Links.
void ClearOutgoingSuspicions(Object obj)
{
Link lnk
for lnk in obj ->"*" do
{ string Previous = lnk."Suspicion Cleared Forwards" ""
print "Previous Suspicion date = " Previous "\n"
lnk."Suspicion Cleared Forwards" = today()
}
}
lnk."Suspicion Cleared Backward" = dateAndTime( today() ) so that the current time is also placed in the attribute. This also leads me to my next question. When you right click on an object and click "Clear Suspicion..." a GUI appears that allows the user to determine which suspect link to clear. When you click on the "Details.." button for a suspect link, another GUI will appear that will allow the user to see each modification made to the attribute(s) of that object. You can view the changes as a "redlining". My question is: Where does the module store the original and intermediate changes of the attribute to allow the user to see the redlining changes? |
Re: Suspect Links SystemAdmin - Mon Aug 17 15:50:17 EDT 2009 My guess is that it searches through History finding the one after the previous Cleared Suspicion date, and use the hst.oldRawValue to determine what it must have looked like on that date. You could probably verify that by modifying an obj-attr value of an attribute that doesn't Generate History but does indeed Affect Change Dates. My guess is that the link will be suspicious but you won't get any red-lining.
|