覆盖主要内容

计算器

组件介绍

组件作用

计算器步骤是对通常用于计算的自定义JavaScript的简便快捷选择。使用时需指定要执行和返回结果的输入字段和函数类型。还可以指定一个在计算所有值之后从结果(输出)中删除的字段,这对于删除临时值很有用。

输入输出描述


  • 输入:有多个字段数据
  • 输出:数据流
  • 参数:需要被计算的字段和需要被输出的新字段名

组件图标

案例示例

该案例用于计算成绩表中各科成绩之和,案例工作流如下图所示:

输入输出结果对比预览:

案例数据

本案例数据由 "自定义数据常量" 组件生成,案例数据如下图所示:

该数据共3条数据,主要字段为学号、语文、数学、英语,字段类型均为Integer。

案例操作

自定义常量数据

利用 "自定义常量数据"组件,生成成绩表数据,"自定义常量数据"组件详情请见【自定义常量数据链接】

该组件配置共分为 2 步:

第一步:创建成绩表所需字段 (学号、语文、数学、英语)并设置字段类型为Integer;

第二步:创建成绩表数据;

预览生成的成绩表数据:

计算器计算总成绩

使用 "计算器" 组件对每条数据的各科成绩进行求和。

该组件配置主要分为 2 步:

第一步:创建计算后需要生成的字段名、选择需要执行的计算功能;

第二步:选择需要进行计算的字段、以及新字段的值类型;

结果预览

页面介绍

配置页面

“计算器”组件配置页面如下图:

字段值表

各字段的解释如下:

列名说明样例值
新字段指定字段名称
计算单击或按此字段时,将显示“选择计算类型”对话框。输入要在转换中使用的计算器功能。计算器功能列表中提供了每个功能的说明。使用“过滤器”字段搜索特定功能。
字段A,字段B和字段C在“ 计算”字段中输入用于执行指定计算器功能的值
值类型从下拉列表中选择字段的数据类型或手动输入
长度根据以下字段类型指定字段的长度 数字:数字中有效数字的总数 字符串:字符串的总长度 日期:字符串的打印输出长度
精确度指定数字类型字段的浮点位数。
移除计算所有值后,从结果(输出)中删除此字段。此字段可用于删除临时值。选择
conversion mask为字段指定格式,如日期格式。
小数点符号指定用于表示小数点(点 (.) 或逗号 (,) 的符号。5,000.00 或 5.000,00
分组符号指定用于以四位数或更大的数字(点 (.) 或逗号 (,)))分隔数千个单位的方法
货币符号指定用于表示货币的符号,例如 $或 ¥

计算类型

计算器组件支持的计算类型如下表所示:

类型说明
A+BA加上B
A-BA减去B
A*BA乘以B
A/BA除以B
A*AA的平方
SQRT( A )根号A
100 * A / BA在B中的百分比。
A - ( A * B / 100 )减去B%的A
A + ( A * B / 100 )把B%加到A。
A + B *CA加上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 dateA计算一年中的日期(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 + CA加上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提取给定日期的秒部分