博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
VFP中如何开启钱箱
阅读量:2302 次
发布时间:2019-05-09

本文共 1959 字,大约阅读时间需要 6 分钟。

*!* 不同的型号/不同的接法有不同的处理
*!* 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.网上有开钱箱的共享软件

转载地址:http://xgdib.baihongyu.com/

你可能感兴趣的文章
jquery多条数据输入的时候,会根据文本框输入的值动态计算并显示到另一个文本框的值
查看>>
百度地图api基本用法和一些demo[根据地址查询经纬度,并进行动态标注BMap.Marker地点]
查看>>
easyui自带的日历功能和生日年月日的三级联动
查看>>
SQLServer 数据库变成单个用户后无法访问问题的解决方法[在手动还原该数据库的时候,设置为单用户模式,然后其他用户访问的时候就。。。。]
查看>>
Linux安装Tomcat外部不能访问[主要是linux中防火墙规则的配置问题]
查看>>
linux相关csdn个人博客url
查看>>
linux中$#、$?、$$[脚本运行时当前进程的id号]、$@、$*、$0、$1、$2、$-[上一个命令的最后一个参数]
查看>>
VMware Workstation环境中Linux ping返回出现大量“DUP!”的解决方法[将Host的VMnet8虚拟网卡,先禁用,在启用]
查看>>
linux系统安装hadoop-1.2.1遇到的问题【linux本机上的主机名和域名问题、不可以使用默认的localhost;完全没有启动】
查看>>
解决linux ping: unknown host www.baidu.com【linux使用静态IP遇到的问题;已经配置差不多了,一般是dns没有配好】
查看>>
编译hadoop的eclipse插件hadoop-eclipse-plugin-1.2.1.jar 【用来管理hadoop的HDFS和开发MapReduce项目】
查看>>
配置插件hadoop-1.2.1 eclipse开发环境 【hadoop的eclipse插件hadoop-eclipse-plugin-1.2.1.jar 下载地址和具体用法】
查看>>
mysql root用户没有超级权限或忘记密码 【为root设置密码后,再次登录,就看不到mysql数据库了,原来】
查看>>
ssh免密码登录【遇到的问题: linux下设置了SSH免密码登录但还是需要输入密码的解决办法 】
查看>>
VMware workstation NAT方式无法连接外网[自己NAT方式的网关设置错误,导致ping www.baidu.com不通]
查看>>
linux中bridge mode和NAT mode成功ping www.baidu.com必须注意检查核对的地方[操作系统为centos6.6版本]
查看>>
openstack常见错误总结
查看>>
如何查看网站的访问量?查看访问量的二个主要方法【站长之家的SEO综合查询工具】
查看>>
PV、UV、IP的区别
查看>>
linux 定时执行shell脚本 【并发送信息到指定邮件centos6需要yum install sendmail】
查看>>