大家都知道雙擊adoquery彈出框可以在里面右鍵add fields等,由于我的adoquery查詢的表里面欄位不固定,還有我的adoquery里面有一個計算出來的欄位,所以我想在程式里面進行add fields,大家那個知道?
uj5u.com熱心網友回復:
可以動態添加.但不建議這么做,這是不可取的如果要顯示50個欄位,要add 50次,還有每個field都要設定型別和長度
uj5u.com熱心網友回復:
想辦法把計算欄位用別的方法處理,如在beforepost中處理或放在資料庫中計算。而且欄位不固定,對顯示控制元件也有要求的,否則你的計算欄位也沒有用。
uj5u.com熱心網友回復:
我的意思是我的工資里面有姓名 基本工資 績效工資 加班費
.......
但是那天也許我的工資表要改動
姓名 基本工資 績效工資 加班費 三金
。。。
我的adoquery在改動前我可以通過ADOQueryCalcFields里面對工資進行相加合計,所以我對adoquery雙擊add fields,然后再new fields添加一個合計,但是改動后fields要變啊, 所以我想在程式中通程序式運行的時候來add fields和new fields。
uj5u.com熱心網友回復:
varField:TField;
Field:=TField.Create(self);
Field.FieldKind:=fkCalculated;
Field.SetFieldType(ftInteger);
Field.FieldName:='合計';
if ADOQuery2.Active=false then
ADOQuery2.Active:=true;
ADOQuery2.Fields.Add(Field);
我通過這種方法可以添加一個列,但是這個列沒有名字,退出時也報錯。
uj5u.com熱心網友回復:
Field:=TField.Create(ADOQuery3);
Field.FieldKind:=fkCalculated;
Field.SetFieldType(ftInteger);
Field.FieldName:='WM';
Field.Name:='WM';
Field.DisplayLabel := '我們';
ADOQuery3.Close;
Field.DataSet := ADOQuery3;
ADOQuery3.Fields.Add(Field);
ADOQuery3.Open;
退出時報找不到WM,但是我資料庫中有這個欄位
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/120038.html
標籤:數據庫相關
