案例分享:系统时区和用户时区时间是错误的,怎么修改?原创
金蝶云社区-西瓜不甜苦瓜不苦
西瓜不甜苦瓜不苦
71人赞赏了该文章 438次浏览 未经作者许可,禁止转载编辑于2024年02月20日 13:49:13

问题描述

系统时区和用户时区时间是错误的,怎么修改?

客户数据中心里面,国际化设置界面显示如下图所示;

image.png

我的格式和时区设置界面,显示如下图所示;

image.png

导致客户那边做单据时,单据的日期比正常的北京时间晚了8个小时;


解决方法

1、进入数据库服务器,查看服务器的系统时区当前是正确的UTC+8 北京时区;

2、进入SQL数据库,执行如下语句;查询该数据中心的时区;

-- 查询当前时区设置 

SELECT FPARAMETERS
FROM T_BAS_SYSPARAMETER
WHERE FPARAMETEROBJID = 'BD_GlobalizationSettings'

image.png

查询结果里面有异常内容,显示ID是166,协调世界时;如下图所示。

image.png

而正确的应该是utc+8  北京时区,ID应该是230;

PS:完整的查询结果见附件的rar文件。


3、根据上述查询结果,我们考虑要后台修改该数据中心的时区;

在这之前,我们对该数据中心做备份;

或者是执行下述语句对该表做备份;

SELECT *
INTO T_BAS_SYSPARAMETER_BAK20240219
FROM T_BAS_SYSPARAMETER
WHERE FPARAMETEROBJID = 'BD_GlobalizationSettings'


4、做好备份之后,执行如下语句,修改数据中心的时区;

-- 设置数据中心时区为北京时间(其他时区对应修改ID)
UPDATE  T_BAS_SYSPARAMETER SET  FPARAMETERS = '<BOS_InternationalSet><SysTimeZone_Id>230</SysTimeZone_Id><UserRegion_Id>5000</UserRegion_Id></BOS_InternationalSet>' WHERE    FPARAMETEROBJID = 'BD_GlobalizationSettings'

执行修改语句之后,再次查询该数据中心的时区,查询结果如下图所示。

image.png

5、然后重新用administrator登录云星空,打开缓存管理,清理缓存;

重新再查看‘国际化设置’和‘我的格式和时区设置’这2个界面的系统时区和用户时区时间,都是显示正确了。


【补充说明】

1、本案例中是由于这个数据中心的系统时区错误,且前端无法修改,所以才需要后台执行语句去修改。

2、如果只是‘用户时区时间’错误的话,可以进入‘国际化设置’界面,通过修改‘客户端默认时区’进行调整;

以及在‘我的格式和时区设置’界面修改‘我的时区’字段的值即可。

赞 71