Axapta 如何在网格中刷新列表页面而不失去焦点?
我正在列表页面网格中打开项目的详细信息。可能会有一些更改,因此在关闭detail()并刷新列表页数据源之后 我正在从参数访问列表页数据源Axapta 如何在网格中刷新列表页面而不失去焦点?,axapta,Axapta,我正在列表页面网格中打开项目的详细信息。可能会有一些更改,因此在关闭detail()并刷新列表页数据源之后 我正在从参数访问列表页数据源 FormDataSource callerDataSource; callerDataSource = element.args().record().dataSource(); 但我可以得到以下结果之一 1) 我重新读取()当前记录 callerDataSource.reread(); 网格中的数据已更改,但表单部件不会刷新 2) 我研究(真实
FormDataSource callerDataSource;
callerDataSource = element.args().record().dataSource();
但我可以得到以下结果之一
1) 我重新读取()当前记录
callerDataSource.reread();
网格中的数据已更改,但表单部件不会刷新
2) 我研究(真实的)数据源
callerDataSource.research(true);
我甚至尝试了一个版本的研究
callerDataSource.reread();
callerDataSource.rereadReferenceDataSources();
callerDataSource.research(true);
但我在网格中失去了焦点
3) 我通过调用任务F5
#Task
Element.args().caller().task(#taskF5);
但这里也失去了重点
我希望在网格和表单部分中有新数据,但不要在网格中失去焦点。(仅刷新所选记录和信息部分就足够了,这取决于它。)
该表已选择主索引。它是recid(未在网格中显示)
我怎么做呢?没关系,我找到了
我的解决办法是利用这个职位
FormDataSource callerDataSource;
int position;
callerDataSource = element.args().record().dataSource();
position = callerDataSource.getPosition();
callerDataSource.reread();
callerDataSource.research(true);
callerDataSource.setPosition(position);
如果您使用的是
research()
,则不需要重新阅读(),如前所述或