S
sxhmc
Unregistered / Unconfirmed
GUEST, unregistred user!
我想用一个过程来创建一张表,(程序执行时,用ttable控件)
程序如下:
procedure creat_table(t_table:Ttable;tablename:string;table_path:string); //*创建临时表
var
table:ttable;
begin
if tablename='result.db' then //*创建result.db数据表
begin
table:=t_table.Create(self);
try
table.tablename:=table_path+'/'+tablename;
table.FieldDefs.add('新发票号',ftstring,10);
table.FieldDefs.add('开票日期',ftstring,10);
table.FieldDefs.add('客户名',ftstring,30);
table.FieldDefs.add('发票号',ftstring,10);
table.FieldDefs.add('价税合计',ftstring,15);
table.FieldDefs.add('税率',ftstring,2);
table.FieldDefs.add('联系地址',ftstring,40);
table.FieldDefs.add('税号',ftstring,15);
table.FieldDefs.add('账号',ftstring,40);
table.CreateTable ;
except
messagedlg('创建临时表result.db错误!',mterror,[mbok],1);
table.Free;
exit;
end;
end
else
begin //*创建results.db数据表
table:=t_table.Create(self);
try
table.tablename:=table_path+'/'+tablename;
table.FieldDefs.add('新发票号',ftstring,10);
table.FieldDefs.add('存货编号',ftstring,10);
table.FieldDefs.add('存货名称',ftstring,30);
table.FieldDefs.add('规格',ftstring,10);
table.FieldDefs.add('单位',ftstring,15);
table.FieldDefs.add('数量',ftstring,2);
table.FieldDefs.add('单价',ftstring,40);
table.FieldDefs.add('价税合计',ftstring,15);
table.CreateTable ;
except
messagedlg('创建临时表results.db错误!',mterror,[mbok],1);
table.Free;
exit;
end;
end;
exit;
end;
编译时出现如下问题:
[Error] main_frame.pas(150): Undeclared identifier: 'self'
我不知这是为是么?因为我不在过程中时是可以的.
程序如下:
procedure creat_table(t_table:Ttable;tablename:string;table_path:string); //*创建临时表
var
table:ttable;
begin
if tablename='result.db' then //*创建result.db数据表
begin
table:=t_table.Create(self);
try
table.tablename:=table_path+'/'+tablename;
table.FieldDefs.add('新发票号',ftstring,10);
table.FieldDefs.add('开票日期',ftstring,10);
table.FieldDefs.add('客户名',ftstring,30);
table.FieldDefs.add('发票号',ftstring,10);
table.FieldDefs.add('价税合计',ftstring,15);
table.FieldDefs.add('税率',ftstring,2);
table.FieldDefs.add('联系地址',ftstring,40);
table.FieldDefs.add('税号',ftstring,15);
table.FieldDefs.add('账号',ftstring,40);
table.CreateTable ;
except
messagedlg('创建临时表result.db错误!',mterror,[mbok],1);
table.Free;
exit;
end;
end
else
begin //*创建results.db数据表
table:=t_table.Create(self);
try
table.tablename:=table_path+'/'+tablename;
table.FieldDefs.add('新发票号',ftstring,10);
table.FieldDefs.add('存货编号',ftstring,10);
table.FieldDefs.add('存货名称',ftstring,30);
table.FieldDefs.add('规格',ftstring,10);
table.FieldDefs.add('单位',ftstring,15);
table.FieldDefs.add('数量',ftstring,2);
table.FieldDefs.add('单价',ftstring,40);
table.FieldDefs.add('价税合计',ftstring,15);
table.CreateTable ;
except
messagedlg('创建临时表results.db错误!',mterror,[mbok],1);
table.Free;
exit;
end;
end;
exit;
end;
编译时出现如下问题:
[Error] main_frame.pas(150): Undeclared identifier: 'self'
我不知这是为是么?因为我不在过程中时是可以的.