配置 Dynamic CRM 中用户的默认登录组织

如果 Dynamic CRM 部署中存在多个组织,用户的默认组织会按其第一次添加到该部署中时的组织进行记录

比如全新部署后会自动生成一个新的组织,这时添加了管理员进行测试

后续导入了之前的组织,在此组织中也存在同样的管理员,此时管理员默认还是会登录到前面那个新组织中

查询用户默认组织:

declare @username varchar(100)
declare @crmuserid varchar(50)
declare @systemuserid varchar(50)
declare @orgid varchar(50)

set @username = 'CRMDEV\jim.smith' -- 请修改为要查询的域用户名

USE TEST_MSCRM -- 请修改为任意存在该用户的组织的数据库名称
Select @crmuserid = systemuserid from systemuserbase where domainname = @username

USE [MSCRM_CONFIG]
select @systemuserid = UserId from systemuserorganizations where CrmUserId = @crmuserid

USE [MSCRM_CONFIG]
select @orgid = defaultOrganizationId from SystemUser where id = @systemuserid

USE [MSCRM_CONFIG]
select @username as username, DatabaseName,UniqueName from organization where id = @orgid

参考:https://readyxrm.blog/2017/06/15/setting-the-default-org-for-dynamics-crm/

上面文章除了查询外,也提供了一个修改方法,是删除所有组织,然后重新按顺序进行导入,动作感觉有点大

还有一个修改用户默认组织的方法:

-- 1.找到你要设置的默认组织的id,如:67F790C5-6B7F-4EAC-A2C2-BB9A41C118E3
Use MSCRM_CONFIG
Select * from organization

-- 2.找到你的用户id,如:2A784074-B842-E411-93F2-3C07544CC21C
Use TEST_MSCRM --修改成用户所在组织的数据库
Select systemuserid from systemuserbase
where domainname = 'domain\user' -- 修改成你的域用户名

-- 3.找出 MSCRM_CONFIG 中对应的用户id,如:6DC9B5B6-B742-E411-93F2-3C07544CC21C
Use MSCRM_CONFIG
Select userid from systemuserorganizations
where crmuserid = '2A784074-B842-E411-93F2-3C07544CC21C'

-- 验证一下
Use MSCRM_CONFIG
Select * from systemuser
where id = '6DC9B5B6-B742-E411-93F2-3C07544CC21C'

-- 4.更新该用户的默认组织
Use MSCRM_CONFIG
Update SystemUser set DefaultOrganizationId = '67F790C5-6B7F-4EAC-A2C2-BB9A41C118E3'
Where id = '6DC9B5B6-B742-E411-93F2-3C07544CC21C'

参考:https://www.cnblogs.com/caizhidao/p/4441516.html

posted @ 2024-02-29 10:01  不是豆豆  阅读(35)  评论(0编辑  收藏  举报
友情链接:迷途