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/
    本文版权归作者和博客园共有,欢迎任何形式的转载,但请务必注明出处。

  • 相关阅读:
    python pytest全局用例共用之conftest.py详解
    mybatis mapper文件中select标签参数汇总
    mybatis整合redis实现二级缓存(转载)
    代码智能---aiXcoder插件
    mybatis运行原理及源码流程分析
    linux关闭防火墙
    mysql 锁
    mysql 性能低下的分析
    针对msyql的like中 两边都不得不使用% 的场景分析
    mysql 相关文件路径、配置
  • 原文地址:https://www.cnblogs.com/novus/p/2473919.html
Copyright © 2011-2022 走看看