VAR数据集的范围是什么?

时间:2012-10-02 00:28:32

标签: aviarc

如果Workflow1显示Screen1,然后Screen1调用Workflow2,我可以使用Screen1的Workflow2中的 var 数据集,还是Workflow2重新初始化var数据集以供自己使用?

是否有关于var数据集的文档?

我只是重新为屏幕验证做了我的代码,但它没有用,因为我怀疑var数据集已被重置,而且Screen1的值不再可用。

1 个答案:

答案 0 :(得分:1)

目前无法在文档中找到它,但您所描述的行为是预期的。

< workflow> 元素开头的每个工作流都会创建一个新范围(see here)和VAR数据集。此数据集仅对与其相关的屏幕可见。如果屏幕在其情况下调用另一个工作流程,它将创建自己的VAR数据集并遮蔽任何其他已存在的数据集。

在您的示例中,设置如下:

--> Entry to the Workflow1
    Datasets: 
        var
        ... (any other declared dataset)
--> Show screen Screen1
    Visible Datasets: 
        var
        ... (any other declared dataset)
--> Call Workflow2
    Datasets: 
        var (this is a new clean dataset which does not have any 
             relationship to the VAR dataset created in Workflow1)
        ... (any new datasets)
        ... (any datasets declared in Workflow1, given that there were 
             no new datasets declared in Worklow2 with the same name)

因此,您的推理似乎是正确的,如果您希望数据在整个工作流程中可用,则需要创建一些其他数据集。