查询#
概述#
查询页面支持查询维护。查询是指向系统查询给定实体类型,以返回符合特定条件的记录。查询也可以用作看板的小组件。
浏览查询#
单击查询页面将显示查询文件夹结构。单击每个文件夹将在右侧的表格中显示该文件夹的内容。
左侧的文件夹结构允许用户:
- 创建新文件夹
- 编辑文件夹
- 删除文件夹
Info
私密查询只对创建查询的用户或属于管理员特殊组的用户可见。
创建查询#
Query.Create
Query.ManagePrivate
私密查询也会显示在列表中,但带有特殊标记。请注意私密查询的以下行为:
- 只对创建查询的用户或属于管理员特殊组的用户可见。
- 只有创建查询的用户和属于管理员特殊组的用户才能编辑此类查询。
- 只有创建查询的用户和属于管理员特殊组的用户才能将其可见性更改为公开可见。
请注意公开查询的以下行为:
- 只有创建查询的用户才能将可见性从公开更改为私密。
要创建新查询,必须按创建按钮,然后执行以下步骤。
步骤1:详细信息
- 输入名称和描述(可选)。请注意,查询名称在文件夹中必须唯一。
- 选择应在其中创建查询的文件夹。
- 选择查询的实体类型。
- 选择这是否将是所选实体类型的默认查询。
- 选择结果数量最大值。
- 选择这将是公开查询还是私密查询。
- (可选)输入备注。
- 按创建完成操作。
使用查询#
创建新查询后或打开现有查询时,将打开查询页面。此页面主要分为两部分:
- 筛选器 - 包含查询的搜索属性。
- 结果 - 显示查询返回的结果。
为了选择要应用于查询的筛选器,请执行以下步骤:
- 展开“筛选器”部分。
- 单击“添加筛选器”按钮。这将打开“搜索实体属性”窗口。
- 在“搜索实体”属性中,选择所需属性,然后单击“确认”。
将所需属性添加到筛选器后,可以对每个属性执行以下操作:
- 选择用于连接表达式的逻辑运算符
-
选择要应用的筛选器类型。当前支持的筛选器包括:
-
等于:查找完全匹配的记录
- 不等于:返回不完全匹配的记录
- 大于
- 大于或等于
- 小于或等于
- 相似:查找匹配搜索字符串的记录,这些记录可以使用通配符(“%”表示任意序列或字符,_表示单个字符)
- 不相似:查找与搜索字符串不匹配的记录,这些记录可以使用通配符(“%”表示任意序列或字符,_表示单个字符)
- 包含:查找包含特定字符串的记录
- 开头为:查找以特定字符串开头的记录
- 包含于(仅适用于对象):查找包含在用户定义对象集中的记录
- 不包含于(仅适用于对象):查找不包含在用户定义对象集中的记录
Info
字符串比较时不区分大小写。
- 通过激活参数属性,选择使用参数。通过选择使用参数,还可以将其标记为可选。
可以在查询中使用特殊的动态令牌,例如:
- @今天,代表当前日期
- @现在,代表当前日期和时间
对于“今天”和“现在”,可以使用简单的“+”或“-”计算来加减时间:
- “@今天 + 1d”代表当前日期加一天
- “@今天 -1M”代表当前日期减去一个月
- “@今天 - 1y”代表当前日期减去一年
- “@现在 - 1m”代表当前日期和时间减去一分钟
- “@现在 + 10s”代表当前日期和时间加10秒
某些属性类型还提供特殊令牌:
- @雇员,代表当前雇员
- @用户,代表当前用户
- @用户角色,表示当前用户的所有角色(只能用于角色类型的属性)
完成此操作后,可以通过单击执行按钮来执行查询。
Info
保存后,查询将在其应用的实体类型的业务数据中以及指定路径上可用。“查询”选项下会显示不同的查询
在结果部分中,还可以按下列选项按钮来选择要显示的列。在这里,可以选择要包括在输出表中的属性,以及它们的排列顺序、如何在“设置”选项卡中显示这些属性,以及“联接”选项卡中可用的不同类型的联接。这些是:
- 内部联接:仅显示源表和目标表中都存在的记录
- 外部联接:显示至少存在于源或目标中的所有记录
- 右联接:显示目标(右侧)中存在的所有记录,即使这些记录在源中不存在
- 左联接:显示源(左侧)中存在的所有记录,即使这些记录在目标中不存在
请注意,当您选择一个与另一个对象有关系的列时(例如LastProcessedResourceName在物料中与资源相关),GUI将允许您选择可以在目标对象中看到的列。
查询参数#
可以在查询中使用参数。为此,需要将筛选器值标记为参数。在尝试执行带有参数的查询时,系统将提示用户输入参数值。如果该参数被标记为可选,用户可以选择忽略该参数,在这种情况下,筛选器表达式将从查询执行中删除。
查询筛选器#
查询可以包含一个或多个筛选器,以限制所选数据。系统还支持嵌套筛选器组。各筛选器(或筛选器组)需要通过AND或OR逻辑运算符连接。
生成查询代码#
可以在C#或TypeScript中生成查询代码。此选项将查询代码转换为可以使用的C#或TypeScript代码,可用于以编程方式实现要在客户端代码中使用的查询。












