Nota
L'accés a aquesta pàgina requereix autorització. Pots provar d'iniciar sessió o canviar de directori.
L'accés a aquesta pàgina requereix autorització. Pots provar de canviar directoris.
Actualitza un registre de taula.
Sintaxi
Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(successCallback, errorCallback);
Paràmetres
| Nom | Tipus | Necessari | Descripció |
|---|---|---|---|
entityLogicalName |
String | Sí | El nom lògic de la taula del registre que voleu actualitzar. Per exemple: account. |
id |
String | Sí | GUID del registre de taula que voleu actualitzar. |
data |
Objecte | Sí | Objecte JSON que conté key: value parells, on key és la propietat de la taula i value és el valor de la propietat que voleu actualitzar.Vegeu Exemples per veure com podeu definir l'objecte data per a diversos escenaris d'actualització. |
successCallback |
Function | No | Funció per cridar quan s'actualitza un registre. Vegeu el valor retornat |
errorCallback |
Function | No | Una funció per cridar quan l'operació falla. Es passa un objecte amb les propietats següents: - errorCode:Número. El codi d'error com a nombre decimal positiu. Per exemple, el codi d'error documentat com es 0x80040333 retornarà com 2147746611a .- message:Corda. Un missatge d'error que descriu el problema. |
Valor de retorn
En cas d'èxit, retorna un objecte de promesa a la successCallback amb les propietats següents:
| Nom | Tipus | Descripció |
|---|---|---|
entityType |
String | El nom lògic de la taula del registre. |
id |
String | GUID del registre. |
Exemples
Aquests exemples utilitzen alguns dels mateixos objectes de sol·licitud que es demostra a Actualitzar i suprimir files de taula mitjançant l'API web per definir l'objecte de dades per actualitzar un registre de taula.
Actualització bàsica
Actualitza un registre de compte existent amb l'identificador de registre = 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
}
);
Actualitzar les associacions a les taules relacionades
Per actualitzar l'associació als registres de taula relacionats (cerques), definiu el valor de les propietats de navegació d'un sol valor mitjançant l'anotació @odata.bind a un altre registre.
Aquí teniu un exemple de codi:
L'exemple següent actualitza un registre de compte per associar-ne un altre registre de contacte com a contacte principal del 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ètode obsolet per a l'escenari Mobile Offline
Nota
En lloc d'utilitzar @odata.bind l'exemple d'anotació anterior, l'objecte de cerca obsolet amb propietats que distingeixen entre majúscules i minúscules (logicalname i id) encara és compatible per a les personalitzacions existents. Tanmateix, es recomana utilitzar @odata.bind l'anotació tant per a l'escenari en línia com fora de línia en lloc d'utilitzar aquest objecte obsolet.
L'exemple següent utilitza el mètode obsolet per actualitzar un registre de compte per associar un altre registre de contacte com a contacte principal del compte des de clients mòbils quan es treballa en mode fora de línia:
// 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
}
);
Actualitza les associacions a les taules relacionades de tipus Activitat
Per actualitzar l'associació a les taules relacionades de tipus Activitat, definiu el valor de les propietats de navegació d'un sol valor mitjançant l'anotació @odata.bind a un altre registre.
Actualitza la columna d'oportunitat relacionada a la tasca
// 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
}
);
Actualitza la columna Referent a la tasca
// 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
}
);
Actualitzar les associacions de les propietats de navegació amb valor de col·lecció
L'API Xrm.WebApi.online.execute es pot utilitzar per associar i desassociar propietats de navegació amb valors de col·lecció. Això NO s'admet per a escenaris Mobile Offline.