sql-servermaster-data-services

Can't set "Equals to" business rules in SQL Server 2016 Master Data Services


This issue with SQL Server 2016 MDS is driving me nuts. I've got two entities set up with a few attributes:

  1. Company
    a. Code
    b. Name

  2. Customer
    a. Code
    b. Name
    c. Company (Domain-based attribute)
    d. DisplayCompany

I'd like to add a business rule to make Customer->Display equal to something from the related entity. So, I go into the Add Business Rule window and set everything as needed:

Attribute: DisplayCompany  
Operator: equals  
Equals: Attribute  
Attribute: DBA:Company:Name  

I hit Save, and I get a handsome description in the "Add Business Rule" window:

DisplayCompany equals DBA:Company:Name

So, now I hit Save again to close the Add Business Rule window, and the Rule gets truncated to "DisplayCompany equals" and I can't activate it since it's incomplete. There is no error message when I save the rule, only one that comes up when I try to activate it:

102 : A database error has occurred. Contact your system administrator.

I've looked in the log files. The error is raised because there is one part missing from the rule, but nothing to explain why it's missing in the first place.


Solution

  • In the meantime I've figured out that this was a bug in MDS which has been fixed in SQL Server 2017.