AX7:使用扩展方法在视图上创建方法(错误?)

AX7: Creating a method on a View using the extension method (bug?)

编辑: 问题是,为什么 view 上的显示方法不起作用?

我正在尝试使用扩展方法在 DirPartyPostalAddressView 上创建一个显示方法,据我所知,这可能是一个 AX7 错误,或者我正在这样做错误的。我正在使用最近更新的最新 AX7。

我正在使用此处详述的方法https://blogs.msdn.microsoft.com/mfp/2015/12/15/x-in-ax7-extension-methods/

我创建了一个概念验证 display method 用于视图 DirPartyPostalAddressView 与 table CustTable 以显示可能的 bug.

Extension class code:

static class MyClass_extension
{
    public static display NoYesId displayYesDirPartyPostalAddressView (DirPartyPostalAddressView _this)
    {
        return NoYes::Yes;
    }

    public static display NoYesId displayYesCustTable (CustTable _this)
    {
        return NoYes::Yes;
    }
}

我创建了表单 CustTable 的扩展,向其添加了一个复选框控件,设置了 DataSource = CustTableDataMethod = MyClass_extension::displayYesCustTable,这一切正常。 (见截图)

问题: 我创建了表单 LogisticsPostalAddressGrid 的扩展,向网格添加了一个复选框控件,设置了 DataSource = DirPartyPostalAddressView 但它没有编译。 (见截图)

The error is:

The data method 'MyClass_extension::displayYesDirPartyPostalAddressView' was not found on the data source 'DirPartyPostalAddressView' or its base table/view.

我认为您应该在视图中使用计算列,而忘记那里的显示方法。

查看 AX 帮助 Wiki 中的 this。我想出于测试目的,如果在计算列的方法中你只是 "return '1'" 或 "return true".

就足够了

这已被确认为一个错误,将在下一个平台版本中修复。

参见:https://connect.microsoft.com/site1321/feedback/details/3100997/data-methods-are-not-found-using-extension-method-on-views