Remarque
L’accès à cette page requiert une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page requiert une autorisation. Vous pouvez essayer de modifier des répertoires.
Met à jour un enregistrement de table.
Syntaxe
Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(successCallback, errorCallback);
Paramètres
| Nom | Type | Requise | Description |
|---|---|---|---|
entityLogicalName |
String | Oui | Nom logique de la table de l’enregistrement à mettre à jour. Par exemple : account. |
id |
String | Oui | GUID de l’enregistrement de table à mettre à jour. |
data |
Object | Oui | Objet JSON contenant des paires key: value, où key est la propriété de la table et value est la valeur de la propriété à mettre à jour.Consultez les exemples pour savoir comment définir l’objet data pour différents scénarios de mise à jour. |
successCallback |
Function | Non | Fonction à appeler lorsqu’un enregistrement est mis à jour. Voir Valeur renvoyée |
errorCallback |
Function | Non | Fonction à appeler lorsque l’opération échoue. Un objet avec les propriétés suivantes est transmis : - errorCode : nombre. Code d’erreur sous la forme d’un nombre décimal positif. Par exemple, le code d’erreur documenté en tant que 0x80040333 sera renvoyé en tant que 2147746611.- message : chaîne. Message d’erreur décrivant le problème. |
Valeur renvoyée
En cas de réussite, retourne un objet de promesse à successCallback avec les propriétés suivantes :
| Nom | Type | Description |
|---|---|---|
entityType |
String | Nom logique de la table de l’enregistrement. |
id |
String | GUID de l’enregistrement. |
Examples
Ces exemples utilisent certains des mêmes objets de requête, comme illustré dans Mettre à jour et supprimer des lignes de tables à l’aide de l’API web pour définir l’objet de données pour la mise à jour d’un enregistrement de table.
| Exemple | Démontre | Exemple d’API web |
|---|---|---|
| Mise à jour de base | Comment mettre à jour les valeurs de colonne sur un enregistrement de compte existant. | Mise à jour de base |
| Mettre à jour les associations vers les tables associées | Comment modifier le contact principal d’un compte à l’aide @odata.bindde . |
Associer à une propriété de navigation à valeur unique |
| Mettre à jour les associations vers les tables associées de type Activité | Comment associer une tâche à une opportunité ou définir sa recherche concernant un compte. | Associer à une propriété de navigation à valeur unique |
| Mettre à jour les associations pour les propriétés de navigation à valeur de collection | Comment associer et dissocier des enregistrements associés à l’aide Xrm.WebApi.online.executede . |
Ajouter un enregistrement à une collection et supprimer un enregistrement d’une collection |
Exemple de mise à jour de base
Met à jour un enregistrement de compte existant avec l’ID d’enregistrement = 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
}
);
Mettre à jour les associations vers l’exemple de tables associées
Pour mettre à jour l’association aux enregistrements de table associés (recherches), définissez la valeur des propriétés de navigation à valeur unique à l’aide de l’annotation @odata.bind pour pointer vers un autre enregistrement.
Voici un exemple de code :
L’exemple suivant met à jour un enregistrement de compte pour associer un autre enregistrement de contact comme contact principal du compte :
// 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éthode obsolète pour le scénario hors ligne mobile
Note
Au lieu d’utiliser l’annotation dans l’exemple précédent, l’objet de recherche déconseillé avec des propriétés sensibles à la @odata.bind casse (logicalnameetid) est toujours pris en charge pour les personnalisations existantes. Toutefois, l’utilisation de l’annotation @odata.bind est recommandée pour les scénarios en ligne et hors connexion au lieu d’utiliser cet objet déconseillé.
L’exemple suivant s’appuie sur la méthode obsolète pour mettre à jour un enregistrement de compte à associer à un autre enregistrement de contact afin en tant que contact principal du compte des clients mobiles quand vous travaillez en mode hors connexion :
// 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
}
);
Mettre à jour les associations vers les tables associées de type Activity - Exemple
Pour mettre à jour les associations vers les tables associées de type Activité, définissez la valeur des propriétés de navigation à valeur unique à l’aide de l’annotation @odata.bind pour pointer vers un autre enregistrement.
Mettre à jour la colonne d’opportunité associée sur la tâche
// 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
}
);
Mise à jour concernant la colonne sur la tâche
// 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
}
);
Mettre à jour les associations pour les propriétés de navigation à valeur de collection - Exemple
Utilisez l’API Xrm.WebApi.online.execute pour associer et dissocier les propriétés de navigation à valeur de collection. Cette fonctionnalité n’est pas prise en charge pour les scénarios hors connexion mobiles.