Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Atualiza um registro de tabela.
Sintaxe
Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(successCallback, errorCallback);
Parâmetros
| Nome | Tipo | Obrigatório | Description |
|---|---|---|---|
entityLogicalName |
String | Yes | O nome lógico da tabela do registro que você deseja atualizar. Por exemplo: account. |
id |
String | Yes | GUID do registro de tabela que você deseja atualizar. |
data |
Object | Yes | Um objeto JSON que contém key: value pares, onde key está a propriedade da tabela e value é o valor da propriedade que você deseja atualizar.Veja exemplos para ver como você pode definir o data objeto para vários cenários de atualização. |
successCallback |
Função | Não | Uma função a ser chamada quando um registro é atualizado. Consulte o valor retornado |
errorCallback |
Função | Não | Uma função a ser chamada quando a operação falhar. Um objeto com as seguintes propriedades é passado: - errorCode:Número. O código de erro como um número decimal positivo. Por exemplo, o código de erro documentado como 0x80040333 será retornado como 2147746611.- message:Corda. Uma mensagem de erro descrevendo o problema. |
Valor de retorno
Com êxito, retorna um objeto de promessa para as successCallback seguintes propriedades:
| Nome | Tipo | Description |
|---|---|---|
entityType |
String | O nome lógico da tabela do registro. |
id |
String | GUID do registro. |
Exemplos
Esses exemplos usam alguns dos mesmos objetos de solicitação, como demonstrado em Atualizar e excluir linhas de tabela usando a API Web para definir o objeto de dados para atualizar um registro de tabela.
Atualização básica
Atualiza um registro de conta existente com a ID do registro = 5531d753-95af-e711-a94e-000d3a11e605.
// define the data to update a record
var data =
{
"name": "Updated Sample Account ",
"creditonhold": true,
"address1_latitude": 47.639583,
"description": "This is the updated description of the sample account",
"revenue": 6000000,
"accountcategorycode": 2
}
// update the record
Xrm.WebApi.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Account updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
Atualizar associações para as tabelas relacionadas
Para atualizar a associação aos registros de tabela relacionados (pesquisas), defina o valor das propriedades de navegação com valor único usando a @odata.bind anotação para outro registro.
Aqui está o exemplo de código:
O exemplo a seguir atualiza um registro de conta para associar outro registro de contato como o contato primário da conta:
// define the data to update a record
var data =
{
"primarycontactid@odata.bind": "/contacts(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
}
// update the record
Xrm.WebApi.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Account updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
Método preterido para cenário offline móvel
Observação
Em vez de usar @odata.bind o exemplo de anotação acima, o objeto de pesquisa preterido com propriedades que diferenciam maiúsculas de minúsculas (logicalname e id) ainda tem suporte para exisiting customizations. No entanto, é recomendável usar @odata.bind a anotação para cenários online e offline em vez de usar esse objeto preterido.
O exemplo a seguir usa o método preterido para atualizar um registro de conta para associar outro registro de contato como o contato principal da conta de clientes móveis ao trabalhar no modo offline:
// define the data to update a record
var data =
{
"primarycontactid":
{
"logicalname": "contact",
"id": "61a0e5b9-88df-e311-b8e5-6c3be5a8b200"
}
}
// update the record
Xrm.WebApi.offline.updateRecord("account", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Account updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
Atualizar associações para as tabelas relacionadas do tipo Atividade
Para atualizar a associação às tabelas relacionadas do tipo Atividade, defina o valor das propriedades de navegação com valor único usando a @odata.bind anotação para outro registro.
Atualizar a coluna de oportunidade relacionada na tarefa
// define the data to update a record
var data =
{
"new_relatedopportunities_task@odata.bind": "/opportunities(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
}
// update the record
Xrm.WebApi.updateRecord("task", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Task updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
Atualizar sobre a coluna na tarefa
// define the data to update a record
var data =
{
"regardingobjectid_account_task@odata.bind": "/accounts(61a0e5b9-88df-e311-b8e5-6c3be5a8b200)"
}
// update the record
Xrm.WebApi.updateRecord("task", "5531d753-95af-e711-a94e-000d3a11e605", data).then(
function success(result) {
console.log("Task updated");
// perform operations on record update
},
function (error) {
console.log(error.message);
// handle error conditions
}
);
Atualizar associações para propriedades de navegação com valor de coleção
A API Xrm.WebApi.online.execute pode ser usada para associar e desassociar propriedades de navegação com valor de coleção. Não há suporte para cenários offline móveis.