Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2016, 22:51   #1
comparator
Новичок
Джуниор
 
Регистрация: 05.07.2016
Сообщений: 4
Печаль tdbcombobox tdbgrid реализовать форму для управления данными

Всем привет.
Есть три таблице в БД
основная и две справочных

CREATE TABLE tpet (id int autoincrement, colorid int, typeid int, name VARCHAR(20), birth DATE, age int)

CREATE TABLE tcolor (id int autoincrement,name VARCHAR(20))

CREATE TABLE ttype (id int autoincrement,name VARCHAR(20))


необходимо реализовать форму не используя bde для управления данными (доюавить удалить и изменить)такой структуры данных. Чтобы когда пользователь добавлял запись он выбирал соответствующие записи в tcolor и ttype а в табличку tpet добавлялись соответствующие идентификаторы colorid и typeid.

Например пользователь выбрал цвет из tdbcombobox (tcolor), породу tdbcombobox (ttype), в поля ввел name, birth, age и запись добавилась в tpet

так же если пользователь выбрал запись в dbgrid у него в tdbcombobox'ы и поля подтянулись значения name из таблиц tcolor, ttype он их исправил и запись в tpet изменилась

Как это это реализовать. Может у кого есть пример.
comparator вне форума Ответить с цитированием
Старый 06.07.2016, 08:26   #2
Ernest027
Форумчанин
 
Регистрация: 27.04.2015
Сообщений: 437
По умолчанию

Для начала нужно сделать у таблиц правильную структуру, потом построить зависимости, т.е., например, tpet основная, остальные подчиненные. При выборе какого-то питомца в таблицах color и type появлялись только те записи, которые относятся именно к этому питомцу. А дальше уже все намного проще) Только лучше не dbcombobox, а обычный combobox использовать) закинуть записи в него можно так:
Код:
adoquery1.first;
combobox1.items.clear;
while not adoquery1.eof do
begin
combobox1.items.add(adoquery1.fieldbyname('поле таблицы').asstring);
adoquery1.next;
end;
далее в событии combobox1change можно прописать
Код:
combobox1.itemindex:=adoquery1.recno-1;
Вроде так. тогда при выборе записи в combobox1 будет выбираться соответствующая запись в таблице.
ну и в конце кинь на форму dbedit и подключи его к нужной таблице и полю.
Все)
Ernest027 вне форума Ответить с цитированием
Старый 06.07.2016, 08:27   #3
Ernest027
Форумчанин
 
Регистрация: 27.04.2015
Сообщений: 437
По умолчанию

Если ты это реализуешь, то такое дело как добавить, изменить и удалить для тебя не окажется проблемой)))
Ernest027 вне форума Ответить с цитированием
Старый 06.07.2016, 09:43   #4
comparator
Новичок
Джуниор
 
Регистрация: 05.07.2016
Сообщений: 4
По умолчанию

Спасибо. А нет ли готового примера? )
comparator вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
На чем реализовать - программа для создания Word документа с запрошенными данными(VB6?) Jordan_from_Surgut Microsoft Office Word 4 19.04.2015 00:55
лабораторная в MS Excel: создать пользовательскую форму с элементами управления muzon45 Помощь студентам 5 22.11.2011 12:15
как реализовать обмен данными между программами Андрей.12 Работа с сетью в Delphi 1 26.11.2009 08:06
Как заполнять Форму ввода Excel-данными Michail_P Свободное общение 0 20.08.2007 06:29