如何刷新 Factbox
How to refresh Factbox
我有一个表格,当我点击我的 button.It 添加到我的 table A(我的事实框显示的内容)是否可以使用 X++ 代码刷新事实框?我不知道如何刷新我的信息部分或查询使用哪个 factbox。
对于信息部分,您可以调用信息部分表单数据源的更新 运行:
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
的检查,因为我首先使用提示组事实框测试了它,它没有数据源(或者至少我不知道如何获取数据源提示组中的一个提示,并且由于您要求提供信息部分事实框,所以我没有进一步调查)。
更新:这个问题目前似乎很流行,Martin Dráb 也在他的博客中写到:Refreshing form parts
我有一个表格,当我点击我的 button.It 添加到我的 table A(我的事实框显示的内容)是否可以使用 X++ 代码刷新事实框?我不知道如何刷新我的信息部分或查询使用哪个 factbox。
对于信息部分,您可以调用信息部分表单数据源的更新 运行:
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
的检查,因为我首先使用提示组事实框测试了它,它没有数据源(或者至少我不知道如何获取数据源提示组中的一个提示,并且由于您要求提供信息部分事实框,所以我没有进一步调查)。
更新:这个问题目前似乎很流行,Martin Dráb 也在他的博客中写到:Refreshing form parts