Поділитися через


updateRecord (довідник з API клієнта)

Оновлення запису таблиці.

Синтаксис

Xrm.WebApi.updateRecord(entityLogicalName, id, data).then(successCallback, errorCallback);

Параметри

Ім'я Тип Обов'язковий Опис
entityLogicalName String Так Логічне ім'я таблиці запису, який потрібно оновити. Наприклад: account.
id String Так GUID запису таблиці, який потрібно оновити.
data Об'єкт Так Об'єкт JSON, key: value що містить пари, де key є властивістю таблиці та value є значенням властивості, яку потрібно оновити.
Перегляньте приклади , щоб дізнатися, як визначити data об'єкт для різних сценаріїв оновлення.
successCallback Function Ні Функція для виклику при оновленні запису. Див . повернуте значення
errorCallback Function Ні Функція для виклику, коли операція не вдається. Передано об'єкт із такими властивостями:
- errorCode:Число. Код помилки як додатне десяткове число. Наприклад, код помилки, задокументований як 0x80040333 , буде повернуто як 2147746611.
- message:Рядок. Повідомлення про помилку з описом проблеми.

Повернуте значення

Після успішного виконання повертає об'єкт обіцянки successCallback з такими властивостями:

Ім'я Тип Опис
entityType String Логічне ім'я таблиці запису.
id String GUID запису.

Приклади

У цих прикладах використовуються деякі об'єкти запиту, як показано в статті Оновлення та видалення рядків таблиці за допомогою веб-інтерфейсу API , щоб визначити об'єкт даних для оновлення запису таблиці.

Базове оновлення

Оновлено наявний запис облікового запису з ідентифікатором запису = 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
    }
);

Щоб оновити зв'язок із пов'язаними записами таблиці (підстановками), установіть значення однозначних властивостей навігації за допомогою @odata.bind зауваження до іншого запису.

Ось приклад коду:

У наведеному нижче прикладі оновлюється запис бізнес-партнера, щоб пов'язати інший запис контакту як основний контакт для бізнес-партнера:

// 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
    }
);

Застарілий метод для сценарію роботи в автономному режимі для мобільних пристроїв

Нотатка

Замість наведеного @odata.bind вище прикладу зауваження застарілий об'єкт підстановки з урахуванням регістру (logicalname і id) все ще підтримується для розширення настройок. Проте радимо використовувати @odata.bind зауваження для онлайнового та автономного сценаріїв, а не використовувати цей застарілий об'єкт.

У наведеному нижче прикладі використовується застарілий метод, щоб оновити запис облікового запису, щоб пов'язати інший запис контакту як основний контакт для облікового запису з мобільних клієнтів під час роботи в автономному режимі:

// 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
    }
);

Щоб оновити зв'язок із пов'язаними таблицями типу Activity, установіть значення однозначних властивостей навігації за допомогою @odata.bind зауваження до іншого запису.

Оновлення пов'язаного стовпця потенційної угоди для завдання

// 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
    }
);

Оновлення стовпця "Стосується" завдання

// 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
   }
);

Оновлення зв'язків для властивостей навігації з колекцією

API Xrm.WebApi.online.execute можна використовувати для зв'язування та роз'єднання властивостей навігації з колекцією. Цей параметр не підтримується для сценаріїв для мобільних пристроїв в автономному режимі.

Xrm.WebApi