Delphi BDE逐漸走入歷史

Delphi XE7版本release之後,發現一直跟隨Delphi很久的BDE(Borland Database Engine)並沒有隨著版本發佈。
而是需要註冊使用者才能自行下載,BDE是Borland在16位元環境下一直叱吒資料庫開發界的利器,不過隨著Embarcadero將Delphi推至行動開發,更不斷精進新版本的dbExpress以及FireDAC技術。
看來應該是Embarcadero準備放手BDE的時候了!

相關連結:
ID: 29997, BDE Installer for RAD Studio, Delphi, C++Builder XE7
http://cc.embarcadero.com/item/29997

Delphi FastReport欄位運算

FastReport欄位判斷
[IIF( >= 60,’合格’,’不合格’)]

Band顯示
procedure MasterData1OnBeforePrint(Sender: TfrxComponent);
begin
memo2.text := ‘1234’;
If >= 60 then begin
masterdata1.visible := True;
Memo2.Color := clblue;
Memo2.text := ‘OK’;
end else begin
masterdata1.visible := False;
Memo2.Color := clred;
Memo2.text := ‘Not OK’;
end;
end;

Delphi 安裝次數超過解決方案!

購買 Embarcadero的Delphi XE3之後,因為硬碟操掛的原因!陸續重新安裝過幾次,昨天換了新的電腦後,發現無法線上註冊成功。

登入 https://reg.codegear.com/srs6/activation.do ,註入註冊碼以及登入EDN帳號後。

registrationcount01

 

 

 

 

點選 View extended serial number details

registrationcount02

 

接著發現已經超過預設的三次了

registrationcount

因為我是換電腦不是亂七八糟多安裝的,所以就到客服 http://www.embarcadero.com/support 然後點選”Registration & Installation”

support1

 

 

接著點選 Request a registration limit increase,接著點選原因送出就可以了。

support2

 

原本台灣捷康的Lucy告訴我說需要3~5個工作天,不過早上九點多提出後下午二點多就收到mail回覆了!

registrationcount09

這次要感謝台灣捷康科技(Qcom)的Lucy協助,雖然當初XE3是跟已經收掉的興德資訊買的,不過Lucy不厭其煩的幫忙解答 🙂  才能很快的解決

 

捷康科技股份有限公司 www.qcomgroup.com.tw

許玉香  Lucy Hsu
電話:886-2-2365-0238傳真:886-2-2365-0196
E-mail: Lucyhsu@qcomgroup.com

地址:10647台北市羅斯福路三段 149 號10樓

 

Delphi寫餐飲硬體標準ESC/POS與醫療檢驗儀器連線ASTM通訊有感

下午到舊公司討論電子發票格式相關問題,跟舊同事聊天聊到電子發票支援的硬體時,舊同事也抱怨到POS相關的硬體廠商雖然”宣稱”支援”標準的ESC/POS指令”,但實測起來每台機器還是會呈現出不同的結果。

突然想到之前在做醫療檢驗儀器連線時,即使設備商提到是使用ASTM格式傳輸,但不管是尿液、血液…..適用什麼immuLite、AXSYM、Alastat….最後在做連線通訊時也是不一樣。

這也是做軟硬體結合時,寫程式的悲哀吧XDDD不過寫出來時又是另一種雀躍的心情了~~

Delphi下載網路圖片且顯示Image

把網路上的圖片顯示在Image如何做到?

[pascal]
var
MS: TMemoryStream;
JPEG: TJPEGImage;
Url: String;
I: Integer;
begin
ProgressBar1.Visible := True;
MS := TMemoryStream.Create;
try
JPEG := TJPEGImage.Create;
try
Url := edit1.text;
MS.Clear;
try
IdHTTP1.Get(Url, MS);
except
end;
MS.Position := 0;
JPEG.LoadFromStream(MS);
Image1.Picture.Assign(JPEG);
Application.ProcessMessages;
finally
JPEG.Free;
end;
finally
MS.Free;
end;
end;
[/pascal]

Delphi撰寫縮小到系統列程式

在畫面上放置
1 ApplicationEvents
2 TrayIcon
3 PopupMenu

然後在ApplicationEvents1Minimize寫上
[pascal]
Hide();
WindowState := wsMinimized;
TrayIcon1.Visible := True;
TrayIcon1.Animate := True;
TrayIcon1.ShowBalloonHint;
[/pascal]
接著在TrayIcon的Click事件讓popupmenu顯示
[pascal]
var
p : TPoint;
begin
GetCursorPos(p);
popupmenu1.Popup(p.X,p.Y);
end;
[/pascal]
最後在popupmenu上的onclick加上
[pascal]
Show;
WindowState := wsMaximized;
trayicon1.Visible := False;
[/pascal]

Delphi隨機產生英文大小寫、數字

Delphi如何透過隨機的函數產生英文大寫、英文小寫以及數字呢?
方法很簡單

[pascal]
// 英文小寫
Randomize;
S := Chr(ord(‘a’) + Random(26));
[/pascal]

[pascal]
// 英文大寫
Randomize;
S := Chr(ord(‘A’) + Random(26));
[/pascal]

[pascal]
// 數字
Randomize;
S := Chr(ord(‘0’) + Random(10));
[/pascal]