AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 15.07.2005, 12:20   #1  
Pustik is offline
Pustik
Участник
 
807 / 372 (14) ++++++
Регистрация: 04.06.2004
Работа Range на форме
Добрый день.Может быть я что-то не понимаю.
Не буду описывать конкретно мою задачу приведу аналогичный пример попроще.

В таблице InventTable я хочу фильтровать записи по полю ItemBuyerGroupId, причем так, чтобы записей с другим значением этого поля
я никаким боком видеть не смог. Предположим в этом поле могут хранится значения 'АТЦ' или 'Обор'. И я хочу видеть только 'АТЦ'.

На datasource-e InventTable я создаю метод:
private void initRanges()
{ Query query = InventTable_ds.query();
QueryBuildDataSource qbds;
QueryBuildRange qbr;

qbds = query.dataSourceName( tablestr( InventTable ) );
qbds.clearRanges();

qbr = qbds.addRange(fieldnum (InventTable,ItemBuyerGroupId));
qbr.value(SysQuery::value('АТЦ'));
qbr.status(RangeStatus::Locked);
}
Далее перекрываю методы:
void init()
{ ;
super();
this.initRanges();
} и
public void executeQuery()
{ ;
this.initRanges();
super();
}
Вроде как бы все правильно и с первого взгляда работает. Но если встать на поле (на открытой форме естественно) ItemBuyerGroupId,
и через контекстное меню выбрать <Найти> , набрать 'Обор' , то он игнорирует мой код и в фильтр по полю подставляет 'Обор'.
Зачем тогда спрашивается qbr.status(RangeStatus::Locked);????? - если есть такая дыра.
Пытался обмануть: вместо qbr = qbds.addRange(fieldnum (InventTable,ItemBuyerGroupId)); , подставляю
qbr = qbds.addRange(fieldnum (InventTable,ItemBuyerGroupId));
qbr.enabled(false);
qbr = qbds.addRange(fieldnum (InventTable,ItemBuyerGroupId)); -- заработало , но только если один раз пытаться через <Найти> искать 'Обор' ,
на второй раз поиска опять меняет фильтр согласно искомому значению. Поясните где я не прав или что я не понимаю? Может быть фильтр и поиск - 2 разные вещи? Спасибо
Теги
query, queryrun, range, ax3.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Интегрирование листа Excel в форму chi DAX: Программирование 25 21.05.2014 14:39
axaptapedia: Packing date range values in queries Blog bot DAX Blogs 1 09.11.2007 13:10
Работа с Excel через COM и ошибка 0x800A03EC (Range.AutoFilter) gl00mie DAX: Программирование 15 30.03.2007 18:37
Range на форме по статическому методу Pustik DAX: Программирование 2 27.02.2006 15:28

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 16:06.