自定义全局函数

<< Click to Display Table of Contents >>

当前位置:  可视化数据计算和交互分析 > 脚本 > 永洪脚本函数 

自定义全局函数

复制链接

1. 全局函数功能介绍

全局函数功能允许您在产品的外部定义一系列可复用的函数,这些函数可以在产品的不同部分或报告中轻松调用,无需在每个报告或组件中重复定义相同的函数。这种机制极大地提高了开发效率和代码的可维护性。比如,在很多报告里可能用到了同一个函数,如果在每一个报告里面都需要重新定义一下该函数,就比较繁琐,因此,可以在产品的外部定义此函数,用到时只需进行调用它就可以使用。
2. 使用场景

跨报告复用:如果您发现多个报告或分析任务中都需要执行相同的计算或数据处理逻辑,那么将这些逻辑封装成全局函数是一个明智的选择。

简化开发:通过全局函数,您可以减少重复代码,使报告或分析逻辑更加清晰、简洁。

3. 配置方法

1)创建全局函数文件:

在产品的安装路径(如/bihome)下新建一个文件,用于存放您的全局函数。文件可以是.txt或.js格式,推荐使用.js以明确其JavaScript脚本的身份

例如,创建一个名为test.js的文件,并在其中定义函数。

2)定义函数

在文件中,按照JavaScript的语法定义函数。函数可以是任何您需要的逻辑,比如数学运算、数据处理等。例如:

function testAdd(a,b) {

return a + b;

}

3)配置bi.properties文件

编辑产品的配置文件(如bi.properties),添加或修改script.functions.path属性。script.functions.path=*,其中*为添加的文件的名称,以指向您创建的全局函数文件。

例如:script.functions.path=test.js

4)在报告中使用函数

在产品的报告编辑器中,您可以通过脚本组件调用这些全局函数。

例如,在报告中的文本组件上设置脚本,调用testAdd函数并显示结果:文本1.data = testAdd("Hello ", "Yonghong");

执行后,文本组件将显示“Hello Yonghong”。

说明:

函数中的行数限制在5000行以内,每行不超过1000个字符。

为确保编写的函数无误,建议先在产品的脚本编辑器中进行语法验证,再写入java文件。

产品版本升级后,解析引擎可能发生变化,因此可能需要调整现有的全局函数脚本以适应新的解析规则。