(本文档仅供参考)
问题:
需要统计每个机构下每个人分别创建了多少个报表资源,但资源创建者在系统知识库中不是以单独的字段进行存储,而是和资源的权限一起存在tV95以下版本需要统计每个机构下每个人分别创建了多少个报表资源,但资源创建者在系统知识库中不是以单独的字段进行存储,而是和资源的权限一起存在t_restree表中的c_prem字段,无法通过SQL直接解析出。是否提供了相关接口可以直接获取到?
...
代码块 | ||
---|---|---|
| ||
importPackage(Packages.java.io); importPackage(Packages.java.lang); importPackage(Packages.java.util); importPackage(Packages.smartbi.usermanager); importPackage(Packages.smartbi.sdk); importPackage(Packages.smartbi.sdk.service.user); importPackage(Packages.smartbi.sdk.service.datasource); importPackage(Packages.smartbi.sdk.service.catalog); importPackage(Packages.smartbi.catalogtree); var catalogService= new CatalogService(connector); var Permission=catalogService.getAssignedPermissions("95950a6e5ecf94ed01ed06d9ded64f77"); //根据资源id获取直接授予的权限 var creators = Permission.getOwner(); //直接授予的权限列表中获取创建者 var creatorid=creators.id; var creatorname=creators.name; var creatoralias=creators.alias; context.put("message", "id:" +creatorid+"\n名称:"+creatorname+"\n别名:"+creatoralias); |
注:V97以下版本,资源创建人信息,以xml资源的形式存储在t_resrtree表中的c_perm字段中,V97版本及以上的版本,存储在t_permission表中。
搜索关键词指引:获取资源的创建人信息(资源创建人、资源创建者)