Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте методы соединителя dataApi объекта для работы с данными, предоставляемыми соединителем Power Platform, привязанным к странице.
Примечание.
Методы соединителя являются необязательными в общем dataApi контракте. Некоторые узлы не реализуют их, поэтому убедитесь, что метод существует перед вызовом. Метод, который присутствует, не означает, что страница привязана к нему соединителем или что подключение, набор данных, таблица или операция настроены, авторизованы или разрешены должным образом.
В отличие от методов действий и функций, методы соединителя отклоняют возвращаемое обещание при сбое вызова, например, если ссылка на подключение не может быть разрешена, подключение не авторизовано, и пользователь не завершает запрос согласия, или соединитель возвращает состояние ошибки.
executeConnectorOperation разрешается для ok: false большинства состояний ошибок, но по-прежнему отклоняется для отсутствующих операций, несанкционированного подключения (403) без полного согласия или сбоя транспорта. Обтекание вызовов соединителя в try/catch.
| Метод | Description |
|---|---|
createConnectorRow |
Создает новую строку в указанной таблице соединителя. |
deleteConnectorRow |
Удаляет строку из указанной таблицы соединителей. |
executeConnectorOperation |
Вызывает именованную операцию, предоставленную соединителем REST (ключом операции), например Пользователи Office 365. |
getConnectorSwagger |
Извлекает определение Swagger (OpenAPI) для соединителя. |
getConnectorTableSchema |
Извлекает схему таблицы (также называемой сущностью или списком), предоставляемой соединителем. |
listConnectorDatasets |
Выводит список наборов данных, доступных для соединителя. |
listConnectorOperations |
Выводит список операций, предоставляемых соединителем REST (ключом операции). |
listConnectorTables |
Список таблиц, доступных в указанном наборе данных соединителя. |
queryConnectorTable |
Запрашивает таблицу, предоставленную соединителем, с указанными параметрами. |
retrieveConnectorRow |
Извлекает одну строку из указанной таблицы соединителя. |
updateConnectorRow |
Обновляет существующую строку в указанной таблице соединителя. |
queryConnectorTableМетод
Запрашивает таблицу, предоставленную соединителем, с помощью указанных параметров.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанная к странице (например, sp_shared_sharepointonline). |
dataset |
string |
Набор данных, содержащий таблицу, например URL-адрес сайта SharePoint. |
tableName |
string |
Внутреннее имя таблицы из name свойства, возвращаемого listConnectorTables. Не используйте отображаемое имя. |
options |
QueryConnectorTableOptions | Параметры запроса таблицы. |
QueryConnectorTableOptions
| Name | Type | Description |
|---|---|---|
select |
string[] |
(Рекомендуется) Массив имен столбцов для извлечения. |
filter |
string |
(Необязательно) Выражение фильтра, поддерживаемого соединителем. |
orderBy |
string |
(Необязательно) Выражение order-by, поддерживаемого соединителем. |
top |
number |
(Необязательно) Максимальное количество возвращаемых строк. |
Returns
Обещание, содержащее результат операции. После успешной операции обещание возвращает объект, содержащий таблицу данных с результатами со следующими свойствами:
| Name | Type | Description |
|---|---|---|
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Метод
Перечисляет таблицы (списки или сущности), доступные в указанном наборе данных соединителя.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанной к странице. |
dataset |
string |
Набор данных для перечисления таблиц. |
Returns
Обещание, содержащее массив сведений о таблице. Каждая запись имеет следующие свойства:
| Name | Type | Description |
|---|---|---|
name |
string |
Внутреннее имя таблицы. |
displayName |
string |
Отображаемое имя таблицы. |
Пример listConnectorTables
const tables = await dataApi.listConnectorTables?.(
"sp_shared_sharepointonline",
"https://contoso.sharepoint.com/sites/Marketing"
);
listConnectorDatasetsМетод
Выводит список наборов данных, доступных для соединителя, таких как SharePoint сайты, к которых может получить доступ подключение.
Parameters
Задайте значение для этого обязательного параметра.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанной к странице. |
Returns
Обещание, содержащее массив сведений о наборе данных. Каждая запись имеет следующие свойства:
| Name | Type | Description |
|---|---|---|
name |
string |
Внутреннее имя или идентификатор набора данных. |
displayName |
string |
Отображаемое имя набора данных. |
Пример listConnectorDatasets
const datasets = await dataApi.listConnectorDatasets?.("sp_shared_sharepointonline");
listConnectorOperationsМетод
Выводит список операций, определенных в определении Swagger соединителя, за исключением операций, помеченных внутренними, отсортированных по отображаемого имени. Этот метод наиболее полезен для соединителей REST (клавиши операций), таких как Пользователи Office 365. Для табличных соединителей используйте методы запроса и строки вместо операций, указанных в этом методе.
Parameters
Задайте значение для этого обязательного параметра.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанной к странице. |
Returns
Обещание, содержащее массив сведений об операциях. Каждая запись имеет следующие свойства:
| Name | Type | Description |
|---|---|---|
name |
string |
Идентификатор операции, определенный в определении Swagger соединителя. Передайте это значение executeConnectorOperationв . |
displayName |
string |
Имя операции, доступной для чтения для отображения, например сводка Swagger. Возвращается обратно, name если сводка не определена. |
Пример listConnectorOperations
const operations = await dataApi.listConnectorOperations?.("sp_shared_sharepointonline");
getConnectorSwaggerМетод
Извлекает определение Swagger (OpenAPI) для соединителя, описывающее операции, предоставляемые им. Возвращаемый документ описывает соединитель в целом. Она не включает схемы столбцов для табличных соединителей. Используйте getConnectorTableSchema для этой информации.
Parameters
Задайте значение для этого обязательного параметра.
| Name | Type | Description |
|---|---|---|
connectorApiId |
string |
Идентификатор API соединителя, например /providers/Microsoft.PowerApps/apis/shared_sharepointonline. Этот идентификатор отличается от логического имени подключения (connectorLogicalName), используемого большинством других методов соединителя. |
Returns
Обещание, содержащее определение Swagger соединителя в качестве объекта.
Пример getConnectorSwagger
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Метод
Извлекает схему (определения столбцов) для таблицы, предоставляемой соединителем. Соединитель определяет схему, которую она возвращает, и она зависит от соединителя. Не предполагайте, что он включает в себя каждый динамический столбец, который может содержать таблицу.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанной к странице. |
dataset |
string |
Набор данных, содержащий таблицу. |
tableName |
string |
Внутреннее имя таблицы из name свойства, возвращаемого listConnectorTables. Не используйте отображаемое имя. |
Returns
Обещание, содержащее схему таблицы в качестве объекта.
Пример getConnectorTableSchema
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Метод
Извлекает одну строку из указанной таблицы соединителя.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанной к странице. |
dataset |
string |
Набор данных, содержащий таблицу. |
tableName |
string |
Внутреннее имя таблицы из name свойства, возвращаемого listConnectorTables. Не используйте отображаемое имя. |
id |
string |
Идентификатор строки, извлекаемой. |
options |
RetrieveConnectorRowOptions | (Необязательно) Параметры получения строки. |
RetrieveConnectorRowOptions
| Name | Type | Description |
|---|---|---|
select |
string[] |
(Рекомендуется) Массив имен столбцов для извлечения. Если опущено, проекция не $select отправляется— соединитель определяет, какие столбцы следует возвращать и не гарантирует возврат каждого столбца в строке. |
Returns
Обещание, содержащее данные строки.
Пример retrieveConnectorRow
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Метод
Создает новую строку в указанной таблице соединителя.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанной к странице. |
dataset |
string |
Набор данных, содержащий таблицу. |
tableName |
string |
Внутреннее имя таблицы из name свойства, возвращаемого listConnectorTables. Не используйте отображаемое имя. |
row |
object |
Создаваемые данные строки. |
Returns
Обещание, содержащее текст ответа, возвращаемый соединителем, если таковой имеется. В зависимости от соединителя это значение может быть созданной строкой, частичной строкой или без значения.
Пример createConnectorRow
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Метод
Обновляет существующую строку в указанной таблице соединителя.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанной к странице. |
dataset |
string |
Набор данных, содержащий таблицу. |
tableName |
string |
Внутреннее имя таблицы из name свойства, возвращаемого listConnectorTables. Не используйте отображаемое имя. |
id |
string |
Идентификатор строки для обновления. |
row |
object |
Обновляемая строка данных. |
Returns
Обещание, содержащее текст ответа, возвращаемый соединителем, если таковой имеется. В зависимости от соединителя это значение может быть обновленной строкой, частичной строкой или без значения. Чтобы считывать текущие значения строки, вызовите retrieveConnectorRow.
Пример updateConnectorRow
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Метод
Удаляет строку из указанной таблицы соединителей.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанной к странице. |
dataset |
string |
Набор данных, содержащий таблицу. |
tableName |
string |
Внутреннее имя таблицы из name свойства, возвращаемого listConnectorTables. Не используйте отображаемое имя. |
id |
string |
Идентификатор строки для удаления. |
Returns
Обещание, содержащее результат операции. Когда операция завершается успешно, она не возвращает значения.
Пример deleteConnectorRow
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 send-message или Пользователи Office 365. Вместо этого табличные соединители должны использовать методы запроса и строки CRUD.
Parameters
Задайте значения для этих обязательных параметров.
| Name | Type | Description |
|---|---|---|
connectorLogicalName |
string |
Логическое имя ссылки на подключение, привязанной к странице. |
operationName |
string |
Идентификатор операции, определенный в определении Swagger соединителя. |
parameters |
object |
Параметры, необходимые операции. Передайте пустой объект ({}), если операция не принимает параметров, этот параметр требуется, даже если нет ничего для отправки. |
Returns
Обещание, содержащее результат операции с этими свойствами. Обещание отклоняет, если ссылка на подключение не может быть разрешена, определение Swagger соединителя не может быть извлечено, операция не найдена в нем, вызов не может быть отправлен, или подключение не авторизовано (HTTP 403), и пользователь не завершает запрос согласия на подключение.
| Name | Type | Description |
|---|---|---|
ok |
boolean |
true если базовое состояние HTTP меньше 400. Это состояние включает в себя состояния перенаправления (3xx), поэтому не рассматриваются ok только как подтверждение возвращаемых данных операции — также проверка или проверка statusbody. |
status |
number |
Необработанный код состояния HTTP, возвращаемый соединителем. |
body |
unknown |
Текст ответа JSON или необработанная строка, если текст не json. |
Пример executeConnectorOperation
В следующем примере предполагается операция с именем 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);
}