Доброго времени суток, уважаемые!
Поискал такую тему, но не нашел; прошу извинить, если окажется, что искал плохо.
Дело в следующем.
Вывел в одном гриде две таблицы (CustPackingSlipJour и CustPackingSlipTrans, отборочные накладные продажи), со связью Inner Join. Записей в каждой под тысячу; строк чуть больше (понятное дело).
Грид помещен на новую вкладку в форме "Журнал отборочных накладных" (CustPackingSlipJournal). Датасорсы созданы новые, только для этого грида.
Всего 22 поля в гриде. Только нормальные поля, без методов. Среди полей есть добавленные нами.
В результате - ЖУТКИЕ ТОРМОЗА.
Грид заполняется уныло-построчно; после прорисовывания всех строк, что помещаются на форму, можно начинать что-то делать - но при этом переход на другую строку клавишей "Вниз" занимает чуть меньше секунды, а прокручивание колеcом мышки становится вообще неоперабельным.
Если удалять поля из грида - начинает работать быстрее, и, после оставления, скажем, всего 4-х полей (по 2 из каждой таблицы) - практически нормально.
Самая фича: замечено, что если что-нибудь сделать с формой (свернуть/развернуть, изменить ширину столбца в гриде, изменить размер окна формы) - то после этого грид начинает работать нормально и продолжает это делать, пока не закроешь форму. Поэтому технология работы сейчас такая: щелчок по вкладке, сразу щелчок по "Свернуть", ждем несколько секунд, пока по инерции допрорисуются первые несколько строчек, потом форма сворачивается, восстанавливаем ее - и можно работать.
На другой базе (раза в 2 побольше записей) тот же объект не вызывает уже жутких тормозов, но тоже явно немного подтормаживает, что также лечится вышеописанным образом.
Подскажите, пожалуйста, в чем тут дело и как с этим бороться.