我一用quickreport控件编译就出错,怎么回事啊?盼解答(50分)

  • 主题发起人 主题发起人 圣堂狂徒
  • 开始时间 开始时间

圣堂狂徒

Unregistered / Unconfirmed
GUEST, unregistred user!
我使用了qr的几个窗口编译时都会显示
---------------------------
Debugger Exception Notification
---------------------------
Project yjsgl.exe raised exception class EVariantTypeCastError with message 'Could not convert variant of type (Null) into type (String)'. Process stopped. Use Step or Run to continue.
我其中一个窗口的程序代码如下
unit yjs13;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, QRCtrls, QuickRpt, ExtCtrls;
type
TForm13 = class(TForm)
ADODataSet1: TADODataSet;
QuickRep1: TQuickRep;
QRBand1: TQRBand;
QRBand2: TQRBand;
QRBand3: TQRBand;
QRBand4: TQRBand;
QRBand5: TQRBand;
QRLabel1: TQRLabel;
QRSysData1: TQRSysData;
QRLabel2: TQRLabel;
QRLabel3: TQRLabel;
QRLabel4: TQRLabel;
QRLabel5: TQRLabel;
QRLabel6: TQRLabel;
QRLabel7: TQRLabel;
QRSysData2: TQRSysData;
QRDBText1: TQRDBText;
QRDBText2: TQRDBText;
QRDBText3: TQRDBText;
QRDBText4: TQRDBText;
QRDBText5: TQRDBText;
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form13: TForm13;
implementation
uses yjs9;
{$R *.dfm}
end.
到底哪里出问题了啊,望赐教
 
uses Variants单元看看
 
直接use的话出下面的错误。。。
[Error] yjs13.pas(7): Identifier redeclared: 'Variants'
我该怎么做呢?我刚学delphi,还不太懂
 
检查下你引用的yjs9单元是否进行了强制类型转换,或者是否用了AS操作符。
 
'Could not convert variant of type (Null) into type (String)'
意思是你的String类型变量赋了NUll类型值(NUll类型是数据库的),你检查一下你的数据库的数据引用,例AS操作符什么的。
楼上叫你加Variants单元,你已经有了,所以出这个Identifier redeclared: 'Variants'错误。
 
后退
顶部