![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Динамическое добавление полей в ADOQuery.Fields
ArhArhangel © (2005-12-10 20:37:00)Здравствуйте!
Подскажите пожулуйста как динамически в список Fields, компонента ADOQuery можно добавить поля таблицы базы данных ?
ArhArhangel (2006-01-03 07:35:00) [1]Всем огромнейшее спасбо :-)
Slym (2005-12-19 14:29:00) [2]Забыл...
Field.FieldName:=Contract.FieldDefs[i].Name;
Slym (2005-12-19 14:28:00) [3]На вскидку...
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;
ORMADA (2005-12-19 12:58:00) [4]а-ля
//--- Переносим все поля из 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;
....
Johnmen (2005-12-19 12:23:00) [5]1. Надо наоборот. Добавлять своё поле к имеющимся.
2. Изучить DB-Aware компонентя, напр.DBGrid, и никаких там StringGrid.
3. Сходить http://delphikingdom.ru/asp/viewitem.asp?catalogid=168#link3
ArhArhangel (2005-12-16 19:19:00) [6]Хотел одну форму, с одним компонентом Query сделать универсальной для многих таблиц.
На этой форме надо чтобы в StringGrid имелось поле "Chek" в котором пользователь может выбирать галочками определенные строки..
Если поле Chek создать при проектировании, то тогда не будет видно остальных полей таблиц..
Вот и не знаю как во время выполнения программы добавить эти остальные поля в список Fields
Johnmen (2005-12-14 15:51:00) [7]А скажи, зачем тебе это? Какая цель?
ArhArhangel (2005-12-14 11:26:00) [8]Прочитал и то и другое, но так и не смог реализовать.. :-(
Johnmen (2005-12-12 09:23:00) [9]ADOQuery.FieldDefs.AddFieldDef + F1
но перед этим внимательно прочитать описание ADOQuery.Fields.Add