Função upsert
Cria e atualiza registros para os objetos especificados e retorna resultados para o método de retorno de chamada especificado.
Edições obrigatórias
| Disponível em: Lightning Experience |
| Disponível em: Edições Enterprise e Unlimited com a licença Life Sciences Cloud, o complemento Life Sciences Cloud para Engajamento do cliente e o pacote gerenciado Engajamento do cliente Life Sciences. |
Essa função é suportada apenas no aplicativo móvel Life Sciences Cloud.
Você pode criar ou atualizar objetos personalizados e objetos de Engajamento do cliente de biociências com suporte. Para criar ou atualizar registros:
- O usuário deve ter permissões de Leitura nos objetos e campos especificados.
- Configurações de cache de metadados de objeto ativo devem ser criadas para cada objeto e sincronizadas com o aplicativo móvel Life Sciences Cloud.
Sintaxe
PresentationPlayer.upsert(objects, callbackMethod)Argumentos
| Argumento | Descrição |
|---|---|
objects |
Uma matriz de objetos para os quais criar ou atualizar registros.
|
callbackMethod |
O nome do método JavaScript que recebe o resultado da operação. |
Retorna
Essa função retorna uma matriz de IDs dos registros novos ou atualizados.
Limitações
Essa função não pode criar nem atualizar registros de Usuário, Tipo de registro, Território, Território2 e UserTerritory2Association.
Não é possível usar essa função para criar ou atualizar registros relacionados. Para atualizar registros relacionados, como registros em um relacionamento pai-filho, use duas chamadas de função.
Exemplo
Este exemplo cria registros usando o nome do objeto.
<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>Este exemplo atualiza registros usando IDs de registro.
<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>Erros
Essa função processa até 15 registros por vez. Se você enviar mais de 15 registros, ocorrerá um erro.
Essa função também poderá retornar erros se houver falhas ao criar ou atualizar registros. Por exemplo, podem ocorrer erros quando:
- As regras de validação falham.
- O usuário não tem acesso de Leitura ou Edição ao objeto ou campo.
- Não há suporte para o objeto ou campo.
- Ocorrem erros de consulta de banco de dados SQLite.

