All,
I have reporting this in the Reports and Macros area to better target the appropriate audience for tghe problem I am seeing in ARIS v9.6 scripting.
I am seeing a difference in relationship data returned from using a script to when using the ARIS GUI on a particular function object occurrence in ARIS Architect v9.6.
When scripting I obtain all function occurrences in my model, then for every occurrence I get the connection associated with the function. Then for each connection I print the ActiveType and Name.
My script seems to be showing reference names to the same function (object) name, where the ARIS gui (selecting Properties^Relationships) seems to show what I intend.
Assuming the ARIS GUI function above is correct, my conclusion is that either my scripting is defective, or the programming API is possibly broken in ARIS?
Can someone verify my finding with any model that contains function relationships or use my attached test case?
I am including the script I am using, the function tree model .xml, my script output (Report20.htm), a screen shot of the function tree, and a screenshot of the level 1 and level 2 selections using ARIS menu Properties^Relationships that do NOT match the Report20.htm. Everything required to reproduce this is attached. :)
Thanks in advance for any assistance.
MR
Franscois,
Yes, I did try PassiveType, that changed every relationship sense.
I looked a bit further and I discovered why my results seemed strange!
The conections need to be interpreted by the programmer as pointing "up" or "down" in a heirarchy (or whatever relationships you use). To do this I had to test whether the function being searched for connections has the same name as the target occurence of connection (getTarget()). If this is true, then I have a "reverse case" and must point "up" in the heirarchy in stead of "down".
To resolve this reverse case I call getSource() instead of target AND get the PassiveType() instead of active type for cases where the names are ==. Everything works out now.
This would have beed easier if connections were returned with a sense, or at least described how they work; maybe it is described somplace, but I did not find it.
I hope this made sense.
MR