Как обновить Factbox

У меня есть форма, когда я нажимаю на свою кнопку. Она добавляет к моей таблице A (что показывает мой блок данных), можно ли обновить блок фактов кодом X++? Я не могу понять, как обновить инфопарт или запрос, который использует поле фактов.

1 ответ

Решение

Для инфопартии вы можете вызвать обновление источника данных запуска формы инфопарта:

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 потому что я сначала проверил это с помощью блока фактов группы сцен, в котором нет источника данных (или, по крайней мере, я не смог выяснить, как получить источник данных одного из сигналов в группе вызовов, и поскольку вы запросили инфопарт Факт коробки, я не стал расследовать дальше).

Обновление: в данный момент проблема, кажется, популярна, Мартин Драб также написал в своем блоге об этом: Обновление частей формы

Другие вопросы по тегам