如何在类文件中使用动态函数进度

时间:2017-11-21 12:46:53

标签: openedge progress-4gl

我不得不将过程文件重写为类文件,但是无法调用动态函数。有没有办法在你的班级中运行动态函数?

我得到了将p文件更改为cls文件的作业。

我所说的方法是:

cBeheerder = dynamic-function ("fnBeheersgroep", nr1, nr2).

我收到无法找到动态错误的错误。

1 个答案:

答案 0 :(得分:1)

这里有很多可以玩的地方。你的功能(现在是一种方法,如果我理解正确的话)在同一个班级?您是否正在使用动态功能,如果它现在是一种方法(因此您应该使用DYNAMIC-INVOKE)?该函数是否返回字符?你得到的错误号码是什么?

我创建了一个过于简化的类来展示如何以一种简单的方式实现这一目标:

class myclass:
    method public void main():
        MESSAGE dynamic-invoke(this-object, 'fnBeheersgroep',1,2)
            VIEW-AS ALERT-BOX INFO BUTTONS OK.
    end method.

    method public integer fnBeheersgroep (input nr1 as integer, input nr2 as integer):
        return nr1.
    end method.

    CONSTRUCTOR myclass ( ):    
        main().
    END CONSTRUCTOR.

end class.

将它用作函数而不是方法给了我错误13664: 无法调用方法''在''类型的对象中使用DYNAMIC-FUNCTION()。 (13664)

希望它有所帮助。