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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 04.07.2006, 20:27   #2  
e-statik is offline
e-statik
Участник
 
102 / 11 (1) +
Регистрация: 06.07.2005
Можно написать:
Код:
REC.SETRANGE(Field1, 'value1');
REC.SETRANGE(Field2, 'value2');
Если REC будет отображен в форму, то эти фильтры пользователь может легко снять по shift+ctrl+F7
А можно написать:
Код:
REC.FILTERGROUP(2);
REC.SETRANGE(Field1, 'value1');
REC.SETRANGE(Field2, 'value2');
REC.FILTERGROUP(0);
И этот фильтр в форме пользователь уже никак не сбросит. Его можно будет снять только программно.
По умолчанию работа ведется в группе 0 и все фильтры накладываются в ней. Чтобы наложить жесткие фильтры, заходим сначала в группу 2, накладываем фильтры, потом назад в группу 0.

Если написать так:
Код:
REC.FILTERGROUP(2);
REC.SETRANGE(Field1, 'value1');
REC.FILTERGROUP(0);
REC.SETRANGE(Field2, 'value2');
то, нажав на кнопку сброса фильтров, фильтр с поля Field2 сбросится, а с Field1 - нет. При этом можно дополнительно будет накладывать фильтр на Field1 - он не будет перекрывать фильтр в группе 2. Фильтры, наложенные в группе 2, вообще не видны пользователю (по соответствующим кнопкам не видно, что они наложены).

Извиняюсь за может быть не совсем удачные формулировки
 


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

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

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