月下旬更新速递丨 实战场景深化、集成能力升级与开发进阶

初冬来临,一波热气腾腾的更新也准时抵达!我们聚焦实战技巧、集成增强与开发进阶,一系列新功能与新教程,助你在数据分析与系统开发的效率上再进一步。

一、实战技巧精讲

雷达图:多维度数据的“透视镜”,3步读懂数据真相》→ 聚焦雷达图核心应用场景,快速掌握多对象、多维度数据的可视化分析方法。

用图表解锁你的生活“数据密码”!》→ 探索图表在日常场景中的应用,让数据解读更直观、更具操作性。

二、直播上线

2025新特性实战解读(上)数据分析效率倍增秘籍》→ 解析2025新特性落地路径,助力实现数据分析效率成倍提升。

三、技术经验分享

【专家分享】数据排序的“权力游戏”:优先级规则决定谁先谁后》→解读高级排序的业务配置逻辑,让关键数据始终处于优先展示位置。

四、二次开发视频

扩展包开发知识点——前端改造》→从需求分析入手到最终实现的全流程讲解,帮助您快速入门上手Smartbi前端改造。

五、任务持续上线

【初级任务】解锁生活“数据密码”,可视化创意实践任务》→发起可视化创意任务,推动数据表达更生动、更具趣味性。

【初级任务】玩转雷达图解数据,200麦豆等你拿!》→推出雷达图实战任务,以激励方式提升多维数据分析技能。

六、全新素材上线

AD域(LDAP/LDAPS)登录验证V2》→扩展域账号登录支持,实现与企业Windows认证体系无缝对接。

数据模型:对接RestfulAPI接口》→打通数据模型与RestfulAPI对接通道,提升系统集成与数据获取效率。

计划任务:定时清空用户属性缓存→引入缓存自动清理机制,确保权限变更实时生效、业务数据及时更新。

用户同步:BI系统自定义用户所属组》→优化用户组同步逻辑,实现自定义组信息自动识别与补全。

审核流程:可以调用自助ETL》→增强审核流程集成能力,支持在用户任务节点直接调用自助ETL过程。

麦粉社区
>
帖子详情

通过宏代码隐藏交互式仪表盘中明细表里的某一列。

数据分析 发表于 2025-3-11 11:28
发表于 2025-3-11 11:28:38

系统版本信息:Version: 11.0.89539.24122


 


场景如下:在一个明细表中通过点击某个人的身份证号码,跳转到他个人的详情信息页,因为身份证号码进行脱敏处理了,所以需要添加一个未脱敏的证件号码字段作为参数,但这个未脱敏的证件号码列没脱敏,所以需要隐藏。


 


下图为一个简单的测试表格,是明细表组件,现在需要隐藏证件号码列。




 


由于本人对于JavaScript代码并不熟悉,只能上网查询,以及通过deepseek等AI工具来编写,试了很多种方法,一次都没成功。


 


如图,这是找到的最简单的代码,方法是客服说的,但是报错,请看截图:




 


上面这个失败,后面 AI又给了个代码:


function main(page, component) {
    try {
        // 1. 定义目标列名
        const targetColumnName = "证件号码"; // 按实际列名修改


        // 2. 延迟执行,确保 DOM 加载完成
        setTimeout(() => {
            // 3. 隐藏表头和数据列
            const headers = document.querySelectorAll("th"); // 获取所有表头
            const cells = document.querySelectorAll("td");  // 获取所有数据单元格


            headers.forEach(header => {
                if (header.innerText.trim() === targetColumnName) {
                    header.style.display = "none"; // 隐藏表头
                }
            });


            cells.forEach(cell => {
                if (cell.innerText.trim() === targetColumnName) {
                    cell.style.display = "none"; // 隐藏数据单元格
                }
            });


            console.log(`列 "${targetColumnName}" 隐藏成功!`);
        }, 1000); // 延迟 1 秒确保 DOM 加载完成
    } catch (e) {
        console.error("DOM 操作失败:", e);
    }
}


 


显示隐藏成功,但是无论是刷新页面、预览页面、刷新缓存之后,仍然没有隐藏,如下图:



 



期间有通过AI给的方法来


确认组件类型,如下图:




 


折腾了大半天,最终还是没有解决,希望各位大佬帮忙看看,感激不尽。


 

发表于 2025-3-11 13:36:15
4973467cfcbce7f173.png

回复

使用道具 举报

发表于 2025-3-11 13:37:37
列号从0开始
回复

使用道具 举报

发表于 2025-3-11 14:35:51
回复

使用道具 举报

发表于 2025-3-11 15:27:54
/******************************宏代码说明******************************
* version:Smartbi V11
* 类型:ClientSide
* 对象:交互仪表盘
* 事件:onAfterRender
* 效果描述:隐藏清单表或汇总表指定的列
* 是否可修改:是,需要更新对应war版本,具体版本已在文档中进行说明
*********************************************************************/
// 隐藏列序号,序号从0开始:隐藏第一列和第三列: const indexes = [0,3]
const indexes = [6];
function main(page: IPage, portlet: ITableListPortlet) {
    let type = portlet.getType();
    if (type != "TABLE_DETAIL_LIST" && type != "TABLE_LIST2") {
        return;
    }
    for (let index of indexes) {
        portlet.hideTableColumn(index);
    }
}
回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies
您需要登录后才可以回帖 登录 | 立即注册

8回帖数 0关注人数 1443浏览人数
最后回复于:2025-3-11 15:27
快速回复 返回顶部 返回列表