fetchWithParams Function
Mustache 변수에서 아직 반환되지 않은 데이터를 쿼리하고 지정된 콜백 방법에 결과를 반환합니다.
필수 Edition
| 지원 제품: Lightning Experience |
| 지원 제품: Life Sciences Cloud, Customer Engagement용 Life Sciences Cloud 추가 기능 라이센스, 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 |
배열<개체> | 결과 데이터입니다. |
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 오류가 발생합니다.
이 기사를 통해 문제를 해결했습니까?
개선을 위한 의견을 보내주세요.

