Способи з'єднувача для генеративних сторінок

Використовуйте методи з'єднувача dataApi об'єкта для роботи з даними, виставленими з'єднувачем Power Platform, прив'язаним до сторінки.

Нотатка

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

На відміну від дій і методів функцій, методи з'єднувача відхиляють повернуту обіцянку, коли виклик завершується помилкою , наприклад, якщо посилання на підключення не вдалося усунути, підключення не авторизовано, і користувач не заповнить запит на згоду, або з'єднувач повертає стан помилки. executeConnectorOperation вирішує проблему з ok: false більшістю станів помилок, але все одно відхиляє дані про відсутню операцію, несанкціоноване підключення (403) без згоди на завершення або помилку транспортування. Переносити виклики з'єднувача в try/catch.

Метод Опис
createConnectorRow Створення нового рядка у вказаній сполучній таблиці.
deleteConnectorRow Видалення рядка з указаної сполучної таблиці.
executeConnectorOperation Викликає іменовані операції, відкриті сполучною лінією REST (з ключем операції), наприклад Користувачі Office 365.
getConnectorSwagger Отримує визначення Swagger (OpenAPI) для сполучної лінії.
getConnectorTableSchema Отримує схему для таблиці (її також називають сутністю або списком), відкритої сполучною лінією.
listConnectorDatasets Список наборів даних, доступних для з'єднувача.
listConnectorOperations Список операцій, відкритих сполучною лінією REST (з ключем операції).
listConnectorTables Список таблиць, доступних у вказаному наборі даних сполучної лінії.
queryConnectorTable Запитує таблицю, відкриту сполучною лінією з указаними параметрами.
retrieveConnectorRow Отримує один рядок із вказаної сполучної таблиці.
updateConnectorRow Оновлено наявний рядок у вказаній сполучній таблиці.

queryConnectorTable метод

Запитує таблицю, відкриту сполучною лінією, використовуючи вказані параметри.

Параметри

Установлення значень для цих обов'язкових параметрів.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки (наприклад, sp_shared_sharepointonline).
dataset string Набір даних, що містить таблицю, наприклад URL-адресу SharePoint сайту.
tableName string Внутрішнє ім'я таблиці з властивості, повернутої name .listConnectorTables Не використовуйте коротке ім'я.
options Об'єднання таблиць queryConnectorTableOptions Параметри запиту таблиці.

Об'єднання таблиць queryConnectorTableOptions

Ім'я Тип Опис
select string[] (Рекомендовано) Масив імен стовпців, які потрібно отримати.
filter string (Необов'язково) Вираз фільтра, що підтримується сполучною лінією.
orderBy string (Необов'язково) Вираз order-by, що підтримується сполучною лінією.
top number (Необов'язково) Максимальна кількість рядків для повернення.

Відповіді

Обіцянка, що містить результат операції. Коли операцію буде виконано успішно, обіцянка повертає об'єкт, що містить таблицю даних із результатами з такими властивостями:

Ім'я Тип Опис
rows Object[] Масив даних рядків.
hasMoreRows boolean Указує, чи доступно більше рядків.

queryConnectorTable повертає одну сторінку результатів. Вона не повертає функцію продовження, і наразі немає підтримуваного способу отримання наступної сторінки. Коли hasMoreRows – trueбільше рядків, які збігаються, ніж повернуто. Звузити запит із символом filter, або повідомити користувачу, що результати неповні.

Приклад таблиці queryConnectorTable

if (!dataApi.listConnectorTables || !dataApi.queryConnectorTable) {
  throw new Error("Connector methods aren't available on this page.");
}

const tables = await dataApi.listConnectorTables(
  "sp_shared_sharepointonline",
  "https://contoso.sharepoint.com/sites/Marketing"
);
const documentsTable = tables.find((table) => table.displayName === "Documents");
if (!documentsTable) {
  throw new Error("The Documents table wasn't found in this dataset.");
}
const documentsTableName = documentsTable.name;

const result = await dataApi.queryConnectorTable(
  "sp_shared_sharepointonline",
  "https://contoso.sharepoint.com/sites/Marketing",
  documentsTableName,
  {
    select: ["Title", "Modified"],
    top: 50,
  }
);

У наведених нижче прикладах припускається documentsTableName , що таблицю розташовано name з listConnectorTables, як показано вище.

listConnectorTables метод

Список таблиць (списків або сутностей), доступних у вказаному наборі даних з'єднувача.

Параметри

Установлення значень для цих обов'язкових параметрів.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки.
dataset string Набір даних для списку таблиць.

Відповіді

Обіцянка, що містить масив відомостей про таблицю. Кожен запис має такі властивості:

Ім'я Тип Опис
name string Внутрішнє ім'я таблиці.
displayName string Коротке ім'я таблиці.

listConnectorTables example

const tables = await dataApi.listConnectorTables?.(
  "sp_shared_sharepointonline",
  "https://contoso.sharepoint.com/sites/Marketing"
);

listConnectorDatasets метод

Список наборів даних, доступних для з'єднувача, наприклад SharePoint сайтів, до яких можна отримати доступ.

Параметри

Установіть значення для цього обов'язкового параметра.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки.

Відповіді

Обіцянка, що містить масив даних. Кожен запис має такі властивості:

Ім'я Тип Опис
name string Внутрішнє ім'я або ідентифікатор набору даних.
displayName string Коротке ім'я набору даних.

listConnectorDatasets example

const datasets = await dataApi.listConnectorDatasets?.("sp_shared_sharepointonline");

listConnectorOperations метод

Список операцій, визначених у визначенні Swagger сполучної лінії, за винятком операцій, позначених внутрішніми, відсортованих за відображуваним іменем. Цей метод найбільш корисний для сполучних ліній REST (з ключем операції), наприклад Користувачі Office 365. Для табличних з'єднувачів використовуйте методи запиту та рядків замість операцій, які містить цей метод.

Параметри

Установіть значення для цього обов'язкового параметра.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки.

Відповіді

Обіцянка, що містить масив відомостей про операцію. Кожен запис має такі властивості:

Ім'я Тип Опис
name string Ідентифікатор операції, як визначено у визначенні Swagger сполучної лінії. Передайте це значення .executeConnectorOperation
displayName string Ім'я операції, яку можна прочитати людиною для відображення, наприклад зведення Swagger. Повертається, name якщо не визначено зведення.

listConnectorOperations example

const operations = await dataApi.listConnectorOperations?.("sp_shared_sharepointonline");

getConnectorSwagger метод

Отримує визначення Swagger (OpenAPI) для з'єднувача, яке описує операції, які він надає. У повернутому документі описано загальну сполучну лінію. Вона не містить схеми стовпців для табличних сполучних ліній. Використовується getConnectorTableSchema для цієї інформації.

Параметри

Установіть значення для цього обов'язкового параметра.

Ім'я Тип Опис
connectorApiId string Ідентифікатор API з'єднувача, наприклад /providers/Microsoft.PowerApps/apis/shared_sharepointonline. Цей ідентифікатор відрізняється від логічного імені посилання на підключення (connectorLogicalName), яке використовується більшістю інших методів сполучної лінії.

Відповіді

Обіцянка, що містить визначення Swagger сполучної лінії як об'єкт.

getConnectorSwagger example

if (!dataApi.getConnectorSwagger) {
  throw new Error("getConnectorSwagger isn't available on this page.");
}

const swagger = await dataApi.getConnectorSwagger(
  "/providers/Microsoft.PowerApps/apis/shared_sharepointonline"
);

getConnectorTableSchema метод

Отримує схему (визначення стовпців) для таблиці, відкритої сполучною лінією. Сполучна лінія визначає схему, яку вона повертає, і залежить від сполучної лінії. Не думайте, що вона містить кожен динамічний стовпець, який може містити таблиця.

Параметри

Установлення значень для цих обов'язкових параметрів.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки.
dataset string Набір даних, який містить таблицю.
tableName string Внутрішнє ім'я таблиці з властивості, повернутої name .listConnectorTables Не використовуйте коротке ім'я.

Відповіді

Обіцянка, що містить схему таблиці як об'єкт.

getConnectorTableSchema example

if (!dataApi.getConnectorTableSchema) {
  throw new Error("getConnectorTableSchema isn't available on this page.");
}

const schema = await dataApi.getConnectorTableSchema(
  "sp_shared_sharepointonline",
  "https://contoso.sharepoint.com/sites/Marketing",
  documentsTableName // from listConnectorTables
);

retrieveConnectorRow метод

Отримує один рядок із вказаної сполучної таблиці.

Параметри

Установлення значень для цих обов'язкових параметрів.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки.
dataset string Набір даних, який містить таблицю.
tableName string Внутрішнє ім'я таблиці з властивості, повернутої name .listConnectorTables Не використовуйте коротке ім'я.
id string Ідентифікатор рядка, який потрібно отримати.
options Відновлення з'єднанняrowOptions (Необов'язково) Параметри отримання рядка.

Відновлення з'єднанняrowOptions

Ім'я Тип Опис
select string[] (Рекомендовано) Масив імен стовпців, які потрібно отримати. Якщо не вказано, жодна проекція не $select надсилається – сполучна лінія визначає стовпці, які потрібно повернути, і не гарантує повернення кожного стовпця в рядку.

Відповіді

Обіцянка, що містить дані рядка.

retrieveConnectorRow example

if (!dataApi.retrieveConnectorRow) {
  throw new Error("retrieveConnectorRow isn't available on this page.");
}

const row = await dataApi.retrieveConnectorRow(
  "sp_shared_sharepointonline",
  "https://contoso.sharepoint.com/sites/Marketing",
  documentsTableName, // from listConnectorTables
  "1"
);

createConnectorRow метод

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

Параметри

Установлення значень для цих обов'язкових параметрів.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки.
dataset string Набір даних, який містить таблицю.
tableName string Внутрішнє ім'я таблиці з властивості, повернутої name .listConnectorTables Не використовуйте коротке ім'я.
row object Дані рядка, які потрібно створити.

Відповіді

Обіцянка, що містить тіло відповіді, повернуте сполучною лінією(за наявності). Залежно від сполучної лінії це значення може бути створеним рядком, частковим рядком або без значення.

CreateConnectorRow example

if (!dataApi.createConnectorRow) {
  throw new Error("createConnectorRow isn't available on this page.");
}

const newRow = await dataApi.createConnectorRow(
  "sp_shared_sharepointonline",
  "https://contoso.sharepoint.com/sites/Marketing",
  documentsTableName, // from listConnectorTables
  { Title: "New document" }
);

updateConnectorRow метод

Оновлено наявний рядок у вказаній сполучній таблиці.

Параметри

Установлення значень для цих обов'язкових параметрів.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки.
dataset string Набір даних, який містить таблицю.
tableName string Внутрішнє ім'я таблиці з властивості, повернутої name .listConnectorTables Не використовуйте коротке ім'я.
id string Ідентифікатор рядка для оновлення.
row object Дані рядка, які потрібно оновити.

Відповіді

Обіцянка, що містить тіло відповіді, повернуте сполучною лінією(за наявності). Залежно від сполучної лінії це значення може бути оновленим рядком, частковим рядком або без значення. Щоб прочитати поточні значення рядка, зателефонуйте .retrieveConnectorRow

updateConnectorRow example

if (!dataApi.updateConnectorRow) {
  throw new Error("updateConnectorRow isn't available on this page.");
}

const updatedRow = await dataApi.updateConnectorRow(
  "sp_shared_sharepointonline",
  "https://contoso.sharepoint.com/sites/Marketing",
  documentsTableName, // from listConnectorTables
  "1",
  { Title: "Updated title" }
);

deleteConnectorRow метод

Видалення рядка з указаної сполучної таблиці.

Параметри

Установлення значень для цих обов'язкових параметрів.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки.
dataset string Набір даних, який містить таблицю.
tableName string Внутрішнє ім'я таблиці з властивості, повернутої name .listConnectorTables Не використовуйте коротке ім'я.
id string Ідентифікатор рядка, який потрібно видалити.

Відповіді

Обіцянка, що містить результат операції. Коли операцію буде виконано успішно, вона не повертає значення.

deleteConnectorRow example

if (!dataApi.deleteConnectorRow) {
  throw new Error("deleteConnectorRow isn't available on this page.");
}

await dataApi.deleteConnectorRow(
  "sp_shared_sharepointonline",
  "https://contoso.sharepoint.com/sites/Marketing",
  documentsTableName, // from listConnectorTables
  "1"
);

executeConnectorOperation метод

Викликає названу операцію, яку використовує з'єднувач REST (з ключем операції), наприклад HTTP, надсилання повідомлень Teams або Користувачі Office 365. Замість табличних сполучних ліній слід використовувати методи ЗАПИТУ та CRUD рядків.

Параметри

Установлення значень для цих обов'язкових параметрів.

Ім'я Тип Опис
connectorLogicalName string Логічне ім'я посилання на підключення, прив'язане до сторінки.
operationName string Ідентифікатор операції, як визначено у визначенні Swagger сполучної лінії.
parameters object Параметри, необхідні для операції. Передавайте пустий об'єкт ({}), якщо операція не приймає жодних параметрів – цей параметр обов'язковий, навіть якщо немає нічого для надсилання.

Відповіді

Обіцянка, що містить результат операції з цими властивостями. Обіцянка відхиляється, якщо посилання на підключення не вдалося розпізнати, не вдалося отримати визначення Swagger сполучної лінії, операцію не знайдено, виклик не вдалося надіслати або підключення не авторизовано (HTTP 403), і користувач не заповнить запит на згоду на підключення.

Ім'я Тип Опис
ok boolean true якщо базовий стан HTTP менший за 400. Цей стан містить стани переспрямування (3xx), тому не розцінюйте ok себе як докази операції, повернутої даними, – також перевірте status або перевірте body.
status number Необроблений код стану HTTP, повернутий сполучною лінією.
body unknown Аналізований текст відповіді JSON або необроблений рядок, якщо тіло не JSON.

executeConnectorOperation example

У наведеному нижче прикладі припускається операція з ім'ям CopyFile , яка приймає sourceUrl та destinationUrl параметри. Перевірте ідентифікатор операції та його параметри відповідно до власного визначення Swagger з'єднувача (наприклад, з listConnectorOperations або getConnectorSwagger) перед його використанням, оскільки доступні операції та їхні параметри залежать від з'єднувача.

if (!dataApi.executeConnectorOperation) {
  throw new Error("executeConnectorOperation isn't available on this page.");
}

try {
  const result = await dataApi.executeConnectorOperation(
    "sp_shared_sharepointonline",
    "CopyFile",
    { sourceUrl: "/sites/Marketing/Shared Documents/file.docx", destinationUrl: "/sites/Sales/Shared Documents/file.docx" }
  );

  if (result.ok) {
    console.log(result.body);
  }
  else {
    console.log(result.status);
  }
}
catch (error) {
  console.log(error);
}