天心天思系统具备完善的用户账号与多级权限管控体系,支持单用户独立权限配置、用户群组(角色)批量权限配置、用户部门权限配置三种权限管理模式,可精细化适配不同岗位、不同部门员工的系统操作权限需求,保障系统数据安全与业务操作规范。
1 用户账号建立
系统用户账号依托【物流员工资料】创建,无需单独新建账号,也可以单独新建。只需在员工资料中将对应人员开启系统登录权限,即可自动生成系统登录账号,后续仅需配置对应操作权限即可投入使用。同时,可通过员工资料标注员工岗位角色(如采购员、仓管员、销售员等),为后续群组权限批量配置提供依据。
资料区分说明(重点)
系统内存在两类人员资料,二者相互独立、用途不同,为系统迭代分阶段功能设计,不可混用:
- 物流模块员工资料:仅用于管控进销存、物流业务相关的系统登录、操作权限,服务于业务单据操作系统管控。
- 人事薪资模块人员资料:专属HR人事、薪资、考勤等人力资源业务管理,与物流系统账号权限无关联。
路径:物流管理>>基础资料>>员工资料
进入【员工资料】界面,新增/选择需要开通系统权限的员工信息;
在员工资料属性中,勾选参数【是DRP登录用户】;
保存资料后,自动生成该员工的系统登录账号;如果反勾选,账号资料也会自动删除。
Bug:不知是不是版本的bug问题
由员工资料生成的账号在密码管理中是查询不到的,在用户代码处输入员工回车可以调用户账号,然后修改一下后保存,就可以查询得到了。由员工资料生成的账号,需要在后台把PSWD 中的issalm=’F’,才能直接在密码资料处删除,不然删除不了,会提示是online账号。
补充设置员工岗位角色(采购员、仓管、业务员等),用于后续群组权限分类管控;
账号创建完成后,根据岗位业务需求,配置单用户权限、群组角色权限或部门权限即可

2 单用户权限设置方法
单用户权限就是直接在用户下面设置各个模块的增删改查的权限。

用户账号可通过员工资料模块生成,也可直接新建用户资料,完成账号创建后即可配置操作权限。权限配置提供两种方式:一是通过权限群组批量分配权限;二是在密码管理界面单独勾选各业务模块权限。
若账号已通过权限群组赋予权限,则密码管理内的个人独立权限配置不再生效。
特殊密码:用于配置账号专属特殊权限,该类权限不受权限群组影响,仅绑定当前登录账号。

密码安全管理:设密码的安全性的设置

批次新增:该功能支持批量创建用户账号档案,提供两种导入方式:一是 Excel 文件导入,二是从人事员工资料(非 DRP 员工资料)批量选取导入。
点击【确认】按钮后,请耐心等待系统执行,直至批量新增操作完成。

拷贝>>拷贝:即权限的拷贝,它不会复制群组,而是从复制来源的各模组的权限复制给当前账号。
点击拷贝后,选择拷贝的来源,即从哪个账号进行拷贝。

拷贝>>批资复制密码作业:把当前账号的相关权限批量复制给选定的账号。

3 群组设置方法
如果用户权限要按群组进行设置,先要设置群组的权限,方法如下:
路径:系统>>密码资料>>群组设定作业

4 多组织设置
天心系统支持两种管理维度:既可按账套维度管控,也可通过多组织模式实现集团化统一管理,支持针对不同组织分配用户操作权限。
集团多组织管控功能依托部门设置模块配置,将总公司、各分公司统一归类为集团层级部门后,即可启用集团统一管控模式。

5 用户部门权限设置
在密码管理界面中用户部门权限可以按单部门也可以按群组部门设置。

6 部门群组设置
如果用户要按群组部门设置,需要设置部门群组,方法如下:
路径:系统>>部门代码>>部门群组设定作业

7 用SQL 语句复制账号和权限
在后台可用sql语句从别的账套复制账号和权限
----員工帳號新增,複製來源員工
----新增/複製:1.帳號+群組權限 2.特殊密碼 3.單據審核 4.單據編輯 5.單據屬性 .介面 8.自訂義報表 9.6.員工資料 7系統報表參數 10.工作臺
USE DB_T09 --新公司代號
GO
DECLARE @USR_NEW nvarchar(30)
DECLARE @NAME_NEW nvarchar(30)
DECLARE @USR nvarchar(30)
DECLARE @COMP_NEW nvarchar(30)
DECLARE @COMP_OLD nvarchar(30)
DECLARE @DO nvarchar(30)
DECLARE @SQL nvarchar(MAX)
SET @USR_NEW='500256'--:USR_NEW!新增員工代號
SET @NAME_NEW='张三'--:NAME!新增員工姓名
SET @COMP_NEW='T09'--:BIL_SPC!新公司代號
SET @USR='013647'--:SALM!複製來源員工代號已全部轉移到新賬號DE0320170006 已轉新賬號DE0320170006
SET @COMP_OLD='AS03'--:BIL_SPC!來源公司代號
SET @DO=''--:DO!留空新增/D刪除
--SET @USR_NEW=:USR_NEW!新增員工代號
--SET @NAME_NEW=:NAME!新增員工姓名
--SET @USR=:USR!複製員工來源代號
--SET @COMP_NEW=:BIL_SPC!公司代號
--SET @DO=:DO!留空新增/D刪除
--新增帳號權限 SELECT PWD_CHG,* FROM SunSystem..PSWD WHERE USR IN ('DA0220170053') AND COMPNO='T09'
INSERT INTO SunSystem..PSWD ( COMPNO, USR, NAME, PWD, MNG, ALL_CMP, NO_DESKTOP, ISGROUP, IS_ROLE, PWD_CHG, REM ,DEP)
SELECT DISTINCT COMPNO=@COMP_NEW, USR=@USR_NEW, NAME=@NAME_NEW, PWD=NULL,MNG='ADMIN',ALL_CMP='T',NO_DESKTOP='F',ISGROUP='T',IS_ROLE='Y',PWD_CHG='T',REM='建立於'+CONVERT(VARCHAR, GETDATE(), 120),DEP='00000000'
FROM SunSystem..PSWD
WHERE COMPNO=@COMP_OLD AND USR=@USR AND NOT EXISTS ( SELECT * FROM SunSystem..PSWD WHERE COMPNO=@COMP_NEW AND USR=@USR_NEW )
--2025-06-23增加往DB_PSWD表插入数据
-- SELECT * FROM DB_TES1..DB_PSWD WHERE USR='TEST'
SET @SQL=' DELETE FROM DB_'+@COMP_NEW+'..DB_PSWD WHERE USR=@USR_NEW '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30)',@USR_NEW
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..DB_PSWD(COMPNO, USR, NAME,DEP,DEP_UP,MNG,ISGROUP,CHK_NOCFM_UP) '+
' SELECT COMPNO=@COMP_NEW,USR=@USR_NEW, NAME=@NAME_NEW,DEP=''00000000'',DEP_UP=''########'',MNG=''ADMIN'',ISGROUP=''T'',CHK_NOCFM_UP=''T'' FROM DB_'+@COMP_OLD+'..DB_PSWD WHERE USR=@USR '
EXEC SP_EXECUTESQL @SQL ,N'@COMP_NEW nvarchar(30),@USR_NEW nvarchar(30),@NAME_NEW nvarchar(30),@USR nvarchar(30) ',@COMP_NEW,@USR_NEW,@NAME_NEW,@USR
--複製密碼權限 SELECT * FROM SunSystem..PSWD1 WHERE COMPNO='TB02' AND USR='TEST1'
--DELETE FROM SunSystem..PSWD1 WHERE COMPNO=@COMP_NEW AND USR=@USR_NEW
INSERT INTO SunSystem..PSWD1 ( COMPNO, USR, PGM, DSP, APD, UPD, PRT, DEL, R_CST, R_QTY, R_AMT, R_TAX, R_MENU, R_USR, R_OTH1, R_OTH2, R_GO, DEPRO_NO )
SELECT DISTINCT COMPNO=@COMP_NEW, USR=@USR_NEW, PGM, DSP, APD, UPD, PRT, DEL, R_CST, R_QTY, R_AMT, R_TAX, R_MENU, R_USR, R_OTH1, R_OTH2, R_GO, DEPRO_NO
FROM SunSystem..PSWD1 WHERE COMPNO=@COMP_OLD AND USR=@USR
--複製群組權限 SELECT * FROM SunSystem..ROLE_GR WHERE COMPNO='TB02' AND USR='TEST1'
--DELETE FROM SunSystem..ROLE_GR WHERE COMPNO=@COMP_NEW AND USR=@USR_NEW
INSERT INTO SunSystem..ROLE_GR ( COMPNO, ROLE_NO, USR )
SELECT DISTINCT COMPNO=@COMP_NEW, ROLE_NO, USR=@USR_NEW
FROM SunSystem..ROLE_GR A
WHERE COMPNO=@COMP_OLD AND USR=@USR AND NOT EXISTS (SELECT 1 FROM SunSystem..ROLE_GR B WHERE B.COMPNO=@COMP_NEW AND A.ROLE_NO=B.ROLE_NO AND B.USR=@USR_NEW)
----複製特殊密碼 SELECT * FROM DB_AS04..SPC_PSWD WHERE REM LIKE '%負庫存%' --USR='TEST1'
SET @SQL=' DELETE FROM DB_'+@COMP_NEW+'..SPC_PSWD WHERE USR=@USR_NEW '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30)',@USR_NEW
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..SPC_PSWD SELECT USR=@USR_NEW, CTRL_ID, SPC_ID, REM, SPC_IDMAX FROM DB_'+@COMP_OLD+'..SPC_PSWD WHERE USR=@USR '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30), @USR nvarchar(30) ',@USR_NEW, @USR
----複製單據審核流程 SELECT * FROM DB_AS04..SH_USR WHERE USR='TEST1'
SET @SQL=' DELETE FROM DB_'+@COMP_NEW+'..SH_USR WHERE USR=@USR_NEW '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30)',@USR_NEW
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..SH_USR SELECT USR=@USR_NEW, DEP, DEP_GROUP, BIL_ID, MOB_ID, ISDEFAULT_MOB, GROUP_NO, BIL_TYPE FROM DB_'+@COMP_OLD+'..SH_USR WHERE USR=@USR '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30), @USR nvarchar(30) ',@USR_NEW, @USR
---單據編輯權限 SELECT * FROM TF_USR WHERE USR='TEST' OR USR_UP='TEST' GROUP BY USR, BIL_ID,USR_UP SELECT * FROM MF_USR
--單據編輯表頭
SET @SQL=' DELETE FROM DB_'+@COMP_NEW+'..MF_USR WHERE USR=@USR_NEW'
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30)',@USR_NEW
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..MF_USR ( USR, BIL_ID ) SELECT USR=@USR_NEW, BIL_ID FROM DB_'+@COMP_OLD+'..MF_USR WHERE USR=@USR '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30), @USR nvarchar(30) ',@USR_NEW, @USR
--單據編輯表身
SET @SQL=' DELETE FROM DB_'+@COMP_NEW+'..TF_USR WHERE USR=@USR_NEW OR USR_UP=@USR_NEW'
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30)',@USR_NEW
--單據被改
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..TF_USR ( USR, BIL_ID, ITM, USR_UP ) SELECT USR=@USR_NEW, BIL_ID, ITM, USR_UP FROM DB_'+@COMP_OLD+'..TF_USR WHERE USR=@USR '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30), @USR nvarchar(30) ',@USR_NEW, @USR
----改人單據
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..TF_USR ( USR, BIL_ID, ITM, USR_UP ) SELECT A.USR, A.BIL_ID, ITM=MAX(C.ITM)+1, USR_UP=@USR_NEW FROM DB_'+@COMP_OLD+'..TF_USR A JOIN TF_USR B ON A.USR_UP=B.USR_UP AND A.BIL_ID=B.BIL_ID AND A.ITM=B.ITM JOIN TF_USR C ON B.USR=C.USR AND B.BIL_ID=C.BIL_ID WHERE A.USR_UP=@USR GROUP BY A.USR, A.BIL_ID,A.USR_UP '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30), @USR nvarchar(30) ',@USR_NEW, @USR
----複製單據屬性 SELECT * FROM DB_AS04..BILL_PROP WHERE USR='TEST1'
SET @SQL=' DELETE FROM DB_'+@COMP_NEW+'..BILL_PROP WHERE USR=@USR_NEW '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30)',@USR_NEW
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..BILL_PROP '+
' SELECT USR=@USR_NEW, FORM_NAME, CTL_NAME, ITM=NULL, CAPTION, FLAG, MENU_NAME, BIL_ID, CTL_TYPE, CTL_VALUE, CTL_OPTION, CAPTION_BIG5, CAPTION_ENG
FROM DB_'+@COMP_OLD+'..BILL_PROP WHERE USR=@USR '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30), @USR nvarchar(30) ',@USR_NEW, @USR
----新增員工資料 SELECT * FROM DB_AS04..SALM WHERE SAL_NO='TEST1'
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..SALM( SAL_NO, NAME, DUT_IN_D, USR,LOGON,DEP) '+
' SELECT DISTINCT SAL_NO=@USR_NEW, NAME=@NAME_NEW, DUT_IN_D=CONVERT(nvarchar, GETDATE(), 112), USR=@USR_NEW,LOGON=''T'' ,DEP=''00000000''
FROM DB_'+@COMP_OLD+'..SALM WHERE NOT EXISTS(SELECT SAL_NO,NAME FROM DB_'+@COMP_NEW+'..SALM WHERE SAL_NO=@USR_NEW) '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30), @USR nvarchar(30), @NAME_NEW nvarchar(30) ',@USR_NEW, @USR, @NAME_NEW
----複製操作介面 SELECT * FROM DB_AS04..LAYOUT WHERE USR='TEST1' --SELECT * FROM DB_AS04..FACE_TBL WHERE USR='TEST1'
SET @SQL=' DELETE FROM DB_'+@COMP_NEW+'..LAYOUT WHERE USR=@USR_NEW '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30)',@USR_NEW
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..LAYOUT ( USR, RCID, DATA ) SELECT USR=@USR_NEW, RCID, DATA FROM DB_'+@COMP_OLD+'..LAYOUT WHERE USR=@USR '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30) ,@USR nvarchar(30) ',@USR_NEW ,@USR
SET @SQL=' DELETE FROM DB_'+@COMP_NEW+'..FACE_TBL WHERE USR=@USR_NEW '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30)',@USR_NEW
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..FACE_TBL ( FORMRCID, USR, HHEAD, CINFO, APPLY ) SELECT FORMRCID, USR=@USR_NEW, HHEAD, CINFO, APPLY FROM DB_'+@COMP_OLD+'..FACE_TBL WHERE USR=@USR '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30) ,@USR nvarchar(30) ',@USR_NEW ,@USR
----自訂義報表 SELECT * FROM DB_AS04..MYSQL
SET @SQL=' UPDATE DB_'+@COMP_NEW+'..MYSQL SET USRS = CONVERT(VARCHAR(255),USRS) +'';''+ @USR_NEW FROM DB_'+@COMP_NEW+'..MYSQL WHERE USRS LIKE ''%''+@USR+''%'' '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30) ,@USR nvarchar(30) ',@USR_NEW ,@USR
----報表參數複製 SELECT * FROM DB_CC01..REPORTS WHERE USR IN ('006626')
SET @SQL=' DELETE FROM DB_'+@COMP_NEW+'..REPORTS WHERE USR=@USR_NEW '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30)',@USR_NEW
SET @SQL=' INSERT INTO DB_'+@COMP_NEW+'..REPORTS ( FORMRCID, RTYPE, REPORTNAME, USR, PRINTMODE, STARTPAGENO, FORCENEWPAGE, ASCENDSORT, OUTLINEVISIBLE, PRINTCOMPANYNAME, PRINTTBLNAME, PRINTTBLCOND, PRINTTBLFOOT, THUMBSCHECKED,
SCALARPRINTMODE, NOTMANAGEPAGENO, USERDATA, SORTFIELDS, SUMFIELDS, CALCFIELDS, PAGESUMFIELDS, TABLESUMFIELDS, REPORTFONT, GRIDCOLWIDTHS, GRIDFIELDSNAMELIST,
BATCHDATA, FREEDATA, ONLYPRINTSUM, PRINTPAGEJOININFO, PRINTTRIALBALANCE, RPTTAILINALLPAGE, ITM_DISP, QRLEFTMARGIN, QRRIGHTMARGIN, QRTOPMARGIN, QRBOTTOMMARGIN, CLEARZERO, SETBKCOLOR,
NOTVALUEFLD_NAME, FIELDWIDTHS, LEVELNAMELST, SHOWTOTALPAGE, GRIDROWHEIGHT, AUTOADJUSTWIDTH, ISFORMATOUT, CALCFIELDSQL, SHOWRUNTIME, RTO_ZOOM, SHOWPRINTDATE ) '+
' SELECT FORMRCID, RTYPE, REPORTNAME, USR=@USR_NEW, PRINTMODE, STARTPAGENO, FORCENEWPAGE, ASCENDSORT, OUTLINEVISIBLE, PRINTCOMPANYNAME, PRINTTBLNAME, PRINTTBLCOND, PRINTTBLFOOT, THUMBSCHECKED,
SCALARPRINTMODE, NOTMANAGEPAGENO, USERDATA, SORTFIELDS, SUMFIELDS, CALCFIELDS, PAGESUMFIELDS, TABLESUMFIELDS, REPORTFONT, GRIDCOLWIDTHS, GRIDFIELDSNAMELIST,
BATCHDATA, FREEDATA, ONLYPRINTSUM, PRINTPAGEJOININFO, PRINTTRIALBALANCE, RPTTAILINALLPAGE, ITM_DISP, QRLEFTMARGIN, QRRIGHTMARGIN, QRTOPMARGIN, QRBOTTOMMARGIN, CLEARZERO, SETBKCOLOR,
NOTVALUEFLD_NAME, FIELDWIDTHS, LEVELNAMELST, SHOWTOTALPAGE, GRIDROWHEIGHT, AUTOADJUSTWIDTH, ISFORMATOUT, CALCFIELDSQL, SHOWRUNTIME, RTO_ZOOM, SHOWPRINTDATE
FROM DB_'+@COMP_OLD+'..REPORTS WHERE USR=@USR '
EXEC SP_EXECUTESQL @SQL ,N'@USR_NEW nvarchar(30) ,@USR nvarchar(30) ',@USR_NEW ,@USR
----工作臺複製 SELECT * FROM SunSystem..WORKTABLE WHERE COMPNO='TB02'
DELETE FROM SunSystem..WORKTABLE WHERE COMPNO=@COMP_NEW AND USR=@USR_NEW
INSERT INTO SunSystem..WORKTABLE ( COMPNO, USR, BILL_DATA, REPORT_DATA, HIS_DATA, SH_DATA, ISAUTOSHOW, DEFAULTPAGE, SELFDEFINE_DATA, SHOWCOUNT )
SELECT TOP 1 COMPNO=@COMP_NEW, USR=@USR_NEW, BILL_DATA, REPORT_DATA, HIS_DATA, SH_DATA, ISAUTOSHOW, DEFAULTPAGE, SELFDEFINE_DATA, SHOWCOUNT
FROM SunSystem..WORKTABLE WHERE COMPNO=@COMP_OLD AND USR=@USR

337

被折叠的 条评论
为什么被折叠?



