|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
10.09.2009, 06:39 | #1 |
Форумчанин
Регистрация: 27.07.2007
Сообщений: 123
|
Выделение записей в DBGrid (многопользовательский вариант )
возникла такая задача: выделение записей пробелом
сделал так: поместил на форму ListBox'ы в них хранил ID строки и в зависимости от того естьли ID в листбоксе крашу сетку. Но здесь есть небольшая проблема - при выборе очень большого количества записей программа начинает "тормозить" - причина мне ясна вот процедура перерисовки грида Код:
PS У меня есть и другой вариант который на 100% работает быстро - добавить поле в таблицу и хранить там статус выделенной записи, а при нажатии клавиши менять на противоположный - это все хорошо работает в однопользовательской версии программы , а у меня сетевая версия, поэтому такой вариант не подходит - причина : один пользователь выделил запись , а другой увидит выделение. если есть идеи про второй способ подскажите, буду очень признателен.
Ну что ж… Жизнь иногда такие фертеля выкидывает, что и фантасту не приснится…
|
10.09.2009, 08:24 | #2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Но ты скажи другое мне - ты ведь полксаешь набор, как другой пользователь может твои изменения увидеть если ты в БД еще не сохранил?
I'm learning to live...
|
|
10.09.2009, 08:31 | #3 |
Форумчанин
Регистрация: 27.07.2007
Сообщений: 123
|
Stilet
Но ты скажи другое мне - ты ведь полксаешь набор, как другой пользователь может твои изменения увидеть если ты в БД еще не сохранил? Если я использую листбокс то пользователи естественно не увидят то, что выделил другой. Но если я сделаю дополнительное поле как рекомендуют преподаватели - подскажи в какой таблице? в тойже которую выделяю? тогда произойдет следующее: один выделил - изменил поле "USER" - второму тоже нужно выделить эту же запись - и он переписывает пользователя и тот который выделил первым не увидит своей выбранной записи. и еще раз на счет листбоксов - работает все корректно, но только чем больше записей я выбираю тем медленнее происходит перерисовка строки DBGrid
Ну что ж… Жизнь иногда такие фертеля выкидывает, что и фантасту не приснится…
|
10.09.2009, 08:39 | #4 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
1. Записи не сохраняются про работе 2. Вообще-то преподаватель когда-то признался мне что под подобной фразой имеется ввиду некая а-ля настройка доступа пользователей к наборам. т.е. пользователь твой получил набор и начинает ставить в неких полях галочки - типа выделяю. Скажи это потом должно сохраняться в БД? Цитата:
I'm learning to live...
|
||
10.09.2009, 09:09 | #5 | ||
Форумчанин
Регистрация: 27.07.2007
Сообщений: 123
|
Цитата:
Вот код нажатия пробела Код:
Код:
Цитата:
Ну что ж… Жизнь иногда такие фертеля выкидывает, что и фантасту не приснится…
|
||
10.09.2009, 11:32 | #6 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
2 Paul Hindenburg
а как вы обрабатываете ситуацию одновременной работы нескольких пользователей над одними и теми же данными (речь даже не про раскраску, а именно про данные)? |
10.09.2009, 11:50 | #7 |
Форумчанин
Регистрация: 27.07.2007
Сообщений: 123
|
в данный момент никак у меня нет такой необходимости, но это не проблема - можно добавить поле в котором будет храниться статус блокировки записи, ну или в конце концов на сервере бд - это тоже контролируется. я не понял к чему этот вопрос
Ну что ж… Жизнь иногда такие фертеля выкидывает, что и фантасту не приснится…
|
10.09.2009, 12:14 | #8 | ||
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
Цитата:
I'm learning to live...
|
||
10.09.2009, 12:38 | #9 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
есть вариант использовать MemoryData
т.е. набор данных из БД копируется в память и работаешь с ним как с обычным набором данных можно в нем завести фиктивное поле и в нем отмечать любой признак выделения - все работает быстро |
10.09.2009, 12:57 | #10 |
Форумчанин
Регистрация: 27.07.2007
Сообщений: 123
|
можно поподробнее - я в первый раз слышу об этом объекте
Ну что ж… Жизнь иногда такие фертеля выкидывает, что и фантасту не приснится…
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Выделение ячейки в DBGrid правой кнопкой мыши | RIO | БД в Delphi | 2 | 20.08.2009 17:53 |
Добавление записей в DBGrid с помощью Query | Droid | БД в Delphi | 5 | 21.06.2009 03:02 |
Выбор записей в DBGrid-e | artemavd | БД в Delphi | 12 | 16.05.2009 19:45 |
Выделение цветом нужных строк таблицы DBGrid | XFilippowX | Общие вопросы Delphi | 4 | 16.02.2009 10:02 |
Сохранение нескольких записей из DbGrid в базу | Canadec | БД в Delphi | 5 | 06.09.2007 14:26 |