| BI上很多数据集开启了URL触发更新,但是比较分散,不同的数据集存在一个不同的更新token,并且刷新后会重置token。哪有什么方式可以查到所有的数据集URL链接,并将这些数据通过卡片的形式展示出来。 一、需要元数据库只读账号;如果您有申请过元数据库只读账户,可以直接去元数据库中获取data_source这张表,里面的config字段里面会记录URL触发的token信息。(目前元数据库权限需要请观远CSM或对接顾问协助申请) 二、具体方法步骤: ①先将这张表抽取到bi上。 ②在etl选择ds_id、name、config三个字段进行分析(如果还需要其他的信息选取该字段即可)。并且还需要维护好一个URL前缀,格式为:{域名}+/public-api/data-source/ 因为config里面记录的是单个token的值,所有要想得到完整的URL得进一步加工处理。 ③config字段里面的值一段json格式的文本,可以通过get_json_object来提取对应的值 get_json_object([config],'$.tokenSetting.value') 获取URL更新的token get_json_object([config],'$.tableQuery.query') 获取数据集的SQL ④维护好前缀以及提取到了对应的值后,通过concat来进行两部分的拼接。 concat([URL前缀],[ds_id], '/refresh?token=', [token]) 拼接后就得到了一个完整的URL链接,最后只用做一个过滤(将token为null的排除,为null代表没开启该更新方式),然后输出数据集即可。 ⑤设计看板时,将这个URL触发链接设置成一个超链接,最后再仪表板上点击某一个值就可以实现触发更新了。 |