根据字段值运行动态类

时间:2016-06-30 08:57:15

标签: axapta x++

我有3个类,每个类都有一个运行计算并在不同字段中写入值的方法,此方法还将类名写入从该方法运行的字段中。

这很好用。

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

例如:

Class1 RunMethod
Class2 RunMethod
Class3 RunMethod

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

我想我可以用SysDictClass完成此任务,但我不知道如何开始,我怎样才能从这个方法开始?

1 个答案:

答案 0 :(得分:6)

这应该让你明白。我在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');
}