zoukankan      html  css  js  c++  java
  • 统一用户的配置

      CRM升级之后,用户的自定义配置都变了。例如登录默认是日历,升级之后变成了Dashboard,所以需要修复。

      刚开始我修改了用户模版,查看sql才发现,原来这些模版就是保存在users表中的,使用特殊的标识区别而已。所以才有了查有效用户的时候需要增加这几个标识:

    SELECT user_userid from users where COALESCE(user_disabled, N'') = N'' AND (  User_IsTemplate = N'N' OR User_IsTemplate is NULL ) and user_deleted is null

      用户表中,并没有记录用户创建的时选的是那个模版,我即使修改了模版里面的参数,重启了iis,刷新了原数据都没有改变用户的配置。所以只能自己往配置表里面插入记录了,逐个用户修改的话,太浪费时间。于是就有了下面的存储过程:[之所以要使用游标,我相信你做SageCRM话就懂得]

    -- =============================================
    -- Author:        CTL Novus
    -- Create date: 2012-04-27
    -- Description:    统一用户的配置
    -- CheckUset 'Nset_LoginTo', 'calendar'
    -- CheckUset 'PreferredCssTheme', 'default'
    -- CheckUset 'NSet_DecimalPlaces', '0'
    -- CheckUset 'NSet_WeekStartDay', '1'
    -- =============================================
    CREATE PROCEDURE CheckUset
        @key varchar(100),
        @value varchar(100)
    AS
    BEGIN
        update usersettings set uset_value = @value where uset_key = @key
    
        declare CreateWorkflow scroll cursor
        for
            SELECT user_userid from users where COALESCE(user_disabled, N'') = N'' AND (  User_IsTemplate = N'N' OR User_IsTemplate is NULL ) and user_deleted is null 
            and user_userid not in (select uset_userid from usersettings where uset_key = @key)
        for UPDATE
    
        declare @user_userid INT
        open CreateWorkflow
        fetch from CreateWorkflow into @user_userid
        while @@fetch_status = 0
            begin
                declare @usetid INT 
                EXEC @usetid = eware_get_identity_id 'usersettings'            
                insert into usersettings (uset_settingid,uset_userid,uset_key,uset_value)
                select @usetid,@user_userid,@key,@value
                                
                fetch from CreateWorkflow into @user_userid
            end
        close CreateWorkflow
        deallocate CreateWorkflow
    END
    GO

    作者:Novus
    出处:http://www.cnblogs.com/novus/
    本文版权归作者和博客园共有,欢迎任何形式的转载,但请务必注明出处。

  • 相关阅读:
    [洛谷P2745] [USACO5.3]窗体面积Window Area
    [洛谷P2751] [USACO4.2]工序安排Job Processing
    [洛谷P2738] [USACO4.1]篱笆回路Fence Loops
    [洛谷P4609] [FJOI2016]建筑师
    [洛谷P3228] [HNOI2013]数列
    解决Qt5使用SSL的“qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method”错误
    qt查看是否支持SSL
    qt获取依赖的openssl的版本
    qt关闭ssl验证,解决不能正常使用自签署ssl证书API的问题
    使用OpenSSL创建HTTPS所使用的SSL证书
  • 原文地址:https://www.cnblogs.com/novus/p/2473919.html
Copyright © 2011-2022 走看看