变量分为两种:全局和局部。本地变量在执行过程中只存在于其业务流程中。全局变量的值存储在RAM中,可以在不同的BP中使用。
在AppMaster中,你可以为后台和前台创建变量。使用全局变量可以加快应用程序的速度,并尽量减少对数据库的查询次数。
在RAM中的存储对全局变量的操作施加了一些限制。
- 当应用程序被重新启动时,全局变量将采用默认值。
- 对于网络应用,每个浏览器标签是一个单独的运行实例。因此,每个副本都会有自己的全局变量值。
全局变量
要创建一个全局的后台变量,进入业务逻辑标签,选择 Global Variable选项卡并点击 Create global variable.
在这里你可以
- 选择变量类型。
- 给它一个名字。
- 指定一个描述。
- 打开/关闭 Read only选项。
当该 Read only选项被启用时,该变量的值不能在业务流程中改变。
当你选择一个变量类型时,你可以设置一个默认值。
当全局变量被创建后,它可以在业务流程编辑器中的 Global Variables标签中找到。
本地变量
在这里,局部变量也可以被创建。它们位于 Variables部分。
要创建一个局部变量,你需要把它拖到画布上。你可以使用块来设置一个变量的值。 Set variable块来设置变量的值。要定义哪个变量来存储数值,请将该变量连接到 Variable的输入字段。 Set Variable块的输入栏。值参数可以默认设置,也可以从另一个块动态传递。
该 Set variable块可以用来设置一个全局变量和一个局部变量。
一个局部变量只能在创建它的BP中使用。
要在前端创建一个全局变量,在编辑器中打开应用程序。该指令对于Web和移动应用程序是类似的。
转到 Global Variables选项卡中,点击 Create global variable.
为前端创建一个全局变量看起来与后端几乎一样。
Persistent.
启用该选项可以使变量的值在应用程序启动之间被保存。要使用一个全局前台变量或添加一个本地前台变量,请进入任何元素的 Workflow标签,例如,一个表格。与后台一样,你可以使用全局变量并创建新的本地变量。
当使用前台变量时,不同的触发器,虽然位于同一个屏幕上,但会启动独立的BP。下面是一个例子。
一个 Integer是一个局部变量。工作的逻辑。
当 onShow触发器启动时,该 Set Variable块设置Integer变量的值。当 onClick触发器启动时,Integer变量的值必须进入到 To String块,然后再进入 Notification块。
这样的逻辑对局部变量不起作用,因为每个触发器都会启动自己的BP。因此,当被触发器 onClick触发器时,局部变量的值将不会被设置。
为了解决这个问题,使用一个全局变量而不是一个局部变量。