Фильтр в BROWSE

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7322
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Фильтр в BROWSE

Сообщение Игорь Столяров »

Привет всем !

Сразу скажу, что вопрос фильтров в списках неоднократно обсуждался,
но хотелось бы обсудить его с другой стороны - возможно кто-то сталкивался и знает решение.

1. Установка фильтра в списке сводится к выполнению VIEW{Prop:Filter} = 'УСЛОВИЕ'.

2. В справка сказано, что FILTER() работает аналогично EVALUATE(), т.е. при каждом выполнении
производится синтаксический разбор и контроль строки с заданным условием фильтрации.

3. Значит, вполне логично один раз выполнить BindExpression('xFilter_','УСЛОВИЕ') и далее уже
в качестве фильтра BROWSE указывать xFilter_. В теории всё вроде правильно.

4. Практика: ошибок нет, но BROWSE с такой конструкцией показывается … и закрывается вместе с программой. :(
По крайне мере в C6.3 / 11 ABC. Вопрос в том, почему ?
За теми кто отстал - не возвращаться. (С) Кодекс
kreator
✯ Ветеран ✯
Сообщения: 4960
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 6 раз
Поблагодарили: 19 раз

Фильтр в BROWSE

Сообщение kreator »

Наверно всё-таки не совсем аналогично Evaluate. В хелпе есть вот такой пример:
BINDEXPRESSION('Match:Soundex',Match:Soundex)
FILTER('MATCH(Cus:Name,NameWanted,Match:Soundex)')
Может есть какая-то веская причина использовать MATCH?
We are hard at work… for you. :)
Ответить