计算器
组件介绍
组件作用
计算器步骤是对通常用于计算的自定义JavaScript的简便快捷选择。使用时需指定要执行和返回结果的输入字段和函数类型。还可以指定一个在计算所有值之后从结果(输出)中删除的字段,这对于删除临时值很有用。
输入输出描述
- 输入:有多个字段数据
- 输出:数据流
- 参数:需要被计算的字段和需要被输出的新字段名
组件图标
案例示例
该案例用于计算成绩表中各科成绩之和,案例工作流如下图所示:
输入输出结果对比预览:
案例数据
本案例数据由 "自定义数据常量" 组件生成,案例数据如下图所示:
该数据共3条数据,主要字段为学号、语文、数学、英语,字段类型均为Integer。
案例操作
自定义常量数据
利用 "自定义常量数据"组件,生成成绩表数据,"自定义常量数据"组件详情请见【自定义常量数据链接】
该组件配置共分为 2 步:
第一步:创建成绩表所需字段 (学号、语文、数学、英语)并设置字段类型为Integer;
第二步:创建成绩表数据;
预览生成的成绩表数据:
计算器计算总成绩
使用 "计算器" 组件对每条数据的各科成绩进行求和。
该组件配置主要分为 2 步:
第一步:创建计算后需要生成的字段名、选择需要执行的计算功能;
第二步:选择需要进行计算的字段、以及新字段的值类型;
结果预览
页面介绍
配置页面
“计算器”组件配置页面如下图:
字段值表
各字段的解释如下:
列名 | 说明 | 样例值 |
---|---|---|
新字段 | 指定字段名称 | |
计算 | 单击或按此字段时,将显示“选择计算类型”对话框。输入要在转换中使用的计算器功能。计算器功能列表中提供了每个功能的说明。使用“过滤器”字段搜索特定功能。 | |
字段A,字段B和字段C | 在“ 计算”字段中输入用于执行指定计算器功能的值 | |
值类型 | 从下拉列表中选择字段的数据类型或手动输入 | |
长度 | 根据以下字段类型指定字段的长度 数字:数字中有效数字的总数 字符串:字符串的总长度 日期:字符串的打印输出长度 | |
精确度 | 指定数字类型字段的浮点位数。 | |
移除 | 计算所有值后,从结果(输出)中删除此字段。此字段可用于删除临时值。选择是或否。 | |
conversion mask | 为字段指定格式,如日期格式。 | |
小数点符号 | 指定用于表示小数点(点 (.) 或逗号 (,) 的符号。 | 5,000.00 或 5.000,00 |
分组符号 | 指定用于以四位数或更大的数字(点 (.) 或逗号 (,)))分隔数千个单位的方法 | |
货币符号 | 指定用于表示货币的符号,例如 $或 ¥ |
计算类型
计算器组件支持的计算类型如下表所示:
类型 | 说明 |
---|---|
A+B | A加上B |
A-B | A减去B |
A*B | A乘以B |
A/B | A除以B |
A*A | A的平方 |
SQRT( A ) | 根号A |
100 * A / B | A在B中的百分比。 |
A - ( A * B / 100 ) | 减去B%的A |
A + ( A * B / 100 ) | 把B%加到A。 |
A + B *C | A加上B乘C |
SQRT( A A + B B ) | 根号下A平方加B平方 |
ROUND( A ) | 返回最接近参数的整数。通过加1/2,取结果的底数,并将结果强制转换为int类型,将结果四舍五入为整数。换句话说,结果等于表达式的值:floor (a + 0.5)。如果您需要舍入方法“将一半舍入到偶数”,请使用以下方法Round (A, B),不带小数(B=0)。 |
ROUND( A, B ) | 将A四舍五入到最接近的偶数,小数为B。所使用的舍入方法为“半舍入至偶数”,又称无偏舍入、收敛舍入、统计学家舍入、荷兰舍入、高斯舍入、奇偶舍入、银行家舍入或破碎舍入,广泛应用于记账。这是IEEE 754计算函数和运算符中使用的默认舍入模式。在德国,它通常被称为“数学伦登”。 |
STDROUND( A ) | 将A四舍五入到最接近的整数。使用的四舍五入法是“离零一半的四舍五入”,也称为标准四舍五入或普通四舍五入。在德国,它被称为“kaufmännische Rundung”(在DIN 1333中定义)。 |
STDROUND( A, B ) | 与stround (A)中使用的舍入方法相同,但使用了B位小数。 |
CEIL( A ) | 将一个数字映射到后面最小的整数,即向上取整 |
FLOOR( A ) | 将一个数字映射到前一个最大的整数,即向下取整 |
NVL( A, B ) | 如果A不是NULL,则返回A,否则返回b。注意,有时变量不是NULL,而是一个空字符串。 |
Date A + B days | 在“日期”字段a中添加B天。备注:B只支持整数值。如果您需要非整数计算,请添加第二个以小时为单位的计算。 |
Year of date A | 计算日期A的年份。 |
Month of date A | 计算日期A的月份。 |
Day of year of date | A计算一年中的日期(1-365)。 |
Day of month of date A | 计算月中的日期(1-31)。 |
Week of year of date A | 计算一年中的星期(1-54)。 |
ISO8601 Week of year of date A | 计算一年中的星期ISO8601风格(1-53)。 |
ISO8601 Year of date A | 计算年份ISO8601风格。 |
Byte to hex encode of string A | 将字符串中的字节编码为十六进制表示。 |
Hex encode of string A | 以字符串本身的十六进制表示形式编码字符串。 |
Char to hex encode of string A | 将字符串中的字符编码为十六进制表示。 |
Hex decode of string A | 从十六进制表示解码字符串(当a是奇数长度时添加前导0)。 |
Checksum of a file A using CRC-32 | 使用CRC-32计算文件的校验和。 |
Checksum of a file A using Adler-32 | 使用Adler-32计算文件的校验和。 |
Checksum of a file A using MD5 | 使用MD5算法计算文件的校验和。 |
Checksum of a file A using SHA-1 | 使用SHA-1计算文件的校验和。 |
Levenshtein Distance (Source A and Target B) | 计算Levenshtein距离 |
Metaphone of A (Phonetics) | 计算A的变音位 |
Double metaphone of A | 计算A的双变音位 |
Absolute value ABS(A) | 计算A的绝对值。 |
Remove time from a date A | 移除A的时间值。注意:圣保罗和巴西其他一些地区的夏令时(DST)在午夜0:00改变。这使得在特定的日期,当夏令时从0:00变化到凌晨1:00时,不可能将时间设置为0:00。因此,在这些地区,每年有一个日期,这个函数会以 "IllegalArgumentException "失败: hour_of_day: 0 → 1"。对于欧洲、美国和其他时间在凌晨1:00或2:00或3:00变化的地区来说,这不是一个问题。 |
Date A - Date B (in days) | 计算A日期字段和B日期字段之间的差,以天为单位。 |
A + B + C | A加上B加上C |
First letter of each word of a string A in capital | 转换字符串中每个单词的第一个字母 |
UpperCase of a string A | 将字符串转换为大写。 |
LowerCase of a string A | 将字符串转换为小写。 |
Mask XML content from string A | 转义XML内容;用&values替换字符。 |
Protect (CDATA) XML content from string A | 表示一个XML字符串是一般的字符数据,而不是非字符数据或具有更具体、有限结构的字符数据。给定的字符串将被括入<![CDATA[String]]> |
Remove CR from a string A | 从字符串中删除回车。 |
Remove LF from a string A | 从字符串中删除换行符。 |
Remove CRLF from a string A | 从字符串中删除回车/换行。 |
Remove TAB from a string A | 从字符串中删除制表符。 |
Return only digits from string A | 仅从字符串中输出数字(0-9)。 |
Remove digits from string A | 从字符串中删除所有数字(0-9)。 |
Return the length of a string A | 返回字符串的长度。 |
Load file content in binary | 将给定文件(字段A)的内容加载为二进制数据类型(例如图片)。 |
Add time B to date A | 将时间添加到日期,返回日期和时间作为一个值。 |
Quarter of date A | 返回日期的四分之一(1到4)。 |
variable substitution in string A | 替换字符串中的变量。 |
Unescape XML content | 从字符串中取消转义XML内容。 |
Escape HTML content | 转义字符串中的HTML。 |
Unescape HTML content | 在字符串中不转义HTML。 |
Escape SQL content | 转义String中适合传递给SQL查询的字符。 |
Date A - Date B (working days) | 计算日期字段A和日期字段B之间的差值(仅限工作日周一至周五)。 |
Date A + B Months | 在“日期”字段a中添加B个月。备注:只支持B的整数值。如果您需要非整数计算,请添加第二个以天为单位的计算。 |
Check if an XML file A is well formed | 验证XML文件输入。 |
Check if an XML string A is well formed | 验证XML字符串输入 |
Get encoding of file A | 猜测给定文件的最佳编码(UTF-8)。 |
Dameraulevenshtein distance between String A and String B | 计算字符串之间的Dameraulevenshtein距离: |
NeedlemanWunsch distance between String A and String B | 计算字符串之间的NeedlemanWunsch距离: |
Jaro similitude between String A and String B | 返回两个字符串之间的Jaro相似系数。 |
JaroWinkler similitude between String A and String B | 返回两个字符串之间的Jaro相似系数: |
SoundEx of String A | 将字符串编码为Soundex值。 |
RefinedSoundEx of String A | 检索给定字符串对象的精炼Soundex代码 |
Date A + B Hours | 在日期字段中添加B小时。备注:B只支持整数值。如果您需要非整数计算,请添加第二个以分钟为单位的计算。 |
Date A + B Minutes | 在“日期”字段中添加B分钟。备注:B只支持整数值。如果您需要非整数计算,请添加以秒为单位的第二个计算。 |
Date A - Date B (milliseconds) | 从日期字段A中减去B毫秒 |
Date A - Date B (seconds) | 从日期字段A减去B秒。 注意:只支持B的整数值。如果你需要非整数的计算,请添加第二个以毫秒为单位的计算。 |
Date A - Date B (minutes) | 从日期字段A减去B分钟。注意:只支持B的整数值。如果你需要非整数的计算,请添加第二个以秒为单位的计算。 |
Date A - Date B (hours) | 从日期字段A减去B小时。 注意:只支持B的整数值。如果你需要非整数的计算,请添加第二个以分钟为单位的计算。 |
Hour of Day of Date A | 提取给定日期的小时部分 |
Minute of Hour of Date A | 提取给定日期的分钟部分 |
Second of Hour of Date A | 提取给定日期的秒部分 |