我只是努力通过以下情况 - 有一个数据源添加到axapta 2009中的网格,由querybuildrange过滤。标记筛选网格中的特定数据集
我想通过
datasource_DS.findrecord(specificRecord)
标记由X ++特定的数据集以此为意,取出过滤器,但不具有过滤器激活的作品! 解决方法删除筛选器并将所有内容(筛选!)首先添加到临时表不是我想要的。
我无法想象有没有办法完成这项任务?! 在此先感谢!
编辑:上形式
数据源: - ProdRouteJob(JoinSource:ProdTable,链接类型:InnerJoin) - ProdTable
含有特定ProdStatus仅数据集应显示在网格中。 这是由提到的范围内进行,例如:
prodStatusRange = prodTable_ds.query().dataSourceTable(tablenum(ProdTable)).addRange(fieldnum(ProdTable, ProdStatus));
prodStatusRange.value("((ProdStatus == 0) || (ProdStatus == 1))");
选择一个特定数据所做,例如:
ProdRouteJob currentProdRouteJob;
;
currentProdRouteJob = ProdRouteJob::findJobId("JOB_12345");
info (currentProdRouteJob.JobId);
prodRouteJob_DS.findRecord(currentProdRouteJob);
的信息功能显示正确的JobId。 如果我删除过滤器,findRecord()
选择数据集,如果不是 - 没有。 加入DS.research(true);
不会更改此行为。
以下内容并不十分清楚:“此操作按预期工作,取下过滤器,但不启用过滤器”。 陈述你的意图。 – 2010-10-21 09:13:08
'findRecord'不会“标记特定的数据集”,它会选择一个特定的记录作为活动记录。 – 2010-10-21 09:18:04
对第一条语句的评论:如果我运行代码,删除筛选后 - 数据集_选择_网格中的特定数据集。如果过滤器处于活动状态,则不会发生指定数据集的选择。 – Nico 2010-10-21 12:01:53