Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
| Atreides |
9.03.2011 10:32
Сообщение
#1
|
![]() Ветеран Броуновского Движения ![]() ![]() ![]() Группа: Пользователи Сообщений: 281 Пол: Мужской Реальное имя: Сергей Репутация: 0 |
Добрый день! Может кто сталкивался с подобной проблемой. Использую DBGrid, ClientDataSet, DataSource для вывода данных из Оркалинной БД. Пользователь может добавлять, редактировать или удалять записи. Все действия выполняются отлично, но после выполнения обновления и чтоб наверняка обновляю запросом повторным, DBGrid улетает в начало списка. Как при добавлении записи перевести на новую запись, при редактировании оставить на отредактированной записи, при удалении оставить на месте предыдущей?
Еще вопрос, немного не в тему. Использую в качестве справочника DBLookupComboBox. Как перейти, при уже заполненном данными DBLookupComboBox к строке в которой такое же значение как и в поле редактируемой записи? Сообщение отредактировано: Atreides - 9.03.2011 10:49 -------------------- Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
|
![]() ![]() |
| volvo |
11.03.2011 10:54
Сообщение
#2
|
|
Гость |
Цитата А можно пример, пожалуйста, а то никогда не работал с такой компонентой. В хелпе должен быть пример использования. Вот из онлайн-документации: Marking and Returning to RecordsЦитата С добавлением нашел просто выход - ClientDataSet.Last А если данные будут добавлены не в самый конец набора? Тогда что? Добавил в середину, и перешел к последнему элементу? Все ж зависит от того, как у тебя происходит сортировка при выводе... |
| Atreides |
11.03.2011 12:57
Сообщение
#3
|
![]() Ветеран Броуновского Движения ![]() ![]() ![]() Группа: Пользователи Сообщений: 281 Пол: Мужской Реальное имя: Сергей Репутация: 0 |
В хелпе должен быть пример использования. Вот из онлайн-документации: Marking and Returning to Records Спасибо, пригодиться! А если данные будут добавлены не в самый конец набора? Тогда что? Добавил в середину, и перешел к последнему элементу? Все ж зависит от того, как у тебя происходит сортировка при выводе... А у меня в таблице добавленные записи всегда с новым идентификатором пишутся (+1). Подобрал вот такой способ для прыжка на место записи - Код st := 'select * from .... order by идентификатор записи'; Form1.ClientDataSet1.close; Form1.ClientDataSet1.DataRequest(st); Form1.ClientDataSet1.open; FOrm1.ClientDataSet1.Locate('Искомое поле', VarArrayOf([TRIM(Form1.Edit2.text)]), [loPartialKey]); -------------------- Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
|
Atreides Навигация по DBGrid 9.03.2011 10:32
volvo TBookmark использовать во всех трех случаях. Перед... 9.03.2011 12:47
Atreides
TBookmark использовать во всех трех случаях. Пере... 9.03.2011 13:21![]() ![]() |
|
Текстовая версия | 9.12.2025 14:03 |