预订演示

请注意 : 本帮助页面不适用于最新版本的Enterprise Architect. 最新的帮助文档在这里.

前页 后页

创建搜索定义

如果要定义自己的搜索,可以使用#

编辑器、查询生成器或插件

,通过“新搜索”对话框。用户定义的搜索存储在正在使用的机器的用户应用程序数据中,而不是项目存储库中。

访问

功能区

探索 > 搜索 >模型: New search icon.

设计>元素>管理>搜索模型: New search icon.

键盘快捷键

Crtl+F : New search icon.

Ctrl+Alt+A: New search icon.

创建新的搜索定义

字段/按钮

行动

也见

名称

类型搜索的名称。

查询生成器

单击此单选按钮以通过内部搜索编辑器创建搜索。

#
编辑

单击此单选按钮以通过直接编写#

来创建您的搜索#

陈述。

(适用于高级用户。)

插件
搜索

单击此单选按钮将搜索定义为插件

的函数插件

.

插件
名称和方法

(如果您选择了“插件

”,则可用插件

搜索单选按钮)

类型:

  • 你的插件
    名称插件
  • 句号A句号)和
  • 搜索运行时调用的方法名(例如,运行);此搜索可以作为您的插件
    的一部分导出和分发插件
插件 搜索

确定

单击此按钮以创建新搜索并关闭对话框。

搜索构建器面板在工具栏下方打开。为了:

  • 一个插件
    搜索,无需进一步操作;单击Edit search.图标以关闭搜索构建器面板
  • A查询生成器搜索,面板默认为“查询生成器”选项卡,可以开始添加过滤器和构建搜索;请参阅定义和修改搜索主题
  • 一个#
    搜索,面板默认为“查询生成器”选项卡,即可开始创建#
    搜索语句,如Create #
    搜索
搜索生成器还提供了一个“ SQL便签本”选项卡,您可以使用它来创建和测试#

在将它们复制到“查询生成器”选项卡之前。

#

“ SQL便签本”上的语句不附加任何搜索,也不是从“在项目中查找”工具栏聚焦的任何操作的聚焦。

定义和修改搜索

取消

单击此按钮可中止搜索创建并关闭对话框。

创建# 搜索

你可以创建#

使用#

的语句#

通过“查询生成器”选项卡进行编辑。 #

编辑器基于智能代码编辑器,并提供了一个来自Enterprise Architect的智能感知代码库的自动完成列表。

要显示自动完成列表,请将光标放在命令后并按 Ctrl+Space。

A简单的搜索可能是从一个表中定位一个object ,给定用户在“搜索团队”字段中输入的搜索词;例如:

SELECT * FROM表WHERE Name='<Search Term>'(另见表中的<Search Term>行)

在 WHERE 语句中,您可以使用 #xxx# 宏作为string替换器,以便不同环境中的不同人可以使用相同的搜索。这些宏都区分大小写。他们包括:

描述

也见

#作者#

从“首选项”对话框“常规”页面中的“作者”字段中获取用户名,因此可以对该用户创建的对象执行定义的搜索(该值可以在“首选项”对话框中手动重新设置) .这必须在string中使用。

#分支#

获取一个或多个父包下的每个子包的ID,递归工作到最底层的子包。例如:

t_object.Package_ID in (#Branch#)

这个宏有三种排列方式:

  • in #Branch# - 获取用户选择的父包的每个子包的ID
  • 在 #Branch=<GUID># 或 #Branch=<ID># - 获取由GUID或 ID 指定的父包的每个子包的 ID
  • in #Branch=<ID>,<ID>,<ID># - 获取由其ID指定的每个父包下的每个子包的ID

#Concat <value1>, <value2>, ...#

提供连接两个或多个的方法#

术语到一个string中,与数据库类型无关。

#日期部分<字段>,<列>#

提供一种查询日期的一部分的方法,与数据库类型无关。 <field> 的值可以是以下之一:

  • 一年中的一天
  • 工作日
  • 星期
  • 日名

#CurrentElementGUID#

获取当前选定元素的 ea_guid。例如:

t_object.ea_guid=#CurrentElementGUID#

#CurrentElementID#

获取当前选定元素的 Object_ID。例如:

t_object.Object_ID=#CurrentElementID#

#DB=<数据库名称>#

DBNAME 可以是以下之一:

  • SL3
  • 火鸟
  • 喷射
  • 访问2007
  • MYSQL
  • ORACLE
  • SQLSVR
  • ASA
  • 研究生院
如果当前数据库类型与指定的 DBNAME 匹配,则仅使用两个匹配的 #DB=<DBNAME># 宏之间的代码部分;它可以用于#

的一部分#

可能需要根据当前数据库类型进行特殊处理。例如:

选择 *

来自 t_object

在哪里

#DB=Other#现在>=现在() - '搜索团队'#DB=Other#

#DB=SQLSVR#t_object.modifieddate >= getdate() - '搜索团队'#DB=SQLSVR#

#DB=ORACLE#团队>= (SYSDATE - INTERVAL 'Search team' DAY) #DB=ORACLE#

#DB=POSTGRES#t_object.modifieddate >= CURRENT_DATE - '搜索团队'#DB=POSTGRES#

#左 <field>, <count>#

返回字段中的“count”个字符,从string的开头开始。

#现在#

插入当前日期加上或减去指定的小时数或天数;默认值为天(日期格式已调整以适合使用的数据库),如下所示:

  • t_object.ModifiedDate >=#Now <搜索词>#
例如:
  • t_object.ModifiedDate >= #Now -4d# d 是天
  • t_object.ModifiedDate >= #Now -5h# h 是小时
  • t_object.ModifiedDate >= #Now +3# 默认为天
  • t_object.ModifiedDate >= #Now#

#Package#

获取当前选定包的 Package_ID。例如:

t_object.Package_ID=#Package#

#右 <field>, <count>#

返回字段中最后一个“count”个字符。

<搜索团队>

从在项目中查找视图(左起第三个字段)的“搜索团队”字段中输入的文本获取要搜索的值。因此,当主动搜索正在运行并且值被放置在该字段中时,它会起作用。它必须出现在string中,如果要与之比较的表.字段是string类型,则 s 必须用引号引起来。

#子字符串 <field>, <start>#

返回从 'start' 字符开始的剩余字段(从 1 开始)

#子字符串 <field>, <start>, <count>#

返回从字符“start”开始的字段的“count”个字符(从 1 开始)。

#UserName#

获取登录版本控制的人的姓名。它必须在string中使用。此示例来自内置搜索“我的 Checked输出包”。

t_package.PackageFlags LIKE '#WC#VCCFG=#WC#CheckedOutTo=#UserName##WC#'

#厕所#

为当前数据库获取适当的通配符,因此可以在不同数据库上的模型上执行搜索。它必须在string中使用。例如:

t_object.名称LIKE '#WC#Test#WC#'

GUID和类型

对于您使用自定义#

的所有函数#

声明(包括 Document Reporting 和模型视图) 该声明必须返回找到的object的GUID和类型,以便系统可以在浏览器窗口中搜索选定的项目。 SELECT语句区分大小写,应按如下所示键入:

  • SELECT ea_guid 作为 CLASSGUID,Object_Type 作为 CLASSTYPE,名称来自 t_object
你可以扩展你的#

使用别名 CLASSGUID 和 CLASSTYPE 进行搜索,以便您可以显示“属性”对话框、标记值和元素、连接器、属性或操作的图标,以及在浏览器窗口中选择它们。使用这些别名字段的一些简单示例是:

  • SELECT ea_guid 作为 CLASSGUID,Object_Type 作为 CLASSTYPE,名称来自 t_object
  • SELECT ea_guid 作为 CLASSGUID,“操作”作为 CLASSTYPE,名称来自 t_operation
  • SELECT ea_guid 作为 CLASSGUID,“属性”作为 CLASSTYPE,名称来自 t_attribute
对连接器和图表的查询都可以返回与object类型的默认关联匹配的类型。对于这些库表,您还应该返回一个 CLASSTABLE 字段,以便将它们与相似的object类型区分开来。
  • SELECT ea_guid 作为 CLASSGUID,Connector_Type 作为 CLASSTYPE,'t_connector' 作为 CLASSTABLE,名称来自 t_connector
  • SELECT ea_guid 作为 CLASSGUID,Diagram_Type 作为 CLASSTYPE,'t_diagram' 作为 CLASSTABLE,名称来自 t_diagram
您可以让您的搜索用户将元素从搜索结果拖放到图表中,方法是在您的搜索SELECT语句中包含以下元素之一:
  • (t_object.Object_ID 和 t_object.Object_Type)或
  • t_object。 ea_guid 作为 CLASSGUID
当你定义了SELECT语句后,点击“查询生成器”工具栏中的保存按钮来保存这个搜索;然后可以从“搜索”下拉列表中进行搜索。

SQL便签本工具栏按钮

“ SQL便签本”选项卡通过其工具栏提供了少量功能。

图标

描述

Start test.

单击此图标可测试您定义的搜索。结果显示在“在项目中查找”视图的主面板中。

单击此图标以保存当前#

搜索作为新搜索。 A提示。

当您点击确定按钮时,系统切换到“查询生成器”选项卡,复制#

声明到选项卡,并将搜索名称放入“搜索”字段。

单击此图标可清除当前搜索定义的“ SQL便签本”。

注记

  • 当您创建自定义#
    在“查询生成器”选项卡上搜索,工具栏中仅有的两个图标是保存图标和删除过滤器图标Remove filter button. ; Remove过滤器图标实际上是一个删除图标,用于删除搜索内容( #
    陈述)

了解更多