Форум: "Базы";
Текущий архив: 2006.02.26;
Скачать: [xml.tar.bz2];
ВнизДинамическое добавление полей в ADOQuery.Fields Найти похожие ветки
← →
ArhArhangel © (2005-12-10 20:37) [0]Здравствуйте!
Подскажите пожулуйста как динамически в список Fields, компонента ADOQuery можно добавить поля таблицы базы данных ?
← →
Johnmen © (2005-12-12 09:23) [1]ADOQuery.FieldDefs.AddFieldDef + F1
но перед этим внимательно прочитать описание ADOQuery.Fields.Add
← →
ArhArhangel © (2005-12-14 11:26) [2]Прочитал и то и другое, но так и не смог реализовать.. :-(
← →
Johnmen © (2005-12-14 15:51) [3]А скажи, зачем тебе это? Какая цель?
← →
ArhArhangel © (2005-12-16 19:19) [4]Хотел одну форму, с одним компонентом Query сделать универсальной для многих таблиц.
На этой форме надо чтобы в StringGrid имелось поле "Chek" в котором пользователь может выбирать галочками определенные строки..
Если поле Chek создать при проектировании, то тогда не будет видно остальных полей таблиц..
Вот и не знаю как во время выполнения программы добавить эти остальные поля в список Fields
← →
Johnmen © (2005-12-19 12:23) [5]1. Надо наоборот. Добавлять своё поле к имеющимся.
2. Изучить DB-Aware компонентя, напр.DBGrid, и никаких там StringGrid.
3. Сходить http://delphikingdom.ru/asp/viewitem.asp?catalogid=168#link3
← →
ORMADA © (2005-12-19 12:58) [6]а-ля
//--- Переносим все поля из MainQuery в MainDataSet ---begin----------------
for i := 0 to MainQuery.FieldCount - 1 do
case MainQuery.Fields.Fields[i].DataType of
ftAutoInc:
begin
with TAutoIncField.Create(MainDataSet) do
begin
FieldKind := fkData;
ReadOnly := True;
FieldName := MainQuery.Fields.Fields[i].FieldName;
DataSet := MainDataSet;
Name := DataSet.Name + "Fields" + IntToStr(i);
MainQuery.FieldDefs.Add(name, ftAutoInc);
end;
end;
....
← →
Slym © (2005-12-19 14:28) [7]На вскидку...
var i:integer;
Field:TField;
begin
DataSet.FieldDefs.Clear;
DataSet.FieldDefs.Update;
for i:=0 to DataSet.FieldDefs.Count-1 do
begin
Field:=DataSet.FieldDefs[i].FieldClass.Create(DataSet);
DataSet.Fields.Add(Field);
end;
//Добавляем свое поле
DataSet.Open;
end;
← →
Slym © (2005-12-19 14:29) [8]Забыл...
Field.FieldName:=Contract.FieldDefs[i].Name;
← →
ArhArhangel © (2006-01-03 07:35) [9]Всем огромнейшее спасбо :-)
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2006.02.26;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.041 c