概念:WQL 格式的相关业务对象
您可以在“”中访问相关业务对象 (RBO) 中的字段。
SELECT
子句(使用大括号) {}
注释您还可以使用 RBO 字段筛选查询结果
WHERE ON
子句签入 WHERE ON
子句,省略大括号 {}
RBO 字段的表示法。现在,来自以下端点的响应会返回每个字段的相关业务对象:
- GET /dataSources/{ID}/fields
- GET /dataSources/{ID}/dataSourceFilters/{subresourceID}
语法
SELECTfield1{relatedBusinessObjectField1, relatedBusinessObjectField2} FROMdataSource
示例:
SELECT dependents{age} FROM allWorkers
您可以从 RBO 字段中引用单个字段或多个以逗号分隔的字段。
您还可以为 RBO 字段指定自定义别名。示例:
dependents{age} as DependentsAge
示例
从“1 组中的
被抚养人
RBO”中返回员工和多个字段:SELECT worker, dependents{legalName_FirstName, legalName_LastName, age} FROM allWorkers
从
被抚养人
RBO 中,将员工和多个字段作为单独的组返回:SELECT worker, dependents{legalName_FirstName} as FirstName, dependents{legalName_LastName} as LastName, dependents{age} as Age FROM allWorkers
从同一个查询字段分别调用多个字段时,请使用唯一的字段别名。
限制
当 RBO 的查询字段为多实例时,Workday 仅支持最多为 RBO 字段包含 500 个值。示例:您将一名员工指定为主要业务对象,并将员工的被抚养人指定为 RBO。当该查询为员工返回超过 500 个被抚养人时,WQL 会显示错误。请考虑改用基于“Dependents”数据源的数据源。
您无法从重设对象业务对象中访问以下字段:
- 在使用表达式的查询中,GROUP BY子句
- 超出SELECT与WHERE ON子句
使用第三方 API 客户端时,您可能需要先对查询进行编码。某些第三方客户端无法处理大括号
{}
注释编码前的查询示例:
SELECT worker, dependents{legalName_FirstName} as FirstName FROM allWorkers
编码后的查询示例:
SELECT%20worker%2C%20dependents%7BlegalName_FirstName%7D%20as%20FirstName%20FROM%20allWorkers