Я просто пытаюсь справиться со следующей ситуацией - есть источник данных, добавленный в сетку в axapta 2009, отфильтрованный диапазоном запроса.
Я хочу пометить определенный набор данных с помощью x ++ с помощью
datasource_DS.findrecord( specificRecord )
это работает, как задумано, удаляя фильтр, но не имея активного фильтра!Обходной путь для удаления фильтра и добавления всего (фильтрованного!) во временную таблицу первым - это не то, что я хочу.
Я не могу представить, что нет способа решить эту задачу ?!заранее спасибо!
edit:
источники данных в форме: - ProdRouteJob (JoinSource: ProdTable, LinkType: 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 );
не меняет этого поведения.