02.02.2012, 10:02 | #1 |
Участник
|
Фильтр по сетке
Поискал по форуму, вроде такого не увидел, поэтому напишу.
Столкнулся со странным поведение фичи "Фильтр по сетке" для случая, когда на форме есть подчиненный источник данных с программно наложенными фильтрами, у которых RangeStatus = Locked. В этом случае в фильтре по сетке для грида, в котором содержатся данные подчиненной таблицы, почти во всех полях отображается значение фильтра, программно заданного для последнего фильтруемого поля из главной таблицы. Если убрать свойство RangeStatus = Locked, то все работает нормально Статус фильтров родительского источника данных не влияет на поведение. Последний раз редактировалось Ace of Database; 02.02.2012 в 10:05. |
|
02.02.2012, 12:27 | #2 |
Участник
|
Оказывается, баг воспроизводится на простейшем примере, состоящем всего из одной таблицы. Пример приложил в проекте. Проект состоит из формы и таблицы из двух полей.
Запускаем форму, нажимаем кнопку "Фильтр по сетке", и видим, что фильтр по последнему полю отображается и для первого поля. |
|
02.02.2012, 12:29 | #3 |
Участник
|
Такой код в методе init() источника данных, если закомментировать строку "range.status(RangeStatus::Locked);", то все работает правильно.
X++: public void init() { QueryBuildRange qbr1; QueryBuildRange qbr2; QueryBuildRange addRange(FieldId _fieldId) { QueryBuildRange _range; ; _range = zLockedRangeTest_DS. query(). dataSourceTable(tableNum(zLockedRangeTest)). addRange(_fieldId); _range.status(RangeStatus::Locked); return _range; } ; super(); qbr1 = addRange(fieldNum(zLockedRangeTest, Field1)); qbr2 = addRange(fieldNum(zLockedRangeTest, Field2)); qbr2.value(queryvalue("2-е поле")); } |
|
02.02.2012, 12:32 | #4 |
Участник
|
Если при запуске форма открывается уже с включенным фильтром по сетке, то там все пусто. Надо выключить\включить фильтр по сетке - тогда опять глюк повторится.
|
|
02.02.2012, 17:49 | #5 |
Участник
|
На ядре из RU7 (5.0.1500.4570) не воспроизводится. А у вас какое ядро?
|
|
|
За это сообщение автора поблагодарили: Ace of Database (2). |
07.02.2012, 15:27 | #6 |
Участник
|
Оказалось, что у меня старый клиент Аксапты Обновил клиента, все нормально стало.
Всем обновили клиента, а мне нет |
|
|
Похожие темы | ||||
Тема | Ответов | |||
Фильтр по сетке в lookup | 5 | |||
Фильтр по сетке в lookup форме. | 6 | |||
ERP-BLOG: Axapta, фильтр по сетке | 26 | |||
AX 4.0 фильтр по сетке | 8 | |||
Исполнить сформированный фильтр | 14 |
|