Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.05.2014, 16:27
Посол_вон Посол_вон вне форума
Прохожий
 
Регистрация: 22.05.2014
Сообщения: 11
Версия Delphi: delphi
Репутация: 10
По умолчанию Перенос данных





Приветствую вас программисты, сразу скажу что в программировании я недавно, многих вещей не понимаю.Возникла необходимость создать программу "Электронная библиотека". На данный момент сделал регистрацию пользователей, сотрудников, фильтры и сортировки.Да связывал с помощью Аксесс, Адоквери, Адосоурс,Адоконнекшн.

Сейчас дошел до момента выдачи книг пользователям, на первой картинке я показал форму пользователей, там есть дбгрид а в ней немного данных.
Так вот, нужно перенести фамилию, имя, отчество на вторую форму(вторая картинка)т.е в комбобоксе будут фамилии(когда нажимаю на выпадающий список), после выбора фамилии, остальные данные(имя, отчество) будут автоматически перенесены в edit1, edit2 соответственно.

Далее в планах при нажатии кнопки книга, будет выпадать список книг (я уже создал таблицу с книгами) после чего выбираю дату возврата книги и все эти данные (по идеи) должны автоматически забиваться в таблицу после нажатия определенной кнопки(пока её нету).

Меня ИНТЕРЕСУЕТ на данный момент первый шаг, т.е свзяь первой таблицы пользователи с комбибоксом и едитами.
Как можно это реализвать?Даже мыслей нету(хотя может с sql побаловаться) уже 3 ий час бьюсь над этим вопросом, результатов нет((
Ответить с цитированием
  #2  
Старый 22.05.2014, 16:35
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Замените комбобокс, edit1, edit2 etc. на аналогичные с приставкой DB - они будут делать подобное автоматом, есно после подключения нужных полей из таблицы
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
Посол_вон (22.05.2014)
  #3  
Старый 22.05.2014, 16:40
Посол_вон Посол_вон вне форума
Прохожий
 
Регистрация: 22.05.2014
Сообщения: 11
Версия Delphi: delphi
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alegun
Замените комбобокс, edit1, edit2 etc. на аналогичные с приставкой DB - они будут делать подобное автоматом, есно после подключения нужных полей из таблицы


Заменил,как сделать чтобы в дбкомбибоксе были все фамилии с дбгрида (с первой формы)?Я чайник.
в дбкомбибоксе в датачет прописал form5.datasource (предварительно связал формы), после запуска программы нажимаю на выпадающий список комбибокс там пусто.

Последний раз редактировалось Посол_вон, 22.05.2014 в 16:46.
Ответить с цитированием
  #4  
Старый 22.05.2014, 16:47
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

С дбгрида и не нужно, это только отображает данные, необходим его источник и поле с фамилиями
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
Посол_вон (22.05.2014)
  #5  
Старый 22.05.2014, 16:49
Посол_вон Посол_вон вне форума
Прохожий
 
Регистрация: 22.05.2014
Сообщения: 11
Версия Delphi: delphi
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alegun
С дбгрида и не нужно, это только отображает данные, необходим его источник и поле с фамилиями

А его источник это датасоурс?Т.е на вторую форму "выдача книг" мне надо забросить адоконнекшн, датасоурс и адоквери, потом связать с таблицей пользователи?

в дата филд вбил чтобы брал фамилии (fam) ,теперь после запуска программы в комбибоксе 1 фамилия(первая), выпадающий список по прежнему пуст

Последний раз редактировалось Посол_вон, 22.05.2014 в 17:02.
Ответить с цитированием
  #6  
Старый 22.05.2014, 16:59
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Вот что-то подобное, не ругайтесь - на скорую руку плюс немного про запросы, посмотрите пжлст
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
Посол_вон (22.05.2014)
  #7  
Старый 22.05.2014, 17:05
Посол_вон Посол_вон вне форума
Прохожий
 
Регистрация: 22.05.2014
Сообщения: 11
Версия Delphi: delphi
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alegun
Вот что-то подобное, не ругайтесь - на скорую руку плюс немного про запросы, посмотрите пжлст

Спс большое, почитаю, отпишу в теме.

ввел в онклик комбибокса
AdoQuery1.Close;
AdoQuery1.SQL.Clear;
AdoQuery1.SQL.Add('select * from pol3ovateli where famp='''+ (Sender as TDBLookupComboBox).Text+'''');
AdoQuery1.Open;
ругается на adoquery1 в самом начале, хотя вроде связал формы.(т.е с формой где адоконнекш, адоквери)

Последний раз редактировалось Посол_вон, 22.05.2014 в 17:17.
Ответить с цитированием
  #8  
Старый 22.05.2014, 17:22
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Связали - это типа прописали имя юнита в uses? Нужно ещё явно указывать где брать - напр. Form1.AdoQuery1.Close;
Ответить с цитированием
  #9  
Старый 22.05.2014, 17:27
Посол_вон Посол_вон вне форума
Прохожий
 
Регистрация: 22.05.2014
Сообщения: 11
Версия Delphi: delphi
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alegun
Связали - это типа прописали имя юнита в uses? Нужно ещё явно указывать где брать - напр. Form1.AdoQuery1.Close;

Нет на баттон "книга" просто прописал form4.show(т.е форма где таблица пользователи и адоконекшенн,адоквери и датасоурс ) после чего нажал на запуск программы и делфи вывел сообщение мол связать ли форм10 с форм 4 я нажал да.После чего к примеру в дбедите или дбкомбибоксе в обжект инспекторе (дата соурс) у меня появилась возможность выбрать Form4.DataSource1
Ответить с цитированием
  #10  
Старый 23.05.2014, 12:21
Посол_вон Посол_вон вне форума
Прохожий
 
Регистрация: 22.05.2014
Сообщения: 11
Версия Delphi: delphi
Репутация: 10
По умолчанию

Попробовал вот так:
pol:=ADOQuery1.FieldValues['famp'];
dbedit1.Text:=ADOQuery1.FieldValues['imp'];
dbedit2.Text:=ADOQuery1.FieldValues['ot4p'];
т.е создал в var переменную pol(integer).

в listsours и keyfield указал нужные ссылки. при запуске программы выдает дает возможность выбрать фамилии (в выпадающем списке), но после выбора виснет с ошибкой
"project project1.exe" raised exception class edatabaseerror with message 'adoquery1:field 'famp' not found'
Ответить с цитированием
  #11  
Старый 23.05.2014, 14:33
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Оффтоп: пжлст, оберните ваш код в тег [СODE]..[/СODE], другим читать удобнее намного


Цитата:
Сообщение от Посол_вон
...'adoquery1:field 'famp' not found'
Если дословно перевести, то получится что проблемы возникли при отработке запроса в adoquery1: требуемое поле 'famp' не найдено, возможно оно из другой таблицы т.е. не указано откуда его брать
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
Посол_вон (23.05.2014)
  #12  
Старый 23.05.2014, 14:49
Посол_вон Посол_вон вне форума
Прохожий
 
Регистрация: 22.05.2014
Сообщения: 11
Версия Delphi: delphi
Репутация: 10
По умолчанию

Вообщем вот как выкрутился.
Код убрал в DBLookupComboBox1 полностью.
В DBedit выбрал соответственно (imap,ot4p)

В keyfield DBLookupComboBox1 выбрал "Kod" (ключевой элемент таблицы)
В listfield DBLookupComboBox1 выбрал "famp" (откуда будут браться значения для выпадающего списка)
В listsource выбрал Form4.DataSource1 (т.е где таблица пользователи)

на форму (выдача книг) бросил adoquery и datasource.
в sql adoquery прописал SELECT * FROM pol3ovateli и соеденил connection с первой формой.
при запуске программы выбираю в раскрывающемся списке фамилию, в dbedit-ах меняется имя и отчество.Только вот смогу ли я в будующем эти данные перенести в дбгрид?
У вас скайп есть?Может покажу вам что я делал и как?

Последний раз редактировалось Посол_вон, 23.05.2014 в 14:53.
Ответить с цитированием
  #13  
Старый 23.05.2014, 15:37
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Вот такое откопал в сорцехране по данной теме, гляньте пжлст, может что и подойдёт
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
Посол_вон (23.05.2014)
  #14  
Старый 23.05.2014, 15:44
Посол_вон Посол_вон вне форума
Прохожий
 
Регистрация: 22.05.2014
Сообщения: 11
Версия Delphi: delphi
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alegun
Вот такое откопал в сорцехране по данной теме, гляньте пжлст, может что и подойдёт


Сейчас посмотрим)
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 14:42.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter