运行 动态 class 基于字段值

Run dynamic class based on field value

我有 3 个 classes,每个都有一个方法 运行 一些计算并将值写入不同的字段,此方法还将 classname 写入一个字段运行s 来自.

的方法

这很好用。

我最近创建了一个按钮重新运行的方法,来自class原来运行的方法。

例如:

Class1 RunMethod
Class2 RunMethod
Class3 RunMethod

我现在正在创建单击操作按钮时的方法,但我不知道如何从最初 运行 所在的 class 中 运行 一个特定方法。 class 名称在字段中。

我想我可以用 SysDictClass 来完成这个,但我不知道如何开始,我怎样才能最好地开始这个方法?

这应该让您明白了。我是在 AX 2009 中编写的,但它应该也可以在 AX 2012 中使用。

public static client void SysDictClassJob()
{
    ClassId      classId;
    Object       obj;
    SysDictClass sysDictClass;
    ;

    // Create instance (if you are going to call a member method)
    classId = className2Id('SomeClass');
    obj = classFactory.createClass(classId);

    // Invoke member method
    sysDictClass = new SysDictClass(classId);
    sysDictClass.callObject('yourMemberMethod', obj);

    // Invoke static method
    sysDictClass.callStatic('yourStaticMethod');
}