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

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

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

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

早餐店、餐廳、飲料店餐飲POS系統

許多朋友選擇自己創業做老闆時,最常見的創業就是餐飲業為主的方式。無論是自行創業或是加盟,都需要軟硬體設備及架構,當然也有許多人會評估使用餐飲POS系統。

餐飲POS系統依結帳流程不同主要分為先結帳及後結帳二種版本。先結帳版本常見於飲料店或一般早餐店;而後結帳版本主要於餐廳為主。而使用POS系統主要的原因除了提高點餐的正確性、便利性,也可以方便以電腦做管理以及瞭解營業狀況等分析。

目前POS系統價格平均一套在50,000元上下,一套系統大約包含1、POS主機一部 2、出單機 3、標籤機 4、發票機 5、錢櫃 6、餐飲系統軟體。而除了買斷外,亦有每月3000元月租方案的POS系統商。當然除了期初的硬體成本外,出單機、標籤機、發票機也會有耗材(紙張、碳粉)的成本。以及每年與系統廠商的維護合約。

Delphi 多螢幕程式

在設計餐飲程式時,會遇到外接第二螢幕做為客戶顯示或展示廣告。在Delphi如何撰寫?

判斷系統螢幕數量
[pascal]
screen.MonitorCount
[/pascal]

將畫面移至第N螢幕(第一螢幕為0、第二螢幕為1…..)
[pascal]
self.Top := screen.Monitors[0].Top;
self.left := screen.Monitors[0].left;
[/pascal]

餐飲POS雲端叫號系統

好久沒更新部落格了!最近正陷入結案地獄中,不過在網路上看到之前曾提過的取餐叫號器的廠商,引進了新的雲端叫號系統。對於餐飲POS系統的服務又更加升級了,可以先電話預約訂購後,再透過網路知道目前的叫號,在接近時再繞過去拿就行了!這也可以運用在醫療系統上,在預約掛號後,知道目前的叫號號碼。分享給大家!

http://www.ehanway.com.tw/

1246dfb156eb4e0cbbee277485d18ecc

03a5a0f4e4654b9790791d76ee6d649b

Delphi POS – fastreport出單機不固定長度單據

POS餐飲系統開發時,許多朋友常會遇到報表長度問題。像是出單機會依照內容多寡而出現長短不一的狀況。那在報表長度如何設定呢?

fastreport裡的page options內有一個Endless page height 打勾就行了!

未命名 - 1

Delphi POS – 透過USB Printer打開錢櫃

[pascal]
procedure USBOpenCashDrawer(PrinterName: String);
var
// use winspool
Handle, hDeviceMode: THandle;
N: DWORD;
DocInfo1: TDocInfo1;
Device, Driver, Port: array [0 .. 255] of char;
ThePrinter: string;
code:ansistring;
begin
ThePrinter := PrinterName;
Code := chr(27) + chr(64)+ chr(27) + chr(112) + chr(0) + chr(50) + chr(200);

Printer.PrinterIndex := Printer.Printers.Indexof(ThePrinter);
Printer.GetPrinter(Device, Driver, Port, hDeviceMode);
PrinterName := Format(‘%s’, [Device]);
if not WinSpool.OpenPrinter(PChar(PrinterName), Handle, nil) then
begin
// ShowMessage(‘Error : ‘ + IntToStr(GetLastError));
Exit;
end;
with DocInfo1 do
begin
pDocName := ‘Test’;
pOutputFile := nil;
pDataType := ‘RAW’;
end;

WinSpool.StartDocPrinter(Handle, 1, @DocInfo1);
WinSpool.StartPagePrinter(Handle);
WinSpool.WritePrinter(Handle, PAnsiChar(Code), Length(Code), N);
WinSpool.EndPagePrinter(Handle);
WinSpool.EndDocPrinter(Handle);
WinSpool.ClosePrinter(Handle);

end;
[/pascal]

開店買POS收銀硬體?找銥特爾科技是好選擇!

身邊好多朋友都在詢問,POS硬體買那一家比較好?不過說實在的!壽山是吃軟不吃硬的傢伙,所以都著重在軟體開發上面。硬體多是配合居多~不過既然大家都一直在詢問的話,就推一下朋友的老字號餐飲收銀系統公司。

銥特爾科技擁有超過十五年的餐飲、飲料、快餐POS收銀系統的經驗,硬體除了有低廉買斷的價格外,也可以利用月租的方式取得收銀機。而除了其他基本的硬體如出單機、客戶顯示器、標籤機、發票機之外,銥特爾科技也獨家取得台灣區的取餐呼叫器總代理,以及指紋門禁考勤機、來電顯示器等硬體。

10153777_220668251466416_5925132099323567958_n

1960052_214749398724968_105793911_n

1601354_214749395391635_1595013721_n

POS軟體部份,有功能強大的富必達阿波羅餐飲POS系統,也有簡單易上手的安達POS系統可做選擇,如果店家需要使用行動裝置做點餐,也有無線點餐系統可供選購。

10178132_218483098351598_4639304801783421976_n

10262050_218483095018265_128909876423590086_n    10151765_218483091684932_8697685651644490876_n1620879_218480575018517_9132188576972621908_n

10157130_218480531685188_4524845556808369937_n   10256103_218480595018515_6634262374133315077_n

10247304_220668071466434_5959772453704020542_n

銥特爾科技粉絲頁網址 http://on.fb.me/1gSk8dl

銥特爾點餐POS系統銷售諮詢

專線電話:02-29974000 / 蕭先生 0922067818 / 潘先生 0922987818

Delphi使用SPComm沒辦法觸發ReceiveData

SPComm 在連線Com機器時,時候沒辦法觸發 ReceiveData,後來才知道StartComm後要留點時間給它喘氣(連線)。所以加上sleep~

[pascal]
var
s:Ansistring;
begin
RepCom.StartComm;
s := Chr(16) + Chr(4) + Chr(1) ;
sleep(50);
RepCom.WriteCommData(PAnsiChar(s),Length(s));
end;
[/pascal]