VFP中如何开启钱箱

*!* 不同的型号/不同的接法有不同的处理
*!* 1.如果钱箱是接在 LPT 并口上的
Set Printer On
?? Chr(27) + Chr(112) + Chr(48) + Chr(50) + Chr(53)
*!* ?? Chr(27) + Chr(112) + Chr(10) + Chr(20) && 具体 ESC 代码查询有关资料
*!* ?? Chr(27) + Chr(112) + Chr(0) + Chr(50) + Chr(250)
Set Printer Off
Set Printer To Default
*!*
*!*
*!* 2.如果钱箱是接在 COM1 串口上的
Set Printer To Com1, 9600, N, 8, 1
Set Printer On
ncount = 1
?? ' ' + Chr(nCount)
Set Printer Off
Set Printer To Default
*!*
*!*
*!* 3.如果钱箱是接在 COM2 串口上的
Set Printer To Com2, 9600, N, 8, 1
??? Chr(27) + Chr(112) + Chr(48) + Chr(25) + Chr(250)
Set Printer To Default
*!*
*!*
*!* 4.直接发送控制码到钱箱
*!* 首先创建一个打开钱箱控制码的文件
Set Device To File O_drawer.Prn
@ 00,00 Say Chr(27) + Chr(112) + Chr(00) + Chr(50) + Chr(100)
Set Device To Screen
*!* 然后在你需要打开钱箱的时候,发布下列命令即可
Copy File O_drawer.Prn To LPT1.DOS
*!*
*!*
*!* 5.采用 MSComm 控件开钱箱
*!* 在命令按钮上写下面事件代码
Thisform.olecontrol1.portopen = .T.
Thisform.olecontrol1.Output = "0000000000"
Thisform.olecontrol1.portopen = .F.
*!* MSCom 的 CommPort : 1 = COM1, 2 = COM2
*!*
*!*
*!* 6.采用 EPSON 的 OPOS ADK/SDK 开钱箱
_Screen.oFinApp.oCashDrawer.OpenDrawer()
This method waits until the Drawer Is closed
Local llDrawOpen As Boolean
Local lnTimeStart As Number
Local lnTimeNow As Number
*!*
*!* ---------------------
*!* Initialise Variables
*!* ---------------------
llDrawOpen = _Screen.oFinapp.oCashDraw.DrawerOpened
lnTimeStart = Val(Sys(2))
Do While _Screen.oFinApp.oPosPrinter.State = OPOS_S_BUSY
Inkey(0.01)
Enddo
_Screen.oFinapp.oCashDraw.StatusUpdateEvent()
Do While llDrawOpen
lnTimeNow = Val(Sys(2))
lnSecondsGone = lnTimeNow - lnTimeStart
Do Case
Case lnSecondsGone < 2
Wait Clear
Thisform.lblWarning.Visible = .T.
Case Between(lnSecondsGone, 2, 3)
Thisform.lblWarning.Visible = .F.
Case lnSecondsGone > 3
lnTimeStart = Seconds()
Endcase
llDrawOpen = _Screen.oFinapp.oCashDraw.DrawerOpened
Enddo
Thisform.lblWarning.Visible = .F.
Return .T.
*!*
*!*
*!* 7.如果钱箱是接在 USB 上的
*!* 或者采用打印共享的映射方式
*!* 或者采用特别动态库
*!*
*!*
*!* 8.网上有开钱箱的共享软件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值