I wrote a search using SQL accessing EA repository database to find any broken connectors/relationships under a package (per below). Would like to know what additional result set items need to be included so that when double-clicking a row in the result set, a diagram containing the connector would be opened:
--find broken or mismatching relationships (due to source or target key dropped, renamed or mismatching between key column(s) data type or counts):
select [highlight]c.ea_guid as CLASSGUID, 'Connector' as CLASSTYPE[/highlight], c.sourcerole as "FromConstrName",o1.name as "FromTable", p1.name as "FromPkg", c.destrole as "ToConstrName", o2.name as "ToTable", p2.name as "ToPkg"
from (((t_package p1 inner join t_object o1 on o1.package_id=p1.package_id) left join t_package p12 on p12.package_id=p1.parent_id) left join t_package p13 on p13.package_id=p12.parent_id)
inner join t_connector c on o1.object_id=c.start_object_id inner join t_operation op on op.name=c.sourcerole
inner join t_object o2 on o2.object_id=c.end_object_id inner join t_package p2 on o2.package_id=p2.package_id left join t_package p22 on p22.package_id=p2.parent_id left join t_package p23 on p13.package_id=p22.parent_id
where o1.stereotype='table' and o2.stereotype='table' and (p12.package_id=8433 or p13.package_id=8433) and (p22.package_id=8433 or p23.package_id=8433)
and (c.sourcerole+','+c.destrole) not in (select cp1.name+','+cp2.name from
(select tt1.name, stuff((SELECT ',' + to1.type FROM t_operationparams as to1 where to1.operationid=tto1.operationid order by to1.pos FOR XML PATH('')),1,1,'') as frmKeyColType
from t_operationparams as tto1, t_operation as tt1 where tto1.operationid=tt1.operationid and tt1.name=c.sourcerole and tt1.object_id=c.start_object_id) cp1,
(select tt2.name, stuff((SELECT ',' + to2.type FROM t_operationparams as to2 where to2.operationid=tto2.operationid order by to2.pos FOR XML PATH('')),1,1,'') as toKeyColType
from t_operationparams as tto2, t_operation as tt2 where tto2.operationid=tt2.operationid and tt2.name=c.destrole and tt2.object_id=c.end_object_id) cp2
where cp1.frmKeyColType=cp2.toKeyColType);
Is this possible?