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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 31.05.2010, 16:49   #8  
Raul is offline
Raul
Участник
 
35 / 10 (1) +
Регистрация: 15.03.2006
Цитата:
Сообщение от Milk Посмотреть сообщение
Цитата:
Сообщение от Nosta Посмотреть сообщение
Цитата:
Сообщение от Milk Посмотреть сообщение
Проще всего, наверное, воспользоваться группами фильтров. Наложить на одном уровне 120..158, на другом 136, и посмотреть, найдется ли запись.
осмелюсь показаться наглым: а можно посмотреть как это реализовать в коде? никогда не работал с группами фильтров (
Например, написать

recX.FILTERGROUP(2);
recX.SETFILTER(A, '120..158');
recX.FILTERGROUP(0);
recX.SETFILTER(A, '136');
if recX.FINDFIRST THEN ...

и не забыть потом сделать записи RESET, чтобы снять фильтры.

Цитата:
Сообщение от Raul Посмотреть сообщение
Если есть запись, для которой нужно проверить попадает она в какой-то отфильтрованный набор, то нужно
1. установить фильтры на нужные поля этой записи Rec.SETFILTER или использовать Rec.SETVIEW
2. вызвать Rec.FIND, если запись попадает в набор то вернется TRUE
Один нюанс: такой метод наверняка сработает, только если выбран первичный ключ. А он может быть неудобен, если поле, по которому накладывают фильтр, в него не входит, а записей много.
Нет ключ тут может быть любым, нюанс только один проверяемая запись должна существовать в таблице.
 


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

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

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