報告我:水晶在2007年德爾福
德爾福2007年
水晶11
德爾福7版本的水晶VCL組件(最新的一個我所知道的,和它編譯罰款在D2007)
一個非常簡單的測試水晶報表,寫在水晶11,它只是轉儲到屏幕上的一張桌子(沒有選擇標準,沒有公式,只是直線數據)
我試圖
創建一個新的VCL窗體應用程序
丟棄的形式
的 「REPORTNAME」 屬性設置爲我的測試報告上TCrpe組件。
我放棄了表單上的按鈕,和它背後放置一條線:
Crpe1.Execute
如果報表的「保存數據隨着報告」選項打開上,那麼這個工作正常。
如果我將該選項關閉,那麼我需要提供登錄憑據。
使用此代碼(一萬年前在Delphi 5運行良好):
procedure TForm1.BitBtn1Click(Sender: TObject);
var
logonItem: integer;
begin
Crpe1.LogOnServer.Clear;
logonItem := Crpe1.LogOnServer.Add('MYSERVER.MYDOMAIN.COM');
Crpe1.LogonServer[logonItem].UserID := 'USERNAME';
Crpe1.LogOnServer[logonItem].Password := 'PASSWORD';
Crpe1.LogOnServer[logonItem].DatabaseName := 'MYDATABASE';
Crpe1.Execute;
end;
我得到這個錯誤:
---------------------------
Project2
---------------------------
Error:536 Error in File C:\REPORT.RPT:
Unable to connect: incorrect log on parameters.
Execute <PEStartPrintJob>.
---------------------------
OK
---------------------------
我在做什麼錯?我如何在Delphi中爲Crystal VCL組件提供登錄憑證?我目前的解決方法是pretty ugly,我有很多遺留代碼要轉換。如果我可以直接使用VCL組件,那將是非常好的。
你太棒了,非常感謝 – JosephStyons 2009-10-14 19:26:00
非常感謝。 – 2012-05-28 15:34:42
這有語法錯誤。我不知道它是如何成爲答案的! – FLICKER 2013-07-08 19:55:38