如果二次开发人员想重新构建部门岗位设置,人员注册,人员定岗这几个功能,向这些表插入数据的时候,如果直接用insert into 表的方式执行,则人员重新登录后,看不到设置的效果,这是因为平台中考虑了系统性能,对于组织机构数据进行了数据缓存。
那么用户二次构建组织机构时候,要如何来刷新组织机构缓存呢?
我们在向这几张表中插入数据的时候,就不能用 executeNonquery(insert into ) ,而需要用平台提供的 SaveDataTable 方法来实现,该方法检测到组织机构的表数据变化时,会自动刷新。
使用方法示例(构建一个人员定岗)
dim dt = executeSelect("select ID,USER_ID,DEPT_ID,SORT_ORDER,IS_DEFAULT from SA_STAFF_ROLE where 1=0")
dim dr
dr = dt.NewRow()
dr["ID"]=Guid()
dr["USER_ID"]=管理人员信息.GetFocusedRowValue("ID")
dr["DEPT_ID"]=return_RoleID
dr["SORT_ORDER"]= 1
dr["IS_DEFAULT "]= 0
dt.Rows.Add(dr)
SaveDataTable("default","SA_STAFF_ROLE",dt)