วิธีการเชื่อมต่อสําหรับหน้าที่สร้าง

ใช้วิธีการเชื่อมต่อของ 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);
}