- 14
- 0
- 约3.15万字
- 约 34页
- 2017-02-02 发布于江苏
- 举报
公式解析器使用指南
第一章 新版公式使用手册 2
1.1 公式主要功能 2
1.2 公式的基本使用方法 3
1.3 数值型计算结果小数位的控制 6
1.4 自定义变量的使用 7
1.5 如何从公式中提取变量 9
1.6 空值””,NULL值及Zero值的处理 10
1.7 如何进行列操作 11
1.8 利用定义函数扩展公式功能 12
1.9 外接函数的使用 13
1.10 (5.02 new) 配置装载自定义函数 13
1.11 运算符重载 14
1.12 公式简单调试 15
1.13公式使用最佳实践 17
附录:公式解析器内置公式列表 21
3.1 数学运算函数 21
3.2 条件判断函数 24
3.3 数据库查询函数 25
3.4 字符串相关函数 27
3.5 日期函数 28
3.6 类型转换函数 28
3.7 货币金额函数 29
3.8 多语言翻译函数 31
3.9 其他函数 31
3.10 5.02新增函数 31
3.11 V5.5新增函数 32
第一章 新版公式使用手册
1.1 公式主要功能
1. 支持一般的算术运算+,-,*,/,?,%
例如: sin(1.35)*a/b + cos(3.4)/c
其中a,b,c均为变量
2. 支持对数值型计算结果小数位的控制
3. 支持逻辑运算符(兼容老版),||(兼容老版|),!
例如: iif((ab)||(cd),right,wrong)
其中a,b,c,d均为变量
4. 支持比较运算符,=,,=,==,!=等,支持null值的处理。
例如: iif((ab a != null)||(c=d),right,wrong)
其中a,b,c,d均为变量
5. 支持自定义变量,变量可按Object和String两种方式传入
例如: col1-var1+var2
其中var1,var2均为自定义变量,可以为String型,也可以为任意类型
6. 公式除了支持String,Number型数据运算,还支持自定义类型
例如: combine(vo1,vo2)
其中vo1,vo2可为自定义的数据类型,具体用法参考后面的说明
7. 支持操作符(+,-,*,/,,=,,=,==)重载(通过实现相应的接口)
例如: iif((car1car2)||(factory1=factory2),right,wrong)
其中car1,car2,factory1,factory2的运算符通过实现相应的接口进行重载。
8. 可以在数值型一维数组之间进行加减乘除运算(数组长度必须相等),即支持列操作.
例如var1 = [1,2,3,4]; var2 = [2,3,4,5]; 可对var1,var2进行各种运算。
9. 系统函数支持,NC常用函数支持
例如:
sin,cos,ceil,floor,toChinese,getChineseCurrency(),iif()
等等,详细支持的函数请参见附录。
10. 支持外接用户函数.(可以是一个java的方法)
例如:公式combine(nihao,hao)中,combine是一个自定义函数,
可以指定绑定到一个JAVA类的具体方法,可参考后面的例子。
11. 支持自定义函数.具体应用可参考后面的详细说明(第17页第1.8节)
有时候公式解析器内部的函数并不能完全满足用户的要求,
此时用户可添加自定义函数。
例如:hello(say something,person),hello为一个自定义函数,
动态注册到公式解析器中。
12. 支持客户端公式和服务端公式.
以满足前台及后台调用,主要体现在数据库查询的方式上有一定的差别。
13. 支持多行公式批量运算,且保持变量的传递性.
例如:
a-col1+col2;
b-a+col1*col3;
c-a+b;
14. 支持一个线程内多个公式执行器实例交替运行的情况,但不支持多个线程内同一公式执行器实例交替运行。所以如果程序中起多线程的话,建议每个线程单独创建自己的公式解析器示例。
例如下面的代码是可行的:
FormulaParseFather f= new FormulaParse();
f.setExpress(formula);
f.setNullAsZero(true);
FormulaParseFather f1=
new FormulaParse(); f1.setNullAsZero(false);
f.setDataSArray(map);
String[] res = f.getValueS();
15.支持单表查询类公式的自动SQL合并,极大提高查询效率(V56版本)。
1.2 公式的基本使用方法
使用公式解析器的基本步骤如下:
创建公式执行器
如果在客
您可能关注的文档
最近下载
- Unit 1 Animal friends Speed up(课件)外研版(三起)(2024)英语三年级下册.pptx VIP
- 医药企业医院廉洁承诺范文.docx VIP
- 小学综合实践活动一年级下册第四单元《碗筷的摆放和收拾》课件.docx VIP
- Python少儿编程(第1-17课).pptx VIP
- 2026及未来5年中国活检针行业发展研究报告.docx
- 汽车检测诊断技术.pptx VIP
- 小学综合实践活动一年级下册第四单元《碗筷的摆放和收拾》课件.pptx VIP
- 四川省成都市第七中学2025-2026学年高一上学期11月半期考试英语(含答案).pdf
- 集成电路原理与设计之一数字教案_chap.pdf VIP
- python少儿编程课程-第6课:周而复始(for循环).pptx VIP
原创力文档

文档评论(0)