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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.03.2007, 12:37   #1
akaBd
 
Регистрация: 16.03.2007
Сообщений: 4
По умолчанию нужна помошь с таблицами и DBEdit

Через ADO
есть таблица, нужно ее представить в виде полей (типа DBEdit), т.е. из ADOTable перетаскиваю поля на лист проекта и получается отображение через DBEdit. Как сделать так чтобы таблица у меня отображалась вся в n количестве DBEdit?? т.е. при фокусировке в таблице1 на каком-то поле (связь 1 ко многим), таблица2 отображалась в виде n полей DBEdit ?? (т.е. не тольео 1 поле второй таблицы, но и след. поле в дрегом поле DBEdit и т.д.)
как это сделать, кто знает, подскажите плз
akaBd вне форума Ответить с цитированием
Старый 16.03.2007, 15:30   #2
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Кидаем на форму пару ТDataSource, подцепляем их к таблицам 1 и 2, кидаем нужное количество ТDBEdit-ов, устанавливаем у них в соответствующих свойствах DataSourc-ы, имена полей соответствующих таблиц. Таблицы связываем через MasterSource, MasterField...
Или во всей этой предложенной автором мешанине слов есть какой-то другой, более изощренный и недоступный пониманию замысел?
Кстати, у меня вопрос - а почему не DBGrid?

Последний раз редактировалось mihali4; 16.03.2007 в 17:29.
mihali4 вне форума Ответить с цитированием
Старый 17.03.2007, 11:27   #3
akaBd
 
Регистрация: 16.03.2007
Сообщений: 4
Вопрос DBGrid в DBEdit

не через DBGrid - потому что таково желание заказчика

попробую рассказать на примере
есть 2 таблицы (1 и 2, всязь 1 ко многим [вот в чем проблема, если бы 1 к 1 не было бы проблем])
так вот
__________
табл 1
__________
имя
___________
Иванов
___________
===============================
__________________
| табл2
__________________
| имя | товар
__________________
| Иванов | мыло
| Иванов | веревка
| Иванов | табуретка
___________________

вот, как-то нарисовал
так вот, надо чтобы при установке указателя в табл1 на запись Иванов, в множестве DBEdit (мот можно чем заменить ?) отображализь записи второй таблицы, причем n штук, столько сколько DBEdit'ов. Т.е. мыло, веревка, табуретка. Не знаю как это сделать, выводит только 1 запись, т.е. мыло
вот такая трабла, кто знает как это сделать и можно ли вообще такое ??

Последний раз редактировалось akaBd; 17.03.2007 в 15:01.
akaBd вне форума Ответить с цитированием
Старый 17.03.2007, 18:04   #4
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Цитата:
выводит только 1 запись
Если для первой таблицы применение DBEdit'ов вполне оправдано, то для второй нужно использовать динамически создаваемые обычные Edit'ы (по количеству записей для Иванова), заполняемые, соответственно, "вручную". Или скрывать пустые.
Т.е. выбрали в первой Иванова, по нему выбрали все записи во второй и последовательно заполнили из нее Edit'ы. Годится?
mihali4 вне форума Ответить с цитированием
Старый 18.03.2007, 01:06   #5
akaBd
 
Регистрация: 16.03.2007
Сообщений: 4
По умолчанию

нужно вывести 3 записи из второй таблицы в 3 разные Edit'ы, как это сделать ??
выбираем в таблице1 запись, и как вывести из 2ой в 1ый Edit 1ую запись, во второй едит -вторую и т.д. т.е. нужно что-то типа передвигать счетчик..... но как это сделать???
akaBd вне форума Ответить с цитированием
Старый 18.03.2007, 01:58   #6
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Каким образом выбираем записи по Иванову во второй таблице?
Фильтром, или ранжированием, или вообще через Query - это неважно.
Да, нужно последовательно перебрать все отобранные записи по Иванову во второй таблице и из первой записи занести инфу в Edit1, из второй - в Edit2 и т.д. Обращаю внимание - простые Edit-ы, не DBEdit...
mihali4 вне форума Ответить с цитированием
Старый 18.03.2007, 02:12   #7
akaBd
 
Регистрация: 16.03.2007
Сообщений: 4
По умолчанию

Да, нужно последовательно перебрать все отобранные записи по Иванову во второй таблице и из первой записи занести инфу в Edit1, из второй - в Edit2 и т.д. Обращаю внимание - простые Edit-ы, не DBEdit...


вот, как это сделать???? как их именно их можно перебрать ??
akaBd вне форума Ответить с цитированием
Старый 18.03.2007, 19:15   #8
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Table2.First;
while not Table2.Eof do
begin
....
куда-то заносим эту запись
.....
Table2.Next;
end;
mihali4 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужна помошь (паскаль) gred Помощь студентам 12 27.02.2008 06:56
очень нужна помошь очень крутой Помощь студентам 3 06.12.2007 02:06
нужна помошь по программу amiack Помощь студентам 7 17.07.2007 12:25