เมื่อคุณพยายามเปิดหน้า ผู้ใช้ ในพอร์ทัลธุรกิจของ Microsoft Dynamics GP คุณได้รับข้อความแสดงข้อผิดพลาดต่อไปนี้:
""เกิดข้อผิดพลาดที่ไม่คาดคิด โปรดลองปิดเบราว์เซอร์แล้วเริ่มใหม่อีกครั้ง หรือติดต่อผู้เชี่ยวชาญด้านการสนับสนุนของคุณ"
เมื่อคุณคลิกปุ่ม รายละเอียด บนข้อความแสดงข้อผิดพลาด คุณจะได้รับข้อความเพิ่มเติมที่เกี่ยวข้องกับข้อความแสดงข้อผิดพลาด:
"ข้อยกเว้นของระบบ: soap:Server ไม่สามารถประมวลผลการร้องขอได้ ---> Microsoft.Dynamics.Hrm.Entity.Employee"
อาการ
ในตาราง MBFRoleUser ของฐานข้อมูล DYNAMICS คุณมี ID พนักงานที่มอบหมายในเขตข้อมูลConstituent ที่ไม่มีอยู่เป็นพนักงานในตาราง UPR00100 ของฐานข้อมูลบริษัท
สาเหตุ
เอาระเบียนการมอบหมาย ID ของพนักงานที่ละเลยออกจากตาราง MBFRoleUser ของฐานข้อมูล DYNAMICS Follow these steps for finding and removing the orphaned Employee ID assignment record from the MBFRoleUser table of the DYNAMICS database.
1. เริ่มSQL Server Management Studio เมื่อต้องการใช้วิธีใดวิธีหนึ่งต่อไปนี้ โดยขึ้นอยู่กับโปรแกรมที่คุณใช้งาน
For SQL Server 2000
ถ้าคุณใช้งาน SQL Server 2000 ให้SQL ตัววิเคราะห์คิวรี เมื่อต้องการลบ ให้คลิกเริ่มชี้ไปที่ โปรแกรมทั้งหมดชี้ไปที่Microsoft SQL Serverแล้วคลิกตัววิเคราะห์คิวรี
For SQL Server 2005
ถ้าคุณใช้งาน SQL Server 2005 ให้SQL Server Management Studio เมื่อต้องการใช้สิ่งนี้ให้คลิกเริ่ม ชี้ไปที่ โปรแกรมทั้งหมดชี้ไปที่Microsoft SQL Server 2005แล้วคลิก SQL ServerManagement Studio
For SQL Server 2008
ถ้าคุณใช้งาน SQL Server 2008 ให้SQL Server Management Studio เมื่อต้องการแก้ไข ให้คลิกเริ่มชี้ไปที่ โปรแกรมทั้งหมดชี้ไปที่Microsoft SQL Server 2008แล้วคลิก SQL ServerManagement Studio
2. เรียกใช้ข้อความต่อไปนี้กับฐานข้อมูล DYNAMICS เพื่อค้นหาระเบียนการมอบหมายรหัสพนักงานทั้งหมดในตาราง MBFRoleUser ของฐานข้อมูล DYNAMICS:
เลือก * จาก MBFRoleUser ที่ Constituent เช่น **Microsoft.Dynamics.hrm.Entity.Employee ID%' ตาม Constituent
สตริง EmployeeID= ภายในคอลัมน์ Constituent จะแสดงให้คุณเห็นหมายเลขพนักงานที่ได้รับการมอบหมายให้กับบทบาทพอร์ทัลธุรกิจ
3. เรียกใช้ข้อความต่อไปนี้กับฐานข้อมูลบริษัทเพื่อค้นหาระเบียนรหัสพนักงานทั้งหมดที่มีอยู่ในตาราง UPR00100 ของคุณ:
เลือก EMPLOYID จาก UPR00100 order ตาม EMPLOYID
ผลลัพธ์ของสคริปต์นี้จะแสดง ID พนักงานทั้งหมดที่มีอยู่ในตาราง หลักพนักงาน
4. เปรียบเทียบระเบียนรหัสพนักงาน= งานที่มอบหมายในคอลัมน์ Constituent จากผลลัพธ์ของสคริปต์ที่เรียกใช้จากขั้นตอนที่ #1 กับพนักงานที่ส่งกลับจากผลลัพธ์ของสคริปต์ที่เรียกใช้จากขั้นตอนที่ #2 ค้นหาระเบียนการมอบหมายรหัสพนักงานที่มีอยู่ในคอลัมน์ Constituent ของตาราง MBFRoleUser ของฐานข้อมูล DYNAMICS ที่ไม่มีอยู่เป็นรหัสพนักงานในตาราง UPR00100 ของฐานข้อมูลบริษัท
5. เมื่อคุณระบุระเบียนการมอบหมายรหัสพนักงานไม่มีการเชื่อมโยงจากขั้นตอนที่ #3 ให้เรียกใช้ข้อความต่อไปนี้กับฐานข้อมูล DYNAMICS เพื่อเอาการมอบหมายรหัสพนักงานซึ่งไม่มีการเชื่อมโยงออก:
ลบ MBFRoleUser ที่ Constituent = 'XXXX'
หมายเหตุ: แทนที่ XXXX ด้วยค่า Constituent ของระเบียนการมอบหมายรหัสพนักงานที่ไม่ผ่านการตรวจสอบจากตาราง MBFRoleUser
ตัวอย่าง: Here would be an example of the delete statement needed in Step #4:
ลบ
MbfRoleUser ที่ Constituent='<entityKey><Microsoft.Dynamics.Common.Company.Company ID="-1" /><Microsoft.Dynamics.Hrm.Entity.Employee ID="429732375" /></entityKey>'
ในตัวอย่างนี้ หมายเลขพนักงาน 429732375 คือการมอบหมายรหัสพนักงาน#3บทบาท
การแก้ไข
ข้อมูลในตาราง ผู้ใช้MBFRoleจะถูกแทรกเมื่อคุณคลิก หน้าแรกในพอร์ทัลธุรกิจ คลิก การแอคชันในไซต์ คลิก ไซต์การตั้งค่าคลิกผู้ใช้ เลือกผู้ใช้จากรายการผู้ใช้คลิก บทบาทคลิกปรับเปลี่ยน แล้วกําหนดบทบาทในหน้าต่างกล่องโต้ตอบ ปรับเปลี่ยนพอร์ทัลและบทบาทขั้นสูง -- เว็บเพจ คลิกตกลง