前页 | 后页 |
创建搜索定义
如果要定义自己的搜索,可以使用#
编辑器、查询生成器或插件
,通过“新搜索”对话框。用户定义的搜索存储在正在使用的机器的用户应用程序数据中,而不是项目存储库中。
访问
功能区 |
探索 > 搜索 >模型: 或 设计>元素>管理>搜索模型: |
键盘快捷键 |
Crtl+F : 或 Ctrl+Alt+A: |
创建新的搜索定义
字段/按钮 |
行动 |
也见 |
---|---|---|
名称 |
类型搜索的名称。 |
|
查询生成器 |
单击此单选按钮以通过内部搜索编辑器创建搜索。 |
|
# |
单击此单选按钮以通过直接编写# 来创建您的搜索# 陈述。 (适用于高级用户。) |
|
插件 |
单击此单选按钮将搜索定义为插件 的函数插件 . |
|
插件 |
(如果您选择了“插件 ”,则可用插件 搜索单选按钮) 类型:
|
插件 搜索 |
确定 |
单击此按钮以创建新搜索并关闭对话框。 搜索构建器面板在工具栏下方打开。为了:
在将它们复制到“查询生成器”选项卡之前。 # “ 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#) 这个宏有三种排列方式:
|
|
#Concat <value1>, <value2>, ...# |
提供连接两个或多个的方法# 术语到一个string中,与数据库类型无关。 |
|
#日期部分<字段>,<列># |
提供一种查询日期的一部分的方法,与数据库类型无关。 <field> 的值可以是以下之一:
|
|
#CurrentElementGUID# |
获取当前选定元素的 ea_guid。例如: t_object.ea_guid=#CurrentElementGUID# |
|
#CurrentElementID# |
获取当前选定元素的 Object_ID。例如: t_object.Object_ID=#CurrentElementID# |
|
#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的开头开始。 |
|
#现在# |
插入当前日期加上或减去指定的小时数或天数;默认值为天(日期格式已调整以适合使用的数据库),如下所示:
|
|
#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
- SELECT ea_guid 作为 CLASSGUID,Connector_Type 作为 CLASSTYPE,'t_connector' 作为 CLASSTABLE,名称来自 t_connector
- SELECT ea_guid 作为 CLASSGUID,Diagram_Type 作为 CLASSTYPE,'t_diagram' 作为 CLASSTABLE,名称来自 t_diagram
- (t_object.Object_ID 和 t_object.Object_Type)或
- t_object。 ea_guid 作为 CLASSGUID
SQL便签本工具栏按钮
“ SQL便签本”选项卡通过其工具栏提供了少量功能。
图标 |
描述 |
---|---|
单击此图标可测试您定义的搜索。结果显示在“在项目中查找”视图的主面板中。 |
|
单击此图标以保存当前# 搜索作为新搜索。 A提示。 当您点击确定按钮时,系统切换到“查询生成器”选项卡,复制# 声明到选项卡,并将搜索名称放入“搜索”字段。 |
|
单击此图标可清除当前搜索定义的“ SQL便签本”。 |
注记
- 当您创建自定义#
在“查询生成器”选项卡上搜索,工具栏中仅有的两个图标是保存图标和删除过滤器图标 ; Remove过滤器图标实际上是一个删除图标,用于删除搜索内容( #
陈述)