-
Как можно переместиться в указанную переменной строку в таблице?
Например на Combobox выбрано значение и его индекс присвоен к переменной F. Надо делать так чтоб в Таблице курсор переместился в Строку номер F.
-
в какой таблице?
-
Базы данных MYSQL программа Navicat.. там я показал когда поставил вопрос
-
таблица соединено с помощью DataSource DataModule
-
> Panky
> в Строку номер F
Подозреваю что нет такой строки.
Искать надо по значению поля, а не по мифическому номеру строки. DataSet.Locate +F1
-
А можно по подробнее как работает это команда? Что нужно написать внутри скобок? Mytable1.locate(.. что дальше?
-
> [5] Panky (13.05.11 13:16)
Ну так F1 то нажми - там про это и написано.
-
> [0] Panky (13.05.11 12:21)
Создайте в таблице автоинкрементное поле и идентифицируйте строки по нему.
PS: Для начала рекомендую взять какую-нибудь хорошо сделанную БД коммерческого проекта и посмотреть, как она организована. Считать строки в таблице обычно не имеет смысла, а вот идентифицировать нужно.
-
а что написать в место Options:LocateOptions
-
То есть в таблице БД, тогда никак, порядок вывода не определен. Если бы сказал про датасет, тогда никаких проблем.
-
> а что написать в место Options:LocateOptions
В справке указано, у тебя что ее нет?
-
Удалено модератором
-
Удалено модератором
-
Удалено модератором
-
> И. Павел © (13.05.11 15:02) [12]
Игорь не указал copyright "Козьма Прутков", но суть от этого не изменилась.
Вы предлагаете синхронизировать индексы в Combobox и автоинкремент ?
Это еще та чушь, как сказала бы Алиса.
-
> [14] Jeer © (13.05.11 15:22)
Я предлагаю перед тем, как оперировать выражением "номер строки" дать строке этот номер. Во многих БД строки не упорядочены.
Автор написал: "Как можно переместиться в указанную переменной строку в таблице? "
-
Удалено модератором
-
Удалено модератором
-
> Игорь Шевченко © (13.05.11 14:42) [11]
а чем плохо
Создать в таблице автоинкрементное поле и идентифицировать строки по нему
?
интересует, самодостаточное ли выражение и почему сие плохо,
или реплика в контексте бессмыслицы
> чтоб в Таблице курсор переместился в Строку номер F
?
-
> Создать в таблице автоинкрементное поле и идентифицировать
> строки по нему
Тем что это не номер строки, по которому автору зачем то хочется перемещаться, а не идентифицировать, об этом даже и речи не было.
-
Еще раз для шаловливых головой..
Индекс в Combobox всегда имеет непрерывную последовательную нумерацию с нуля, хоть тресни.
Автоинкремент и любой другой sequenced id не обязаны иметь непрерывность.
А если в Combobox помещаются результаты выборки ?
Я уж не говорю о том, что использование комбика ( обычного, не dbaware ) садомазохизм.
-
Привязываем к одному dataset два компонента: DBGrid и DBLoockupComboBox. DBLoockupComboBox привязываем к инкрементному полю. При выборе номера в DBLoockupComboBox эта же строка автоматически выделяется в DBGrid. При этом не нужно писать ни одной строчки кода.
То, что старые номера удаленных строк не будут использоваться снова имеет как положительные (номер строки не изменится после добавления/удаления других) так и отрицательные (уже сказали) стороны.
Это не единственный вариант, но как вариант, ИМХО, неплох.
-
> И. Павел © (13.05.11 16:57) [21]
>
> Привязываем к одному dataset два компонента: DBGrid и DBLoockupComboBox.
>
Где в вопросе звучал dbaware-компонент ?
Более того, шло уточнение об индексе комбика.
Еще раз сошлюсь на удаленное [13]
-
> Jeer © (13.05.11 17:15) [22]
LOL. Спорить больше не буду. Посоветуйте теперь что-нибудь сами.
-
вопрошающий, кажется, вообще не осознает разницу между индексом, номером и каким-то там автоинкрементным ид.
так что спор тут - ради спора
-
> И. Павел (13.05.2011 17:21:23) [23]
Да, да [13]
-
> clickmaker (13.05.2011 17:29:24) [24]
Черная пятница