Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Программное создание поля .....


Автор: lotos 26.3.2004, 13:33
Люди.....
Подскажите (пож-ста), как создать программно поле в таблице (paradox), имя поля := переменная (integer) ...
Чего то не могу найти нужной инфы ..... notify.gif notify.gif

Автор: Cashey 26.3.2004, 13:47
Вот тебе пример создания целой таблицы

Код
{ Компонент Table1 делается неактивным }
Table1.Active := False;
Table1.TableName:='Dep.db';
if not Table1.Exists then begin
 with Table1 do begin
   { Указывается тип таблицы }
   TableType := ttParadox;
   { Описываются поля таблицы }
   with FieldDefs do begin
     Clear;
     with AddFieldDef do begin
       Name := 'Dep';
       DataType := ftString;
       Size := 20;
       Required := True;
     end;
     with AddFieldDef do begin
       Name := 'Proisv';

       DataType := ftBoolean;
     end;
   end;
   with IndexDefs do begin
     Clear;
     { Индекс без имени - первичный ключ таблицы }
     with AddIndexDef do begin
       Name := '';
       Fields := 'Dep';
       Options := [ixPrimary];
     end;
   end;
   { Создание таблицы методом CreateTable }
   CreateTable;
   Open;
   {Вставка записей}
   Insert;
   FieldByName('Dep').AsString := 'Бухгалтерия';
   FieldByName('Proisv').AsBoolean := false;

   Post;

   Insert;
   FieldByName('Dep').AsString := 'Цех 1';
   FieldByName('Proisv').AsBoolean := true;
   Post;

   Insert;
   FieldByName('Dep').AsString := 'Цех 2';
   FieldByName('Proisv').AsBoolean := true;
   Post;
 end;
end;

Автор: lotos 26.3.2004, 14:12
Ни чего не понимаю ......
Я значится вставляю код

"dm.T_pokaz.Close;
if not dm.T_pokaz.Exists then begin
with dm.T_pokaz do begin
with FieldDefs do begin
with AddFieldDef do begin
Name := inttostr(pr);
DataType := ftString;
Size := 20;
Required := True;
end;
dm.T_pokaz.open;

и т.п.

но ни чего не происходит
в существующей таблице имеется только одно поле ......
Как быть и чего делать ?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)