如何在Sparx Enterprise Architect中找到所有签出的软件包?

时间:2014-06-26 15:28:14

标签: sql enterprise-architect

类似于this question,除了我想找到所有签出的包(理想情况下列出检查出来的人),而不仅仅是我自己的。

假设必须有一种方法可以通过修改EA Search Builder从链接问题的答案提供的SQL来做到这一点 - 只是无法弄清楚如何......

1 个答案:

答案 0 :(得分:1)

这是我目前的尝试改编自内置的“我的签出包”搜索查询:

SELECT 
t_object.ea_guid AS CLASSGUID, t_object.Object_Type AS CLASSTYPE,t_object.Name AS Object, t_object.Object_Type AS [Type], t_object.Stereotype, t_object.Scope,t_object.Status, t_object.Phase, t_object.CreatedDate, t_object.ModifiedDate, MID(t_package.PackageFlags, INSTR(t_package.PackageFlags, 'CheckedOutTo') + 13, INSTR(MID(t_package.PackageFlags, INSTR(t_package.PackageFlags, 'CheckedOutTo') + 13), ';') - 1) AS CheckedOutTo
FROM
t_object, t_package
WHERE
t_object.Object_Type='Package'
AND
#DB=Other#t_object.PDATA1 = cstr(t_package.Package_ID)#DB=Other#
#DB=ORACLE#t_object.PDATA1 = to_char(t_package.Package_ID) #DB=ORACLE#
#DB=OPENEDGE#cast(t_object.PDATA1 as char(25)) = cast(t_package.Package_ID as char(25))#DB=OPENEDGE#
#DB=ASA#t_object.PDATA1 = cast(t_package.Package_ID as char)#DB=ASA#
#DB=SQLSVR#t_object.PDATA1 = cast(t_package.Package_ID as char(25))#DB=SQLSVR#
#DB=MYSQL#t_object.PDATA1 = t_package.Package_ID#DB=MYSQL#
#DB=POSTGRES#t_package.Package_ID = t_object.PDATA1::text::int#DB=POSTGRES#
AND
t_package.PackageFlags LIKE '*CheckedOutTo=*'
ORDER BY t_object.Name

散列位是宏字符串替换器,记录为here