แก้ไขข้อขัดแย้งในการซิงค์กับเซิร์ฟเวอร์
บทความนี้ให้ข้อมูลเพื่อช่วยคุณแก้ไขข้อขัดแย้งในการซิงโครไนซ์มือถือกับเซิร์ฟเวอร์
ตารางข้อผิดพลาดการซิงค์
ในกรณีที่เกิดข้อผิดพลาดในการซิงโครไนซ์ ระบบจะสร้างรายการใหม่ในตาราง ข้อผิดพลาดการซิงค์ ภายใน Dataverse โดยอัตโนมัติ ตารางนี้ได้จัดโครงสร้างด้วยคอลัมน์ต่อไปนี้
ชื่อคอลัมน์ | Description | ตัวอย่างเช่น |
---|---|---|
เวลาผิดพลาด | เวลาที่ข้อผิดพลาดถูกสร้างขึ้น | 5/17/2024 7:16 AM |
ข้อความแสดงข้อผิดพลาด | คำอธิบายข้อผิดพลาด | Entity Account With Id = <RowId> Does Not Exist |
ชนิดข้อผิดพลาด | ชนิดของข้อผิดพลาด เช่น ข้อขัดแย้งหรือข้อผิดพลาดไม่พบเรกคอร์ด | ไม่พบเรกคอร์ด |
บันทึก | เรกคอร์ดที่อัปเดตในข้อผิดพลาดการซิงค์ | Contoso |
เจ้าของ | ผู้ใช้ที่อัปเดตเรกคอร์ด | John Doe |
การดำเนินการ | การดำเนินการที่นำไปใช้กับเรกคอร์ดที่จะซิงค์ | ปรับปรุง |
ข้อมูลการดำเนินการ | Json ที่มีส่วนข้อมูลของการดำเนินการ | {"lastname":"Contoso2"} |
ขอข้อมูล | Json ที่มีการสอบถาม | {"lastname":"Contoso2","syncerror__regardingentityid":<syncerrorId>,"entitylogicalname":"account"} |
รหัสข้อผิดพลาด | รหัสของข้อผิดพลาด | -2147015424 |
หมายเหตุ
ตรวจสอบให้แน่ใจว่าบทบาทที่มอบหมายให้กับผู้ใช้ให้สิทธิ์การอ่านในตาราง ข้อผิดพลาดการซิงค์ เรียนรู้เพิ่มเติม: สร้างหรือแก้ไขบทบาทความปลอดภัยเพื่อจัดการการเข้าถึง
คำแนะนำเกี่ยวกับวิธีการใช้ตารางข้อผิดพลาดการซิงค์
ตาราง ข้อผิดพลาดการซิงค์ เป็นตาราง Dataverse มาตรฐาน เราขอแนะนำให้คุณสร้าง แอปแบบจำลอง เพื่อจัดการข้อผิดพลาดการซิงค์
หากคุณเรียกใช้แอปแบบจำลอง คุณสามารถดูข้อผิดพลาดการซิงค์ของผู้ใช้แต่ละรายได้ หากคุณเลือกแถวข้อผิดพลาดการซิงค์ คุณสามารถ ลองเปลี่ยนอีกครั้ง จากแถบคำสั่ง
ข้อผิดพลาดการซิงค์ในหน้าสถานะอุปกรณ์
ข้อผิดพลาดการซิงค์จะแสดงขึ้นมาในหน้า สถานะอุปกรณ์ หน้า สถานะอุปกรณ์ จะพร้อมใช้งาน ในแอปที่ขับเคลื่อนด้วยโมเดล แต่จะต้องตั้งค่าในแอปแคนวาส ดูที่ การใช้เทมเพลตออฟไลน์และไอคอนสถานะออฟไลน์ สำหรับข้อมูลเพิ่มเติม
ใช้โฟลว์ระบบคลาวด์เพื่อดำเนินการกับข้อผิดพลาดการซิงค์
คุณสามารถสร้าง โฟลว์ระบบคลาวด์อัตโนมัติ ใน Power Automate โดยใช้ทริกเกอร์ Dataverse เมื่อมีการเพิ่ม แก้ไข หรือลบแถว โฟลว์สามารถ ส่งอีเมล หรือ ส่งการแจ้งเตือน บนอุปกรณ์โดยอัตโนมัติ
หมายเหตุ
หากต้องการดึงที่อยู่อีเมลของผู้ใช้ภายในโฟลว์ ให้เพิ่มการดำเนินการ Dataverse รับแถวด้วยรหัส โดยใช้คอลัมน์ เจ้าของ ของแถว ข้อผิดพลาดการซิงค์
ความขัดแย้งในการซิงค์
เมื่อมีข้อมูลที่ไม่ตรงกันระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ ข้อผิดพลาดของข้อขัดแย้งจะเกิดขึ้น ตามค่าเริ่มต้น การเปลี่ยนแปลงที่ทำโดยผู้ใช้ในโหมดออฟไลน์จะถูกซิงค์กับเซิร์ฟเวอร์โดยอัตโนมัติเมื่อผู้ใช้กลับมาออนไลน์
วิธีแก้ไขข้อขัดแย้งในการซิงค์
เมื่อผู้ใช้ทำการเปลี่ยนแปลงข้อมูลในแอปออฟไลน์ การอัปเดตแต่ละคอลัมน์จะถูกส่งกลับไป Dataverse ทันทีที่เครือข่ายพร้อมใช้งาน การอัปเดตล่าสุดของแต่ละคอลัมน์จะถูกเก็บไว้ใน Dataverse ดังนั้น การซิงค์นี้จะไม่ล้มเหลวเนื่องจากการเปลี่ยนแปลงที่ขัดแย้งกัน
ปลั๊กอินฝั่งเซิร์ฟเวอร์และการตรวจสอบความถูกต้องอาจทำให้การเปลี่ยนแปลงเป็นโมฆะ การเปลี่ยนแปลงเหล่านั้นจะถูกเปลี่ยนกลับภายในเครื่อง และมีการเขียนข้อผิดพลาดไปที่ ข้อผิดพลาดในการซิงค์ ในตาราง Dataverse
การตั้งค่าการแก้ไขข้อขัดแย้ง
ข้อสำคัญ
การตั้งค่าการแก้ไขข้อขัดแย้งใช้ไม่ได้กับแอปพื้นที่ทำงาน
หากการอัปเดตที่ทำในขณะออฟไลน์ถูกปฏิเสธบ่อยเกินไป ให้พิจารณาเปลี่ยนการตั้งค่าการแก้ไขข้อขัดแย้งเป็นค่าเริ่มต้น
- ลงชื่อเข้าใช้ใน ศูนย์จัดการ Power Platform
- เลือก สภาพแวดล้อม ในบานหน้าต่างการนำทาง
- เลือกสภาพแวดล้อม
- เลือก การตั้งค่า ในแถบคำสั่ง
- เลือก ผลิตภัณฑ์ > คุณลักษณะ
- ในส่วน การตั้งค่า Mobile Offline ขั้นสูงสำหรับแอปแบบจำลอง ให้ปิดตัวเลือก เปิดใช้งานการตรวจหาข้อขัดแย้งสำหรับการซิงโครไนซ์ Mobile Offline
หมายเหตุ
เมื่อตัวเลือกนี้เปิดอยู่ (ไม่แนะนำ) การอัปเดตบนเซิร์ฟเวอร์อาจป้องกันไม่ให้ใช้การอัปเดตไคลเอ็นต์ ข้อผิดพลาดข้อขัดแย้งต้องได้รับการแก้ไขด้วยตนเอง