下面这段程序有什么错误吗?我用F7调试,执行到这个end的时候就有错误!提示为:invalid variant operation!难道在哪里还要设置什么东西吗?
//程序如下
var ii:integer;
begin
ii:=fcdm.ADOQry_flow.RecNo;
if ii<0 then
fcdm.ADOQry_flowno.Value:=1;
fcdm.ADOQry_flowno.value:=ii+1;
end;运行会出现:raise EAccessviolation at address **** in module 'rtl60.bpl'这个是关于什么的错误?
//程序如下
var ii:integer;
begin
ii:=fcdm.ADOQry_flow.RecNo;
if ii<0 then
fcdm.ADOQry_flowno.Value:=1;
fcdm.ADOQry_flowno.value:=ii+1;
end;运行会出现:raise EAccessviolation at address **** in module 'rtl60.bpl'这个是关于什么的错误?
begin
ii:=fcdm.ADOQry_flow.RecNo;
if ii<0 then
fcdm.ADOQry_flowno.Value:=1;
else
fcdm.ADOQry_flowno.value:=ii+1;
end;
begin
ii:=fcdm.ADOQry_flow.RecNo;
if ii<0 then
fcdm.ADOQry_flowno.Fields[0].Value :=1
else
fcdm.ADOQry_flowno.Fields[0].value:=ii+1;
end;
begin
ii:=fcdm.ADOQry_flow.RecNo;
if ii<0 then
begin
fcdm.ADOQry_flowno.Value:=1;
fcdm.ADOQry_flowno.value:=ii+1;
end;
end;
这里面的对象都创建了吗?如果没有,
就重新启动DELPHI,
再调试!!!!
unit dmfc;interfaceuses
SysUtils, Classes, DB, DBTables, ADODB;type
Tfcdm = class(TDataModule)
ADOConnection1: TADOConnection;
ADOQuery1: TADOQuery;
ADOTable1: TADOTable;
ADODataSet1: TADODataSet;
DataSource1: TDataSource;
ADOTable1USERNAME: TWideStringField;
ADOTable1PASSWD: TWideStringField;
ADOTable1OPER_NAME: TWideStringField;
ADOTable1OPER_ID: TWideStringField;
ADOTable1OPER_RANK: TIntegerField;
ADOTable1OPER_DUTY: TWideStringField;
ADOTable1EDU_LEVEL: TWideStringField;
ADOTable1AREA: TWideStringField;
ADOTable1WORKGROUP: TWideStringField;
DataSource2: TDataSource;
DtSc_worktype: TDataSource;
ADOQuery2: TADOQuery;
ADOQuery3: TADOQuery;
DtSc_flow: TDataSource;
ADOQry_flow: TADOQuery;
ADOQry_flowFLOW_NAME: TWideStringField;
ADOQry_flowno: TIntegerField;
ADOQry_flowWFLOW_ID: TWideStringField;
ADOStoredProc_flow: TADOStoredProc;
ADOTbl_devlp: TADOTable;
ADOTable2: TADOTable;
DataSrc_card: TDataSource;
ADOTbl_card: TADOTable;
DataSrc_area: TDataSource;
ADOTbl_area: TADOTable;
ADOQry_empestate: TADOQuery;
DataSrc_empestate: TDataSource;
ADOTbl_oper_info: TADOTable;
DataSrc_oper_info: TDataSource;
ADOStdProc_clear: TADOStoredProc;
ADOConnection2: TADOConnection;
ADOStPro_operrank: TADOStoredProc;
ADOQuery4: TADOQuery;
procedure ADOQry_flowCalcFields(DataSet: TDataSet);
private
{ Private declarations }
public
{ Public declarations }
end;var
fcdm: Tfcdm;implementation//uses flowset;{$R *.dfm}procedure Tfcdm.ADOQry_flowCalcFields(DataSet: TDataSet);var
ii:integer;begin fcdm.ADOQry_flowno.AsInteger:=abs(fcdm.ADOQry_flow.RecNo);
end;end.