Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Создает запись таблицы.
Синтаксис
Xrm.WebApi.createRecord(entityLogicalName, data).then(successCallback, errorCallback);
Параметры
| Имя | Тип | Обязательно | Description |
|---|---|---|---|
entityLogicalName |
String | Да | Логическое имя создаваемой таблицы. Например: account. |
data |
Object | Да | Объект JSON, определяющий столбцы и значения для новой записи таблицы. См . примеры |
successCallback |
Функция | нет | Функция, вызываемая при создании записи. См . возвращаемое значение |
errorCallback |
Функция | нет | Функция, вызываемая при сбое операции. Передается объект со следующими свойствами: - errorCode:Число. Код ошибки в виде положительного десятичного числа. Например, код ошибки, который задокументирован как 0x80040333 будет возвращен.2147746611- message:Струна. Сообщение об ошибке с описанием проблемы. |
Возвращаемое значение
При успешном выполнении возвращает объект successCallback promise в указанные ниже свойства:
| Имя | Тип | Description |
|---|---|---|
entityType |
String | Логическое имя таблицы новой записи. |
id |
String | 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
}
);
Замечание
Создание записей с основным изображением не поддерживается для автономного режима. Основные образы можно задать только в режиме онлайн. Другие столбцы изображений нельзя задать с помощью create. Дополнительные сведения о первичных образах
Создание связанных записей таблиц вместе с основной записью
Таблицы, связанные друг с другом, можно создать, определив их как значения свойств навигации. Этот шаблон называется глубоким вставкам. В этом примере мы создадим образец записи учетной записи вместе с основной записью контакта и связанной записью возможности.
Замечание
Создание связанных записей таблиц в одной операции создания не поддерживается в автономном режиме.
// 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 именами атрибута подстановки. Необходимо убедиться, что вы используете Name значение атрибута NavigationProperty элемента в документе веб-API $metadata службе. Дополнительные сведения: Свойства навигации веб-API
Ниже приведен пример кода:
В следующем примере создается запись учетной записи и связывает ее с существующей записью контакта, чтобы задать последний в качестве основного контакта для новой записи учетной записи:
var data =
{
"name": "Sample Account",
"[email protected]": "/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
}
);