如何刷新Factbox

时间:2015-11-24 11:09:23

标签: axapta dynamics-ax-2012 x++ dynamics-ax-2012-r2 dynamics-ax-2012-r3

我有一个表单,当我点击我的按钮。它添加到我的表A(我的factbox显示)是否可以用X ++代码刷新事实框?我无法弄清楚如何刷新我的infopart或查询哪个事实框使用。

1 个答案:

答案 0 :(得分:2)

对于infopart,您可以调用infopart表单运行的数据源更新:

void clicked()
{
    PartList       partList;
    int            i;
    FormRun        infoPartFormRun;
    FormDataSource infoPartDataSource;

    super();

    partList = new PartList(element);
    for (i = 1; i <= partList.partCount(); i++)
    {
        infoPartFormRun = partList.getPartById(i);
        if (infoPartFormRun.name() == identifierStr(MyInfoPart))
        {
            infoPartDataSource = infoPartFormRun.dataSource();
            if (infoPartDataSource)
            {
                infoPartDataSource.research();   
            }
        }
    }
}

我添加了对infoPartDataSource的检查,因为我首先使用提示组事实框测试了它,它没有数据源(或者至少我无法弄清楚如何获取一个数据源在提示组中提示并且由于您要求提供infopart事实框,我没有进一步调查。

更新:此问题似乎很受欢迎,MartinDráb也在他的博客中写道:Refreshing form parts