用Formula 3(F1Book控件)做报表(50分)

  • 主题发起人 主题发起人 lan2001
  • 开始时间 开始时间
L

lan2001

Unregistered / Unconfirmed
GUEST, unregistred user!
那位高手用过ActiveX页的F1Book控件,凡您指教一二。尤其是ODBCConnect、ODBCQuery、ODBCDisconnect事件的写法。
谢谢!!
 
虽用过f1,但没用过ODBC取数据。[8D]
 
我用的是F1book6.1,Delphi 6, 连接数据库db2.mdb,如果你需要的话,给你寄个例子,
另外F1book安装后有不少关于ODBC的VB例子,看一下代码,应该不是很难.

unit fmF1ODBCDemo;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, AxCtrls, OleCtrls, TTF160_TLB, StdCtrls;
type
TForm1 = class(TForm)
fbook1: TF1Book6;
btnConnect: TButton;
btnDisconn: TButton;
Button1: TButton;
procedure btnConnectClick(Sender: TObject);
procedure btnDisconnClick(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
procedure QueryTable(strSQL : widestring);
public
{ Public declarations }
end;

var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.btnConnectClick(Sender: TObject);
var
Connstr : widestring;
RetCode : smallint;
begin
ConnStr := 'DSN=F1ODBCDemo;DBQ=' + ExtractFilePath(Application.ExeName) +
'/db2.mdb;DriverId=25;FIL=MS';
try
fbook1.ODBCConnect(ConnStr,True,RetCode);
except
Showmessage('Connect DataBase failed!');
end;
end;

procedure TForm1.btnDisconnClick(Sender: TObject);
begin
fbook1.ODBCDisconnect;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
strSQL : widestring;
begin
fbook1.Sheet := 1;
strSQL := 'Select * from Employee_Table';
QueryTable(strSQL);
end;

procedure TForm1.QueryTable(strSQL: widestring);
var
bForceShowDlg, bSetColNames,bSetColFormats, bSetColWidths,bSetMaxRC : wordbool;
RetCode : smallint;
begin
bForceShowDlg := False;
bSetColNames := True;
bSetColFormats := True;
bSetColWidths := True;
bSetMaxRC := True;
screen.Cursor := crHourGlass;
try
fbook1.ODBCQuery(strSQL,1,1,bForceShowDlg,bSetColNames,bSetColFormats,
bSetColWidths,bSetMaxRC,RetCode);
except
ShowMessage(fbook1.ODBCErrorMsg);
end;
screen.Cursor := crDefault;
end;

end.
 
6.1的公式有问题。我现在又用5.0了。
 
bluerain,谢谢您的指教,请您发给我个F1book6.1如果你有例子,也给寄个。谢谢!!
 
F1book6.1网上有下载,如果我也可以给你寄一份,不过全部安装文件压缩后也有13M.
你的信箱是什么?
 
下在后我安装了,大不能用,总是告诉我“没有注册类别”,但我已经regsvr32[path]ttf16.ocx了。
我该怎么做,请赐教!
 
你在Delphi里安装了吗?
 
bluerain:
我是这样安装的:在delphi中Component/Import ActiveX Control/Add,选择ttf16.ocx,点“install...”,系统提示我“A Class Named'TF1Book' is already installed”
我就点“remove”,把原来的formular one 3.0(vci Formular one Library(ver1.0))remove了。
重新添加ttf16.ocx,弹出了"install component"对话框,在unit file name 中我选择了dclusr50.dpk,
出现package 编辑框,compile时出错。
这个问题已经折腾了我两天了,如果您有时间,把安装此控件的方法步骤详细的发给我好吗?我将不胜感激!!
我的信箱是:zhoulanok@263.net,oicq:7396712[blue][/blue]谢谢!!
您知道的关于formula资料的网站,可以告诉我几个吗?谢谢!!
 
bluerain,在您的帮助下我已经安装成功了。不知您在C++ Builder里安装过吗?在compile Package时出错。
 
1、我在VB中运行下列语句
F1Book1.Draw Form1.hDC, 1, 1, 6000, 6000, 1, 1, 40, 40, 0, 0, 0, 0
系统提示“实时错误‘13’,类型不匹配。
不知错在哪里,望各位大侠指正。
2、能详细的介绍一下F1BOOK1控件draw方法各参数代表的中文意思吗?(最好有例子)。
F1Book1.Draw hDC, X, Y, cX, cY, nRow, nCol, pRows, pCols, nFixedRow, nFixedCol, nFixedRows, nFixedCols
 

Similar threads

D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部