Споделяне чрез


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 анотацията на друг запис.

Update related opportunity column on task

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

Update Regarding column on task

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

Актуализиране на асоциации за свойства на навигация със стойности на колекция

Xrm.WebApi.online.execute API може да се използва за свързване и премахване на свойствата за навигация със стойности на колекция. Това НЕ се поддържа за сценарии за офлайн мобилни устройства.

Xrm.WebApi