如何将参数传递给ListPageInteraction类?

时间:2014-04-08 08:02:22

标签: axapta dynamics-ax-2012 dynamics-ax-2012-r2

我想根据调用的menuitem更改列表页面的行为。我知道我可以使用不同的查询调用ListPage但是我想进一步使用不同的ListPageInteraction类或ListPageInteraction类的ListPage,其中我可以从menuitem调用它的一些参数。我该怎么办?

我基于调用列表页面的用户在initializeQuery方法中动态地在ListPageInteraction类中添加ListPageQuery的范围。

我知道我可以使用不同的ListPageInteraction分配一个ListPage的副本,或者我可以人为地向_query添加一些信息,但它似乎不正确。

P.S。:为什么没有_args输入?

1 个答案:

答案 0 :(得分:2)

是一个args输入,检查SysListPageInteractionBase类,在initializing方法中检索到args对象:

this.setListPageType(this.listPage().listPageArgs());

您可以根据此更改查询,例如检查ReturnTableListPageInteraction.setModeledQueryName()方法:

switch (this.getListPageType())
{
    case ReturnTableListPageType::Main:
        // Don't change query
        break;

    case ReturnTableListPageType::Open:
        this.listPage().modeledQueryName(querystr(ReturnTableListPage_Open));
        break;
    [...]
}