自写delphi基类(属性是packed record),继承基类之后。属性没法用,出现‘Left side cannot be assigned to’
我写了一个基类如下:
type
T_T_Class = packed record //部门组织表
FClassId: integer;//部门内码
FOrganId: integer;//机构内码
FOrganName: string[50];//部门名称
FOrganHideFlag: boolean;//部门隐藏标志 0开1关
end;
type
TDataBase = class(TInterfacedObject)
private
FADOC : TADOConnection;
FADOQ : TADOQuery;
FDS : TDatasource;
FConnectionString : string;
FT_Class: T_T_Class;//部门组织表
procedure SetT_Class(const Value: T_T_Class);
public
function Checkeed: Boolean;
procedure InitQuery(InputQuery: TADOQuery; QueryString: String);
function OpenDataBase():TDataSource;overload;
function OpenDataBase(ConnectionString: String):TDataSource;overload;
procedure CloseDataBase();
function InsertRecord(MyTabel:T_Tabel;Reco:T_T_Organ):boolean;overload;
function QueryRecord(value:string):TADOQuery;virtual;abstract;
function DeleteRecord(Value : Integer):boolean;virtual;abstract;
function AddRecord(Value : T_T_Organ):boolean ;virtual;abstract; //
function SaveRecord(Value : T_T_Organ):boolean;virtual;abstract; //
procedure NextRecord;virtual;abstract; //
procedure PriorRecord; virtual;abstract; //
function IsLock():boolean;virtual;abstract; //
function GetQuery: TADOQuery;overload;virtual; //
function GetExecuteScalar(QueryString: String): Variant;overload;virtual; //
function GetExecuteNoQuery(ExecuteSQL:String):Boolean;overload;virtual; //
property T_Class: T_T_Class read FT_Class write SetT_Class; // 这里把T_T_Class作为类的一个属性;
end;
然后继承基类(不在同一个单元里):
type
TFundPlanManClass = class (TDataBase, IMyInterEverdayFundExpend, IMyInterEnterPlanFunds)
public
function test(): string;
function test1():string;
function test2():string;
end;
function TFundPlanManClass.test: string;
var
a : TEnterPlanFundsClass;
begin
a := TEnterPlanFundsClass.Create;
a.T_Organ.FOrganId:=1; //这里为什么会出错 错误提示是: Left side cannot be assigned to
end;