แชร์ผ่าน


ฟังก์ชัน RecordInfo

ใช้กับ: แอป Canvas แอปที่ขับเคลื่อนด้วยโมเดล

ให้ข้อมูลเกี่ยวกับ เรกคอร์ด ของ แหล่งข้อมูล

ใช้ RecordInfo เพื่อรับข้อมูลเกี่ยวกับเรกคอร์ดเฉพาะของแหล่งข้อมูล แหล่งข้อมูลต้องเป็นแบบตารางและเข้ากันได้กับฟังก์ชัน Remove และ Patch

ในตอนนี้มีเฉพาะ Microsoft Dataverse ที่รองรับ เรกคอร์ดจากแหล่งข้อมูลอื่นทั้งหมดจะส่งผลให้เกิดข้อผิดพลาดของสูตร

ข้อมูลที่มีอยู่:

อาร์กิวเมนต์ข้อมูล รายละเอียด
บันทึกข้อมูล.ลบสิทธิ์ ผู้ใช้ปัจจุบันมีสิทธิ์ในการลบเรกคอร์ดจากแหล่งข้อมูลนี้หรือไม่
บันทึกข้อมูล แก้ไข อนุญาต ผู้ใช้ปัจจุบันมีสิทธิ์ในการแก้ไขเรกคอร์ดในแหล่งข้อมูลนี้หรือไม่
บันทึกข้อมูล.อ่านสิทธิ์ ผู้ใช้ปัจจุบันมีสิทธิ์ในการอ่านเรกคอร์ดจากแหล่งข้อมูลนี้หรือไม่

RecordInfo คืนค่า แบบบูลีน:

ค่าที่ส่งคืน รายละเอียด
จริง ผู้ใช้มีสิทธิ์
เท็จ ผู้ใช้นี้ไม่มีสิทธิ์ ถ้าเรกคอร์ดคือ ว่างเปล่า ดังนั้น RecordInfo จะส่งกลับ เท็จ

RecordInfo จะนำการอนุญาตในระดับ แหล่งข้อมูล เข้ามาพิจารณาด้วยเช่นกัน ตัวอย่างเช่น หากผู้ใช้มีสิทธิ์ที่ระดับเรกคอร์ดเพื่อแก้ไขเรกคอร์ด แต่ผู้ใช้ไม่มีสิทธิ์ในระดับตาราง ก็จะส่งกลับ เท็จ สำหรับ ModifyPermission ใช้ฟังก์ชัน DataSourceInfo เพื่อรับข้อมูลเกี่ยวกับแหล่งข้อมูลทั้งหมด

ไวยากรณ์

ข้อมูลบันทึก( บันทึก, ข้อมูล )

  • บันทึก – จำเป็น เรกคอร์ดที่จะทดสอบ
  • ข้อมูล – จำเป็น ข้อมูลที่ต้องการสำหรับเรกคอร์ด

ตัวอย่าง

RecordInfo( First(Accounts), RecordInfo.EditPermission )

ตรวจสอบสิทธิ์การแก้ไขสำหรับเรกคอร์ดแรกในแหล่งข้อมูล Accounts ซึ่งอาจอยู่ใน Dataverse, SharePoint, SQL Server หรือแหล่งข้อมูลแบบตารางอื่น หากผู้ใช้มีสิทธิ์ให้แก้ไขเรกคอร์ดนี้และแก้ไขแหล่งข้อมูล Accounts โดยทั่วไปแล้ว RecordInfo จะส่งกลับ จริง

With( { MyRecord: First( Accounts ) },
      RecordInfo( MyRecord, RecordInfo.EditPermission ) )

บันทึกเรกคอร์ดโดยใช้ฟังก์ชัน With แล้วส่งผ่านค่านี้ไปที่ฟังก์ชัน RecordInfo ผลลัพธ์จะเหมือนกับตัวอย่างที่แล้ว

Collect( MyAccounts, FirstN( Accounts, 10 ) );
RecordInfo( First( MyAccounts ), RecordInfo.EditPermission ) )

บันทึกเรกคอร์ด 10 รายการแรกจากแหล่งข้อมูล Accounts เข้าสู่คอลเลกชัน MyAccounts เนื่องจากเรกคอร์ดมีต้นกำเนิดมาจากแหล่งข้อมูล จึงสามารถใช้กับฟังก์ชัน RecordInfo ผลลัพธ์จะเหมือนกับตัวอย่างที่แล้ว

Collect( MyCollection, [ 1, 2, 3 ] );
RecordInfo( First(MyCollection), RecordInfo.DeletePermission )

สร้างคอลเลกชัน MyCollection และทดสอบเรกคอร์ดแรกเพื่อพิจารณาว่าสามารถลบออกได้หรือไม่ เนื่องจากต้นกำเนิดของเรกคอร์ดคือคอลเลกชันและไม่ใช่แหล่งข้อมูล RecordInfo จะส่งคืนข้อผิดพลาด