Вы находитесь здесь:
Функция обновления и вставки
Создание и обновление записей для указанных объектов и возврат результатов к указанному методу обратного вызова.
Требуемые версии
| Доступно в версиях: Lightning Experience |
| Доступно в версиях: Enterprise and Unlimited Edition с дополнительной лицензией Life Sciences Cloud, Life Sciences Cloud for Customer Engagement и управляемым пакетом Life Sciences Customer Engagement. |
Данная функция поддерживается только в мобильном приложении Life Sciences Cloud.
Вы можете создавать или обновлять настраиваемые объекты и поддерживаемые объекты «Занятость клиентов» в науках о жизни. Для создания или обновления записей:
- Пользователь должен иметь полномочия на чтение для указанных объектов и полей.
- Конфигурации кэша активных метаданных объекта должны быть созданы для каждого объекта и синхронизированы с мобильным приложением Life Sciences Cloud.
Синтаксис
PresentationPlayer.upsert(objects, callbackMethod)Аргументы
| Аргумент | Описание |
|---|---|
objects |
Массив объектов для создания или обновления записей.
|
callbackMethod |
Имя метода JavaScript, получающего результат операции. |
Возвращается
Данная функция возвращает массив кодов новых или обновленных записей.
Ограничения
Данная функция не может создавать или обновлять записи пользователя, типа записи, территории, территории2 и UserTerritory2Association.
Данная функция не может использоваться для создания или обновления связанных записей. Чтобы обновить связанные записи, например, записи во взаимосвязи «родительский-дочерний», используйте два вызова функций.
Пример
Данный пример создает записи посредством имени объекта.
<body>
<input id="name" style="color: black;">
<input id="customField" style="color: black;">
<a href="javascript:save();">Save Record</a>
</body>
<script type="text/javascript">
function save() {
let name = document.getElementById("name").value;
let customField= document.getElementById("customField").value;
PresentationPlayer.upsert([{
'sobject': 'Account',
'name': name,
'customField__c': customField
}], 'upsertCallbackMethod');
}
function upsertCallbackMethod(data) {
console.log(data);
PresentationPlayer.alert(JSON.stringify(data));
}
</script>Данный пример обновляет записи посредством кодов записей.
<script type="text/javascript">
function save() {
let name = document.getElementById("name").value;
let customField= document.getElementById("customField").value;
let accountId = allData.customers[0].Id;
PresentationPlayer.upsert([{
'sobject': 'Account',
'id': accountId,
'name': name,
'customField__c': customField
}], 'upsertCallbackMethod');
}
function upsertCallbackMethod(data) {
if (data.state === 'success') {
console.log(data);
PresentationPlayer.alert(JSON.stringify(data));
} else {
PresentationPlayer.alert(data.message + '\n' + data.code);
}
}
</script>Ошибки
Эта функция обрабатывает до 15 записей одновременно. При отправке более 15 записей возникает ошибка.
Данная функция также может возвращать ошибки при возникновении сбоев при создании или обновлении записей. Например, ошибки могут произойти, когда:
- Правила проверки не выполняются.
- Пользователь не имеет доступа для чтения или редактирования к объекту или полю.
- Объект или поле не поддерживается.
- Происходят ошибки запросов базы данных SQLite.

