Страница 1 из 1

Еще раз о фильтре

Добавлено: 19 май 2005, 10:22
savov
Прошу прощения, что повторяюсь, но проблема не решена.
Я писал уже, что при создании таблицы в памяти и наложении на нее фильтра средствами "Галактики" (через кнопу создания фильтра в интерфейсе) фильтр накладывается только после дополнительного пересоздания таблицы памяти. Поясню. Есть интерфейс, содержащий ТАБл1 (в памяти), список карт учета выработки. Из него вызываю спецификацию карты - другой фейс (Табл2 в памяти). Аналог в стандартной Галактике - накладные и спецификации к ним. При выходе из второго фейса Табл1 пересоздается и делается Rescan. Если ставлю фильтр на Табл1, то чтобы он заработал, надо войти в спецификацию карты учета выработки, а потом выйти из этого фейса, тогда фильтр срабатывает, иначе - нет. Как сделать, чтобы фильтр срабатывал сразу, без открытия интерфейса спецификации? На Форуме было предлдожение - работать с синонимом таблиц, я попробовал это сделать, но результата не получил. Очень нужно, помогите разобраться.

Добавлено: 19 май 2005, 11:13
edward_K
1. Попробуйте нарисовать вывод например отчета - в нем фильтр отработает? Если да то в дополнение к rescanpanel сделайте getfirst
еще нужно попробовать rereadrecords
2. можно попробовать динамически подымать фильтры

Добавлено: 19 май 2005, 11:24
savov
А что значит динамически? Поясните, пожалуйста.
Еще поясню. У меня в Init происходит перезаполнение (Delete начала, затем Insert) таблицы памяти. т.е. после выхода из фейса 2 в фейсе 1 сначала таблица пямяти очищается. потом заполняется и делается Rescan по ней. Именно это , наверно, и приводит к установке фильтра.
Каков механизм накладывания фильтра Гал-кой?

Добавлено: 19 май 2005, 11:34
Max_Fin
А где описание таблицы в памяти содержиться
в проекте или в каждом интерфейсе отдельно?

Добавлено: 19 май 2005, 11:40
edward_K
динамически значиться
PushBounds и PushCondition
вообще Rereadrecords, getfirst , затем RescanPanel обычно срабатывает. Getfirst необязателен но иногда тоже нужен .

Добавлено: 19 май 2005, 14:48
savov
Описание Табл1 в памяти в 1 фейсе, Табл2 - во втором.
PushBounds - это же в самом фейсе ставить надо кнопки с фильтрами, это сработает, думаю, но мне хочется средствами Гал-ки стандартной (ведь пользователю может в голову прийти любая комбинация полей в фильтре!)

Еще раз о фильтре

Добавлено: 03 июн 2005, 18:40
savov
Короче, пришлось написать таки кнопку и обработку фильтра, причем использовал PushCondition, но перед прорисовкой таблы в памяти снимаю ограничения, а после снова ставлю, иначе корректно не работает!