ฟังก์ชัน 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 จะส่งคืนข้อผิดพลาด