【问题标题】:Omnis Studio: Return more than 1 valueOmnis Studio:返回超过 1 个值
【发布时间】:2015-08-20 07:44:25
【问题描述】:

我目前正在使用 Omnis Studio 进行编程,需要您的帮助。

我需要返回超过 1 个值,但退出方法只允许 1 个值。 是否有其他选项可以返回超过 1 个值?

感谢您的帮助!

【问题讨论】:

    标签: windows


    【解决方案1】:

    您可以使用字段引用参数,其中给定的参数可以在您的方法中自行更改。

    另一种方法是返回包含不同返回值的行或列表变量。 列表是包含一列或多列和一或多行的数据结构。每列可以有自己的数据类型。 行变量只是一个只有一行的列表。

    Calculate myRow as row(myVar1, myVar2, myVar3)
    Quit method myRow
    

    您可以按名称甚至按编号访问列(在上面的示例中,列没有名称):

    Calculate mySecondVar as myRow.c2
    

    在这种情况下,c2 代表第 2 列,并引用该行中的第二个变量。

    通过这种方式,您可以轻松返回任意数量的值。

    【讨论】:

      【解决方案2】:

      您要做的是通过引用传递参数。

      您可以在 Omnis 中通过将方法的参数定义为“字段引用”类型来执行此操作。

      这意味着不是传递您传递的变量值的副本,而是传递对原始变量的引用。 因此,对方法内的字段 ref 执行的任何操作实际上都将作用于传递给您的方法的原始变量。

      例如我们有一个方法 $myMethod,它有一个类型为 Field Reference 的参数 pRef

      Calculate pRef as 123
      Quit method "ABC"
      

      我们从其他地方调用这个方法:

      Calculate lVar as 0
      Calculate lReturn as $cinst.$myMethod(lVar)
      

      调用 $myMethod 后,lReturn 将为“ABC”,lVar 将为 123。

      (希望这对您有所帮助还为时不晚)

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-08-23
        • 2013-05-23
        • 2016-04-10
        相关资源
        最近更新 更多