我们如何显示在MDS中加载记录的用户

时间:2014-06-11 13:14:33

标签: sql metadata master-data-services

我们如何在MDS中自动显示记录的所有者。

例如,我有两组叫做A组和B组。

组输入记录的用户如下:

NAME    CODE
Bike    1
Car     2

同样地,A组用户输入记录如下:

NAME    CODE
Bus     3
Lorry   4

我想要展示的是

NAME    CODE    Owner
Bike    1       Group A
Car     2       Group A
Bus     3       Group B
Lorry   4       Group B

我们怎样才能做到这一点?我们需要为此编写任何自定义代码。请在这方面帮助我

1 个答案:

答案 0 :(得分:0)

您在每个已创建的订阅视图中都有[EnterUserName]列。因此,您可以做的是向实体添加一列并创建一个插入触发器,将此信息复制到新创建的列。触发器必须用于“基表”,其中包含实体的主要信息。

有关如何创建订阅视图的信息,请参阅: http://msdn.microsoft.com/en-us/library/ff487013.aspx

如果要检查哪个表包含实体信息,可以在MDSDB数据库中搜索视图并执行“ALTER to”语句。表名应该类似于[tbl _... EN]

现在在桌面上创建一个触发器:

CREATE TRIGGER [mdm].[SOME_NAME]
  ON  [mdm].[YOUR_BASE_TABLE]
  AFTER INSERT

AS 
BEGIN

  SET NOCOUNT ON;
  UPDATE [mdm].[YOUR_SUBSCRIPTION_VIEW]
  SET [Owner] = [EnterUserName]
  FROM [mdm].[YOUR_SUBSCRIPTION_VIEW]
  WHERE  ID = (SELECT MAX(ID) FROM [mdm].[YOUR_SUBSCRIPTION_VIEW])

END