alexs писал(а):Dmitry писал(а):Первая выборка - выбираются все записи с сервера на клиент в dbGrid
Все или всёж только после наложения условий фильтрации?
Естесственно, что после наложения условия фильтрации, но при изменении фильтра к пользователю должны отправляться только измененные записи, а не все сразу.
Короче. Грустная история о визуальных средствах разработки:
Дали мне написать очередному студенту курсовик на дельфи. До этого я только мельком видел 6-й дельфи, а так на флешке сразу шла инсталляха 7-го.
Задачка простенькая - работа с локальной базой данных.
Ну я сразу кидаю на форму dbGrid и ищу, откуда он должен брать данные. Оказывается - из какого-то DataSet.
Нашел этот DataSet во вкладке 'Data Access'. Он хочет какой-то DataSource. Ничего с таким названием в компонентах не нашел.
Пошел от противного - кинул на форму компонент Table из BDE. В нем даже смог открыть локальную табличку. Как его привязать к остальным компонентам - совершенно не понятно. Нашел какие-то компоненеты типа SQLDataSource, LocalDataSource. Первый ищет какую-то SQL базу данных, второй лезет в ODBC и BDE. Я как человек вменяемый понимаю, что никто в том институте, где будет сдаваться этот курсак не будет в ODBC и BDE создавать ни какие таблицы и базы данных, а поэтому моя прога не заработает.
Нашел, что к table нужно привязывать или Base, или Session. Base лезет в BDE и хочет какие-то пароли. Session не понятно что делает.
Промучавшись пару часов я сумел таки привязать dbGrid к Table. Связка выглядела так Table - Session - DataSet - dbGrid.
Заработало. Кинул на форму dbNavigator. Начало работать. Все замечательно.
Захотел сделать редактирование пользователей в отдельнов окошке. Выставил свойство rowSelect=true и сделал обработчик onClick. В отдельном окошке меняю значения - они изменяются в базе данных. Замечательно. При нажатии на dbNavigator кнопки "добавить" зачем-то сразу добавляется пустое поле в базу данных. Как вместо этого перейти на форму с вводом полей - непонятно. Сообщение об удалении записи выводится на английском языке.
Короче. Промучавшись пол-дня я снес нафиг все эти db-приблуды. Тупо читаю базу вручную и вывожу ее в ListView. Редактирую - как хочу. Сортирую - как хочу. Пишу - как хочу. Фильтрую - как хочу.
Вопрос: Нафиг это графическое гуано, если с ним не возможно по человечески работать.