|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Форма для добавления данных в таблицу
Есть несколько таблиц, как сделать отдельную форму чтобы вписывать в поля данные, чтобы они записывались в таблицу или таблицы?
Таблицы выведены из accsess Подскажите пожалуйста. |
#2
|
||||
|
||||
Почитайте про компоненты, находящиеся во вкладке Data Controls. В особенности про DBGrid (и DBNavigator для его управления). DBGrid выводит данные в виде таблицы, и при помощи него можно добавлять, редактировать и удалять данные, хранящиеся непосредственно в базе данных.
Google в помощь |
#3
|
|||
|
|||
нужно на отдельной форме, с помощью полей edit и тд , для записи в таблицу. навигатор есть непосредственно на форме с таблицей
|
#4
|
||||
|
||||
Добавляешь проекту новую форму (Form2 например), располагаешь на ней DBEdit'ы (Data Controls). А потом что-то вроде этого:
Код:
procedure TForm1.Button1Click(TObject: Sender); begin ADOQuery1.Insert; Form2:= TForm2.Create(Application); Form2.ShowModal; if Form2.ModalResult = mrOk then ADOQuery1.Post; Form2.Free; end; Google в помощь |
#5
|
|||
|
|||
В моем проэкте таблицы в Парадоксе, сделал так, для Аксеса аналогично.
Код:
//Добавление в таблицу Магазин 1 FormMag.DSMag1.DataSet:=FormMag.TabMag1; FormMag.TabMag1.Last; try FormMag.TabMag1.AppendRecord([ DateTimePicker1.Date, //Дата Edit7.Text, //Артикул Edit1.Text, //Название ComboBox1.Text, //Сезон ComboBox2.Text, //Пол Edit2.Text, //Материал Edit3.Text, //Фирма Edit4.Text, //Страна StrToInt(Edit5.Text), //Количество StrToInt(Edit6.Text)]); //Цена except MessageDlg('В поля формы введены недопустимые данные', mtError,[mbOK],0); Exit; end; Последний раз редактировалось Admin, 17.05.2012 в 16:15. |
#6
|
|||
|
|||
Выбор таблицы в которую в данный момент вносятся данные удобнее реализовать с помощью ComboBox, а в программном модуле поставить условие - добавлять данные в таблицу которая выбрана в ComboBox. Удачной компиляции!!!
|
#7
|
||||
|
||||
Здесь используются обычные Edit (Не DBEdit). Преимущество: я могу данные фильтровать и корректировать как хочу.
Код:
procedure TwCard.fCardSave(Sender: TObject); {Сохранение карты в базе]} begin fwBase.ffCards.Append; idCard:=fwBase.fdbMain.Gen_Id('CARD_SEQ',1); sCardOpen:=DateToStr(dNowStored); eCardOpen.Text:=' '+sCardOpen; fwBase.ffCards.FieldByName('CARD_ID').AsInteger:=idCard; fwBase.ffCards.FieldByName('CARD_OPEN').AsString:=sCardOpen; fwBase.ffCards.FieldByName('BIRTH_DATE').AsString:=eBirthDate.Text; fwBase.ffCards.FieldByName('PATIENT_FAMILY').AsString:=eFamily.Text; fwBase.ffCards.FieldByName('TOWN').AsString:=eTown.Text; fwBase.ffCards.FieldByName('STREET').AsString:=eStreet.Text; fwBase.ffCards.FieldByName('HOUSE').AsString:=eHouse.Text; fwBase.ffCards.FieldByName('PATIENT_PHONE').AsString:=ePhone.Text; fwBase.ffCards.Post; fwBase.ffCards.ApplyUpdates; fwBase.ftaMainWrite.Commit; end; procedure TwCard.fCardLoad(Sender: TObject); {Загрузка карты из базы} begin bCardNew:=false; bCardSaved:=true; bCardEdit:=false; eCardNumber.Text:=nulltoempty(fwBase.ffCards.FieldByName('CARD_ID').AsString); eCardOpen.Text:=nulltoempty(fwBase.ffCards.FieldByName('CARD_OPEN').AsString); eBirthDate.Text:=nulltoempty(fwBase.ffCards.FieldByName('BIRTH_DATE').AsString); eFamily.Text:=nulltoempty(fwBase.ffCards.FieldByName('PATIENT_FAMILY').AsString); eTown.Text:=nulltoempty(fwBase.ffCards.FieldByName('TOWN').AsString); eStreet.Text:=nulltoempty(fwBase.ffCards.FieldByName('STREET').AsString); eHouse.Text:=nulltoempty(fwBase.ffCards.FieldByName('HOUSE_NUMBER').AsString); eFlat.Text:=nulltoempty(fwBase.ffCards.FieldByName('FLAT_NUMBER').AsString); ePhone.Text:=nulltoempty(fwBase.ffCards.FieldByName('PATIENT_PHONE').AsString); end; - Товарищ прапорщик!!! Остановите поезд!!! - Поезд СТОЙ! РАЗ! ДВА! Последний раз редактировалось Viajero, 17.05.2012 в 18:53. |