หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
ใช้วิธีการเชื่อมต่อของ dataApi วัตถุเพื่อทํางานกับข้อมูลที่แสดงโดยตัวเชื่อมต่อ Power Platform ที่ผูกไว้กับหน้า
Note
วิธีการเชื่อมต่อเป็นทางเลือกในสัญญาที่แชร์dataApi โฮสต์บางตัวไม่ได้ใช้โฮสต์ดังนั้นโปรดตรวจสอบว่ามีเมธอดอยู่ก่อนที่จะเรียกใช้ วิธีการที่แสดงไม่ได้หมายความว่าหน้ามีตัวเชื่อมต่อที่ผูกไว้ หรือการเชื่อมต่อ ชุดข้อมูล ตาราง หรือการดําเนินการถูกกําหนดค่า ได้รับอนุญาต หรืออนุญาตตามที่คาดไว้
แตกต่างจากการดําเนินการและวิธีฟังก์ชัน วิธีการตัวเชื่อมต่อปฏิเสธสัญญาที่ส่งคืนเมื่อการเรียกใช้ล้มเหลว — ตัวอย่างเช่นเมื่อไม่สามารถแก้ไขการอ้างอิงการเชื่อมต่อการเชื่อมต่อไม่ได้รับอนุญาตและผู้ใช้จะไม่เสร็จสิ้นพร้อมท์ความยินยอม หรือตัวเชื่อมต่อส่งกลับสถานะข้อผิดพลาด
executeConnectorOperation แก้ไขด้วย ok: false สําหรับสถานะข้อผิดพลาดส่วนใหญ่ แต่ยังคงปฏิเสธสําหรับการดําเนินการที่ขาดหายไป การเชื่อมต่อที่ไม่ได้รับอนุญาต (403) โดยไม่ได้รับความยินยอม หรือความล้มเหลวในการส่งผ่าน เรียกตัวเชื่อมต่อครอบในtry/catch
| วิธีการ | คำอธิบาย |
|---|---|
createConnectorRow |
สร้างแถวใหม่ในตารางตัวเชื่อมต่อที่ระบุ |
deleteConnectorRow |
ลบแถวจากตารางตัวเชื่อมต่อที่ระบุ |
executeConnectorOperation |
เรียกใช้การดําเนินการที่มีชื่อซึ่งแสดงโดยตัวเชื่อมต่อ REST (operation-keyed) เช่น ผู้ใช้ Office 365 |
getConnectorSwagger |
เรียกใช้ข้อกําหนด Swagger (OpenAPI) สําหรับตัวเชื่อมต่อ |
getConnectorTableSchema |
เรียกใช้ Schema สําหรับตาราง (หรือที่เรียกว่าเอนทิตีหรือรายการ) ที่เปิดเผยโดยตัวเชื่อมต่อ |
listConnectorDatasets |
แสดงรายการชุดข้อมูลที่พร้อมใช้งานสําหรับตัวเชื่อมต่อ |
listConnectorOperations |
แสดงรายการการดําเนินการที่แสดงโดยตัวเชื่อมต่อ REST (การดําเนินการคีย์) |
listConnectorTables |
แสดงรายการตารางที่พร้อมใช้งานในชุดข้อมูลตัวเชื่อมต่อที่ระบุ |
queryConnectorTable |
คิวรีตารางที่แสดงโดยตัวเชื่อมต่อด้วยตัวเลือกที่ระบุ |
retrieveConnectorRow |
ดึงข้อมูลแถวเดียวจากตารางตัวเชื่อมต่อที่ระบุ |
updateConnectorRow |
อัปเดตแถวที่มีอยู่ในตารางตัวเชื่อมต่อที่ระบุ |
queryConnectorTable วิธี
คิวรีตารางที่แสดงโดยตัวเชื่อมต่อโดยใช้ตัวเลือกที่ระบุ
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นเหล่านี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า (ตัวอย่างเช่น sp_shared_sharepointonline) |
dataset |
string |
ชุดข้อมูลที่ประกอบด้วยตาราง เช่น URL ของไซต์ SharePoint |
tableName |
string |
ชื่อภายในของตาราง จากคุณสมบัติ ที่nameส่งกลับโดยlistConnectorTables อย่าใช้ชื่อที่แสดง |
options |
ตัวเลือก QueryConnectorTable | ตัวเลือกสําหรับการคิวรีตาราง |
ตัวเลือก QueryConnectorTable
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
select |
string[] |
(แนะนํา) อาร์เรย์ของชื่อคอลัมน์ที่จะดึงข้อมูล |
filter |
string |
(ไม่บังคับ) นิพจน์ตัวกรองที่ได้รับการสนับสนุนโดยตัวเชื่อมต่อ |
orderBy |
string |
(ไม่บังคับ) นิพจน์ Order-by ที่ได้รับการสนับสนุนโดยตัวเชื่อมต่อ |
top |
number |
(ไม่บังคับ) จํานวนแถวสูงสุดที่จะแสดง |
การคืนสินค้า
สัญญาที่ประกอบด้วยผลลัพธ์ของการดําเนินงาน เมื่อการดําเนินการสําเร็จ สัญญาจะส่งคืนออบเจ็กต์ที่มีตารางข้อมูลพร้อมผลลัพธ์ที่มีคุณสมบัติเหล่านี้:
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
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 ตารางอยู่ในจาก namelistConnectorTablesดังที่แสดงด้านบน
listConnectorTables วิธี
แสดงรายการตาราง (รายการหรือเอนทิตี) ที่พร้อมใช้งานในชุดข้อมูลตัวเชื่อมต่อที่ระบุ
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นเหล่านี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า |
dataset |
string |
ชุดข้อมูลที่จะแสดงรายการตารางให้ |
การคืนสินค้า
สัญญาที่ประกอบด้วยอาร์เรย์ของข้อมูลตาราง แต่ละรายการมีคุณสมบัติเหล่านี้:
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
name |
string |
ชื่อภายในของตาราง |
displayName |
string |
ชื่อที่แสดงของตาราง |
ตัวอย่าง listConnectorTables
const tables = await dataApi.listConnectorTables?.(
"sp_shared_sharepointonline",
"https://contoso.sharepoint.com/sites/Marketing"
);
listConnectorDatasets วิธี
แสดงรายการชุดข้อมูลที่พร้อมใช้งานสําหรับตัวเชื่อมต่อ เช่น SharePoint ไซต์ที่การเชื่อมต่อสามารถเข้าถึงได้
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นนี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า |
การคืนสินค้า
สัญญาที่ประกอบด้วยอาร์เรย์ของข้อมูลชุดข้อมูล แต่ละรายการมีคุณสมบัติเหล่านี้:
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
name |
string |
ชื่อหรือตัวระบุภายในของชุดข้อมูล |
displayName |
string |
ชื่อที่แสดงของชุดข้อมูล |
ตัวอย่าง listConnectorDatasets
const datasets = await dataApi.listConnectorDatasets?.("sp_shared_sharepointonline");
listConnectorOperations วิธี
แสดงรายการการดําเนินการที่กําหนดไว้ในข้อกําหนด Swagger ของตัวเชื่อมต่อ ยกเว้นการดําเนินการที่ทําเครื่องหมายภายใน โดยเรียงลําดับตามชื่อที่แสดง วิธีนี้มีประโยชน์มากที่สุดสําหรับตัวเชื่อมต่อ REST (operation-keyed) เช่น ผู้ใช้ Office 365 สําหรับตัวเชื่อมต่อแบบตาราง ให้ใช้วิธีการคิวรีและแถวแทนการดําเนินการที่แสดงรายการวิธีการนี้
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นนี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า |
การคืนสินค้า
สัญญาที่ประกอบด้วยอาร์เรย์ของข้อมูลการดําเนินงาน แต่ละรายการมีคุณสมบัติเหล่านี้:
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
name |
string |
ID การดําเนินการตามที่กําหนดไว้ในข้อกําหนด Swagger ของตัวเชื่อมต่อ ส่งผ่านค่านี้ไปยังexecuteConnectorOperation |
displayName |
string |
ชื่อการดําเนินการที่สามารถอ่านได้สําหรับการแสดงผล เช่น สรุป Swagger จะกลับไป name เป็น ถ้าไม่ได้กําหนดข้อมูลสรุปไว้ |
ตัวอย่าง listConnectorOperations
const operations = await dataApi.listConnectorOperations?.("sp_shared_sharepointonline");
getConnectorSwagger วิธี
เรียกใช้ข้อกําหนด Swagger (OpenAPI) สําหรับตัวเชื่อมต่อ ซึ่งอธิบายการดําเนินการที่จะแสดง เอกสารผลลัพธ์จะอธิบายตัวเชื่อมต่อโดยรวม ซึ่งไม่รวม Schema คอลัมน์ต่อตารางสําหรับตัวเชื่อมต่อแบบตาราง ใช้สําหรับ getConnectorTableSchema ข้อมูลนั้น
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นนี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorApiId |
string |
ตัวระบุ API ของตัวเชื่อมต่อ เช่น/providers/Microsoft.PowerApps/apis/shared_sharepointonline ตัวระบุนี้จะแตกต่างจากชื่อตรรกะการอ้างอิงการเชื่อมต่อ (connectorLogicalName) ที่ใช้โดยวิธีการเชื่อมต่ออื่นๆ ส่วนใหญ่ |
การคืนสินค้า
สัญญาที่มีข้อกําหนด 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 วิธี
เรียกใช้ schema (ข้อกําหนดคอลัมน์) สําหรับตารางที่เปิดเผยโดยตัวเชื่อมต่อ ตัวเชื่อมต่อกําหนดสคีมาที่จะส่งกลับ และจะแตกต่างกันไปตามตัวเชื่อมต่อ อย่าถือว่าคอลัมน์ดังกล่าวรวมทุกคอลัมน์แบบไดนามิกที่ตารางอาจมีอยู่
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นเหล่านี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า |
dataset |
string |
ชุดข้อมูลที่มีตาราง |
tableName |
string |
ชื่อภายในของตาราง จากคุณสมบัติ ที่nameส่งกลับโดยlistConnectorTables อย่าใช้ชื่อที่แสดง |
การคืนสินค้า
สัญญาที่มีเค้าร่างของตารางเป็นออบเจ็กต์
ตัวอย่าง 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 วิธี
ดึงข้อมูลแถวเดียวจากตารางตัวเชื่อมต่อที่ระบุ
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นเหล่านี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า |
dataset |
string |
ชุดข้อมูลที่มีตาราง |
tableName |
string |
ชื่อภายในของตาราง จากคุณสมบัติ ที่nameส่งกลับโดยlistConnectorTables อย่าใช้ชื่อที่แสดง |
id |
string |
ID ของแถวที่จะเรียกใช้ |
options |
RetrieveConnectorRowOptions | (ไม่บังคับ) ตัวเลือกสําหรับการดึงข้อมูลแถว |
RetrieveConnectorRowOptions
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
select |
string[] |
(แนะนํา) อาร์เรย์ของชื่อคอลัมน์ที่จะดึงข้อมูล ถ้าเว้นไว้ จะไม่มี $select การส่งการคาดการณ์ — ตัวเชื่อมต่อจะกําหนดว่าคอลัมน์ใดที่จะแสดง และไม่รับประกันว่าจะส่งกลับทุกคอลัมน์ในแถว |
การคืนสินค้า
สัญญาที่มีข้อมูลแถว
ตัวอย่าง 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 วิธี
สร้างแถวใหม่ในตารางตัวเชื่อมต่อที่ระบุ
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นเหล่านี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า |
dataset |
string |
ชุดข้อมูลที่มีตาราง |
tableName |
string |
ชื่อภายในของตาราง จากคุณสมบัติ ที่nameส่งกลับโดยlistConnectorTables อย่าใช้ชื่อที่แสดง |
row |
object |
ข้อมูลแถวที่จะสร้าง |
การคืนสินค้า
สัญญาที่มีร่างกายตอบสนองกลับคืนโดยตัวเชื่อมต่อถ้ามี ขึ้นอยู่กับตัวเชื่อมต่อ ค่านี้สามารถเป็นแถวที่สร้างขึ้น แถวบางส่วน หรือไม่มีค่าก็ได้
ตัวอย่าง 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 วิธี
อัปเดตแถวที่มีอยู่ในตารางตัวเชื่อมต่อที่ระบุ
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นเหล่านี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า |
dataset |
string |
ชุดข้อมูลที่มีตาราง |
tableName |
string |
ชื่อภายในของตาราง จากคุณสมบัติ ที่nameส่งกลับโดยlistConnectorTables อย่าใช้ชื่อที่แสดง |
id |
string |
ID ของแถวที่จะอัปเดต |
row |
object |
ข้อมูลแถวที่จะอัปเดต |
การคืนสินค้า
สัญญาที่มีร่างกายตอบสนองกลับคืนโดยตัวเชื่อมต่อถ้ามี ค่านี้สามารถเป็นแถวที่อัปเดต แถวบางส่วน หรือไม่มีค่า ขึ้นอยู่กับตัวเชื่อมต่อ เมื่อต้องการอ่านค่าปัจจุบันของแถว ให้เรียกใช้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 วิธี
ลบแถวจากตารางตัวเชื่อมต่อที่ระบุ
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นเหล่านี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า |
dataset |
string |
ชุดข้อมูลที่มีตาราง |
tableName |
string |
ชื่อภายในของตาราง จากคุณสมบัติ ที่nameส่งกลับโดยlistConnectorTables อย่าใช้ชื่อที่แสดง |
id |
string |
ID ของแถวที่จะลบ |
การคืนสินค้า
สัญญาที่ประกอบด้วยผลลัพธ์ของการดําเนินงาน เมื่อการดําเนินการสําเร็จ จะไม่มีการคืนค่า
ตัวอย่าง 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 แทน
พารามิเตอร์
ตั้งค่าสําหรับพารามิเตอร์ที่จําเป็นเหล่านี้
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
connectorLogicalName |
string |
ชื่อตรรกะของการอ้างอิงการเชื่อมต่อที่ผูกกับหน้า |
operationName |
string |
ID การดําเนินการตามที่กําหนดไว้ในข้อกําหนด Swagger ของตัวเชื่อมต่อ |
parameters |
object |
พารามิเตอร์ที่กําหนดโดยการดําเนินการ ส่งผ่านวัตถุที่ว่างเปล่า ({}) ถ้าการดําเนินการไม่ใช้พารามิเตอร์ใดๆ แม้ว่าจะไม่มีสิ่งใดที่จะส่ง |
การคืนสินค้า
สัญญาที่มีผลการดําเนินงานกับคุณสมบัติเหล่านี้ สัญญาปฏิเสธถ้าการอ้างอิงการเชื่อมต่อไม่สามารถแก้ไขได้ ข้อกําหนด Swagger ของตัวเชื่อมต่อไม่สามารถเรียกใช้ได้ การดําเนินการไม่พบในนั้น การเรียกใช้ไม่สามารถส่งได้ หรือการเชื่อมต่อไม่ได้รับอนุญาต (HTTP 403) และผู้ใช้ไม่สามารถดําเนินการตามพร้อมท์ความยินยอมการเชื่อมต่อให้เสร็จสมบูรณ์
| ชื่อ | Type | คำอธิบาย |
|---|---|---|
ok |
boolean |
true เมื่อสถานะ HTTP พื้นฐานน้อยกว่า 400 สถานะนี้รวมถึงสถานะการเปลี่ยนเส้นทาง (3xx) ดังนั้นอย่าถือว่า ok เป็นหลักฐานการดําเนินการส่งกลับข้อมูล — ตรวจสอบ status หรือตรวจสอบ bodyด้วย |
status |
number |
รหัสสถานะ HTTP ดิบที่ส่งกลับโดยตัวเชื่อมต่อ |
body |
unknown |
ตัวตอบสนอง JSON ที่แยกวิเคราะห์ หรือสตริงดิบถ้าเนื้อความไม่ใช่ JSON |
ตัวอย่าง executeConnectorOperation
ตัวอย่างต่อไปนี้ถือว่าการดําเนินการที่ CopyFile ชื่อว่ายอมรับ sourceUrl และ destinationUrl พารามิเตอร์ ตรวจสอบ ID การดําเนินการและพารามิเตอร์เทียบกับข้อกําหนด 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);
}