zoltanleo писал(а):Именно постраничная подгрузка (это когда грид к уже имеющимся у него данным подгружает в кэш с сервера ровно столько данных, сколько может показать на экране дисплея, не так ли?) НЕ нагружает сервер и является весьма продуктивной в противовес полному фетчу.
Нет, не так. Постраничная подгрузка может и получает за один подход меньше данных, но зато дергает сервер каждый раз, когда пользователь выполняет любое постраничное перемещение по данным. В случае, когда, например, какой-нибудь кладовщик или менеджер в торговой фирме целые сутки работает со списком находящейся на складе продукции, таких обращений к серваку будет по несколько раз в минуту. Если таких менеджеров на фирме 100, то сервак пашет без отдыха. Насчет сортировки, фильтрации и - особенно - построения деревьев - ситуация еще хуже. Сервер должен сначала отсортировать ВЕСЬ список, и только потом возвратить тебе запрошенное количество записей из этого списка. И проч. проч... Я уже не говорю про итоги. Когда внизу списка ты хочешь видеть общее количество элементов или общую сумму цен товаров (а в EhLib несколько видов расчета итогов), независимо от того, сколько записей в гриде у тебя перед глазами на данный момент, тебе придется каждый раз выполнять дополнительные запросы для расчета этих самых итогов - а это опять же запросы, работающие со ВСЕМ списком записей. В общем, если хочешь, я могу тебе кинуть руководство разработчика к последней версии EhLib, подробности почитаешь сам
zoltanleo писал(а):Наверное, стоит уточнить, чего же ты хочешь
Я достаточно внятно объяснил, чего я хочу. Я хочу, чтобы при запуске потенциально относительно долго выполнимых операций, юзеру на глаза вешалось окно, сообщающее о выполнении в настоящее время этой операции, желательно с возможностью выдачи внятной информации о том, какая именно операция сейчас выполняется, и чтобы это окно после окончания операции закрывалось (Кстати, если при таких операциях в гриде и других db-aware контролах мелькают данные, то это обычно означает, что программиста в дата-компонентах забыл использовать DisableControls и EnableControls. При обновлении данных ничего мелькать не должно, соответственно и твоя форма не должна ничего загораживать, ее предназначение не в этом). И, собственно, как я уже писал выше, то, что я хочу, я уже сделал, и полностью удовлетворен сделанным. Я просто хотел уточнить, нет ли чего-то подходящего в компонентах стандартного набора Лазаруса, но в итоге подгрузил RxLib и взял оттуда TSecretPanel