- 入门指南
- 在开始之前
- 如何
- 通知
- 使用 VB 表达式
- 设计应用程序
- 事件和规则
- 在应用程序中利用 RPA
- 在应用程序中利用实体
- 在应用程序中利用队列
- 应用程序生命周期管理 (ALM)
- 基本故障排除指南
查询生成器允许您筛选 Data Service 实体中的数据,同时遵循预定义的语法。
Fetch 、 FetchOne 、 GetChoiceSet和GetChoiceSetValue函数是异步函数,并且不支持链接。
要在控件中显示实体记录,请使用应用程序变量和“设置值”规则。
您还可以使用查询生成器将控件数据源绑定到实体。有关实际示例,请参阅使用 Fetch 函数。
使用查询生成器
查询生成器使用Fetch()函数对 Data Service 实体进行评估和排序。
作为先决条件,您必须将现有 Data Service 实体引用到应用程序中。要使用查询生成器,请继续执行以下步骤:
-
对于所需的控件,选择“已启用 VB”属性。您可以通过“常规”选项卡中的“VB 数据源”字段来识别这些属性类型。
-
选择“查询生成器” 。系统将打开“查询生成器”窗口。
-
选择要为其构建查询的实体。
-
在“条件”选项卡上,单击:
选项 描述 添加条件 添加单个条件 添加组 对多个条件进行分组 添加两个或更多条件时,查询将根据 AND 或 OR 运算符评估并返回数据:
- AND - 返回满足所有条件的数据
- OR - 返回满足任意条件的数据
-
选择要从中查询数据的实体字段。
-
选择评估运算符。
-
输入条件的值。值的类型必须与字段类型相同。例如,对“文本”字段使用字符串,对“数字”字段使用整数。
-
在“其他设置”选项卡上,您可以为查询的数据配置排序规则:
选项 描述 按字段排序 按选定字段对查询的数据进行排序 升序排列 如果为 True,则按升序对查询的数据进行排序。 -
单击“保存”以保存您的更改。
Fetch 函数
查询生成器使用Fetch()函数来检索和操作实体数据。 Fetch()函数是异步函数,并且不支持链接。
Fetch() 函数具有以下参数:
| 参数 | 描述 |
|---|---|
FilterGroup | Data Service 中的一组筛选器 |
PaginationProps | 指定页面大小和要跳过的记录数。 |
SortOption[] sortOptions | 指定要排序的列和排序顺序。 |
string[] selectedFields | 指定应返回的实体字段。 |
ExpansionFieldOption[] expansionFieldOptions | 指定应展开并返回关系实体的列。 Apps 允许一级扩展,这意味着如果您有关系字段,则表达式需要一级属性才可访问。 查询生成器会自动添加这些属性,并且它们对于非系统实体是必需项。 |
The FetchOne() function
当 Fetch() 返回 ListSource<T> 时,其类型与列表控件相同,而 FetchOne() 返回类型为 T 的单个记录。
与Fetch()函数一样, FetchOne()函数是异步函数,并且不支持链接。
对于以下场景,您需要手动修改 Fetch() 函数,以获得更多自定义结果:
简单提取
获取实体的记录数,例如 SystemUsers。
Fetch(of SystemUsers)()
Fetch(of SystemUsers)()
使用筛选条件获取
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10))
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10))
使用筛选条件和排序顺序(升序)获取
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), new SortOption(){addSortOption("Date")})
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), new SortOption(){addSortOption("Date")})
使用筛选条件和排序顺序(降序)获取
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), new SortOption(){addSortOption("Date", true)})
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), new SortOption(){addSortOption("Date", true)})
使用静态分页属性获取
Fetch(of SystemUsers)(Nothing, new PaginationProps(0, 100))
Fetch(of SystemUsers)(Nothing, new PaginationProps(0, 100))
使用控件绑定的静态分页属性获取
例如,对于“编辑网格”控件:
Fetch(of SystemUsers)(Nothing, new PaginationProps(MainPage.EditableGrid.PageStart, MainPage.EditableGrid.PageLimit))
Fetch(of SystemUsers)(Nothing, new PaginationProps(MainPage.EditableGrid.PageStart, MainPage.EditableGrid.PageLimit))
使用投影获取
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), Nothing, new string(){"Name"})
Fetch(of SystemUsers)(createFilterGroup(new QueryFilter(){addFilter("Name", "=", "You")}), new PaginationProps(0, 10), Nothing, new string(){"Name"})