fetchWithParams Function
查询未在 Mustache 变量中返回的数据,并将结果返回到指定的回调方法。
所需的 Edition
| 适用于:Lightning Experience |
| 适用于:具有Life Sciences Cloud、Life Sciences Cloud for Customer Engagement加载项许可证和Life Sciences Customer Engagement受管软件包的Enterprise 和 Unlimited Edition。 |
您可以查询用户、客户、记录类型、 Territory2、UserTerritory2Association、生命科学对象和自定义对象。查询记录:
- 用户必须对查询的对象和字段拥有读取权限。
- 每个对象必须存在活动对象元数据缓存配置,并且必须同步到 Life Sciences Cloud 移动应用程序。
语法
PresentationPlayer.fetchWithParams(query, params, callbackMethod)参数
| 参数 | 说明 |
|---|---|
query |
SOQL 查询作为字符串,或用于后续提取的查询定位器值。您可以在查询中包含 Mustache 变量。 在
WHERE 子句支持:
|
params |
可选。指定批次大小的能力。 在 每个呼叫最多可以返回 100 个记录。 |
callbackMethod |
接收查询结果的 JavaScript 方法的名称。 |
返回
此函数返回 JSON 结果。
| 字段名 | 类型 | 描述 |
|---|---|---|
records |
数组<Object> | 结果数据。 |
done |
布尔值 | 表示是否查询(true)或未查询(false)。 |
totalSize |
整型 | 查询中处理的记录总数。 |
queryLocator |
字符串 | 可用于未来请求的唯一 SQL 标识符。 |
state |
字符串 | 请求状态,例如成功或错误。 |
使用情况
无论批次大小,查询最多可以返回 100 个记录。此示例将批处理大小设置为 75 条记录。
PresentationPlayer.fetchWithParams('SELECT FirstName, LastName, Name, Email, Phone, Username FROM User WHERE Id = ' + userId', {'batchSize': 75}, getCurrentUserRecordCallback');如果不指定批处理大小,默认情况下,fetchWithParams函数会查询 15 条记录。要在使用较小批量时查询其他记录,请使用 queryLocator 变量。
本示例使用 queryLocator 变量。
function getAccounts() {
PresentationPlayer.fetchWithParams('SELECT Id FROM Account', {'batchSize': 15}, 'getAccountsCallback');
// Return 15 records
}
function getAccountsCallback(data) {
// Process records
PresentationPlayer.fetchWithParams(data.queryLocator, 'getAccountsCallback');
}示例
<script type="text/javascript">
var configData;
document.addEventListener('PresentationDOMContentLoaded', function(event) => {
configData = event.data;
function getCurrentUserRecord() {
let userId = ' \' ' + configData.parameters.id + ' \' ';
PresentationPlayer.fetchWithParams('SELECT FirstName, LastName, Name, Email, Phone, Username FROM User WHERE Id = ' + userId, {'batchSize': 75},
'getCurrentUserRecordCallback');
}
function getCurrentUserRecordCallback(data) {
if (data.state === 'success') {
const html = data.records.map((el)=>{
console.log('User Name: ', el.Name);
console.log('User Email: ', el.Email);
});
} else {
PresentationPlayer.alert(data.message + '\n' + data.code);
}
}
</script>错误
此函数会在以下情况返回错误:
- 查询无法访问或查找记录。
- 发生 SQL 错误。
本文章是否解决您的问题?
请与我们共享您的想法,以便我们进行改进!

