yhdata_UhmOWG1b
2 小时前
发布在问答
脚本
永洪bi在执行脚本 一直在运行 如何解决
// 永洪BI高效脚本 - 字段内容加粗处理
(function() {
// 安全获取报表对象
var report = this.report;
// 检查报表对象是否存在
if (!report) {
return; // 如果没有报表对象,直接返回
}
try {
// 使用永洪BI标准API获取文本元素
var elements = [];
// 优先使用最高效的方法获取元素
if (typeof report.getElementsByType === 'function') {
elements = report.getElementsByType("text");
} else if (typeof report.getElements === 'function') {
// 如果只能获取所有元素,则过滤出文本元素
var allElements = report.getElements();
for (var i = 0; i < allElements.length; i++) {
var element = allElements[i];
if (element.type === "text" ||
(typeof element.getType === 'function' && element.getType() === "text")) {
elements.push(element);
}
}
}
// 一次性处理所有元素,避免分批带来的性能开销
for (var i = 0; i < elements.length; i++) {
var element = elements[i];
// 获取元素内容
var content;
if (typeof element.getValue === 'function') {
content = element.getValue();
} else if (typeof element.getText === 'function') {
content = element.getText();
} else if (typeof element.text === 'string') {
content = element.text;
}
// 快速检查内容是否包含<strong>标签
if (content && content.indexOf("<strong>") !== -1) {
// 简单提取<strong>标签内的内容
var cleanContent = content.replace(/<strong>/g, '').replace(/<\/strong>/g, '');
// 设置字体加粗
if (typeof element.setFontWeight === 'function') {
element.setFontWeight("bold");
} else if (typeof element.setStyle === 'function') {
element.setStyle("font-weight", "bold");
}
// 更新内容
if (typeof element.setValue === 'function') {
element.setValue(cleanContent);
} else if (typeof element.setText === 'function') {
element.setText(cleanContent);
} else if (typeof element.text === 'string') {
element.text = cleanContent;
}
}
}
// 只在有变更时刷新报表
if (elements.length > 0 && typeof report.refresh === 'function') {
report.refresh();
}
} catch (e) {
// 简化错误处理,避免性能开销
// 可以完全移除错误处理以进一步提升性能
}
})();
|
免责声明:本文不代表本站立场,且不构成任何建议,请谨慎对待。
版权声明:作者保留权利,不代表本站立场。