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


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

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

Синтаксис

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

Параметри

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

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

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

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

Приклади

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

Базове створення

Створення зразка запису облікового запису.

// define the data to create new account
var data =
    {
        "name": "Sample Account",
        "creditonhold": false,
        "address1_latitude": 47.639583,
        "description": "This is the description of the sample account",
        "revenue": 5000000,
        "accountcategorycode": 1,
        "opendeals_date": new Date("2024-02-03T00:00:00Z")
    }

// create account record
Xrm.WebApi.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Нотатка

Створення записів із основним зображенням не підтримується в автономному режимі. Основні зображення можна встановити лише за допомогою функції створення в онлайновому режимі. Інші стовпці зображення не можна встановити зі створенням. Докладніше про основні зображення

Ви можете створити таблиці, пов'язані між собою, визначивши їх як значення властивостей навігації. Цей візерунок називається глибоким вставленням. У цьому прикладі ми створюємо зразок запису бізнес-партнера разом із основним записом контакту та пов'язаним записом потенційної угоди.

Нотатка

Створення пов'язаних записів таблиці за одну операцію створення не підтримується в автономному режимі.

// define data to create primary and related table records
var data =
    {
        "name": "Sample Account",
        "primarycontactid":
        {
            "firstname": "John",
            "lastname": "Smith"
        },
        "opportunity_customer_accounts":
        [
            {
                "name": "Opportunity associated to Sample Account",
                "Opportunity_Tasks":
                [
                    { "subject": "Task associated to opportunity" }
                ]
            }
        ]
    }

// create account record
Xrm.WebApi.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Зв'язування таблиць зі створенням нових записів

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

Нотатка

Імена однозначних властивостей навігації не завжди збігаються з іменами атрибута LogicalName підстановки. Переконайтеся, що використовується значення NavigationProperty атрибута Name елемента в веб-інтерфейсі API $metadata документ служби. Додаткові відомості: Властивості навігації веб-API

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

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

var data =
    {
        "name": "Sample Account",
        "primarycontactid@odata.bind": "/contacts(465b158c-541c-e511-80d3-3863bb347ba8)"
    }

// create account record
Xrm.WebApi.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

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

Нотатка

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

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

var data =
    {
        "name": "Sample Account",
        "primarycontactid":
        {
            "logicalname": "contact",
            "id": "465b158c-541c-e511-80d3-3863bb347ba8"
        } 
    }

// create account record
Xrm.WebApi.offline.createRecord("account", data).then(
    function success(result) {
        console.log("Account created with ID: " + result.id);
        // perform operations on record creation
    },
    function (error) {
        console.log(error.message);
        // handle error conditions
    }
);

Створення рядка таблиці за допомогою Web API
Xrm.WebApi