示例场景
在项目上有时候需要对特定一些报表定时清空数据缓存,该功能可以通过定制计划任务实现。
操作步骤
1、在【定制】->【计划任务】->左边资源树上的【计划任务】->【任务】,新建一个任务,"任务类型"选择“定制”,如下图:
2、在【自定义设置】中写如以下代码:
importPackage(Packages.smartbi.pool); var viewIdArray = new Array(); //数据集的id数组 viewIdArray.push("I2c94908d162343520116234c92f3003a"); //I2c94908d162343520116234c92f3003a 为数据集资源ID viewIdArray.push("I2c94908d162343520116234c92f3003a"); // 若是需要清多个数据集的缓存请添加多行viewIdArray.push代码 for (var i = 0; i < viewIdArray.length; i++) { BusinessViewBOPool.getInstance().cleanInvalidateObjects(viewIdArray[i]); }
注:数据集的ID获取,在【定制】->【数据集定义】的左边资源树上找到对应的数据集资源,再在数据集资源右击的浮动层中找到【属性】,再在【资源属性】对话框中找到【节点ID】,节点ID就是数据集资源ID。如下图: