Вниз
Скачать: CL | DM;

Одна форма для всех таблиц   Найти похожие ветки 

← →
quadronik ©   (2005-09-25 01:52) [0]

Решил сэкономить на размере приложения и поступил так:
создал одну форму для заполнения нескольких таблиц. На форму положил DBEdit и при OnShow формы написал так:
if flag_tbl=1 then //flag_tbl -флаг подключаемой таблицы
 begin
 dbedit.DataSource:=datamodule1.DataSource_regions;
 dbedit.DataField:="region";
 end;
if flag_tbl=2 then
 begin
 dbedit.DataSource:=datamodule1.DataSource_city;
 dbedit.DataField:="city";
 end; и т.д.
Заметил такую ерунду:если открыть форму первый раз, то все нормально(DBEdit правильно настраивается на нужную таблицу), но если второй, третий и т.д. раз и для другой таблицы - то не происходит переиницилизация свойств DataSource и DataField, и выводится сообщение <DBEdit: Field "region" not found>(или <DBEdit: Field "city" not found> - зависит от того к какой таблице был подключен DBEdit последний раз) .
При повторном открытии формы для этой же таблицы - никаких ошибок (DataSource и DataField настроены правильно). Ошибка повторяется если попробовать открыть форму для другой таблицы.
Проще говоря: Дельфи ругается, что не может найти поля той таблицы, которая была подключена последней раз.
ЗЫ. Прощу прощения, если объяснил недоходчиво. Пытался прорисовать всю картину происходящего.
Спасибо.


← →
Johnmen ©   (2005-09-25 01:57) [1]

Видимо, ОнШоу генерится только один раз...
Посему, что значит "открыть форму" ?


← →
Prohodil Mimo ©   (2005-09-25 16:35) [2]

не забывай устанавливать DataField:="". перед сменой DataSource

begin
 dbedit.DataField:="";
dbedit.DataSource:=datamodule1.DataSource_regions;
dbedit.DataField:="region";
end;

Я создаю процедуру, которая делает всё что надо, а потом открывает форму.

Procedure FActivate;
Begin
{
тут делаем всё что надо
}
  form1.showmodal;
End;


← →
quadronik ©   (2005-09-26 06:00) [3]

>Prohodil Mimo
>не забывай устанавливать DataField:="". перед сменой DataSource

Именно в этом и была загвоздка, теперь все заработало
Спасибо, что выручили!.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.024 c
8-1119343306
Josefina
2005-06-21 12:41
2005.11.06
Проблемы со свуком


14-1129187760
TButton
2005-10-13 11:16
2005.11.06
Я вспомнил!!!


2-1129025875
Jolik
2005-10-11 14:17
2005.11.06
Windows запрещает доступ к реестру :(


14-1129180394
Ega23
2005-10-13 09:13
2005.11.06
С днем рождения! 13 октября


1-1129098274
Антоныч
2005-10-12 10:24
2005.11.06
Перестала работать функция дополнения класса




   Наверх