Привет всем!
Работаю с AX3
Создал StringEdit на основе edit-метода:
PHP код:
edit InventTransRefId inventTransRefId(boolean set, InventTransRefId _inventTransRefId)
{
if (set)
{
inventTransRefId = _inventTransRefId;
WMSTransport_ds.executeQuery();
}
return inventTransRefId;
}
для этого StringEdit-а создал обработчик Lookup:
PHP код:
public void lookup()
{
SysTableLookup sysTableLookup;
Query query = new Query();
QueryBuildDataSource queryBuildDataSource, queryBuildJoinDataSource;
QueryBuildRange queryBuildRange;
;
sysTableLookup = SysTableLookup::newParameters(tableNum(WMSTransport), this);
sysTableLookup.addLookupfield(fieldNum(WMSTransport, InventTransRefId));
sysTableLookup.addLookupfield(fieldNum(WMSTransport, InventTransType));
queryBuildDataSource = query.addDataSource(tablenum(WMSTransport));
queryBuildRange = queryBuildDataSource.addRange(fieldnum(WMSTransport, expeditionStatus));
queryBuildRange.value(StrFmt( "%1, %2", WMSExpeditionStatus::Activated, WMSExpeditionStatus::Started));
queryBuildDataSource.orderMode(OrderMode::GROUPBY);
queryBuildDataSource.addSortField(fieldNum(WMSTransport, InventTransRefId));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
Самое интересное это группировка по полю InventTransRefId.
Так вот! При первом вызове lookup-формы группировка срабатывает прекрасно. Затем, если выбрано одно из значений, то группировка работает только начиная от этого значения и до конца таблицы. А необходимо, чтобы при каждом вызове данный код срабатывал одинаково!
Может быть кто-то сталкивался с данной проблемой! Подскажите! Как с ней бороться??!!