Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте методы dataApi таблицы объекта для создания, извлечения, обновления и удаления строк таблицы Dataverse и столбцов выбора запросов.
| Метод | Description |
|---|---|
createRow |
Создает новую строку в указанной таблице. |
deleteRow |
Удаляет строку из указанной таблицы. |
getChoices |
Извлекает варианты для указанного имени столбца выбора. |
queryTable |
Запрашивает таблицу с указанными параметрами. |
retrieveRow |
Извлекает строку из указанной таблицы с указанными параметрами. |
updateRow |
Обновляет существующую строку в указанной таблице. |
createRowМетод
Создает новую строку в указанной таблице.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
tableName |
string | Логическое имя таблицы для создания строки. |
row |
object | Создаваемые данные строки. |
Returns
Обещание, содержащее результат операции. Когда операция завершится успешно, результатом является значение идентификатора (GUID) созданной строки.
Пример createRow
// Define the row data to create new account
var row =
{
"name": "Sample Account",
"creditonhold": false,
"address1_latitude": 47.639583,
"description": "This is the description of the sample account",
"revenue": 5000000,
"accountcategorycode": 1,
}
try {
// Create a new account record
const newAccountId = await dataApi.createRow("account", row);
console.log("Account created with ID: " + newAccountId);
// Create a contact with a lookup to an account
const newContactId = await dataApi.createRow('contact', {
firstname: 'John',
lastname: 'Doe',
emailaddress1: 'john.doe@contoso.com',
"parentcustomerid@odata.bind": `/account(${newAccountId})`, // Lookup format
});
}
catch (error) {
console.log(error.message);
}
deleteRowМетод
Удаляет строку из указанной таблицы.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
tableName |
string | Логическое имя таблицы для удаления строки. |
rowId |
string | Идентификатор строки для удаления. |
Returns
Обещание, содержащее результат операции. Когда операция завершается успешно, она не возвращает значения.
Пример deleteRow
let rowId = "5531d753-95af-e711-a94e-000d3a11e605";
try {
await dataApi.deleteRow("account", rowId);
}
catch (error) {
console.log(error.message);
}
getChoicesМетод
Извлекает варианты для указанного имени столбца выбора.
Parameters
Этот параметр является обязательным.
| Name | Type | Description |
|---|---|---|
enumName |
string |
Имя столбца выбора в формате tablename-columnname |
Returns
Обещание, содержащее результат операции. После успешного выполнения операции возвращается массив параметров выбора. Каждый параметр имеет следующие свойства:
| Name | Type | Description |
|---|---|---|
label |
string | Локализованное значение метки параметра. |
value |
Номер | Числовое значение параметра. |
Пример getChoices
// Returns the accountcategorycode column options from the account table
const categoryChoices = await dataApi.getChoices("account-accountcategorycode");
// Returns the statecode column options from the contact table
const stateChoices = await dataApi.getChoices('contact-statecode');
// Returns the statuscode column options from the account table
const statusChoices = await dataApi.getChoices('account-statuscode');
queryTableМетод
Запрашивает таблицу с помощью указанных параметров.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
tableName |
string |
Логическое имя таблицы для запроса |
query |
QueryTableOptions | Параметры запроса таблицы |
QueryTableOptions
| Name | Type | Description |
|---|---|---|
select |
string[] |
(Рекомендуется) Массив имен столбцов для извлечения. |
filter |
string |
(Необязательно) Выражение фильтра OData (например, statecode eq 0). |
orderBy |
string |
(Необязательно) Выражение порядка OData (например, name asc, createdon desc). |
pageSize |
number |
(Необязательно) Максимальное количество строк, возвращаемых на страницу. |
Returns
Обещание, содержащее результат операции. После успешной операции обещание возвращает объект, содержащий таблицу данных с результатами со следующими свойствами:
| Name | Type | Description |
|---|---|---|
rows |
Object[] |
Массив данных строк |
hasMoreRows |
boolean |
Указывает, есть ли больше строк |
loadMoreRows |
function |
Функция для загрузки следующей страницы результатов. (Необязательно) |
Пример запроса
// Query tasks with options
const result = await dataApi.queryTable("task", {
select: ["activityid", "subject", "scheduledend", "prioritycode", "statecode"],
orderBy: "scheduledend asc",
pageSize: 50,
filter: "statecode eq 0"
});
// Query accounts with pagination
const pagedAccounts = await dataApi.queryTable('account', {
select: ['name'],
pageSize: 50,
});
console.log(`Page 1: ${pagedAccounts.rows.length} accounts`);
if (pagedAccounts.hasMoreRows && pagedAccounts.loadMoreRows) {
const nextPage = await pagedAccounts.loadMoreRows();
console.log(`Page 2: ${nextPage.rows.length} accounts`);
}
Remarks
Примечание.
Для оптимальной производительности всегда ограничивается число столбцов, возвращаемых с помощью свойства QueryTableOptionsselect .
retrieveRowМетод
Извлекает строку из указанной таблицы с помощью указанных параметров.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
tableName |
string |
Логическое имя таблицы, извлекаемой из |
options |
RetrieveRowOptions | Параметры получения строки |
RetrieveRowOptions
| Name | Type | Description |
|---|---|---|
id |
string |
Идентификатор (GUID) строки для получения |
select |
string[] |
(Рекомендуется) Массив имен столбцов для извлечения. Если опущено, возвращаются все столбцы. |
Returns
Обещание, содержащее результат операции. После успешной операции он возвращает объект с данными записи, включая все выбранные столбцы.
Пример извлеченияRow
// Retrieve an account with all columns
const account = await dataApi.retrieveRow('account', {
id: '30dc51e9-947d-47d8-ad48-4fc48fba4a95',
});
// Retrieve specific columns only
const contact = await dataApi.retrieveRow('contact', {
id: 'a1b2c3d4-e5f6-7890-abcd-ef1234567890',
select: ['firstname', 'lastname', '_parentcustomerid_value'],
});
updateRowМетод
Обновляет существующую строку в указанной таблице.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
tableName |
string | Логическое имя таблицы для обновления строки. |
rowId |
string | Идентификатор строки для обновления. |
row |
Object | Обновляемая строка данных. |
Returns
Обещание, содержащее результат операции. Когда операция завершается успешно, она не возвращает значения.
Пример updateRow
let rowId = "5531d753-95af-e711-a94e-000d3a11e605"
// Define the row to update a record
var row =
{
"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
try {
await dataApi.updateRow("account", rowId, row);
}
catch (error){
console.log(error.message);
}