我们如何在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
我们怎样才能做到这一点?我们需要为此编写任何自定义代码。请在这方面帮助我
答案 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