|
|
变量
什么是变量?
在本系统中,指令的执行跟变量有很大关系,变量是指令执行过程中交换数据的地方,指令执行时,可以把一些执行的结果数据保存在变量中,
也可以从变量中取出变量中的值来加以处理。
我们来看一个数学运算指令执行的过程。如图:

变量有一个名称,叫变量名,保存在变量中的值叫变量值。
变量有下面特点:
- 当触发了一个流程时,系统会建立一个新的过程,每个过程之间的变量是相互独立的。
比如:张三填写请假单后触发了请假申请流程,系统建立一个新的过程,该过程中的变量1的值为“张三”,李四填写请假单后触发了请假申请流程,
系统又建立另一个新的过程,该过程中的变量1的值为“李四”,这两个过程中的变量是相互不影响的。
- 变量在过程执行时被建立,当过程结束后,该过程的变量将被系统删除。
- 同名变量在整个流程中都有效。比如,主流程中有个变量为变量1,其值为0,当主流程执行到某个子流程时,该子流程中也有一个叫变量1的变量,
在子流程中,我们把变量1的值改为1,那么,在主流程中后面的步骤中,变量1的值就是1了。
特殊变量
系统中有一些特殊变量,这些特殊变量分别是:
- 带引号的变量:当一个变量名是用英文的引号包围起来时,该变量的值为引号包围的部分。
例如:变量名为"abc"(变量名用2个引号围起来),该变量的值是引号内的字符串,即abc。
- 变量名是数字的变量:当变量的名称为数字时,变量的值等于该数字。例如:变量名为10.5,该变量的值也为10.5。
- 变量名为“DataID_Submit”的变量:表示变量的值为提交的数据识别号,相当于执行了“把当前流程表单数据ID付给变量”指令。
- 变量名为“DataID_PerApp”的变量:表示变量的值为前面的审批数据识别号。相当于执行了“把当前流程步骤前的审批表单的审批数据ID付给变量”指令。
- 变量名含有+、-、*、/、%、^、()的变量:表示该变量的值为某个运算的结果。我们在下面说明变量的运算
变量的运算
变量是可以进行运算的,我们可以用“数学运算”指令来进行变量运算,我们还可以有更简单的方法对变量进行运算,那就是在变量名中使用运算符号。
例如,假设变量A的值是1,变量B的值是2,我们可以定义一个变量,这个变量的名称为:A+B,变量名为“A+B”的变量的值就是3了。你看看,这种运算方法是不是简单好多。
变量名中含有+、-、*、/、%、^、()的变量是特殊变量,系统会按运算规则先对该变量进行计算,然后把计算结果再作为该变量的值。
下面列出了各个运算符号的表达的意思:
- +:进行加法运算。例如:变量“A+1”,当变量A的值为3时,变量“A+1”的值为4。
当加法运算的前面的被加数为时间格式,后面的加数为数字格式时,加法运算的结果为前面时间加后面小时数所得出的时间。例如:变量名为“"2009-11-22 10:20"+1”,则该变量的值为“2009-11-22 11:20”。
当加法运算既不能按数字进行运算又不能按时间进行运算时,加法运算的结果将是把相加的两个变量值作为字符串相连接。例如:变量“"我的姓名:"+B”,当变量B的值为“吴少武”时,变量“"我的姓名:"+B”的值是“我的姓名:吴少武”。
- -:进行减法运算。例如:变量“A-1”,当变量A的值为3时,变量“A-1”的值为2。
当减法运算的前面的被数为时间格式,后面的减数为数字格式时,减法运算的结果为前面时间减后面小时数所得出的时间。例如:变量名为“"2009-11-22 10:20"-1”,则该变量的值为“2009-11-22 9:20”。
- *:进行乘法运算。例如:变量“A*2”,当变量A的值为3时,变量“A*2”的值为6。
- /:进行除法运算。例如:变量“A/3”,当变量A的值为3时,变量“A/3”的值为1。
- %:进行求余运算。例如:变量“A%2”,当变量A的值为3时,变量“A%2”的值为3除以2的余数,为1。
- ^:进行求幂运算。例如:变量“A^2”,当变量A的值为3时,变量“A^2”的值为3的平方。又例如:变量“A^(1/2)”,当变量A的值为3时,变量“A^(1/2)”的值为3的平方根。
- ():跟小学课本中的数学运算的括号意思一样。
|
|