接口对象文档
https://smartbi.feishu.cn/docx/NMCmdBVh0ogQBDx3maOc0lVin2g
涉及二开接口对象方法
接口对象:
IDatasetPanel(数据面板)
接口方法:
setFieldsChecked(fieldIds, checked, type)
作用:根据字段ID设置字段勾选状态
名称 | 类型 | 说明 | |
输入参数 | fieldIds | String || Array | 字段ID或ID数组,要设置状态的字段 |
checked | boolean | true表示选中,false表示取消选中 | |
type | String | 可选,字段类型(DIMENSION_NODE/MEASURE_NODE/NAMEDSET_NODE) | |
返回值 | 无 |
onLocateToTree(fieldId)
作用:根据字段ID定位到树中对应节点
名称 | 类型 | 说明 | |
输入参数 | fieldId | String | 字段ID |
返回值 | 无 |
setDatasetHeader(slot)
作用:用于在数据面板顶部添加自定义组件
名称 | 类型 | 说明 | |
输入参数 | slot | 插槽定义 | |
返回值 | 无 |
二开示例
1、即席查询 新增控制筛选器是否可见、是否可编辑、是否启用 this.on(D_QUERY_FILTER_ON_INIT, (filter, iDetailQuery) => { console.log('D_QUERY_FILTER_ON_INIT') filter.setSuffixSlot({ component: SuffixButton, props: { value: filter.isEditable() }, listeners: { click: function (enabled) { // filter.setVisible(enabled); 控制筛选器是否可见 filter.setEditable(enabled); // 控制筛选器是否可编辑 filter.setEnable(enabled); // 控制筛选器是否启用(禁用即代表对应筛选器对于查询数据和导出无效) } } }) }) 2、透视分析 新增控制筛选器是否可见、是否可编辑、是否启用 this.on(D_QUERY_FILTER_ON_INIT, (filter, iAdHocAnalysis) => { console.log('AD_HOC_FILTER_ON_INIT') filter.setSuffixSlot({ component: SuffixButton, props: { value: filter.isEditable() }, listeners: { click: function (enabled) { // filter.setVisible(enabled); 控制筛选器是否可见 filter.setEditable(enabled); // 控制筛选器是否可编辑 filter.setEnable(enabled); // 控制筛选器是否启用(禁用即代表对应筛选器对于查询数据和导出无效) } } }) }) // 上述示例中使用到的 SuffixButton <template> <el-button type="default" style="line-height: 28px; padding: 0 8px; margin-left: 8px" @click="onClick" >{{ buttonText }}</el-button > </template> <script> export default { name: "SuffixButton", props: { value: { type: Boolean, default: false } }, data() { return { enabled: this.value } }, computed: { buttonText() { return this.enabled ? '禁用' : '启用' } }, methods: { onClick() { this.enabled = !this.enabled this.$emit("click", this.enabled) }, }, }; </script>